Jelajahi Sumber

待办事项 & 维修巡检详情

xujunjie 1 tahun lalu
induk
melakukan
592c8b68c0

+ 5 - 0
.umirc.ts

@@ -79,6 +79,11 @@ export default defineConfig({
       path: '/home/chem-cost/:projectId',
       component: './Home/ChemCostComparison',
     },
+    {
+      name: '待办事项',
+      path: '/home/backlog/:projectId',
+      component: './Home/backlog',
+    },
     {
       name: '工况管理',
       path: '/smart/work/:projectId',

+ 13 - 5
src/pages/Controller/Hardware.js

@@ -1,9 +1,9 @@
 import PageContent from '@/components/PageContent';
-import PageTitle from '@/components/PageTitle';
 import TabsContent from '@/components/TabsContent';
 import { UnityAction } from '@/utils/utils';
 import AirConditioner from './components/AirConditioner';
 import Light from './components/Light';
+import { CaretLeftFilled } from '@ant-design/icons';
 
 function Hardware() {
   const handleTabsChange = (tab) => {
@@ -16,10 +16,18 @@ function Hardware() {
 
   return (
     <PageContent closeable={false}>
-      <PageTitle
-        tabs
-        onReturn={() => UnityAction.sendMsg('menuItem', '智能管控')}
-      ></PageTitle>
+      <CaretLeftFilled
+        style={{
+          fontSize: '0.3rem',
+          cursor: 'pointer',
+          marginRight: '0.15rem',
+          color: '#0139F1',
+          position: 'absolute',
+          left: '0.5rem',
+          top: '0.5rem',
+        }}
+        onClick={() => UnityAction.sendMsg('menuItem', '智能管控')}
+      />
       <TabsContent
         defaultActiveKey="1"
         onChange={handleTabsChange}

+ 1 - 0
src/pages/DeviceManager/detail.less

@@ -1,6 +1,7 @@
 .detailBox {
   display: flex;
   flex-wrap: wrap;
+  margin-top: 20px;
   span {
     width: 50%;
     line-height: 1.8;

+ 3 - 1
src/pages/DeviceManager/deviceMaintainDetail.js

@@ -1,4 +1,5 @@
 import PageContent from '@/components/PageContent';
+import PageTitle from '@/components/PageTitle';
 import { Table } from 'antd';
 import dayjs from 'dayjs';
 import ReactZmage from 'react-zmage';
@@ -71,7 +72,8 @@ export default function DeviceMaintainDetail() {
   }
 
   return (
-    <PageContent closeable={false}>
+    <PageContent>
+      <PageTitle>设备保养</PageTitle>
       <div className={styles.detailBox}>
         <span>
           <label>设备位号:</label>

+ 3 - 1
src/pages/DeviceManager/deviceRepairDetail.js

@@ -2,6 +2,7 @@ import PageContent from '@/components/PageContent';
 import { useParams } from '@umijs/max';
 import { Table } from 'antd';
 import styles from './detail.less';
+import PageTitle from '@/components/PageTitle';
 const {
   DeviceCode,
   DeviceName,
@@ -83,7 +84,8 @@ export default function DeviceMaintainDetail() {
   };
 
   return (
-    <PageContent closeable={false}>
+    <PageContent >
+      <PageTitle>设备维修</PageTitle>
       <div className={styles.detailBox}>
         <span>
           <label>设备位号:</label>

+ 68 - 0
src/pages/Home/backlog.js

@@ -0,0 +1,68 @@
+// 药耗监测
+import PageContent from '@/components/PageContent';
+import PageTitle from '@/components/PageTitle';
+import { getPendingList } from '@/services/message';
+import { UnityAction } from '@/utils/utils';
+import { useParams, useRequest } from '@umijs/max';
+import dayjs from 'dayjs';
+import styles from './backlog.less';
+
+const CostComparison = () => {
+  const { projectId } = useParams();
+  const { data, loading } = useRequest(getPendingList, {
+    defaultParams: [{ project_id: projectId }],
+  });
+  const handleClick = (item) => {
+    if (item.type === 0) {
+      // task
+      UnityAction.sendMsg('OpenTaskModal', `mandate_id=${item.origin_id}`);
+    } else {
+      // order
+      UnityAction.sendMsg(
+        'OpenWorkOrderModal',
+        `order_id=${item.origin_id}&order_type=${item.origin_type}`,
+      );
+    }
+  };
+  return (
+    <PageContent closeable={false}>
+      <PageTitle onReturn={() => UnityAction.sendMsg('menuItem', '首页')}>
+        待办事项
+      </PageTitle>
+
+      <div className={styles.backlog}>
+        <div>
+          {data?.map((item) => (
+            <div
+              key={item.connect}
+              className={`${styles.item} ${
+                item.type == 0 ? styles.task : styles.order
+              }`}
+              onClick={(e) => {
+                e.stopPropagation();
+                handleClick(item);
+              }}
+            >
+              <div className={styles.createTime}>
+                {dayjs(item.time).format('MM-DD HH:mm')}
+              </div>
+              <div className={styles.point} />
+              <div className={styles.titleCon}>
+                <div className={styles.titleText}>{item.title}</div>
+              </div>
+
+              <div className={styles.bottomCon}>
+                {item.content}
+                <div className={styles.btn}>
+                  {item.type == 0 ? '任务' : '工单'}详情
+                </div>
+              </div>
+            </div>
+          ))}
+        </div>
+      </div>
+    </PageContent>
+  );
+};
+
+export default CostComparison;

+ 66 - 0
src/pages/Home/backlog.less

@@ -0,0 +1,66 @@
+.backlog {
+  margin-right: 6px;
+  margin-bottom: 40px;
+  overflow-y: auto;
+  height: 100%;
+  color: #3b3b3b;
+  background: #fff;
+  .item {
+    padding: 8px 0;
+    width: 100%;
+    font-size: 24px;
+    margin-bottom: 20px;
+    line-height: 50px;
+    position: relative;
+    &.order {
+      .point,
+      .btn {
+        background-color: #2576f5;
+      }
+    }
+    &.task {
+      .point,
+      .btn {
+        background-color: #ff8400;
+      }
+    }
+  }
+  .titleCon {
+    display: flex;
+    align-items: center;
+  }
+  .point {
+    display: inline-block;
+    width: 12px;
+    position: absolute;
+    left: 0;
+    top: 0;
+    height: 100%;
+  }
+  .createTime {
+    float: right;
+  }
+  .titleText {
+    font-size: 24px;
+    margin: 0 20px;
+    margin-left: 24px;
+    font-family: Source Han Sans, Source Han Sans;
+  }
+  .bottomCon {
+    margin-left: 24px;
+    font-size: 20px;
+    line-height: 36px;
+    word-wrap: break-word;
+    font-family: Source Han Sans, Source Han Sans;
+    display: flex;
+    align-items: center;
+    justify-content: space-between;
+    .btn {
+      flex-shrink: 0;
+      padding: 6px 20px;
+      border-radius: 12px;
+      font-size: 24px;
+      color: #fff;
+    }
+  }
+}

+ 14 - 14
src/pages/Home/index.js

@@ -425,16 +425,16 @@ const Backlog = (props) => {
     defaultParams: [{ project_id: projectId }],
   });
   const handleClick = (item) => {
-    if (item.type === 0) {
-      // task
-      UnityAction.sendMsg('OpenTaskModal', `mandate_id=${item.origin_id}`);
-    } else {
-      // order
-      UnityAction.sendMsg(
-        'OpenWorkOrderModal',
-        `order_id=${item.origin_id}&order_type=${item.origin_type}`,
-      );
-    }
+    // if (item.type === 0) {
+    //   // task
+    //   UnityAction.sendMsg('OpenTaskModal', `mandate_id=${item.origin_id}`);
+    // } else {
+    //   // order
+    //   UnityAction.sendMsg(
+    //     'OpenWorkOrderModal',
+    //     `order_id=${item.origin_id}&order_type=${item.origin_type}`,
+    //   );
+    // }
   };
   return (
     <div
@@ -449,10 +449,10 @@ const Backlog = (props) => {
             <div
               key={item.connect}
               className={styles.item}
-              onClick={(e) => {
-                e.stopPropagation();
-                handleClick(item);
-              }}
+              // onClick={(e) => {
+              //   e.stopPropagation();
+              //   handleClick(item);
+              // }}
             >
               <div className={styles.createTime}>
                 {dayjs(item.time).format('MM-DD HH:mm')}