Parcourir la source

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

xujunjie il y a 1 an
Parent
commit
ac541ab04c

+ 49 - 43
src/pages/TaskManage/Detail/TaskDetail/TaskDetail.tsx

@@ -824,55 +824,61 @@ function TaskDetail(props: IPropsType) {
             </Row>
             <Row justify="end" gutter={10}>
               <Col>
-                <Button
-                  className={styles.footerBtn}
-                  shape="round"
-                  onClick={() => {
-                    openSpecifiedModal('ignore');
-                  }}
-                  disabled={mandateDetail?.Status?.value !== 0}
-                >
-                  忽略
-                </Button>
+                {mandateDetail?.Status?.value === 0 && (
+                  <Button
+                    className={styles.footerBtn}
+                    shape="round"
+                    onClick={() => {
+                      openSpecifiedModal('ignore');
+                    }}
+                  >
+                    忽略
+                  </Button>
+                )}
               </Col>
               <Col>
-                <Button
-                  className={styles.footerBtn}
-                  shape="round"
-                  onClick={() => {
-                    openSpecifiedModal('manual');
-                  }}
-                  disabled={mandateDetail?.Status?.value !== 0}
-                >
-                  手动处理
-                </Button>
+                {(mandateDetail?.MandateClass?.value === 1 ||
+                  mandateDetail?.MandateClass?.value === 2) &&
+                  mandateDetail?.Status?.value === 0 && (
+                    <Button
+                      className={styles.footerBtn}
+                      shape="round"
+                      onClick={() => {
+                        openSpecifiedModal('manual');
+                      }}
+                    >
+                      手动处理
+                    </Button>
+                  )}
               </Col>
               <Col>
-                <Button
-                  className={styles.footerBtn}
-                  shape="round"
-                  onClick={() => {
-                    openSpecifiedModal('auto');
-                  }}
-                  disabled={mandateDetail?.Status?.value !== 0}
-                >
-                  自动处理
-                </Button>
+                {(mandateDetail?.MandateClass?.value === 1 ||
+                  mandateDetail?.MandateClass?.value === 2) &&
+                  mandateDetail?.Status?.value === 0 && (
+                    <Button
+                      className={styles.footerBtn}
+                      shape="round"
+                      onClick={() => {
+                        openSpecifiedModal('auto');
+                      }}
+                    >
+                      自动处理
+                    </Button>
+                  )}
               </Col>
               <Col>
-                <Button
-                  className={styles.footerBtn}
-                  shape="round"
-                  onClick={() => {
-                    openSpecifiedModal('dispatch');
-                  }}
-                  disabled={
-                    mandateChild?.filter((item) => item.Status === 0)
-                      ?.length === 0
-                  }
-                >
-                  派单
-                </Button>
+                {mandateChild?.filter((item) => item.Status === 0)?.length >
+                  0 && (
+                  <Button
+                    className={styles.footerBtn}
+                    shape="round"
+                    onClick={() => {
+                      openSpecifiedModal('dispatch');
+                    }}
+                  >
+                    派单
+                  </Button>
+                )}
               </Col>
             </Row>
           </div>

+ 82 - 1
src/pages/TaskManage/components/MandateDetail.js

@@ -19,6 +19,7 @@ import {
 } from 'antd';
 import dayjs from 'dayjs';
 import { useEffect, useState } from 'react';
+import ReactZmage from 'react-zmage';
 import {
   MandateClass,
   MandateStatus,
@@ -29,6 +30,7 @@ import {
 } from '../constent';
 import styles from './MandateDetail.less';
 
+import { getDiagnosticDetail } from '@/services/TaskManage';
 import zhCN from 'antd/es/locale/zh_CN';
 
 const MandateDetail = (props) => {
@@ -82,7 +84,7 @@ const MandateDetail = (props) => {
 
   const { run: getMandateInfo, loading } = useRequest(queryMandate, {
     manual: true,
-    formatResult: (result) => {
+    formatResult: async (result) => {
       if (result?.data) {
         const tempMandate = {
           ...result.data,
@@ -111,6 +113,15 @@ const MandateDetail = (props) => {
             Responsible: userList.find((user) => user.ID === item.Responsible),
           };
         });
+        if (
+          tempMandate.MandateClass &&
+          tempMandate.ExtendId &&
+          /* @ts-ignore */
+          tempMandate.MandateClass.value === 7
+        ) {
+          const image = await getDiagnosticDetail(tempMandate.ExtendId);
+          tempMandate.img = image.path;
+        }
         setMandateDetail(tempMandate);
         setMandateChild(tempMandate.MandateChild);
         setHandledWorkOrder(workOrder);
@@ -230,6 +241,76 @@ const MandateDetail = (props) => {
               </Col>
             </Row>
           </div>
+          {mandateDetail?.img && (
+            <Row style={{ padding: '0 0.2rem' }} justify="start">
+              <Col
+                className={styles.fontS30}
+                span={4}
+                style={{ fontWeight: 600 }}
+              >
+                预警图片
+              </Col>
+              <Col className={styles.fontS30}>
+                <ReactZmage
+                  controller={{
+                    // 关闭按钮
+                    close: true,
+                    // 缩放按钮
+                    zoom: false,
+                    // 下载按钮
+                    download: false,
+                    // 翻页按钮
+                    flip: false,
+                    // 多页指示
+                    pagination: false,
+                  }}
+                  backdrop="rgba(255,255,255,0.5)"
+                  style={{ width: '3.5rem' }}
+                  src={mandateDetail?.img}
+                />
+              </Col>
+            </Row>
+          )}
+
+          {mandateDetail?.Files !== undefined &&
+            mandateDetail?.Files?.length > 0 && (
+              <Row style={{ padding: '0 0.2rem' }} justify="start">
+                <Col
+                  className={styles.fontS30}
+                  span={4}
+                  style={{ fontWeight: 600 }}
+                >
+                  截图
+                </Col>
+                <Col className={styles.fontS30}>
+                  <ReactZmage
+                    controller={{
+                      // 关闭按钮
+                      close: true,
+                      // 缩放按钮
+                      zoom: false,
+                      // 下载按钮
+                      download: false,
+                      // 翻页按钮
+                      flip: true,
+                      // 多页指示
+                      pagination: true,
+                    }}
+                    backdrop="rgba(255,255,255,0.5)"
+                    style={{ width: '3.5rem' }}
+                    src={mandateDetail?.Files[0].url}
+                    set={mandateDetail?.Files.map((item) => {
+                      if (item) {
+                        return {
+                          src: item.url,
+                        };
+                      }
+                      return {};
+                    })}
+                  />
+                </Col>
+              </Row>
+            )}
           <Row style={{ padding: '0 0.2rem' }} justify="space-between">
             <Col className={styles.fontS32} style={{ fontWeight: '600' }}>
               任务内容:

+ 1 - 2
src/pages/TaskManage/index.tsx

@@ -20,7 +20,7 @@ const TaskManage = (props: any) => {
 
   const [mandateCount, setMandateCount] = useState<number[]>([0, 0, 0]);
   const [loading, setLoading] = useState(false);
-  const [tab, setTab] = useState(localStorage.taskTab || '1');
+  const [tab, setTab] = useState('1');
 
   useEffect(() => {
     const requests = [];
@@ -112,7 +112,6 @@ const TaskManage = (props: any) => {
 
   const onTabChange = (key: string) => {
     setTab(key);
-    localStorage.setItem('taskTab', key);
   };
 
   return (