소스 검색

Merge branch 'develop' of http://120.55.44.4:10080/xujunjie/gt_client_pad into develop

xujunjie 1 년 전
부모
커밋
70d7260ce2

+ 3 - 3
src/global.less

@@ -326,7 +326,7 @@ input[type='reset'] {
 .ant-table-wrapper .ant-table-thead > tr > th,
 .ant-table-wrapper .ant-table-tbody > tr > td {
   border-radius: 0;
-  padding: 0.12rem 0.10rem;
+  padding: 0.12rem 0.1rem;
   font-size: 0.28rem;
   color: rgba(97, 93, 93, 1);
   line-height: 0.32rem;
@@ -369,11 +369,11 @@ input[type='reset'] {
   padding: 0.04rem 0.11rem;
 }
 
-.ant-select-single:not(.ant-select-customize-input) .ant-select-selector {
+.ant-select:not(.ant-select-customize-input) .ant-select-selector {
   height: auto;
   padding: 0.04rem 0.11rem;
 }
-.ant-select-single .ant-select-selector {
+.ant-select .ant-select-selector {
   font-size: 0.26rem;
 }
 .ant-checkbox-wrapper {

+ 12 - 8
src/pages/Center/MyTask/Detail/TaskDetail.js

@@ -81,9 +81,10 @@ function TaskDetail(props) {
         MandateType: MandateType.find(
           (item) => item.value === result.data.MandateType,
         ),
-        ResponsiblePeople: userList.find(
-          (item) => item.ID === result.data.ResponsiblePeople,
-        ),
+        ResponsiblePeople: result.data.ResponsiblePeople.split(',')
+          .map((cur) => userList.find((item) => item.ID == Number(cur))?.CName)
+          .filter((item) => item)
+          .join(','),
         CreateTime: dayjs(result.data.CreateTime).format('YYYY-MM-DD HH:mm'),
       };
       const workOrder = result.data.Records.map((item) => {
@@ -92,7 +93,12 @@ function TaskDetail(props) {
           CreateTime: dayjs(item.CreateTime).format('YYYY-MM-DD HH:mm'),
           Status: OrderStatus.find((status) => status.value === item.Status),
           RecordType: OrderType.find((type) => type.value === item.RecordType),
-          Responsible: userList.find((user) => user.ID === item.Responsible),
+          Responsible: item.Responsible.split(',')
+            .map(
+              (cur) => userList.find((item) => item.ID == Number(cur))?.CName,
+            )
+            .filter((item) => item)
+            .join(','),
         };
       });
       const children = result.data.MandateChild;
@@ -131,9 +137,7 @@ function TaskDetail(props) {
                     </Col>
                     <Col className={styles.fontS30} span={14}>
                       工单负责人:
-                      {typeof record.Responsible === 'number'
-                        ? '-'
-                        : record.Responsible?.CName}
+                      {record.Responsible}
                     </Col>
                   </Row>
                 </div>
@@ -283,7 +287,7 @@ function TaskDetail(props) {
             </Col>
             <Col className={styles.fontS30}>
               {/*// @ts-ignore*/}
-              任务负责人:{mandateDetail?.ResponsiblePeople?.CName}
+              任务负责人:{mandateDetail?.ResponsiblePeople}
             </Col>
           </Row>
         </div>

+ 22 - 15
src/pages/Center/MyTask/Detail/WorkOrderDetail.js

@@ -56,11 +56,15 @@ const WorkOrderDetail = (props) => {
         Clean: temp.Clean,
         Check: temp.Check,
         Repairman:
-          userList.find((item) => item.ID === temp.MaintenancePerson) || '-',
+          temp.ResponsiblePeople.split(',')
+            .map(
+              (cur) => userList.find((item) => item.ID == Number(cur))?.CName,
+            )
+            .filter((item) => item)
+            .join(',') || '-',
         DispatchMan:
-          userList.find(
-            (item) => (item.ID = temp.Operators[0]?.Operator?.ID),
-          ) || '-',
+          userList.find((item) => (item.ID = temp.Operators[0]?.Operator?.ID))
+            ?.CName || '-',
         OrderStatus:
           OrderStatus.find((item) => item.value === temp.Status) || '-',
         MandateImages:
@@ -100,9 +104,14 @@ const WorkOrderDetail = (props) => {
           ? dayjs(temp.RepairTime).format('YYYY-MM-DD HH:mm')
           : '-',
         Reason: temp.Reason,
-        Repairman: userList.find((item) => item.ID === temp.Repairman) || '-',
-        DispatchMan:
-          userList.find((item) => item.ID === temp.operator_id) || '-',
+        Repairman:
+          temp.Repairman.split(',')
+            .map(
+              (cur) => userList.find((item) => item.ID == Number(cur))?.CName,
+            )
+            .filter((item) => item)
+            .join(',') || '-',
+        DispatchMan: temp.operator_name || '-',
         OrderStatus:
           OrderStatus.find((item) => item.value === temp.AcceptanceStatus) ||
           '-',
@@ -138,9 +147,9 @@ const WorkOrderDetail = (props) => {
             dayjs(temp.actual_end_time).format('YYYY-MM-DD HH:mm')) ||
           '-',
         Reason: temp.detail,
-        Repairman: userList.find((item) => item.ID === temp.operator_id) || '-',
+        Repairman: temp.operator_name || '-',
         DispatchMan:
-          userList.find((item) => item.ID === temp.checker_id) || '-',
+          userList.find((item) => item.ID === temp.checker_id)?.CName || '-',
         OrderStatus:
           OrderStatus.find((item) => item.value === temp.status) || '-',
         MandateImages:
@@ -178,8 +187,7 @@ const WorkOrderDetail = (props) => {
           ? dayjs(result.actual_end_time.Time).format('YYYY-MM-DD HH:mm')
           : '-',
         Reason: result.note,
-        Repairman:
-          userList.find((user) => user.ID === result.operator_id) || '-',
+        Repairman: operator_name || '-',
         DispatchMan: '-',
         OrderStatus:
           OrderStatus.find((status) => status.value === result.status) || '-',
@@ -206,8 +214,7 @@ const WorkOrderDetail = (props) => {
             ? dayjs(temp.actual_end_time).format('YYYY-MM-DD HH:mm')
             : '-',
           Reason: temp.detail,
-          Repairman:
-            userList.find((user) => user.ID === temp.operator_id) || '-',
+          Repairman: temp.operator_name || '-',
           DispatchMan: '-',
           OrderStatus:
             OrderStatus.find((status) => status.value === temp.status) || '-',
@@ -316,7 +323,7 @@ const WorkOrderDetail = (props) => {
                 </Col>
                 <Col className={styles.fontS28} span={9}>
                   {/* @ts-ignore */}
-                  工单负责人:{orderInfo?.Repairman?.CName || '-'}
+                  工单负责人:{orderInfo?.Repairman}
                 </Col>
               </Row>
               <Row className={styles.rowMargin}>
@@ -326,7 +333,7 @@ const WorkOrderDetail = (props) => {
                 </Col>
                 <Col className={styles.fontS28} span={9}>
                   {/* @ts-ignore */}
-                  派单人员:{orderInfo?.DispatchMan?.CName || '-'}
+                  派单人员:{orderInfo?.DispatchMan || '-'}
                 </Col>
               </Row>
               <Row className={styles.rowMargin}>

+ 12 - 6
src/pages/Center/MyTask/List/TaskList.js

@@ -148,19 +148,25 @@ const MyTaskList = (props) => {
       MandateClass: MandateClass.find(
         (itemClass) => itemClass.value === item.MandateClass,
       ),
-      ResponsiblePeople: userList.find(
-        (user) => user.ID === item.ResponsiblePeople,
-      ),
+      ResponsiblePeople: item.ResponsiblePeople.split(',')
+        .map((cur) => userList.find((item) => item.ID == Number(cur))?.CName)
+        .filter((item) => item)
+        .join(','),
       CreateTime: dayjs(item.CreateTime).format('YYYY-MM-DD HH:mm'),
     };
 
+    console.log('------------------', formatItem);
+
     const workOrder = item.Records.map((record) => {
       return {
         ...record,
         key: record.Id,
         Status: OrderStatus.find((status) => status.value === record.Status),
         RecordType: OrderType.find((type) => type.value === record.RecordType),
-        Responsible: userList.find((user) => user.ID === record.Responsible),
+        Responsible: record.Responsible.split(',')
+          .map((cur) => userList.find((item) => item.ID == Number(cur))?.CName)
+          .filter((item) => item)
+          .join(','),
         CreateTime: dayjs(record.CreateTime).format('YYYY-MM-DD HH:mm'),
       };
     });
@@ -193,7 +199,7 @@ const MyTaskList = (props) => {
                     </span>
                   </Col>
                   <Col className={styles.fontS30} span={13}>
-                    工单负责人:{order.Responsible?.CName}
+                    工单负责人:{order.Responsible}
                   </Col>
                 </Row>
               </div>
@@ -266,7 +272,7 @@ const MyTaskList = (props) => {
               }}
             >
               <Col span={11} className={styles.fontS30}>
-                任务负责人: {formatItem.ResponsiblePeople?.CName || '-'}
+                任务负责人: {formatItem.ResponsiblePeople || '-'}
               </Col>
               <Col span={8} className={styles.fontS30}>
                 任务状态: {formatItem.Status?.label || '-'}

+ 8 - 2
src/pages/Center/MyTask/List/WorkOrderList.js

@@ -65,7 +65,7 @@ const WorkOrderList = (props) => {
             <Row justify="space-between" style={{ marginBottom: '0.2rem' }}>
               <Col className={styles.fontS24}>{workOrder?.CreateTime}</Col>
               <Col className={styles.fontS24}>
-                工单负责人:{workOrder?.Repairman?.CName || '-'}
+                工单负责人:{workOrder?.Repairman || '-'}
               </Col>
             </Row>
             <Row justify="space-between">
@@ -126,7 +126,13 @@ const WorkOrderList = (props) => {
               CreateTime: item.CreateTime
                 ? dayjs(item.CreateTime).format('YYYY-MM-DD HH:mm')
                 : '-',
-              Repairman: userList.find((user) => item.Responsible === user.ID),
+              Repairman: item.Responsible.split(',')
+                .map(
+                  (cur) =>
+                    userList.find((item) => item.ID == Number(cur))?.CName,
+                )
+                .filter((item) => item)
+                .join(','),
               OrderStatus: OrderStatus.find(
                 (status) => status.value === item.Status,
               ),

+ 1 - 1
src/pages/Home/QualityMng.js

@@ -162,7 +162,7 @@ export const WaterQuality = ({ showTip = false }) => {
           </li>
           <li>
             <div className={styles.pageTopValue}>{getValue(snapshot?.dph)}</div>
-            <div>外供水(PH)</div>
+            <div>外供水PH</div>
           </li>
         </ul>
       </div>

+ 14 - 9
src/pages/TaskManage/Detail/TaskDetail/TaskDetail.tsx

@@ -259,6 +259,7 @@ const DispatchTaskModal = (props: any) => {
     if (!value) {
       return;
     }
+    value.operator_id = value.operator_id.join(',');
     onOK(value);
   };
 
@@ -291,6 +292,7 @@ const DispatchTaskModal = (props: any) => {
           rules={[{ required: true, message: '请选择操作人' }]}
         >
           <Select
+            mode="multiple"
             options={userList
               .filter(
                 (item) =>
@@ -387,9 +389,10 @@ function TaskDetail(props: IPropsType) {
         MandateType: MandateType.find(
           (item) => item.value === result.data.MandateType,
         ),
-        ResponsiblePeople: userList.find(
-          (item) => item.ID === result.data.ResponsiblePeople,
-        ),
+        ResponsiblePeople: result.data.ResponsiblePeople.split(',')
+          .map((cur) => userList.find((item) => item.ID == Number(cur))?.CName)
+          .filter((item) => item)
+          .join(','),
         CreateTime: dayjs(result.data.CreateTime).format('YYYY-MM-DD HH:mm'),
       };
       const workOrder = result.data.Records.map((item: IWorkOrderType) => {
@@ -398,7 +401,12 @@ function TaskDetail(props: IPropsType) {
           CreateTime: dayjs(item.CreateTime).format('YYYY-MM-DD HH:mm'),
           Status: OrderStatus.find((status) => status.value === item.Status),
           RecordType: OrderType.find((type) => type.value === item.RecordType),
-          Responsible: userList.find((user) => user.ID === item.Responsible),
+          Responsible: item.Responsible.split(',')
+            .map(
+              (cur) => userList.find((item) => item.ID == Number(cur))?.CName,
+            )
+            .filter((item) => item)
+            .join(','),
         };
       });
       const children = result.data.MandateChild;
@@ -437,9 +445,7 @@ function TaskDetail(props: IPropsType) {
                     </Col>
                     <Col className={styles.fontS30} span={14}>
                       工单负责人:
-                      {typeof record.Responsible === 'number'
-                        ? '-'
-                        : record.Responsible?.CName}
+                      {record.Responsible}
                     </Col>
                   </Row>
                 </div>
@@ -714,8 +720,7 @@ function TaskDetail(props: IPropsType) {
                 任务状态:{mandateDetail?.Status?.label}
               </Col>
               <Col className={styles.fontS30}>
-                {/*// @ts-ignore*/}
-                任务负责人:{mandateDetail?.ResponsiblePeople?.CName}
+                任务负责人:{mandateDetail?.ResponsiblePeople}
               </Col>
             </Row>
           </div>

+ 10 - 0
src/pages/TaskManage/Detail/TaskDetail/taskDetail.less

@@ -155,6 +155,8 @@
     .ant-modal-title {
       font-size: 0.28rem;
     }
+
+    .ant-select:not(.ant-select-customize-input) .ant-select-selector,
     .ant-select-single:not(.ant-select-customize-input) .ant-select-selector {
       height: 0.6rem;
       padding-top: 0.15rem;
@@ -185,6 +187,14 @@
     .ant-picker {
       height: 0.6rem;
     }
+    .ant-select-selection-placeholder {
+      position: absolute;
+      top: 50%;
+      inset-inline-start: 11px;
+      inset-inline-end: 11px;
+      transform: translateY(-50%);
+      transition: all 0.3s;
+    }
   }
 }
 

+ 13 - 6
src/pages/TaskManage/Detail/TaskList/TaskList.tsx

@@ -195,9 +195,13 @@ const TaskList: React.FC<IPropsType> = (props) => {
       MandateClass: MandateClass.find(
         (itemClass) => itemClass.value === item.MandateClass,
       ),
-      ResponsiblePeople: userList.find(
-        (user) => user.ID === item.ResponsiblePeople,
-      ),
+      ResponsiblePeople: item.ResponsiblePeople.split(',')
+        .map((cur) => userList.find((item) => item.ID == Number(cur))?.CName)
+        .filter((item) => item)
+        .join(','),
+      // userList.find(
+      //   (user) => user.ID === item.ResponsiblePeople,
+      // ),
       CreateTime: dayjs(item.CreateTime).format('YYYY-MM-DD HH:mm'),
     };
 
@@ -207,7 +211,10 @@ const TaskList: React.FC<IPropsType> = (props) => {
         key: record.Id,
         Status: OrderStatus.find((status) => status.value === record.Status),
         RecordType: OrderType.find((type) => type.value === record.RecordType),
-        Responsible: userList.find((user) => user.ID === record.Responsible),
+        Responsible: record.Responsible.split(',')
+          .map((cur) => userList.find((item) => item.ID == Number(cur))?.CName)
+          .filter((item) => item)
+          .join(','),
         CreateTime: dayjs(record.CreateTime).format('YYYY-MM-DD HH:mm'),
       };
     });
@@ -240,7 +247,7 @@ const TaskList: React.FC<IPropsType> = (props) => {
                     </span>
                   </Col>
                   <Col className={styles.fontS30} span={13}>
-                    工单负责人:{order.Responsible?.CName}
+                    工单负责人:{order.Responsible}
                   </Col>
                 </Row>
               </div>
@@ -313,7 +320,7 @@ const TaskList: React.FC<IPropsType> = (props) => {
               }}
             >
               <Col span={11} className={styles.fontS30}>
-                任务负责人: {formatItem.ResponsiblePeople?.CName || '-'}
+                任务负责人: {formatItem.ResponsiblePeople || '-'}
               </Col>
               <Col span={8} className={styles.fontS30}>
                 任务状态: {formatItem.Status?.label || '-'}

+ 2 - 2
src/pages/TaskManage/Detail/TaskList/taskList.types.ts

@@ -26,7 +26,7 @@ export interface IWorkOrderType {
   Note: string;
   PlanDoneTime: string;
   RecordType: number | DefaultOptionType;
-  Responsible: number | IUserType;
+  Responsible: string;
   Status: number | DefaultOptionType;
 }
 
@@ -35,7 +35,7 @@ export interface IMandateDetailType {
   ProjectId: number;
   MandateType: number | DefaultOptionType;
   MandateClass: number | DefaultOptionType;
-  ResponsiblePeople: number | IUserType;
+  ResponsiblePeople: string;
   Detail: string;
   MandateChild: IMandateChildType[];
   Records: IWorkOrderType[];

+ 23 - 16
src/pages/TaskManage/Detail/TaskOrder/TaskOrder.tsx

@@ -32,8 +32,8 @@ interface IOrderInfo {
   PlanTime: string;
   RepairTime: string;
   Reason: string;
-  Repairman: string | IUserType;
-  DispatchMan: string | IUserType;
+  Repairman: string;
+  DispatchMan: string;
   OrderStatus: string | DefaultOptionType;
   Lubrication?: number;
   Fasten?: number;
@@ -86,11 +86,15 @@ const TaskOrder: React.FC<IPropsType> = (props) => {
         Clean: temp.Clean,
         Check: temp.Check,
         Repairman:
-          userList.find((item) => item.ID === temp.MaintenancePerson) || '-',
+          temp.MaintenancePerson.split(',')
+            .map(
+              (cur) => userList.find((item) => item.ID == Number(cur))?.CName,
+            )
+            .filter((item) => item)
+            .join(',') || '-',
         DispatchMan:
-          userList.find(
-            (item) => (item.ID = temp.Operators[0]?.Operator?.ID),
-          ) || '-',
+          userList.find((item) => (item.ID = temp.Operators[0]?.Operator?.ID))
+            ?.CName || '-',
         OrderStatus:
           OrderStatus.find((item) => item.value === temp.Status) || '-',
         MandateImages:
@@ -130,7 +134,13 @@ const TaskOrder: React.FC<IPropsType> = (props) => {
           ? dayjs(temp.RepairTime).format('YYYY-MM-DD HH:mm')
           : '-',
         Reason: temp.Reason,
-        Repairman: userList.find((item) => item.ID === temp.Repairman) || '-',
+        Repairman:
+          temp.Repairman.split(',')
+            .map(
+              (cur) => userList.find((item) => item.ID == Number(cur))?.CName,
+            )
+            .filter((item) => item)
+            .join(',') || '-',
         DispatchMan: '-',
         OrderStatus:
           OrderStatus.find((item) => item.value === temp.AcceptanceStatus) ||
@@ -168,9 +178,9 @@ const TaskOrder: React.FC<IPropsType> = (props) => {
             ? dayjs(temp.actual_end_time).format('YYYY-MM-DD HH:mm')
             : '-',
         Reason: temp.detail,
-        Repairman: userList.find((item) => item.ID === temp.operator_id) || '-',
+        Repairman: temp.operator_name || '-',
         DispatchMan:
-          userList.find((item) => item.ID === temp.checker_id) || '-',
+          userList.find((item) => item.ID === temp.checker_id)?.CName || '-',
         OrderStatus:
           OrderStatus.find((item) => item.value === temp.status) || '-',
         MandateImages:
@@ -208,8 +218,7 @@ const TaskOrder: React.FC<IPropsType> = (props) => {
           : '-',
         Reason: result.note,
         Repairman: '-',
-        DispatchMan:
-          userList.find((user) => user.ID === result.operator_id) || '-',
+        DispatchMan: result.operator_name || '-',
         OrderStatus:
           OrderStatus.find((status) => status.value === result.status) || '-',
       };
@@ -237,8 +246,7 @@ const TaskOrder: React.FC<IPropsType> = (props) => {
               ? dayjs(temp.actual_end_time).format('YYYY-MM-DD HH:mm')
               : '-',
           Reason: temp.detail,
-          Repairman:
-            userList.find((user) => user.ID === temp.operator_id) || '-',
+          Repairman: temp.operator_name || '-',
           DispatchMan: '-',
           OrderStatus:
             OrderStatus.find((status) => status.value === temp.status) || '-',
@@ -345,8 +353,7 @@ const TaskOrder: React.FC<IPropsType> = (props) => {
                     '-'}
                 </Col>
                 <Col className={styles.fontS28} span={9}>
-                  {/* @ts-ignore */}
-                  工单负责人:{orderInfo?.Repairman?.CName || '-'}
+                  工单负责人:{orderInfo?.Repairman || '-'}
                 </Col>
               </Row>
               <Row className={styles.rowMargin}>
@@ -356,7 +363,7 @@ const TaskOrder: React.FC<IPropsType> = (props) => {
                 </Col>
                 <Col className={styles.fontS28} span={9}>
                   {/* @ts-ignore */}
-                  派单人员:{orderInfo?.DispatchMan?.CName || '-'}
+                  派单人员:{orderInfo?.DispatchMan || '-'}
                 </Col>
               </Row>
               <Row className={styles.rowMargin}>

+ 16 - 14
src/pages/TaskManage/Detail/WorkOrderList/WorkOrderList.js

@@ -74,7 +74,7 @@ const WorkOrderList = (props) => {
             <Row justify="space-between" style={{ marginBottom: '0.2rem' }}>
               <Col className={styles.fontS24}>{workOrder?.CreateTime}</Col>
               <Col className={styles.fontS24}>
-                工单负责人:{workOrder?.Repairman?.CName || '-'}
+                工单负责人:{workOrder?.Repairman || '-'}
               </Col>
             </Row>
             <Row justify="space-between">
@@ -169,22 +169,24 @@ const WorkOrderList = (props) => {
         let temp = [];
         if (result?.data?.list) {
           temp = result.data.list.map((item) => {
+            let names = item?.operator_name;
+            if (order_type === 2) {
+              names = item.Repairman.split(',')
+                .map((cur) => userList.find((item) => item.ID == cur)?.CName)
+                .filter((item) => item)
+                .join(',');
+            } else if (order_type === 3) {
+              names = item.MaintenancePerson.split(',')
+                .map((cur) => userList.find((item) => item.ID == cur)?.CName)
+                .filter((item) => item)
+                .join(',');
+            } else if (order_type === 5) {
+              temp = '-';
+            }
             return {
               ...item,
               CreateTime: formatCreateTime(item),
-              Repairman: userList.find((user) => {
-                let temp = -1;
-                if (order_type === 2) {
-                  temp = item.Repairman;
-                } else if (order_type === 3) {
-                  temp = item.MaintenancePerson;
-                } else if (order_type === 5) {
-                  temp = '-';
-                } else {
-                  temp = item.operator_id;
-                }
-                return temp === user.ID;
-              }),
+              Repairman: names,
               OrderStatus: OrderStatus.find((status) => {
                 let temp = -1;
                 if (order_type === 2) {

+ 20 - 13
src/pages/TaskManage/Popup/WorkOrderModal.js

@@ -51,8 +51,7 @@ const WorkOrderModal = (props) => {
               mandate_class !== 2 ? temp.detail : renderReason(temp.detail),
             Repairman:
               userList.find((item) => item.ID === temp.checker_id) || '-',
-            DispatchMan:
-              userList.find((item) => item.ID === temp.operator_id) || '-',
+            DispatchMan: temp.operator_name,
             OrderStatus:
               OrderStatus.find((item) => item.value === temp.status) || '-',
             MandateImages:
@@ -96,9 +95,14 @@ const WorkOrderModal = (props) => {
               '-',
             Reason: temp.Reason,
             Repairman:
-              userList.find((item) => item.ID === temp.Repairman) || '-',
-            DispatchMan:
-              userList.find((item) => item.ID === temp.operator_id) || '-',
+              temp.Repairman.split(',')
+                .map(
+                  (cur) =>
+                    userList.find((item) => item.ID == Number(cur))?.CName,
+                )
+                .filter((item) => item)
+                .join(',') || '-',
+            DispatchMan: temp.operator_name,
             OrderStatus:
               OrderStatus.find(
                 (item) => item.value === temp.AcceptanceStatus,
@@ -138,8 +142,13 @@ const WorkOrderModal = (props) => {
               dayjs(temp.RepairTime).format('YYYY-MM-DD HH:mm') || '-',
             Reason: temp.Note,
             Repairman:
-              userList.find((item) => item.ID === temp.MaintenancePerson) ||
-              '-',
+              temp.MaintenancePerson.split(',')
+                .map(
+                  (cur) =>
+                    userList.find((item) => item.ID == Number(cur))?.CName,
+                )
+                .filter((item) => item)
+                .join(',') || '-',
             DispatchMan:
               userList.find(
                 (item) => (item.ID = temp.Operators[0]?.Operator?.ID),
@@ -184,8 +193,7 @@ const WorkOrderModal = (props) => {
             : '-',
           Reason: result.note,
           Repairman: '-',
-          DispatchMan:
-            userList.find((user) => user.ID === result.operator_id) || '-',
+          DispatchMan: temp.operator_name,
           OrderStatus:
             OrderStatus.find((status) => status.value === result.status) || '-',
         };
@@ -213,8 +221,7 @@ const WorkOrderModal = (props) => {
             ? dayjs(temp.actual_end_time).format('YYYY-MM-DD HH:mm')
             : '-',
           Reason: temp.detail,
-          Repairman:
-            userList.find((user) => user.ID === temp.operator_id) || '-',
+          Repairman: temp.operator_name,
           DispatchMan: '-',
           OrderStatus:
             OrderStatus.find((status) => status.value === temp.status) || '-',
@@ -336,7 +343,7 @@ const WorkOrderModal = (props) => {
                 </Col>
                 <Col span={8} className={styles.fontS32}>
                   {/*// @ts-ignore*/}
-                  工单负责人:{orderInfo?.Repairman?.CName || '-'}
+                  工单负责人:{orderInfo?.Repairman}
                 </Col>
               </Row>
               <Row>
@@ -344,7 +351,7 @@ const WorkOrderModal = (props) => {
                   工单状态:{orderInfo?.OrderStatus?.label}
                 </Col>
                 <Col span={8} className={styles.fontS32}>
-                  派单人员:{orderInfo?.DispatchMan?.CName}
+                  派单人员:{orderInfo?.DispatchMan}
                 </Col>
               </Row>
               <Row>

+ 12 - 6
src/pages/TaskManage/components/MandateDetail.js

@@ -97,9 +97,10 @@ const MandateDetail = (props) => {
           MandateType: MandateType.find(
             (item) => item.value === result.data.MandateType,
           ),
-          ResponsiblePeople: userList.find(
-            (item) => item.ID === result.data.ResponsiblePeople,
-          ),
+          names: result.data.ResponsiblePeople.split(',')
+            .map((cur) => userList.find((item) => item.ID == cur)?.CName)
+            .filter((item) => item)
+            .join(','),
           CreateTime: dayjs(result.data.CreateTime).format('YYYY-MM-DD HH:mm'),
         };
         const workOrder = result.data.Records.map((item) => {
@@ -110,7 +111,10 @@ const MandateDetail = (props) => {
             RecordType: OrderType.find(
               (type) => type.value === item.RecordType,
             ),
-            Responsible: userList.find((user) => user.ID === item.Responsible),
+            Responsible: item.Responsible.split(',')
+              .map((cur) => userList.find((item) => item.ID == cur)?.CName)
+              .filter((item) => item)
+              .join(','),
           };
         });
         if (
@@ -237,7 +241,7 @@ const MandateDetail = (props) => {
                 </span>
               </Col>
               <Col className={styles.fontS32}>
-                任务负责人:{mandateDetail?.ResponsiblePeople?.CName || '-'}
+                任务负责人:{mandateDetail?.names || '-'}
               </Col>
             </Row>
           </div>
@@ -344,7 +348,7 @@ const MandateDetail = (props) => {
                     </span>
                   </Col>
                   <Col className={styles.fontS32}>
-                    工单负责人:{item?.Responsible?.CName}
+                    工单负责人:{item?.Responsible || '-'}
                   </Col>
                 </Row>
               </div>
@@ -656,6 +660,7 @@ const DispatchTaskModal = (props) => {
     if (!value) {
       return;
     }
+    value.operator_id = value.operator_id.join(',');
     onOK(value);
   };
 
@@ -689,6 +694,7 @@ const DispatchTaskModal = (props) => {
           rules={[{ required: true, message: '请选择操作人' }]}
         >
           <Select
+            mode="multiple"
             options={userList
               ?.filter(
                 (item) =>

+ 1 - 1
src/pages/TaskManage/components/MandateDetail.less

@@ -110,7 +110,7 @@
     .ant-modal-title {
       font-size: 0.28rem;
     }
-    .ant-select-single:not(.ant-select-customize-input) .ant-select-selector {
+    .ant-select:not(.ant-select-customize-input) .ant-select-selector {
       height: 0.6rem;
       padding-top: 0.15rem;
     }

+ 1 - 1
src/pages/TaskManage/index.types.ts

@@ -12,7 +12,7 @@ export interface IMandateType {
   ProjectId: number;
   MandateType: number | DefaultOptionType;
   MandateClass: number | DefaultOptionType;
-  ResponsiblePeople: number;
+  ResponsiblePeople: string;
   Detail: string;
   Summary: string;
   CreateTime: string;

+ 6 - 6
src/pages/TaskManage/models/user.js

@@ -1,13 +1,13 @@
-import { queryUserList } from "../../../services/user";
+import { queryDispatchUserList } from '@/services/user';
 
 export default {
-    namespace: 'taskUser',
+  namespace: 'taskUser',
   state: {
     userList: [],
   },
   effects: {
     *fetchUserList({ payload }, { call, put }) {
-      const response = yield call(queryUserList, payload);
+      const response = yield call(queryDispatchUserList, payload);
       if (response) {
         yield put({
           type: 'userListHandler',
@@ -17,12 +17,12 @@ export default {
     },
   },
 
-  reducers:{
+  reducers: {
     userListHandler(state, { payload }) {
       return {
         ...state,
         userList: payload,
       };
     },
-  }
-};
+  },
+};

+ 4 - 0
src/services/user.js

@@ -11,3 +11,7 @@ export async function queryCurrentV2() {
 export async function queryDailyWorkReport(project_id) {
   return request(`/api/v1//mandate/daily-work-report?project_id=${project_id}`);
 }
+//获取派遣工单用户列表
+export async function queryDispatchUserList(param) {
+  return request(`/api/v1/user/record/${param.project_id}`);
+}