Forráskód Böngészése

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

xujunjie 1 éve
szülő
commit
c9fe447d4e

BIN
src/assets/TaskManage/yiwancheng.png


BIN
src/assets/TaskManage/yiwancheng@2x.png


+ 1 - 1
src/components/TabsContent/index.less

@@ -3,7 +3,7 @@
   align-items: center;
   height: 116px;
   margin-bottom: 10px;
-  :nth-child(1) {
+  > .tabsItem {
     border-right: 1px solid #979797;
   }
   :last-child {

+ 96 - 57
src/pages/DeviceManager/index.js

@@ -8,15 +8,14 @@ import {
 } from '@/services/device';
 import { RightOutlined } from '@ant-design/icons';
 import { useNavigate, useParams, useRequest } from '@umijs/max';
-import { Button, Collapse, List, Space, Table } from 'antd';
+import { Collapse, List, Space, Table } from 'antd';
 import dayjs from 'dayjs';
 import { useMemo, useState } from 'react';
 import styles from './index.less';
-const img = require('@/assets/deviceManager/device01.png');
+const img = require('@/assets/air-conditioner.png');
 const chartIcon = require('@/assets/deviceManager/chartIcon.png');
 const DeviceManager = () => {
   const { projectId } = useParams();
-  const [type, setType] = useState(0); //0 全部  1维修  2保养
   const year = dayjs().format('YYYY');
   const params = {
     project_id: Number(projectId),
@@ -35,7 +34,7 @@ const DeviceManager = () => {
     }
   };
   return (
-    <PageContent style={{ backgroundColor: 'gray' }}>
+    <PageContent>
       <TabsContent
         defaultActiveKey="1"
         onChange={onChange}
@@ -59,6 +58,7 @@ const DeviceManager = () => {
 };
 const Device = ({ projectId }) => {
   const [type, setType] = useState(0); //0 全部  1维修  2保养
+  const [activeCode, setActiveCode] = useState();
 
   const columnsRepair = [
     {
@@ -136,45 +136,51 @@ const Device = ({ projectId }) => {
 
   //请求 全部设备列表
   const {
-    data: allData,
+    data,
     run: runDevice,
     loading: loadingDevice,
   } = useRequest(queryDeviceList, {
     defaultParams: [projectId],
-    formatResult: (res) => {
-      const data = res.data;
-      const total = data?.reduce((total, item) => item.Count, 0);
-      const items = data?.map((item, idx) => {
-        const itemLen = item?.List?.length;
-        return {
-          key: idx,
-          label: (
-            <div style={{ display: 'flex', justifyContent: 'space-between' }}>
-              <span>{item.Type}</span>
-              <span>{itemLen}个</span>
-            </div>
-          ),
-          children: (
-            <div style={{ position: 'relative' }}>
-              <List
-                header={null}
-                footer={null}
-                dataSource={item.List}
-                renderItem={(cur) => (
-                  <List.Item style={{ justifyContent: 'left' }}>
-                    <span style={{ width: '30%' }}> {cur.Code} </span>
-                    <span> {cur.Name} </span>
-                  </List.Item>
-                )}
-              />
-            </div>
-          ),
-        };
-      });
-      return { total, items };
-    },
   });
 
+  const allData = useMemo(() => {
+    console.log(activeCode);
+    const total = data?.reduce((total, item) => item.Count, 0);
+    const items = data?.map((item, idx) => {
+      const itemLen = item?.List?.length;
+      return {
+        key: `${idx + 1}`,
+        label: (
+          <div className={styles.lineContent}>
+            <span>{item.Type}</span>
+            <span>{itemLen}个</span>
+          </div>
+        ),
+        children: (
+          <div style={{ position: 'relative' }}>
+            <List
+              header={null}
+              footer={null}
+              dataSource={item.List}
+              renderItem={(cur) => (
+                <List.Item
+                  className={`${styles.itemText} ${
+                    activeCode == cur.Code ? styles.itemTextActive : ''
+                  }`}
+                  onClick={() => handleItemClick(cur.Code)}
+                >
+                  <span style={{ marginRight: '166px' }}> {cur.Code} </span>
+                  <span> {cur.Name} </span>
+                </List.Item>
+              )}
+            />
+          </div>
+        ),
+      };
+    });
+    return { total, items };
+  }, [data, activeCode]);
+
   //请求维修中设备列表queryRepairRecord
   const {
     data: repairData,
@@ -208,6 +214,35 @@ const Device = ({ projectId }) => {
     },
   );
 
+  const handleItemClick = (code) => {
+    console.log(code);
+    setActiveCode(code);
+  };
+
+  const renderChildlen = (item) => {
+    console.log(activeCode);
+    return (
+      <div style={{ position: 'relative' }}>
+        <List
+          header={null}
+          footer={null}
+          dataSource={item.List}
+          renderItem={(cur) => (
+            <List.Item
+              className={`${styles.listText} ${
+                activeCode == cur.Code ? styles.lineTextActive : ''
+              }`}
+              onClick={() => handleItemClick(cur.Code)}
+            >
+              <span style={{ marginRight: '166px' }}> {cur.Code} </span>
+              <span> {cur.Name} </span>
+            </List.Item>
+          )}
+        />
+      </div>
+    );
+  };
+
   const handleBtnClick = (type) => {
     setType(type);
     switch (type) {
@@ -225,32 +260,36 @@ const Device = ({ projectId }) => {
 
   const onChange = () => {};
   return (
-    <Space direction="vertical" className={styles.sparePart}>
+    <div className={styles.sparePart}>
       <div className={`card-box ${styles.titleContent}`}>
         <img className={styles.img} src={img} />
         <div>
           <div className={styles.num}>{allData?.total}</div>
-          <div>设备总数</div>
+          <div className={styles.text}>设备总数</div>
         </div>
       </div>
-      <Space>
-        <Button shape="round" onClick={() => handleBtnClick(0)}>
+      <Space className={styles.btns} size={28}>
+        <div
+          className={`${styles.btn} ${type == 0 ? styles.active : ''}`}
+          onClick={() => handleBtnClick(0)}
+        >
           全部
-        </Button>
-        <Button shape="round" onClick={() => handleBtnClick(1)}>
+        </div>
+        <div
+          className={`${styles.btn} ${type == 1 ? styles.active : ''}`}
+          onClick={() => handleBtnClick(1)}
+        >
           维修
-        </Button>
-        <Button shape="round" onClick={() => handleBtnClick(2)}>
-          计划保养
-        </Button>
+        </div>
+        <div
+          className={`${styles.btn} ${type == 2 ? styles.active : ''}`}
+          onClick={() => handleBtnClick(2)}
+        >
+          保养
+        </div>
       </Space>
       {type == 0 && (
-        <Collapse
-          defaultActiveKey={['1']}
-          bordered={false}
-          onChange={onChange}
-          items={allData?.items}
-        />
+        <Collapse bordered={false} onChange={onChange} items={allData?.items} />
       )}
       {type == 1 && (
         <Table
@@ -263,14 +302,14 @@ const Device = ({ projectId }) => {
       )}
       {type == 2 && (
         <Table
-          loading={repairLoading}
+          loading={maintaiLoading}
           style={{ marginTop: '10px' }}
-          dataSource={repairData?.filter((item) => item.DeviceCode)}
+          dataSource={maintainData?.filter((item) => item.DeviceCode)}
           columns={columns}
           pagination={false}
         />
       )}
-    </Space>
+    </div>
   );
 };
 const SparePart = ({ data, loading, projectId }) => {
@@ -312,7 +351,7 @@ const SparePart = ({ data, loading, projectId }) => {
     return result;
   }, [data]);
   return (
-    <Space direction="vertical" className={styles.sparePart}>
+    <Space direction="vertical" size={16} className={styles.sparePart}>
       <div className={`card-box ${styles.titleContent}`}>
         <img className={styles.img} src={img} />
         <div>

+ 73 - 5
src/pages/DeviceManager/index.less

@@ -5,15 +5,25 @@
 .titleContent {
   position: relative;
   display: flex;
-  justify-content: space-around;
   align-items: center;
+  justify-content: center;
+  height: 238px;
   .img {
-    width: 30%;
+    width: 150px;
+    margin-right: 46px;
   }
   .num {
-    color: #ffc400;
-    font-size: 36px;
-    margin-bottom: 20px;
+    margin-bottom: 24px;
+    font-size: 80px;
+    font-family: DINAlternate-Bold, DINAlternate;
+    font-weight: bold;
+    color: #f5a623;
+    line-height: 94px;
+  }
+  .text {
+    font-size: 28px;
+    color: #4a4a4a;
+    line-height: 38px;
   }
   .rightIcon {
     position: absolute;
@@ -21,12 +31,70 @@
     top: 20px;
   }
 }
+
+.lineContent {
+  display: flex;
+  justify-content: space-between;
+  font-size: 28px;
+  font-weight: 500;
+  color: #4a4a4a;
+  line-height: 38px;
+}
 .sparePart {
   width: 100%;
+  text-align: center;
   .cardItem {
     display: flex;
     padding: 10px;
     justify-content: space-between;
     align-items: center;
   }
+  .btns {
+    margin: 34px 0;
+    .btn {
+      width: 147px;
+      height: 59px;
+      background: #e8e8e8;
+      border-radius: 35px;
+      font-size: 30px;
+      color: #4a4a4a;
+      line-height: 59px;
+      text-align: center;
+    }
+    .active {
+      color: #4a90e2;
+      background: #cae2ff;
+    }
+  }
+  .itemText {
+    padding-left: 38px;
+    justify-content: flex-start;
+    font-size: 28px;
+    color: #4a4a4a;
+    line-height: 38px;
+    height: 96px;
+  }
+  .itemTextActive {
+    color: #4a90e2;
+  }
+
+  :global {
+    .ant-collapse > .ant-collapse-item > .ant-collapse-header {
+      padding: 36px;
+      align-items: center;
+    }
+    .ant-collapse
+      > .ant-collapse-item
+      > .ant-collapse-header
+      .ant-collapse-expand-icon {
+      > span {
+        font-size: 28px;
+        padding-inline-end: 0;
+        padding-inline-start: 16px;
+      }
+    }
+    .ant-list-split .ant-list-item {
+      border-color: #dbdbdb;
+    }
+  }
 }

+ 3 - 1
src/pages/SafetyManagement/index.less

@@ -10,6 +10,7 @@
 .num {
   font-size: 80px;
   font-weight: bold;
+  font-family: DINAlternate-Bold, DINAlternate;
   line-height: 94px;
   margin-bottom: 16px;
   color: #4a90e2;
@@ -103,8 +104,9 @@
       width: 49%;
       display: flex;
       flex-direction: column;
+      align-items: center;
       justify-content: space-between;
-      padding: 28px 114px 32px 112px;
+      padding: 28px 0 32px 0;
       .btn {
         width: 157px;
         height: 55px;

+ 39 - 16
src/pages/TaskManage/Detail/TaskDetail/TaskDetail.tsx

@@ -98,14 +98,21 @@ function TaskDetail(props: IPropsType) {
       <div className={`${styles.cardContainer} card-box`}>
         <div className={styles.normalInfo}>
           <Row className={styles.infoRow}>
-            <Col span={16}>时间:{mandateDetail?.CreateTime}</Col>
+            <Col className={styles.fontS18} span={16}>
+              时间:{mandateDetail?.CreateTime}
+            </Col>
             {/*// @ts-ignore*/}
-            <Col span={8}>任务类别:{mandateDetail?.MandateClass?.label}</Col>
+            <Col className={styles.fontS18} span={8}>
+              {/*//@ts-ignore*/}
+              任务类别:{mandateDetail?.MandateClass?.label}
+            </Col>
           </Row>
           <Row>
-            {/*// @ts-ignore*/}
-            <Col span={16}>任务状态:{mandateDetail?.Status?.label}</Col>
-            <Col span={8}>
+            <Col className={styles.fontS18} span={16}>
+              {/*//@ts-ignore*/}
+              任务状态:{mandateDetail?.Status?.label}
+            </Col>
+            <Col className={styles.fontS18} span={8}>
               {/*// @ts-ignore*/}
               任务负责人:{mandateDetail?.ResponsiblePeople?.CName}
             </Col>
@@ -113,45 +120,61 @@ function TaskDetail(props: IPropsType) {
         </div>
         <div className={styles.detailInfo}>
           <Row className={styles.infoRow}>
-            <Col span={4}>任务总结</Col>
-            <Col>{mandateDetail?.Summary}</Col>
+            <Col className={styles.fontS18} span={4}>
+              任务总结
+            </Col>
+            <Col className={styles.fontS18}>{mandateDetail?.Summary}</Col>
           </Row>
           <Row>
-            <Col span={4}>任务内容</Col>
-            <Col span={20}>
+            <Col className={styles.fontS18} span={4}>
+              任务内容
+            </Col>
+            <Col className={styles.fontS18} span={20}>
               <Col>{mandateDetail?.Detail}</Col>
               {/*<Table />*/}
             </Col>
           </Row>
         </div>
         <div className={styles.relatedOrder}>
-          <h3 style={{ marginLeft: '15px' }}>关联工单</h3>
+          <div
+            className={styles.fontS22}
+            style={{ marginLeft: '15px', marginBottom: '15px' }}
+          >
+            关联工单
+          </div>
           {handledWorkOrder.map((order) => {
             return (
               <div key={order.Id} className={styles.workOrderCard}>
                 <div className={styles.leftInfo}>
                   <Row className={styles.infoRow}>
-                    <Col span={12}>工单编号:{order.Id}</Col>
-                    <Col span={12}>时间:{order.CreateTime}</Col>
+                    <Col className={styles.fontS18} span={12}>
+                      工单编号:{order.Id}
+                    </Col>
+                    <Col className={styles.fontS18} span={12}>
+                      时间:{order.CreateTime}
+                    </Col>
                   </Row>
                   <Row>
-                    <Col span={12}>
+                    <Col className={styles.fontS18} span={12}>
                       工单状态:
                       <span style={{ color: '#5697e4' }}>
                         {/*// @ts-ignore*/}
                         {order.Status?.label}
                       </span>
                     </Col>
-                    {/*// @ts-ignore*/}
-                    <Col span={12}>工单负责人:{order.Responsible?.CName}</Col>
+                    <Col className={styles.fontS18} span={12}>
+                      {/*// @ts-ignore*/}
+                      工单负责人:{order.Responsible?.CName}
+                    </Col>
                   </Row>
                 </div>
                 <Divider type="vertical" style={{ height: '40px' }} />
                 <div className={styles.rightButton}>
                   <Button
+                    className={styles.fontS18}
                     style={{ color: '#5697e4' }}
                     type="text"
-                    ghost
+                    size="large"
                     onClick={() => {
                       // @ts-ignore
                       goTaskOrder(order.Id, order.RecordType?.value);

+ 24 - 6
src/pages/TaskManage/Detail/TaskDetail/taskDetail.less

@@ -1,24 +1,24 @@
-.cardContainer{
+.cardContainer {
   margin-top: 15px;
   padding: 20px 20px;
   background-color: white;
 
-  .normalInfo{
+  .normalInfo {
     padding: 15px 15px;
     background-color: #fdf2df;
   }
 
-  .infoRow{
+  .infoRow {
     margin-bottom: 15px;
   }
 
 
-  .detailInfo{
+  .detailInfo {
     padding: 15px 15px;
     border-bottom: 1px solid gray;
   }
 
-  .relatedOrder{
+  .relatedOrder {
     margin-top: 15px;
   }
 
@@ -43,6 +43,24 @@
       align-items: center;
     }
   }
+}
 
+.fontS24 {
+  font-size: 24px;
+}
 
-}
+.fontS22 {
+  font-size: 22px;
+}
+
+.fontS20 {
+  font-size: 20px;
+}
+
+.fontS18 {
+  font-size: 18px;
+}
+
+.fontS16 {
+  font-size: 16px;
+}

+ 25 - 9
src/pages/TaskManage/Detail/TaskList/TaskList.tsx

@@ -178,24 +178,32 @@ const TaskList: React.FC<IPropsType> = (props) => {
             <div key={order.Id} className={styles.workOrderCard}>
               <div className={styles.leftInfo}>
                 <Row style={{ marginBottom: '15px' }}>
-                  <Col span={12}>工单编号:{order.Id}</Col>
-                  <Col span={12}>时间:{order.CreateTime}</Col>
+                  <Col className={styles.fontS18} span={12}>
+                    工单编号:{order.Id}
+                  </Col>
+                  <Col className={styles.fontS18} span={12}>
+                    时间:{order.CreateTime}
+                  </Col>
                 </Row>
                 <Row>
-                  <Col span={12}>
+                  <Col className={styles.fontS18} span={12}>
                     工单状态:
                     <span style={{ color: '#5697e4' }}>
                       {order.Status?.label}
                     </span>
                   </Col>
-                  <Col span={12}>工单负责人:{order.Responsible?.CName}</Col>
+                  <Col className={styles.fontS18} span={12}>
+                    工单负责人:{order.Responsible?.CName}
+                  </Col>
                 </Row>
               </div>
               <Divider type="vertical" style={{ height: '40px' }} />
               <div className={styles.rightButton}>
                 <Button
+                  size='large'
+                  className={styles.fontS18}
                   style={{ color: '#5697e4' }}
-                  type='text'
+                  type="text"
                   onClick={() => {
                     goTaskOrder(order.Id, order.RecordType?.value);
                   }}
@@ -213,15 +221,21 @@ const TaskList: React.FC<IPropsType> = (props) => {
       <List.Item>
         <div className={`${styles.cardContainer} card-box`}>
           <Row justify="space-between" style={{ marginBottom: '20px' }}>
-            <Col>时间:{formatItem.CreateTime}</Col>
-            <Col>任务类别:{formatItem.MandateClass?.label}</Col>
-            <Col>任务负责人:{formatItem.ResponsiblePeople?.CName || '-'}</Col>
+            <Col className={styles.fontS18}>时间:{formatItem.CreateTime}</Col>
+            <Col className={styles.fontS18}>
+              任务类别:{formatItem.MandateClass?.label}
+            </Col>
+            <Col className={styles.fontS18}>
+              任务负责人:{formatItem.ResponsiblePeople?.CName || '-'}
+            </Col>
           </Row>
           <Row
             justify="space-between"
             style={{ paddingBottom: '10px', borderBottom: '1px solid gray' }}
           >
-            <Col>任务状态:{formatItem.Status?.label || '-'}</Col>
+            <Col className={styles.fontS18}>
+              任务状态:{formatItem.Status?.label || '-'}
+            </Col>
             <Col>
               <div
                 style={{
@@ -229,8 +243,10 @@ const TaskList: React.FC<IPropsType> = (props) => {
                 }}
               >
                 <Button
+                  className={styles.fontS18}
                   style={{ color: 'white' }}
                   type="text"
+                  size="large"
                   onClick={() => {
                     goTaskDetail(item);
                   }}

+ 25 - 2
src/pages/TaskManage/Detail/TaskList/taskList.less

@@ -1,20 +1,31 @@
 .cardContainer {
   width: 100%;
-  padding: 20px;
+  padding: 20px 20px 10px 20px;
   background-color: white;
 
   .collapseLabel {
     width: 100%;
-
+    .ant-collapse-arrow{
+      font-size: 18px;
+    }
     :global {
+      .ant-collapse-item{
+        margin-bottom: 0;
+      }
       .ant-collapse-header {
         justify-content: center;
         flex-direction: row-reverse;
+        align-items: center;
+        margin-top: 10px;
 
         .ant-collapse-header-text {
+          font-size: 18px;
           flex: unset;
           margin-inline-end: unset;
         }
+        .ant-collapse-arrow{
+          font-size: 18px;
+        }
       }
     }
 
@@ -41,3 +52,15 @@
     }
   }
 }
+
+.fontS20{
+  font-size: 20px;
+}
+
+.fontS18{
+  font-size: 18px;
+}
+
+.fontS16{
+  font-size: 16px;
+}

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

@@ -2,7 +2,7 @@ import PageContent from '@/components/PageContent';
 import PageTitle from '@/components/PageTitle';
 import { IUserType } from '@/pages/TaskManage/Detail/TaskList/taskList.types';
 import SubTitle from '@/pages/TaskManage/components/SubTitle';
-import { CraftOrderStatus, MaintainOrderStatus, RepairOrderStatus } from "@/pages/TaskManage/constent";
+import { OrderStatus } from '@/pages/TaskManage/constent';
 import {
   getCraftRecordList,
   getMaintainRecordList,
@@ -11,7 +11,7 @@ import {
 import { useLocation } from '@@/exports';
 import { connect, useRequest } from '@umijs/max';
 import { Col, Row } from 'antd';
-import { DefaultOptionType } from "rc-select/es/Select";
+import { DefaultOptionType } from 'rc-select/es/Select';
 import React, { useEffect, useState } from 'react';
 import styles from './taskOrder.less';
 
@@ -50,10 +50,11 @@ const TaskOrder: React.FC<IPropsType> = (props) => {
         PlanTime: temp.PlanTime,
         RepairTime: '-',
         Reason: temp.Note,
-        Repairman: userList.find((item) => item.ID === temp.MaintenancePerson) || '-',
+        Repairman:
+          userList.find((item) => item.ID === temp.MaintenancePerson) || '-',
         OrderStatus:
-          MaintainOrderStatus.find((item) => item.value === temp.Status) || '-',
-      }
+          OrderStatus.find((item) => item.value === temp.Status) || '-',
+      };
       setOrderInfo(tempDetail);
     },
   });
@@ -62,7 +63,6 @@ const TaskOrder: React.FC<IPropsType> = (props) => {
   const { run: getRepairDetail } = useRequest(getRepairRecordList, {
     manual: true,
     formatResult: (result: any) => {
-
       const temp = result.data.list[0];
       const tempDetail: IOrderInfo = {
         CreateTime: temp.CreateTime,
@@ -71,7 +71,8 @@ const TaskOrder: React.FC<IPropsType> = (props) => {
         Reason: temp.Reason,
         Repairman: userList.find((item) => item.ID === temp.Repairman) || '-',
         OrderStatus:
-          RepairOrderStatus.find((item) => item.value === temp.AcceptanceStatus) || '-',
+          OrderStatus.find((item) => item.value === temp.AcceptanceStatus) ||
+          '-',
       };
       setOrderInfo(tempDetail);
     },
@@ -89,8 +90,8 @@ const TaskOrder: React.FC<IPropsType> = (props) => {
         Reason: temp.detail,
         Repairman: userList.find((item) => item.ID === temp.operator_id) || '-',
         OrderStatus:
-          CraftOrderStatus.find((item) => item.value === temp.status) || '-',
-      }
+          OrderStatus.find((item) => item.value === temp.status) || '-',
+      };
       setOrderInfo(tempDetail);
     },
   });
@@ -118,38 +119,54 @@ const TaskOrder: React.FC<IPropsType> = (props) => {
     }
   }, []);
 
-
   return (
     <PageContent>
       <PageTitle returnable>工单详情</PageTitle>
       <div className={styles.selfCardBox}>
         <div className={styles.orderInfo}>
-          <SubTitle title="工单信息" statusStr="已完成" radius />
+          <SubTitle
+            title="工单信息"
+            // @ts-ignore
+            showStatus={orderInfo?.OrderStatus.value === 2}
+            radius
+          />
           <div style={{ padding: '15px' }}>
             <Row className={styles.rowMargin}>
-              <Col span={16}>时间:{'-'}</Col>
-              <Col span={8}>
+              <Col className={styles.fontS18} span={16}>
+                时间:{'-'}
+              </Col>
+              <Col className={styles.fontS18} span={8}>
                 {/*// @ts-ignore*/}
                 工单负责人:{orderInfo?.Repairman?.CName || '-'}
               </Col>
             </Row>
             <Row className={styles.rowMargin}>
-              {/*// @ts-ignore*/}
-              <Col span={16}>工单状态:{orderInfo?.OrderStatus?.label}</Col>
-              <Col span={8}>派单人员:{'-'}</Col>
+              <Col className={styles.fontS18} span={16}>
+                {/*// @ts-ignore*/}
+                工单状态:{orderInfo?.OrderStatus?.label}
+              </Col>
+              <Col className={styles.fontS18} span={8}>
+                派单人员:{'-'}
+              </Col>
             </Row>
             <Row className={styles.rowMargin}>
-              <Col>派单时间:{orderInfo?.CreateTime || '-'}</Col>
+              <Col className={styles.fontS18}>
+                派单时间:{orderInfo?.CreateTime || '-'}
+              </Col>
             </Row>
             <Row className={styles.rowMargin}>
-              <Col>计划完成时间:{orderInfo?.PlanTime || '-'}</Col>
+              <Col className={styles.fontS18}>
+                计划完成时间:{orderInfo?.PlanTime || '-'}
+              </Col>
             </Row>
             <Row className={styles.rowMargin}>
-              <Col>实际完成时间:{orderInfo?.RepairTime || '-'}</Col>
+              <Col className={styles.fontS18}>
+                实际完成时间:{orderInfo?.RepairTime || '-'}
+              </Col>
             </Row>
             <Row>
-              <Col span={4}>工单详情:</Col>
-              <Col span={20}>
+              <Col className={styles.fontS18}>工单详情:</Col>
+              <Col className={styles.fontS18} span={20}>
                 {orderInfo?.Reason}
                 {/*<Table />*/}
               </Col>
@@ -160,10 +177,10 @@ const TaskOrder: React.FC<IPropsType> = (props) => {
         {/*  <SubTitle title="维修内容" />*/}
         {/*  <div style={{ padding: '15px' }}>*/}
         {/*    <Row className={styles.rowMargin}>*/}
-        {/*      <Col>是否润滑加油:否</Col>*/}
+        {/*      <Col className={styles.fontS18}>是否润滑加油:否</Col>*/}
         {/*    </Row>*/}
         {/*    <Row>*/}
-        {/*      <Col>是否清洁:否</Col>*/}
+        {/*      <Col className={styles.fontS18} >是否清洁:否</Col>*/}
         {/*    </Row>*/}
         {/*  </div>*/}
         {/*</div>*/}

+ 20 - 0
src/pages/TaskManage/Detail/TaskOrder/taskOrder.less

@@ -13,3 +13,23 @@
 .rowMargin {
   margin-bottom: 15px;
 }
+
+.fontS24 {
+  font-size: 24px;
+}
+
+.fontS22 {
+  font-size: 22px;
+}
+
+.fontS20 {
+  font-size: 20px;
+}
+
+.fontS18 {
+  font-size: 18px;
+}
+
+.fontS16 {
+  font-size: 16px;
+}

+ 25 - 6
src/pages/TaskManage/components/SubTitle.tsx

@@ -3,10 +3,17 @@ import React from 'react';
 interface IPropsType {
   title: string;
   statusStr?: string;
+  showStatus?: boolean;
   radius?: boolean;
 }
 
-const SubTitle: React.FC<IPropsType> = ({ title, statusStr='', radius=false }) => {
+const SubTitle: React.FC<IPropsType> = ({
+  title,
+  statusStr = '',
+  showStatus = false,
+  radius = false,
+}) => {
+  const img = require('@/assets/TaskManage/yiwancheng.png');
   return (
     <div
       style={{
@@ -15,19 +22,31 @@ const SubTitle: React.FC<IPropsType> = ({ title, statusStr='', radius=false }) =
         display: 'flex',
         justifyContent: 'space-between',
         alignItems: 'center',
-        paddingLeft: '10px',
+        paddingLeft: '20px',
         paddingRight: '10px',
         backgroundColor: '#d9e7f9',
-        fontSize: '18px',
-        height: '40px',
+        fontSize: '20px',
+        height: '66px',
         borderRadius: radius ? '8px 8px 0 0 ' : 'unset',
       }}
     >
       <div>
-        <span style={{ border: '2px solid #4a90e2', marginRight: '5px' }} />
+        <span style={{ border: '2px solid #4a90e2', marginRight: '8px' }} />
         {title}
       </div>
-      <div>{statusStr}</div>
+      {showStatus && (
+        <div>
+          <img
+            src={img}
+            alt="status"
+            style={{
+              position: 'absolute',
+              right: '10px',
+              top: '34px',
+            }}
+          />
+        </div>
+      )}
     </div>
   );
 };

+ 13 - 10
src/pages/TaskManage/components/TopFilter.tsx

@@ -1,6 +1,7 @@
 import { ITopFilter } from '@/pages/TaskManage/Detail/TaskList/taskList.types';
-import { Divider, Select } from 'antd';
-import { useState } from 'react';
+import { Col,  Row, Select } from 'antd';
+import {  useState } from "react";
+import '../index.less'
 
 interface IProps {
   filters: ITopFilter[];
@@ -9,13 +10,18 @@ interface IProps {
 
 const TopFilter: React.FC<IProps> = ({ filters, onChange }) => {
   const [values, setValues] = useState<any[]>([]);
+
   return (
-    <div style={{ display: 'flex', justifyContent: 'center' }}>
+    <Row justify="space-around">
       {filters.map((item, index) => {
         return (
-          <div key={item.key}>
+          <Col
+            key={item.key}
+            span={Math.floor(22 / filters.length)}
+            style={{ textAlign: 'center' }}
+          >
             <Select
-              style={{ width: 120 }}
+              className='antdSelect'
               size="large"
               bordered={false}
               placeholder={item.placeholder}
@@ -32,13 +38,10 @@ const TopFilter: React.FC<IProps> = ({ filters, onChange }) => {
                 onChange(temp);
               }}
             />
-            {filters.length > 1 && index !== filters.length - 1 && (
-              <Divider type="vertical" style={{ margin: '0 30px' }} />
-            )}
-          </div>
+          </Col>
         );
       })}
-    </div>
+    </Row>
   );
 };
 

+ 31 - 2
src/pages/TaskManage/index.less

@@ -2,9 +2,10 @@
   border: none;
 
   .listItem {
-    margin: 20px 10px;
-    height: 10vh;
+    margin: 20px 20px 20px 0;
+    height: 12vh;
     box-shadow: 0 0 6px 3px rgba(0, 150, 255, 10%);
+    border-radius: 10px;
 
     .itemCount {
       display: flex;
@@ -15,7 +16,35 @@
       .countNumber {
         color: #f5a623;
         font-size: 24px;
+        margin-bottom: 6px;
       }
     }
   }
 }
+
+.antdSelect .ant-select-selection-item,
+.antdSelect .ant-select-selection-placeholder,
+.ant-select-item-option-content
+{
+  font-size: 20px;
+}
+
+.antdSelect .ant-select-selection-placeholder{
+  color: rgba(0,0,0,0.75);
+}
+
+.ant-select-dropdown{
+  width: unset;
+}
+
+.fontS20{
+  font-size: 20px;
+}
+
+.fontS18{
+  font-size: 18px;
+}
+
+.fontS16{
+  font-size: 16px;
+}

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

@@ -49,10 +49,10 @@ const TaskManage: React.FC<IPropTypes> = (props) => {
           goTaskList(item.value);
         }}
       >
-        <List.Item.Meta title={item.label} />
+        <List.Item.Meta title={<span className={styles.fontS20}>{item.label}</span>} />
         <div className={styles.itemCount}>
           <div className={styles.countNumber}>{mandateCount[index]}</div>
-          <div>任务数量</div>
+          <div className={styles.fontS16}>任务数量</div>
         </div>
         <RightOutlined />
       </List.Item>