Bläddra i källkod

fix: types & miss element key issues

ZhaoJun 1 år sedan
förälder
incheckning
af990e90a3

+ 8 - 2
src/pages/TaskManage/Detail/TaskDetail/TaskDetail.tsx

@@ -15,7 +15,7 @@ import {
 import { getMandateDetail } from '@/services/TaskManage';
 import { useLocation } from '@@/exports';
 import { connect, useRequest } from '@umijs/max';
-import { Button, Col, Divider, Row, Table } from 'antd';
+import { Button, Col, Divider, Row } from 'antd';
 import { useEffect, useState } from 'react';
 import { useNavigate } from 'umi';
 import styles from './taskDetail.less';
@@ -86,7 +86,7 @@ function TaskDetail(props: IPropsType) {
     }
   }, []);
 
-  const goTaskOrder = (orderID: number, orderType:number) => {
+  const goTaskOrder = (orderID: number, orderType: number) => {
     navigate(
       `/task-manage/list/order-detail?project_id=${project_id}&order_id=${orderID}&order_type=${orderType}`,
     );
@@ -99,11 +99,14 @@ function TaskDetail(props: IPropsType) {
         <div className={styles.normalInfo}>
           <Row className={styles.infoRow}>
             <Col span={16}>时间:{mandateDetail?.CreateTime}</Col>
+            {/*// @ts-ignore*/}
             <Col span={8}>任务类别:{mandateDetail?.MandateClass?.label}</Col>
           </Row>
           <Row>
+            {/*// @ts-ignore*/}
             <Col span={16}>任务状态:{mandateDetail?.Status?.label}</Col>
             <Col span={8}>
+              {/*// @ts-ignore*/}
               任务负责人:{mandateDetail?.ResponsiblePeople?.CName}
             </Col>
           </Row>
@@ -135,9 +138,11 @@ function TaskDetail(props: IPropsType) {
                     <Col span={12}>
                       工单状态:
                       <span style={{ color: '#5697e4' }}>
+                        {/*// @ts-ignore*/}
                         {order.Status?.label}
                       </span>
                     </Col>
+                    {/*// @ts-ignore*/}
                     <Col span={12}>工单负责人:{order.Responsible?.CName}</Col>
                   </Row>
                 </div>
@@ -148,6 +153,7 @@ function TaskDetail(props: IPropsType) {
                     type="text"
                     ghost
                     onClick={() => {
+                      // @ts-ignore
                       goTaskOrder(order.Id, order.RecordType?.value);
                     }}
                   >

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

@@ -50,8 +50,6 @@ const TaskList: React.FC<IPropsType> = (props) => {
   /**
    * 处理选择器变化
    * @param value 选择的值,当清空时等于null
-   * @param item
-   * @param index
    */
   const onTopFilterChange = (value: any) => {
     if (topFilters.length === 0) {
@@ -122,7 +120,6 @@ const TaskList: React.FC<IPropsType> = (props) => {
       options: MandateStatus.map((item) => {
         return {
           ...item,
-          key: item.value + '任务状态',
         };
       }),
     });
@@ -163,6 +160,7 @@ const TaskList: React.FC<IPropsType> = (props) => {
     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),
@@ -197,8 +195,7 @@ const TaskList: React.FC<IPropsType> = (props) => {
               <div className={styles.rightButton}>
                 <Button
                   style={{ color: '#5697e4' }}
-                  type="text"
-                  ghost
+                  type='text'
                   onClick={() => {
                     goTaskOrder(order.Id, order.RecordType?.value);
                   }}
@@ -234,7 +231,6 @@ const TaskList: React.FC<IPropsType> = (props) => {
                 <Button
                   style={{ color: 'white' }}
                   type="text"
-                  ghost
                   onClick={() => {
                     goTaskDetail(item);
                   }}

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

@@ -1,5 +1,5 @@
 import { IMandateType } from '@/pages/TaskManage/index.types';
-import { BaseOptionType } from 'rc-select/es/Select';
+import { DefaultOptionType } from 'rc-select/es/Select';
 
 export interface IPropsType {
   userList: IUserType[];
@@ -27,23 +27,23 @@ export interface IWorkOrderType {
   Id: number;
   Note: string;
   PlanDoneTime: string;
-  RecordType: number | BaseOptionType;
+  RecordType: number | DefaultOptionType;
   Responsible: number | IUserType;
-  Status: number | BaseOptionType;
+  Status: number | DefaultOptionType;
 }
 
 export interface IMandateDetailType {
   Id: number;
   ProjectId: number;
-  MandateType: number | BaseOptionType;
-  MandateClass: number | BaseOptionType;
+  MandateType: number | DefaultOptionType;
+  MandateClass: number | DefaultOptionType;
   ResponsiblePeople: number | IUserType;
   Detail: string;
   MandateChild: IMandateChildType[];
   Records: IWorkOrderType[];
   Summary: string;
   CreateTime: string;
-  Status: number | BaseOptionType;
+  Status: number | DefaultOptionType;
   Note: string;
   OperationLog: string;
   OperationPeople: number;

+ 5 - 3
src/pages/TaskManage/Detail/TaskOrder/TaskOrder.tsx

@@ -11,7 +11,7 @@ import {
 import { useLocation } from '@@/exports';
 import { connect, useRequest } from '@umijs/max';
 import { Col, Row } from 'antd';
-import { BaseOptionType } from 'rc-select/es/Select';
+import { DefaultOptionType } from "rc-select/es/Select";
 import React, { useEffect, useState } from 'react';
 import styles from './taskOrder.less';
 
@@ -26,7 +26,7 @@ interface IOrderInfo {
   RepairTime: string;
   Reason: string;
   Repairman: string | IUserType;
-  OrderStatus: string | BaseOptionType;
+  OrderStatus: string | DefaultOptionType;
 }
 
 const TaskOrder: React.FC<IPropsType> = (props) => {
@@ -81,7 +81,6 @@ const TaskOrder: React.FC<IPropsType> = (props) => {
   const { run: getCraftDetail } = useRequest(getCraftRecordList, {
     manual: true,
     formatResult: (result) => {
-      console.log(result.data.list[0]);
       const temp = result.data.list[0];
       const tempDetail = {
         CreateTime: temp.start_time,
@@ -119,6 +118,7 @@ const TaskOrder: React.FC<IPropsType> = (props) => {
     }
   }, []);
 
+
   return (
     <PageContent>
       <PageTitle returnable>工单详情</PageTitle>
@@ -129,10 +129,12 @@ const TaskOrder: React.FC<IPropsType> = (props) => {
             <Row className={styles.rowMargin}>
               <Col span={16}>时间:{'-'}</Col>
               <Col 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>
             </Row>

+ 2 - 4
src/pages/TaskManage/components/TopFilter.tsx

@@ -9,14 +9,12 @@ interface IProps {
 
 const TopFilter: React.FC<IProps> = ({ filters, onChange }) => {
   const [values, setValues] = useState<any[]>([]);
-
   return (
     <div style={{ display: 'flex', justifyContent: 'center' }}>
       {filters.map((item, index) => {
         return (
-          <>
+          <div key={item.key}>
             <Select
-              key={`${index}${item.placeholder}`}
               style={{ width: 120 }}
               size="large"
               bordered={false}
@@ -37,7 +35,7 @@ const TopFilter: React.FC<IProps> = ({ filters, onChange }) => {
             {filters.length > 1 && index !== filters.length - 1 && (
               <Divider type="vertical" style={{ margin: '0 30px' }} />
             )}
-          </>
+          </div>
         );
       })}
     </div>

+ 12 - 0
src/pages/TaskManage/constent.ts

@@ -83,6 +83,18 @@ export const MandateClass = [
     MandateType: 3,
     OrderType: 2,
   },
+  {
+    value: 14,
+    label: '数据超限',
+    MandateType: 3,
+    OrderType: 2,
+  },
+  {
+    value: 15,
+    label: '备品预警',
+    MandateType: 3,
+    OrderType: 2,
+  },
 ];
 
 export const MandateType = [

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

@@ -1,5 +1,5 @@
 import { IWorkOrderType } from '@/pages/TaskManage/Detail/TaskList/taskList.types';
-import { BaseOptionType } from 'rc-select/es/Select';
+import { DefaultOptionType } from 'rc-select/es/Select';
 
 export interface IPropTypes {
   mandateList: IMandateType[];
@@ -10,13 +10,13 @@ export interface IPropTypes {
 export interface IMandateType {
   Id: number;
   ProjectId: number;
-  MandateType: number | BaseOptionType;
-  MandateClass: number | BaseOptionType;
+  MandateType: number | DefaultOptionType;
+  MandateClass: number | DefaultOptionType;
   ResponsiblePeople: number;
   Detail: string;
   Summary: string;
   CreateTime: string;
-  Status: number | BaseOptionType;
+  Status: number | DefaultOptionType;
   Note: string;
   OperationLog: string;
   OperationPeople: number;