From 6ffddb4f427176d39bb41df21919d7038e5bf668 Mon Sep 17 00:00:00 2001
From: zhangyongtian <1181606322@qq.com>
Date: Wed, 11 Sep 2024 15:27:19 +0800
Subject: [PATCH] feat: 修改样式

---
 gz-customerSystem/src/views/register/index.jsx | 1368 ++++++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 1,029 insertions(+), 339 deletions(-)

diff --git a/gz-customerSystem/src/views/register/index.jsx b/gz-customerSystem/src/views/register/index.jsx
index 30c32d4..844aef1 100644
--- a/gz-customerSystem/src/views/register/index.jsx
+++ b/gz-customerSystem/src/views/register/index.jsx
@@ -2,36 +2,83 @@
  * @Author: dminyi 1301963064@qq.com
  * @Date: 2024-09-08 15:14:12
  * @LastEditors: dminyi 1301963064@qq.com
- * @LastEditTime: 2024-09-09 10:05:35
+ * @LastEditTime: 2024-09-10 23:36:06
  * @FilePath: \gzDyh\gz-customerSystem\src\views\register\index.jsx
  * @Description: 工作台
  */
-import React, { useState } from 'react';
-import { tab1, tab2, tab3, tab4, tab5, tab6,visitInto,checkInto } from '@/assets/images'
+import React, { useEffect, useState } from 'react';
+import { useNavigate } from 'react-router-dom';
+import { tab1, tab2, tab3, tab4, tab5, tab6, visitInto, checkInto } from '@/assets/images'
 import TableView from '../../components/TableView';
 import { Space } from 'antd';
-import { Tabs, Typography } from '@arco-design/web-react';
+import { Tabs, Typography, Radio } from '@arco-design/web-react';
+import * as $$ from '@/utils/utility';
+import './index.less';
+
 
 const TabPane = Tabs.TabPane;
 
+// function pageMyTaskBlApi(data) {
+//   return $$.ax.request({ url: `caseTask/pageMyTaskBl`, type: 'get', service: 'mediate', data });
+// }
 
+function getCountListApi(data) {
+  return $$.ax.request({ url: `caseTask/getCountList`, type: 'get', service: 'mediate', data });
+}
+//分派
+function pageMyTaskFpApi(data) {
+  return $$.ax.request({ url: `caseTask/pageMyTaskFp?page=1&size=10&sortType=1&sortColmn=1&status=1`, type: 'get', service: 'mediate', data });
+}
+
+//签收
+function pageMyTaskQsApi(data) {
+  return $$.ax.request({ url: `caseTask/pageMyTaskQs?page=1&size=10&sortType=1&sortColmn=1&status=1`, type: 'get', service: 'mediate', data });
+}
+
+//受理
+function pageMyTaskSlApi(data) {
+  return $$.ax.request({ url: `caseTask/pageMyTaskSl?page=1&size=10&sortType=1&sortColmn=1&status=1`, type: 'get', service: 'mediate', data });
+}
+
+//办理中
+function pageMyTaskBlzApi(data) {
+  return $$.ax.request({ url: `caseTask/pageMyTaskBlz?page=1&size=10&sortType=1&sortColmn=1&status=1`, type: 'get', service: 'mediate', data });
+}
+
+//待审核
+function pageMyTaskShApi(type) {
+  return $$.ax.request({ url: `caseTask/pageMyTaskSh?page=1&size=10&sortType=1&status=0&type=` + type, type: 'get', service: 'mediate' });
+}
+
+
+//待审核
+function pageMyTaskBlApi(type) {
+  return $$.ax.request({ url: `caseTask/pageMyTaskBl?page=1&size=10&sortType=1&sortColmn=1&status=` + type, type: 'get', service: 'mediate' });
+}
+
+//签收
+function signApi(data) {
+  return $$.ax.request({ url: `caseTask/sign`, type: 'post', service: 'mediate', data });
+}
 
 const VisitWorkBench = () => {
+  const navigate = useNavigate();
   const [tabActivekey, setTabActivekey] = useState('1')
-  const [column, setColumn] = useState('1')
+  const [CountList, setCountList] = useState({})
+  const [direction, setDirection] = useState('回退审核')
   const tabsList = [
     {
       key: '1',
       label: '待分派',
       bgColor: '#E8F8FF',
-      num: 10,
+      num: `${CountList?.waitDisp || '0'}`,
       img: tab1
     },
     {
       key: '2',
       label: '待签收',
       bgColor: '#E8FFEA',
-      num: 30,
+      num: `${CountList?.waitSign || '0'}`,
       img: tab2
 
     },
@@ -39,7 +86,7 @@
       key: '3',
       label: '待受理',
       bgColor: '#F5E8FF',
-      num: 50,
+      num: `${CountList?.waitAccept || '0'}`,
       img: tab3
 
     },
@@ -47,7 +94,7 @@
       key: '4',
       label: '办理中',
       bgColor: '#E6FFFB',
-      num: 60,
+      num: `${CountList?.processing || '0'}`,
       img: tab4
 
     },
@@ -55,7 +102,7 @@
       key: '5',
       label: '待审核',
       bgColor: '#E8F7FF',
-      num: 70,
+      num: `${CountList?.waitReview || '0'}`,
       img: tab5
 
     },
@@ -63,331 +110,56 @@
       key: '6',
       label: '督办',
       bgColor: '#FFF7E6',
-      num: 80,
+      num: `${CountList?.supervise || '0'}`,
       img: tab6
 
     },
   ]
-
-  const [fakeData1, setFakeData1] = useState(
-    [
-      {
-        id: 1,
-        caseNo: 'A20230101',
-        judicNo: '申请材料',
-        perClassName: '李晓明的纠纷化解申请表、身份证...',
-        inputUserName: '0',
-        mediateUserName: '2024-7-12 12:00',
-        judgeName: '王五',
-        mediator: '赵六',
-        handlerUserName: '钱七',
-        returnUserName: '孙八',
-        expireTime: '2023-08-10T08:00:00.000Z',
-        processName: '进行中',
-        otherMediator: '周九',
-        canalName: '网络',
-        judicResult: '通过',
-        assistName: '吴十',
-        mediTypeName: '民事调解',
-        serieStatus: '1', // 1 表示非系列案,2 表示系列案
-        // 更多字段...
-      },
-      {
-        id: 2,
-        caseNo: 'A20230101',
-        judicNo: '证据材料',
-        perClassName: '李晓明的纠纷化解申请表、身份证...',
-        inputUserName: '0',
-        mediateUserName: '2024-7-12 12:00',
-        judgeName: '王五',
-        mediator: '赵六',
-        handlerUserName: '钱七',
-        returnUserName: '孙八',
-        expireTime: '2023-08-10T08:00:00.000Z',
-        processName: '进行中',
-        otherMediator: '周九',
-        canalName: '网络',
-        judicResult: '通过',
-        assistName: '吴十',
-        mediTypeName: '民事调解',
-        serieStatus: '1', // 1 表示非系列案,2 表示系列案
-        // 更多字段...
-      },
-      {
-        id: 2,
-        caseNo: 'A20230101',
-        judicNo: '证据材料',
-        perClassName: '李晓明的纠纷化解申请表、身份证...',
-        inputUserName: '0',
-        mediateUserName: '2024-7-12 12:00',
-        judgeName: '王五',
-        mediator: '赵六',
-        handlerUserName: '钱七',
-        returnUserName: '孙八',
-        expireTime: '2023-08-10T08:00:00.000Z',
-        processName: '进行中',
-        otherMediator: '周九',
-        canalName: '网络',
-        judicResult: '通过',
-        assistName: '吴十',
-        mediTypeName: '民事调解',
-        serieStatus: '1', // 1 表示非系列案,2 表示系列案
-        // 更多字段...
-      },
-      {
-        id: 2,
-        caseNo: 'A20230101',
-        judicNo: '证据材料',
-        perClassName: '李晓明的纠纷化解申请表、身份证...',
-        inputUserName: '0',
-        mediateUserName: '2024-7-12 12:00',
-        judgeName: '王五',
-        mediator: '赵六',
-        handlerUserName: '钱七',
-        returnUserName: '孙八',
-        expireTime: '2023-08-10T08:00:00.000Z',
-        processName: '进行中',
-        otherMediator: '周九',
-        canalName: '网络',
-        judicResult: '通过',
-        assistName: '吴十',
-        mediTypeName: '民事调解',
-        serieStatus: '1', // 1 表示非系列案,2 表示系列案
-        // 更多字段...
-      },
-      {
-        id: 2,
-        caseNo: 'A20230101',
-        judicNo: '证据材料',
-        perClassName: '李晓明的纠纷化解申请表、身份证...',
-        inputUserName: '0',
-        mediateUserName: '2024-7-12 12:00',
-        judgeName: '王五',
-        mediator: '赵六',
-        handlerUserName: '钱七',
-        returnUserName: '孙八',
-        expireTime: '2023-08-10T08:00:00.000Z',
-        processName: '进行中',
-        otherMediator: '周九',
-        canalName: '网络',
-        judicResult: '通过',
-        assistName: '吴十',
-        mediTypeName: '民事调解',
-        serieStatus: '1', // 1 表示非系列案,2 表示系列案
-        // 更多字段...
-      },
-      {
-        id: 2,
-        caseNo: 'A20230101',
-        judicNo: '证据材料',
-        perClassName: '李晓明的纠纷化解申请表、身份证...',
-        inputUserName: '0',
-        mediateUserName: '2024-7-12 12:00',
-        judgeName: '王五',
-        mediator: '赵六',
-        handlerUserName: '钱七',
-        returnUserName: '孙八',
-        expireTime: '2023-08-10T08:00:00.000Z',
-        processName: '进行中',
-        otherMediator: '周九',
-        canalName: '网络',
-        judicResult: '通过',
-        assistName: '吴十',
-        mediTypeName: '民事调解',
-        serieStatus: '1', // 1 表示非系列案,2 表示系列案
-        // 更多字段...
-      },
-      {
-        id: 2,
-        caseNo: 'A20230101',
-        judicNo: '证据材料',
-        perClassName: '李晓明的纠纷化解申请表、身份证...',
-        inputUserName: '0',
-        mediateUserName: '2024-7-12 12:00',
-        judgeName: '王五',
-        mediator: '赵六',
-        handlerUserName: '钱七',
-        returnUserName: '孙八',
-        expireTime: '2023-08-10T08:00:00.000Z',
-        processName: '进行中',
-        otherMediator: '周九',
-        canalName: '网络',
-        judicResult: '通过',
-        assistName: '吴十',
-        mediTypeName: '民事调解',
-        serieStatus: '1', // 1 表示非系列案,2 表示系列案
-        // 更多字段...
-      },
-      {
-        id: 2,
-        caseNo: 'A20230101',
-        judicNo: '证据材料',
-        perClassName: '李晓明的纠纷化解申请表、身份证...',
-        inputUserName: '0',
-        mediateUserName: '2024-7-12 12:00',
-        judgeName: '王五',
-        mediator: '赵六',
-        handlerUserName: '钱七',
-        returnUserName: '孙八',
-        expireTime: '2023-08-10T08:00:00.000Z',
-        processName: '进行中',
-        otherMediator: '周九',
-        canalName: '网络',
-        judicResult: '通过',
-        assistName: '吴十',
-        mediTypeName: '民事调解',
-        serieStatus: '1', // 1 表示非系列案,2 表示系列案
-        // 更多字段...
-      },
-      {
-        id: 2,
-        caseNo: 'A20230101',
-        judicNo: '证据材料',
-        perClassName: '李晓明的纠纷化解申请表、身份证...',
-        inputUserName: '0',
-        mediateUserName: '2024-7-12 12:00',
-        judgeName: '王五',
-        mediator: '赵六',
-        handlerUserName: '钱七',
-        returnUserName: '孙八',
-        expireTime: '2023-08-10T08:00:00.000Z',
-        processName: '进行中',
-        otherMediator: '周九',
-        canalName: '网络',
-        judicResult: '通过',
-        assistName: '吴十',
-        mediTypeName: '民事调解',
-        serieStatus: '1', // 1 表示非系列案,2 表示系列案
-        // 更多字段...
-      },
-      {
-        id: 2,
-        caseNo: 'A20230101',
-        judicNo: '证据材料',
-        perClassName: '李晓明的纠纷化解申请表、身份证...',
-        inputUserName: '0',
-        mediateUserName: '2024-7-12 12:00',
-        judgeName: '王五',
-        mediator: '赵六',
-        handlerUserName: '钱七',
-        returnUserName: '孙八',
-        expireTime: '2023-08-10T08:00:00.000Z',
-        processName: '进行中',
-        otherMediator: '周九',
-        canalName: '网络',
-        judicResult: '通过',
-        assistName: '吴十',
-        mediTypeName: '民事调解',
-        serieStatus: '1', // 1 表示非系列案,2 表示系列案
-        // 更多字段...
-      },
-
-      // 更多数据...
-    ]
-  )
-
-  // 列配置
-  const [fakeColumns, setFakeColumns] = useState([
+  const [fakeData1, setFakeData1] = useState([])
+  const [columnType, setColumnType] = useState([
     {
-      title: tabActivekey === '5' ? '回退时间' : tabActivekey === '6' ? '督办时间' : '流转时间',
-      dataIndex: 'caseNo',
-      key: 'caseNo',
+      title: '流转时间',
+      dataIndex: 'turnaroundTime',
+      key: 'turnaroundTime',
       width: 100,
-      render: (text, record, index) => <span>{index + 1}</span>,
     },
     {
       title: '分派时限',
-      dataIndex: 'dispatchDeadline',
-      key: 'dispatchDeadline',
-      width: 60,
-    },
-    {
-      title: '签收时限',
-      dataIndex: 'receiptDeadline',
-      key: 'receiptDeadline',
-      width: 60,
-    },
-    {
-      title: '受理时限',
-      dataIndex: 'acceptanceDeadline',
-      key: 'acceptanceDeadline',
-      width: 60,
-    },
-    {
-      title: '已办天数',
-      dataIndex: 'processedDays',
-      key: 'processedDays',
-      width: 60,
-    },
-    {
-      title: '回复时限',
-      dataIndex: 'replyDeadline',
-      key: 'replyDeadline',
-      width: 60,
+      dataIndex: 'timeLimit',
+      key: 'timeLimit',
+      width: 190,
+      render: (text, record, index) => {
+        return getDiffTime(record.timeLimit)
+      }
     },
     {
       title: '事项等级',
-      dataIndex: 'matterLevel',
-      key: 'matterLevel',
-      width: 180,
-      render: (text) => (
-        <>
-          {text}份
-        </>
-      ),
+      dataIndex: 'caseGrade',
+      key: 'caseGrade',
+      width: 80,
     },
     {
       title: '事项来源',
-      dataIndex: 'matterSource',
-      key: 'matterSource',
+      dataIndex: 'caseSource',
+      key: 'caseSource',
       width: 180,
     },
     {
       title: '事项类型',
-      dataIndex: 'matterType',
-      key: 'matterType',
-      width: 180,
-    },
-    {
-      title: '承办部门',
-      dataIndex: 'handlingDepartment',
-      key: 'handlingDepartment',
-      width: 180,
-    },
-    {
-      title: '配合部门',
-      dataIndex: 'cooperatingDepartment',
-      key: 'cooperatingDepartment',
-      width: 180,
-    },
-    {
-      title: '督办部门',
-      dataIndex: 'supervisionDepartment',
-      key: 'supervisionDepartment',
-      width: 180,
-    },
-    {
-      title: '督办意见',
-      dataIndex: 'supervisionOpinion',
-      key: 'supervisionOpinion',
-      width: 180,
-    },
-    {
-      title: '经办人',
-      dataIndex: 'handler',
-      key: 'handler',
+      dataIndex: 'caseType',
+      key: 'caseType',
       width: 180,
     },
     {
       title: '申请方',
-      dataIndex: 'applicant',
-      key: 'applicant',
+      dataIndex: 'plaintiffs',
+      key: 'plaintiffs',
       width: 180,
     },
     {
       title: '被申请方',
-      dataIndex: 'respondent',
-      key: 'respondent',
+      dataIndex: 'defendants',
+      key: 'defendants',
       width: 180,
     },
     {
@@ -395,30 +167,911 @@
       dataIndex: 'actions',
       key: 'actions',
       width: 180,
+      fixed: 'right',
       render: (text, record) => (
-        <Space>
-          <div>详情</div>
-          <div>处理</div>
+        <Space style={{ color: '#1A6FB8' }}>
+          <div onClick={() => navigate(`/mediate/visit/fileMessage?caseTaskId=${record.ownerId}&caseId=${record.caseId}`)} style={{ cursor: 'pointer' }}>详情</div>
+          <div onClick={() => navigate(`/mediate/visit/eventFlow?caseTaskId=${record.ownerId}&caseId=${record.caseId}`)} style={{ cursor: 'pointer' }}>处理</div>
         </Space>
       ),
     },
-  ]);
+  ])
 
+  // 列配置
+  const fakeColumns3 = [
+    {
+      title: '流转时间',
+      dataIndex: 'turnaroundTime',
+      key: 'turnaroundTime',
+      width: 100,
+    },
+    {
+      title: '分派时限',
+      dataIndex: 'timeLimit',
+      key: 'timeLimit',
+      width: 190,
+      render: (text, record, index) => {
+        return getDiffTime(record.timeLimit)
+      }
+    },
+    {
+      title: '事项等级',
+      dataIndex: 'caseGrade',
+      key: 'caseGrade',
+      width: 80,
+    },
+    {
+      title: '事项来源',
+      dataIndex: 'caseSource',
+      key: 'caseSource',
+      width: 180,
+    },
+    {
+      title: '事项类型',
+      dataIndex: 'caseType',
+      key: 'caseType',
+      width: 180,
+    },
+    {
+      title: '申请方',
+      dataIndex: 'plaintiffs',
+      key: 'plaintiffs',
+      width: 180,
+    },
+    {
+      title: '被申请方',
+      dataIndex: 'defendants',
+      key: 'defendants',
+      width: 180,
+    },
+    {
+      title: '操作',
+      dataIndex: 'actions',
+      key: 'actions',
+      width: 180,
+      fixed: 'right',
+      render: (text, record) => (
+        <Space style={{ color: '#1A6FB8' }}>
+          <div onClick={() => navigate(`/mediate/visit/fileMessage?caseTaskId=${record.ownerId}&caseId=${record.caseId}`)} style={{ cursor: 'pointer' }}>详情</div>
+          <div onClick={() => navigate(`/mediate/visit/eventFlow?caseTaskId=${record.ownerId}&caseId=${record.caseId}`)} style={{ cursor: 'pointer' }}>处理</div>
+        </Space>
+      ),
+    },
+  ];
+  const fakeColumns3Info = [
+    {
+      title: '流转时间',
+      dataIndex: 'turnaroundTime',
+      key: 'turnaroundTime',
+      width: 100,
+    },
+    {
+      title: '分派时限',
+      dataIndex: 'timeLimit',
+      key: 'timeLimit',
+      width: 190,
+      render: (text, record, index) => {
+        return getDiffTime(record.timeLimit)
+      }
+    },
+    {
+      title: '事项等级',
+      dataIndex: 'caseGrade',
+      key: 'caseGrade',
+      width: 80,
+    },
+    {
+      title: '事项来源',
+      dataIndex: 'caseSource',
+      key: 'caseSource',
+      width: 180,
+    },
+    {
+      title: '事项类型',
+      dataIndex: 'caseType',
+      key: 'caseType',
+      width: 180,
+    },
+    {
+      title: '申请方',
+      dataIndex: 'plaintiffs',
+      key: 'plaintiffs',
+      width: 180,
+    },
+    {
+      title: '被申请方',
+      dataIndex: 'defendants',
+      key: 'defendants',
+      width: 180,
+    },
+    {
+      title: '操作',
+      dataIndex: 'actions',
+      key: 'actions',
+      width: 180,
+      fixed: 'right',
+      render: (text, record) => (
+        <Space style={{ color: '#1A6FB8' }}>
+          <div onClick={() => navigate(`/mediate/visit/fileMessage?caseTaskId=${record.ownerId}&caseId=${record.caseId}`)} style={{ cursor: 'pointer' }}>详情</div>
+        </Space>
+      ),
+    },
+  ];
+  const fakeColumns1 = [
+    {
+      title: '流转时间',
+      dataIndex: 'turnaroundTime',
+      key: 'turnaroundTime',
+      width: 100,
+    },
+    {
+      title: '签收时限',
+      dataIndex: 'timeLimit',
+      key: 'timeLimit',
+      width: 190,
+      render: (text, record, index) => {
+        return getDiffTime(record.timeLimit)
+      }
+    },
+    {
+      title: '事项等级',
+      dataIndex: 'caseGrade',
+      key: 'caseGrade',
+      width: 80,
+    },
+    {
+      title: '事项来源',
+      dataIndex: 'caseSource',
+      key: 'caseSource',
+      width: 180,
+    },
+    {
+      title: '事项类型',
+      dataIndex: 'caseType',
+      key: 'caseType',
+      width: 180,
+    },
+    {
+      title: '申请方',
+      dataIndex: 'plaintiffs',
+      key: 'plaintiffs',
+      width: 180,
+    },
+    {
+      title: '被申请方',
+      dataIndex: 'defendants',
+      key: 'defendants',
+      width: 180,
+    },
+    {
+      title: '操作',
+      dataIndex: 'actions',
+      key: 'actions',
+      width: 180,
+      fixed: 'right',
+      render: (text, record) => (
+        <Space style={{ color: '#1A6FB8' }}>
+          <div onClick={() => navigate(`/mediate/visit/fileMessage?caseTaskId=${record.ownerId}&caseId=${record.caseId}`)} style={{ cursor: 'pointer' }}>详情</div>
+          <div onClick={() => handleSign(record.caseId, record.ownerId)} style={{ cursor: 'pointer' }}>签收</div>
+        </Space>
+      ),
+    },
+  ];
+  const fakeColumns1Info = [
+    {
+      title: '流转时间',
+      dataIndex: 'turnaroundTime',
+      key: 'turnaroundTime',
+      width: 100,
+    },
+    {
+      title: '签收时限',
+      dataIndex: 'timeLimit',
+      key: 'timeLimit',
+      width: 190,
+      render: (text, record, index) => {
+        return getDiffTime(record.timeLimit)
+      }
+    },
+    {
+      title: '事项等级',
+      dataIndex: 'caseGrade',
+      key: 'caseGrade',
+      width: 80,
+    },
+    {
+      title: '事项来源',
+      dataIndex: 'caseSource',
+      key: 'caseSource',
+      width: 180,
+    },
+    {
+      title: '事项类型',
+      dataIndex: 'caseType',
+      key: 'caseType',
+      width: 180,
+    },
+    {
+      title: '申请方',
+      dataIndex: 'plaintiffs',
+      key: 'plaintiffs',
+      width: 180,
+    },
+    {
+      title: '被申请方',
+      dataIndex: 'defendants',
+      key: 'defendants',
+      width: 180,
+    },
+    {
+      title: '操作',
+      dataIndex: 'actions',
+      key: 'actions',
+      width: 180,
+      fixed: 'right',
+      render: (text, record) => (
+        <Space style={{ color: '#1A6FB8' }}>
+          <div onClick={() => navigate(`/mediate/visit/fileMessage?caseTaskId=${record.ownerId}&caseId=${record.caseId}`)} style={{ cursor: 'pointer' }}>详情</div>
+          <div>签收</div>
+        </Space>
+      ),
+    },
+  ];
+  const fakeColumns2 = [
+    {
+      title: '流转时间',
+      dataIndex: 'turnaroundTime',
+      key: 'turnaroundTime',
+      width: 100,
+    },
+    {
+      title: '受理时限',
+      dataIndex: 'timeLimit',
+      key: 'timeLimit',
+      width: 190,
+      render: (text, record, index) => {
+        return getDiffTime(record.timeLimit)
+      }
+    },
+    {
+      title: '事项等级',
+      dataIndex: 'caseGrade',
+      key: 'caseGrade',
+      width: 80,
+    },
+    {
+      title: '事项来源',
+      dataIndex: 'caseSource',
+      key: 'caseSource',
+      width: 180,
+    },
+    {
+      title: '事项类型',
+      dataIndex: 'caseType',
+      key: 'caseType',
+      width: 180,
+    },
+    {
+      title: '申请方',
+      dataIndex: 'plaintiffs',
+      key: 'plaintiffs',
+      width: 180,
+    },
+    {
+      title: '被申请方',
+      dataIndex: 'defendants',
+      key: 'defendants',
+      width: 180,
+    },
+    {
+      title: '操作',
+      dataIndex: 'actions',
+      key: 'actions',
+      width: 180,
+      fixed: 'right',
+      render: (text, record) => (
+        <Space style={{ color: '#1A6FB8' }}>
+          <div onClick={() => navigate(`/mediate/visit/fileMessage?caseTaskId=${record.ownerId}&caseId=${record.caseId}`)} style={{ cursor: 'pointer' }}>详情</div>
+          <div onClick={() => navigate(`/mediate/visit/eventFlow?caseTaskId=${record.ownerId}&caseId=${record.caseId}`)} style={{ cursor: 'pointer' }}>处理</div>
+        </Space>
+      ),
+    },
+  ];
+  const fakeColumns2Info = [
+    {
+      title: '流转时间',
+      dataIndex: 'turnaroundTime',
+      key: 'turnaroundTime',
+      width: 100,
+    },
+    {
+      title: '受理时限',
+      dataIndex: 'timeLimit',
+      key: 'timeLimit',
+      width: 190,
+      render: (text, record, index) => {
+        return getDiffTime(record.timeLimit)
+      }
+    },
+    {
+      title: '事项等级',
+      dataIndex: 'caseGrade',
+      key: 'caseGrade',
+      width: 80,
+    },
+    {
+      title: '事项来源',
+      dataIndex: 'caseSource',
+      key: 'caseSource',
+      width: 180,
+    },
+    {
+      title: '事项类型',
+      dataIndex: 'caseType',
+      key: 'caseType',
+      width: 180,
+    },
+    {
+      title: '申请方',
+      dataIndex: 'plaintiffs',
+      key: 'plaintiffs',
+      width: 180,
+    },
+    {
+      title: '被申请方',
+      dataIndex: 'defendants',
+      key: 'defendants',
+      width: 180,
+    },
+    {
+      title: '操作',
+      dataIndex: 'actions',
+      key: 'actions',
+      width: 180,
+      fixed: 'right',
+      render: (text, record) => (
+        <Space style={{ color: '#1A6FB8' }}>
+          <div onClick={() => navigate(`/mediate/visit/fileMessage?caseTaskId=${record.ownerId}&caseId=${record.caseId}`)} style={{ cursor: 'pointer' }}>详情</div>
+          <div onClick={() => navigate(`/mediate/visit/eventFlow?caseTaskId=${'1'}&caseId=${'1'}`)} style={{ cursor: 'pointer' }}>处理</div>
+        </Space>
+      ),
+    },
+  ];
+  const column = [
+    {
+      title: '流转时间',
+      dataIndex: 'turnaroundTime',
+      key: 'turnaroundTime',
+      width: 100,
+    },
+    {
+      title: '已办天数',
+      dataIndex: 'processingDays',
+      key: 'processingDays',
+      width: 100,
+    },
+    {
+      title: '事项等级',
+      dataIndex: 'caseGrade',
+      key: 'caseGrade',
+      width: 100,
+    },
+    {
+      title: '事项来源',
+      dataIndex: 'caseSource',
+      key: 'caseSource',
+      width: 100,
+    },
+    {
+      title: '事项类型',
+      dataIndex: 'caseType',
+      key: 'caseType',
+      width: 100,
+    },
+    {
+      title: '承办部门',
+      dataIndex: 'organizingUnit',
+      key: 'organizingUnit',
+      width: 180,
+    },
+    {
+      title: '配合部门',
+      dataIndex: 'cooperatingUnit',
+      key: 'cooperatingUnit',
+      width: 180,
+    },
+    {
+      title: '经办人',
+      dataIndex: 'manager',
+      key: 'manager',
+      width: 180,
+    },
+    {
+      title: '申请方',
+      dataIndex: 'plaintiffs',
+      key: 'plaintiffs',
+      width: 180,
+    },
+    {
+      title: '被申请方',
+      dataIndex: 'defendants',
+      key: 'defendants',
+      width: 180,
+    },
+    {
+      title: '操作',
+      dataIndex: 'actions',
+      key: 'actions',
+      width: 180,
+      fixed: 'right',
+      render: (text, record) => (
+        <Space>
+          <div onClick={() => navigate(`/mediate/visit/fileMessage?caseTaskId=${record.ownerId}&caseId=${record.caseId}`)} style={{ cursor: 'pointer', color: '#1A6FB8' }}>详情</div>
+          <div onClick={() => navigate(`/mediate/visit/handleFeedback?caseTaskId=${record.ownerId}&caseId=${record.caseId}`)} style={{ cursor: 'pointer', color: '#1A6FB8' }}>处理</div>
+        </Space>
+      ),
+    },
+  ]
+  const backColumn = [
+    {
+      title: '回退时间',
+      dataIndex: 'turnaroundTime',
+      key: 'turnaroundTime',
+      width: 100,
+    },
+    {
+      title: '回退部门',
+      dataIndex: 'backUnit',
+      key: 'backUnit',
+      width: 60,
+    },
+    {
+      title: '回退理由',
+      dataIndex: 'reason',
+      key: 'reason',
+      width: 180,
+    },
+    {
+      title: '事项等级',
+      dataIndex: 'caseGrade',
+      key: 'caseGrade',
+      width: 180,
+    },
+    {
+      title: '事项来源',
+      dataIndex: 'caseSource',
+      key: 'caseSource',
+      width: 180,
+    },
+    {
+      title: '事项类型',
+      dataIndex: 'caseType',
+      key: 'caseType',
+      width: 180,
+    },
+    {
+      title: '申请方',
+      dataIndex: 'plaintiffs',
+      key: 'plaintiffs',
+      width: 180,
+    },
+    {
+      title: '被申请方',
+      dataIndex: 'defendants',
+      key: 'defendants',
+      width: 180,
+    },
+    {
+      title: '操作',
+      dataIndex: 'actions',
+      key: 'actions',
+      width: 180,
+      fixed: 'right',
+      render: (text, record) => (
+        <Space>
+          <div onClick={() => navigate(`/mediate/visit/fileMessage?caseTaskId=${record.ownerId}&caseId=${record.caseId}`)} style={{ cursor: 'pointer' }}>详情</div>
+          {/* <div onClick={() => navigate(`/mediate/visit/handleFeedback?caseTaskId=${'1'}&caseId=${'1'}`)} style={{ cursor: 'pointer' }}>处理</div> */}
+          {(direction === '回退审核' || direction === '上报审核') &&
+            <div onClick={() => navigate(`/mediate/visit/eventFlow?caseTaskId=${'1'}&caseId=${'1'}`)} style={{ cursor: 'pointer' }}>处理</div>
+
+          }
+          {(direction === '结案申请审核' || direction === '联合处置审核') &&
+            <div onClick={() => navigate(`/mediate/visit/handleFeedback?caseTaskId=${'1'}&caseId=${'1'}`)} style={{ cursor: 'pointer' }}>处理</div>
+          }
+        </Space>
+      ),
+    },
+  ]
+
+  const mangeColumn = [
+    {
+      title: '督办时间',
+      dataIndex: 'turnaroundTime',
+      key: 'turnaroundTime',
+      width: 100,
+    },
+    {
+      title: '回复时限',
+      dataIndex: 'timeLimit',
+      key: 'timeLimit',
+      width: 190,
+      render: (text, record, index) => {
+        return getDiffTime(record.timeLimit)
+      }
+    },
+    {
+      title: '督办部门',
+      dataIndex: 'caseGrade',
+      key: 'caseGrade',
+      width: 80,
+    },
+    {
+      title: '督办意见',
+      dataIndex: 'opinion',
+      key: 'opinion',
+      width: 180,
+    },
+    {
+      title: '事项等级',
+      dataIndex: 'caseGrade',
+      key: 'caseGrade',
+      width: 180,
+    },
+    {
+      title: '事项来源',
+      dataIndex: 'caseSource',
+      key: 'caseSource',
+      width: 180,
+    },
+    {
+      title: '事项类型',
+      dataIndex: 'caseType',
+      key: 'caseType',
+      width: 180,
+    },
+    {
+      title: '申请方',
+      dataIndex: 'plaintiffs',
+      key: 'plaintiffs',
+      width: 180,
+    },
+    {
+      title: '被申请方',
+      dataIndex: 'defendants',
+      key: 'defendants',
+      width: 180,
+    },
+    {
+      title: '操作',
+      dataIndex: 'actions',
+      key: 'actions',
+      width: 180,
+      fixed: 'right',
+      render: (text, record) => (
+        <Space>
+          <div>回复</div>
+          <div>详情</div>
+        </Space>
+      ),
+    },
+  ]
+
+  //结案申请
+  const caseResultApply = [
+    {
+      title: '结案申请时间',
+      dataIndex: 'turnaroundTime',
+      key: 'turnaroundTime',
+      width: 100,
+    },
+    {
+      title: '事项等级',
+      dataIndex: 'caseGrade',
+      key: 'caseGrade',
+      width: 180,
+    },
+    {
+      title: '事项来源',
+      dataIndex: 'caseSource',
+      key: 'caseSource',
+      width: 180,
+    },
+    {
+      title: '事项类型',
+      dataIndex: 'caseType',
+      key: 'caseType',
+      width: 180,
+    },
+    {
+      title: '承办部门',
+      dataIndex: 'organizingUnit',
+      key: 'organizingUnit',
+      width: 180,
+    },
+    {
+      title: '配合部门',
+      dataIndex: 'cooperatingUnit',
+      key: 'cooperatingUnit',
+      width: 180,
+    },
+    {
+      title: '申请方',
+      dataIndex: 'plaintiffs',
+      key: 'plaintiffs',
+      width: 180,
+    },
+    {
+      title: '化解结果',
+      dataIndex: 'mediResult',
+      key: 'mediResult',
+      width: 180,
+    },
+    {
+      title: '被申请方',
+      dataIndex: 'defendants',
+      key: 'defendants',
+      width: 180,
+    },
+    {
+      title: '操作',
+      dataIndex: 'actions',
+      key: 'actions',
+      width: 180,
+      fixed: 'right',
+      render: (text, record) => (
+        <Space style={{ color: '#1A6FB8' }}>
+          <div onClick={() => navigate(`/mediate/visit/fileMessage?caseTaskId=${record.ownerId}&caseId=${record.caseId}`)} style={{ cursor: 'pointer' }}>详情</div>
+          <div onClick={() => navigate(`/mediate/visit/closingReview?caseTaskId=${record.ownerId}&caseId=${record.caseId}&windupId=${record.windupId}`)} style={{ cursor: 'pointer' }}>处理</div>
+        </Space>
+      ),
+    },
+  ];
+
+  const caseResultApplyInfo = [
+    {
+      title: '结案申请时间',
+      dataIndex: 'turnaroundTime',
+      key: 'turnaroundTime',
+      width: 100,
+    },
+    {
+      title: '事项等级',
+      dataIndex: 'caseGrade',
+      key: 'caseGrade',
+      width: 180,
+    },
+    {
+      title: '事项来源',
+      dataIndex: 'caseSource',
+      key: 'caseSource',
+      width: 180,
+    },
+    {
+      title: '事项类型',
+      dataIndex: 'caseType',
+      key: 'caseType',
+      width: 180,
+    },
+    {
+      title: '承办部门',
+      dataIndex: 'organizingUnit',
+      key: 'organizingUnit',
+      width: 180,
+    },
+    {
+      title: '配合部门',
+      dataIndex: 'cooperatingUnit',
+      key: 'cooperatingUnit',
+      width: 180,
+    },
+    {
+      title: '申请方',
+      dataIndex: 'plaintiffs',
+      key: 'plaintiffs',
+      width: 180,
+    },
+    {
+      title: '化解结果',
+      dataIndex: 'mediResult',
+      key: 'mediResult',
+      width: 180,
+    },
+    {
+      title: '被申请方',
+      dataIndex: 'defendants',
+      key: 'defendants',
+      width: 180,
+    },
+    {
+      title: '操作',
+      dataIndex: 'actions',
+      key: 'actions',
+      width: 180,
+      fixed: 'right',
+      render: (text, record) => (
+        <Space style={{ color: '#1A6FB8' }}>
+          <div onClick={() => navigate(`/mediate/visit/fileMessage?caseTaskId=${record.ownerId}&caseId=${record.caseId}`)} style={{ cursor: 'pointer' }}>详情</div>
+        </Space>
+      ),
+    },
+  ];
+
+  const sign = async (caseId, ownerId) => {
+    const res = await signApi({ caseId: caseId, caseTaskId: ownerId })
+    if (res.type) {
+      $$.infoSuccess({ content: '签收成功' });
+      getCountList();
+      pageMyTaskFpNew()
+    }
+
+  }
+
+  const handleSign = (caseId, ownerId) => {
+    sign(caseId, ownerId)
+  }
+
+  const pageMyTaskFpNew = async () => {
+    const res = await pageMyTaskFpApi()
+    if (res.type) {
+      setFakeData1(res.data?.content)
+    }
+  }
+
+  const pageMyTaskFp = async (type) => {
+    if (type === '1') {
+      const res = await pageMyTaskFpApi()
+      if (res.type) {
+        setFakeData1(res.data?.content)
+      }
+    }
+    if (type === '2') {
+      const res = await pageMyTaskQsApi()
+      if (res.type) {
+        setFakeData1(res.data?.content)
+      }
+    }
+    if (type === '3') {
+      const res = await pageMyTaskSlApi()
+      if (res.type) {
+        setFakeData1(res.data?.content)
+      }
+    }
+    if (type === '4') {
+      const res = await pageMyTaskBlzApi()
+      if (res.type) {
+        setFakeData1(res.data?.content)
+      }
+    }
+    if (type === '5') {
+    }
+  }
+
+  const handleSh = async (e) => {
+    console.log(direction, 'direction')
+    const res = await pageMyTaskShApi(e === '回退审核' ? 1 : e === '上报审核' ? 2 : e === '结案申请审核' ? 3 : e === '联合处置审核' ? 4 : null)
+    if (res.type) {
+      setColumnType(caseResultApply)
+      setFakeData1(res.data?.content)
+    }
+  }
+
+  //改变tab
+  const handleColumnType = (type) => {
+    console.log(type, 'type')
+    if (type === '2') {
+      if (tabActivekey === '1') {
+        setColumnType(fakeColumns3Info)
+      }
+      if (tabActivekey === '2') {
+        setColumnType(fakeColumns1Info)
+      }
+      if (tabActivekey === '3') {
+        setColumnType(fakeColumns2Info)
+      }
+      if (tabActivekey === '4') {
+        setColumnType(caseResultApply)
+        pageMyTaskBl('0')
+      }
+    }
+    if (type === '1') {
+      if (tabActivekey === '1') {
+        setColumnType(fakeColumns3)
+      }
+    }
+
+    if (type === '3') {
+      if (tabActivekey === '4') {
+        setColumnType(caseResultApplyInfo)
+        pageMyTaskBl('1')
+
+      }
+    }
+
+  }
+
+  //改变工作总览
   const tabActive = (key) => {
-    setTabActivekey(key)
+    console.log(key, 'key')
+    setTabActivekey(key);
+    if (key === '1') {
+      setColumnType(fakeColumns3)
+      pageMyTaskFp('1')
+    }
+    if (key === '2') {
+      setColumnType(fakeColumns1)
+      pageMyTaskFp('2')
+
+    }
+    if (key === '3') {
+      setColumnType(fakeColumns2)
+      pageMyTaskFp('3')
+
+    }
+    if (key === '4') {
+      setColumnType(column)
+      pageMyTaskFp('4')
+    }
+    if (key === '5') {
+      setColumnType(backColumn)
+      pageMyTaskFp('5')
+
+    }
+    if (key === '6') {
+      setColumnType(mangeColumn)
+      pageMyTaskFp('6')
+
+    }
   }
 
-  // const columnChange = async () => {
-  //   const res = await columnChangeApi()
-  //   if (res.type) {
-  //     setColumn(res.data)
-  //   }
-  // }
-
-  const handleColumnType = () => {
-    const columnList = column.filter(item => fakeColumns.some(itemNew => itemNew.title === item.title))
-    setFakeColumns(columnList)
+  const pageMyTaskBl = async (type) => {
+    const res = await pageMyTaskBlApi(type)
+    if (res.type) {
+      setFakeData1(res.data?.content)
+    }
   }
+
+  //获取工作总览数据
+  const getCountList = async () => {
+    const res = await getCountListApi()
+    if (res.type) {
+      const data = res.data
+      setCountList(data)
+    }
+  }
+
+  //获取时间差,返回表格时限组件
+  const getDiffTime = (timeLimit) => {
+    if (timeLimit) {
+      // 转换为Date对象  
+      let targetDate = new Date(timeLimit);
+      // 获取当前时间  
+      let now = new Date();
+      // 计算时间差(毫秒)
+      let diff = Math.abs(targetDate - now);
+      // 将时间差转换为小时和分钟
+      let hours = Math.floor(diff / (1000 * 60 * 60));
+      let minutes = Math.floor((diff % (1000 * 60 * 60)) / (1000 * 60));
+      // 比较两个时间  
+      if (targetDate.getTime() <= now.getTime()) {
+        return <>
+          <span className='timeTip-red'>
+            <span className='timeTip-red-drop'></span>{`超${hours}小时${minutes}分钟`}
+          </span>
+          <span className='timeTip-red-tips'>督</span>
+        </>
+      } else {
+        return <span className='timeTip-green'><span className='timeTip-green-drop'></span>{`剩${hours}小时${minutes}分钟`}</span>
+      }
+    } else {
+      return <span>-</span>
+    }
+  }
+
+  useEffect(() => {
+    pageMyTaskFpNew()
+    // pageMyTaskBl();
+    getCountList();
+  }, [])
 
 
 
@@ -443,9 +1096,9 @@
         </div>
       </div>
       <div className='VisitWorkBench-middle'>
-        <Tabs defaultActiveTab='1'>
+        <Tabs defaultActiveTab='1' onChange={handleColumnType}>
           <TabPane
-            onChange={handleColumnType}
+            // onChange={handleColumnType}
             key='1'
             title={
               <span style={{ fontSize: '15px' }}>
@@ -459,16 +1112,23 @@
             }
           >
             <Typography.Paragraph>
+              {tabActivekey === '5' &&
+                <Radio.Group
+                  type='button'
+                  name='direction'
+                  value={direction}
+                  onChange={(e) => { setDirection(e); handleSh(e) }}
+                  style={{ marginBottom: 16 }}
+                  options={['回退审核', '上报审核', '结案申请审核', '联合处置审核']}
+                ></Radio.Group>
+              }
               <TableView
-                columns={fakeColumns}
+                columns={columnType}
                 dataSource={fakeData1}
                 size="small"
-                rowKey="id"
+                rowKey="caseId"
                 bordered={true}
-                // style={{ marginBottom: '65px', marginTop: '-16px' }}
-                rowSelection={{
-                  type: 'Checkbox'
-                }}
+                scroll={{ x: 1300 }}
               />
             </Typography.Paragraph>
           </TabPane>
@@ -486,21 +1146,51 @@
             }
           >
             <Typography.Paragraph>
+              <TableView
+                columns={columnType}
+                dataSource={fakeData1}
+                size="small"
+                rowKey="id"
+                bordered={true}
+                scroll={{ x: 1300 }}
+              />
             </Typography.Paragraph>
           </TabPane>
+          {tabActivekey === '4' &&
+            <TabPane
+              key='3'
+              title={
+                <span style={{ fontSize: '15px' }}>
+                  已结案
+                </span>
+              }
+            >
+              <Typography.Paragraph>
+                <TableView
+                  columns={columnType}
+                  dataSource={fakeData1}
+                  size="small"
+                  rowKey="id"
+                  bordered={true}
+                  scroll={{ x: 1300 }}
+                />
+              </Typography.Paragraph>
+            </TabPane>
+          }
+
         </Tabs>
 
       </div>
       <div className='VisitWorkBench-bottom'>
-        自行排查
-        <div style={{ display: 'flex',justifyContent:'space-evenly' }}>
-          <div style={{display:'flex'}}>
-            <div className='VisitWorkBench-bottom-title'>大厅来访</div>
-            <img src={visitInto} alt='' className='VisitWorkBench-bottom-img'/>
+        群众来访接待
+        <div style={{ display: 'flex', justifyContent: 'space-evenly',gap:'24px',marginTop:'16px' }}>
+          <div className='bottomTab1' style={{ cursor: 'pointer' }}>
+            <div className='VisitWorkBench-bottom-title' onClick={() => {navigate(`/mediate/visit`)}} style={{ color: '#206BCD' }}>大厅来访</div>
+            {/* <img src={visitInto} alt='' className='VisitWorkBench-bottom-img' /> */}
           </div>
-          <div style={{display:'flex'}}>
-            <div className='VisitWorkBench-bottom-title'>自行排查</div>
-            <img src={checkInto} alt='' className='VisitWorkBench-bottom-img'/>
+          <div className='bottomTab2' style={{ cursor: 'pointer' }}>
+            <div className='VisitWorkBench-bottom-title' style={{ color: '#D46B08' }}>自行排查</div>
+            {/* <img src={checkInto} alt='' className='VisitWorkBench-bottom-img' /> */}
           </div>
         </div>
       </div>

--
Gitblit v1.8.0