From 862311c4686345362fcbc60e92c969fb5cb3369d Mon Sep 17 00:00:00 2001
From: dminyi <1301963064@qq.com>
Date: Mon, 09 Sep 2024 17:07:39 +0800
Subject: [PATCH] 工作台

---
 gz-customerSystem/src/assets/font/douYuZhuiGuangTi2.0.ttf         |    0 
 gz-customerSystem/src/styles/public.less                          |    5 
 gz-customerSystem/src/views/register/index.less                   |   16 +
 gz-customerSystem/src/assets/images/index.js                      |    6 
 gz-customerSystem/src/views/register/matterDetail/fileMessage.jsx |  203 ++++++++-----
 gz-customerSystem/src/views/register/index.jsx                    |  630 ++++++++++++++++++++++++++++++++++-------
 gz-customerSystem/src/assets/images/floating.png                  |    0 
 gz-customerSystem/src/router/router.js                            |    4 
 8 files changed, 659 insertions(+), 205 deletions(-)

diff --git a/gz-customerSystem/src/assets/font/douYuZhuiGuangTi2.0.ttf b/gz-customerSystem/src/assets/font/douYuZhuiGuangTi2.0.ttf
new file mode 100644
index 0000000..6ef0c63
--- /dev/null
+++ b/gz-customerSystem/src/assets/font/douYuZhuiGuangTi2.0.ttf
Binary files differ
diff --git a/gz-customerSystem/src/assets/images/floating.png b/gz-customerSystem/src/assets/images/floating.png
new file mode 100644
index 0000000..9229380
--- /dev/null
+++ b/gz-customerSystem/src/assets/images/floating.png
Binary files differ
diff --git a/gz-customerSystem/src/assets/images/index.js b/gz-customerSystem/src/assets/images/index.js
index 91af7c6..9c21414 100644
--- a/gz-customerSystem/src/assets/images/index.js
+++ b/gz-customerSystem/src/assets/images/index.js
@@ -2,7 +2,7 @@
  * @Company: hugeInfo
  * @Author: lwh
  * @Date: 2023-04-24 16:12:00
- * @LastEditTime: 2024-09-09 09:44:30
+ * @LastEditTime: 2024-09-09 15:35:32
  * @LastEditors: dminyi 1301963064@qq.com
  * @Version: 1.0.0
  * @Description:
@@ -72,6 +72,7 @@
 import tab6 from "./tab6.png";
 import visitInto from "./visitInto.png";
 import checkInto from "./checkInto.png";
+import floating from "./floating.png";
 
 export {
   ledger_1,
@@ -138,5 +139,6 @@
   tab5,
   tab6,
   visitInto,
-  checkInto
+  checkInto,
+  floating
 };
\ No newline at end of file
diff --git a/gz-customerSystem/src/router/router.js b/gz-customerSystem/src/router/router.js
index 59db9ab..9ab1fef 100644
--- a/gz-customerSystem/src/router/router.js
+++ b/gz-customerSystem/src/router/router.js
@@ -2,7 +2,7 @@
  * @Company: hugeInfo
  * @Author: ldh
  * @Date: 2022-03-28 11:22:41
- * @LastEditTime: 2024-09-08 15:15:51
+ * @LastEditTime: 2024-09-09 15:48:38
  * @LastEditors: dminyi 1301963064@qq.com
  * @Version: 1.0.0
  * @Description: 路由
@@ -221,7 +221,7 @@
 						<Route path="visit/:id?" element={<Visit />} />
 						<Route path="visit/eventFlow/:caseTaskId?/:caseId?" element={<EventFlow />} />
 						<Route path="visit/handleFeedback/:caseTaskId?/:caseId?" element={<HandleFeedback />} />
-						<Route path="visit/fileMessage" element={<FileMessage />} />
+						<Route path="visit/fileMessage/:caseTaskId?/:caseId?" element={<FileMessage />} />
 						<Route path="visit/closingReview/:caseTaskId?/:caseId?" element={<ClosingReview />}/>
 						<Route path="visit/visitWorkBench" element={<VisitWorkBench />}/>
 
diff --git a/gz-customerSystem/src/styles/public.less b/gz-customerSystem/src/styles/public.less
index e824b98..05e8a8c 100644
--- a/gz-customerSystem/src/styles/public.less
+++ b/gz-customerSystem/src/styles/public.less
@@ -15,6 +15,11 @@
 	src: url('../assets/font/DingTalk_JinBuTi_Regular.ttf');
 }
 
+@font-face {
+	font-family: DouYu;
+	src: url('../assets/font/DingTalk_JinBuTi_Regular.ttf');
+}
+
 html,
 body {
 	margin: 0;
diff --git a/gz-customerSystem/src/views/register/index.jsx b/gz-customerSystem/src/views/register/index.jsx
index 30c32d4..0c63274 100644
--- a/gz-customerSystem/src/views/register/index.jsx
+++ b/gz-customerSystem/src/views/register/index.jsx
@@ -2,36 +2,46 @@
  * @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-09 17:06:20
  * @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';
 
 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 });
+}
 
 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}`,
       img: tab1
     },
     {
       key: '2',
       label: '待签收',
       bgColor: '#E8FFEA',
-      num: 30,
+      num: `${CountList?.waitSign}`,
       img: tab2
 
     },
@@ -39,7 +49,7 @@
       key: '3',
       label: '待受理',
       bgColor: '#F5E8FF',
-      num: 50,
+      num: `${CountList?.waitAccept}`,
       img: tab3
 
     },
@@ -47,7 +57,7 @@
       key: '4',
       label: '办理中',
       bgColor: '#E6FFFB',
-      num: 60,
+      num: `${CountList?.waitReview}`,
       img: tab4
 
     },
@@ -55,7 +65,7 @@
       key: '5',
       label: '待审核',
       bgColor: '#E8F7FF',
-      num: 70,
+      num: `${CountList?.supervise}`,
       img: tab5
 
     },
@@ -63,13 +73,13 @@
       key: '6',
       label: '督办',
       bgColor: '#FFF7E6',
-      num: 80,
+      num: `${CountList?.processing}`,
       img: tab6
 
     },
   ]
 
-  const [fakeData1, setFakeData1] = useState(
+  const fakeData1 =
     [
       {
         id: 1,
@@ -114,7 +124,7 @@
         // 更多字段...
       },
       {
-        id: 2,
+        id: 3,
         caseNo: 'A20230101',
         judicNo: '证据材料',
         perClassName: '李晓明的纠纷化解申请表、身份证...',
@@ -135,7 +145,7 @@
         // 更多字段...
       },
       {
-        id: 2,
+        id: 4,
         caseNo: 'A20230101',
         judicNo: '证据材料',
         perClassName: '李晓明的纠纷化解申请表、身份证...',
@@ -156,7 +166,7 @@
         // 更多字段...
       },
       {
-        id: 2,
+        id: 5,
         caseNo: 'A20230101',
         judicNo: '证据材料',
         perClassName: '李晓明的纠纷化解申请表、身份证...',
@@ -177,7 +187,7 @@
         // 更多字段...
       },
       {
-        id: 2,
+        id: 6,
         caseNo: 'A20230101',
         judicNo: '证据材料',
         perClassName: '李晓明的纠纷化解申请表、身份证...',
@@ -198,7 +208,7 @@
         // 更多字段...
       },
       {
-        id: 2,
+        id: 7,
         caseNo: 'A20230101',
         judicNo: '证据材料',
         perClassName: '李晓明的纠纷化解申请表、身份证...',
@@ -219,7 +229,7 @@
         // 更多字段...
       },
       {
-        id: 2,
+        id: 8,
         caseNo: 'A20230101',
         judicNo: '证据材料',
         perClassName: '李晓明的纠纷化解申请表、身份证...',
@@ -240,7 +250,7 @@
         // 更多字段...
       },
       {
-        id: 2,
+        id: 9,
         caseNo: 'A20230101',
         judicNo: '证据材料',
         perClassName: '李晓明的纠纷化解申请表、身份证...',
@@ -261,7 +271,7 @@
         // 更多字段...
       },
       {
-        id: 2,
+        id: 10,
         caseNo: 'A20230101',
         judicNo: '证据材料',
         perClassName: '李晓明的纠纷化解申请表、身份证...',
@@ -284,110 +294,295 @@
 
       // 更多数据...
     ]
-  )
+
+  const [columnType, setColumnType] = useState([
+    {
+      title: '流转时间',
+      dataIndex: 'turnaroundTime',
+      key: 'turnaroundTime',
+      width: 100,
+    },
+    {
+      title: '分派时限',
+      dataIndex: 'timeLimit',
+      key: 'timeLimit',
+      width: 60,
+    },
+    {
+      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,
+      render: (text, record) => (
+        <Space style={{ color: '#1A6FB8' }}>
+          <div onClick={() => navigate(`/mediate/visit/fileMessage?caseTaskId=${'1'}&caseId=${'1'}`)} style={{ cursor: 'pointer' }}>详情</div>
+          <div onClick={() => navigate(`/mediate/visit/eventFlow?caseTaskId=${'1'}&caseId=${'1'}`)} style={{ cursor: 'pointer' }}>处理</div>
+        </Space>
+      ),
+    },
+  ])
 
   // 列配置
-  const [fakeColumns, setFakeColumns] = useState([
+  const fakeColumns3 = [
     {
-      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',
+      dataIndex: 'timeLimit',
+      key: 'timeLimit',
       width: 60,
     },
     {
       title: '事项等级',
-      dataIndex: 'matterLevel',
-      key: 'matterLevel',
+      dataIndex: 'caseGrade',
+      key: 'caseGrade',
       width: 180,
-      render: (text) => (
-        <>
-          {text}份
-        </>
-      ),
     },
     {
       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,
+    },
+    {
+      title: '操作',
+      dataIndex: 'actions',
+      key: 'actions',
+      width: 180,
+      render: (text, record) => (
+        <Space style={{ color: '#1A6FB8' }}>
+          <div onClick={() => navigate(`/mediate/visit/fileMessage?caseTaskId=${'1'}&caseId=${'1'}`)} style={{ cursor: 'pointer' }}>详情</div>
+          <div onClick={() => navigate(`/mediate/visit/eventFlow?caseTaskId=${'1'}&caseId=${'1'}`)} style={{ cursor: 'pointer' }}>处理</div>
+        </Space>
+      ),
+    },
+  ];
+  const fakeColumns1 = [
+    {
+      title: '流转时间',
+      dataIndex: 'turnaroundTime',
+      key: 'turnaroundTime',
+      width: 100,
+      render: (text, record, index) => <span>{index + 1}</span>,
+    },
+    {
+      title: '签收时限',
+      dataIndex: 'timeLimit',
+      key: 'timeLimit',
+      width: 60,
+    },
+    {
+      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,
+      render: (text, record) => (
+        <Space style={{ color: '#1A6FB8' }}>
+          <div onClick={() => navigate(`/mediate/visit/fileMessage?caseTaskId=${'1'}&caseId=${'1'}`)} style={{ cursor: 'pointer' }}>详情</div>
+          <div>签收</div>
+        </Space>
+      ),
+    },
+  ];
+  const fakeColumns2 = [
+    {
+      title: '流转时间',
+      dataIndex: 'turnaroundTime',
+      key: 'turnaroundTime',
+      width: 100,
+    },
+    {
+      title: '受理时限',
+      dataIndex: 'timeLimit',
+      key: 'timeLimit',
+      width: 60,
+    },
+    {
+      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,
+      render: (text, record) => (
+        <Space style={{ color: '#1A6FB8' }}>
+          <div onClick={() => navigate(`/mediate/visit/fileMessage?caseTaskId=${'1'}&caseId=${'1'}`)} style={{ cursor: 'pointer' }}>详情</div>
+          <div onClick={() => navigate(`/mediate/visit/eventFlow?caseTaskId=${'1'}&caseId=${'1'}`)} style={{ cursor: 'pointer' }}>处理</div>
+        </Space>
+      ),
+    },
+  ];
+
+  const [column, setColumn] = useState([
+    {
+      title: '流转时间',
+      dataIndex: 'turnaroundTime',
+      key: 'turnaroundTime',
+      width: 100,
+    },
+    {
+      title: '已办天数',
+      dataIndex: 'processingDays',
+      key: 'processingDays',
+      width: 60,
+    },
+    {
+      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: 'manager',
+      key: 'manager',
+      width: 180,
+    },
+    {
+      title: '申请方',
+      dataIndex: 'plaintiffs',
+      key: 'plaintiffs',
+      width: 180,
+    },
+    {
+      title: '被申请方',
+      dataIndex: 'defendants',
+      key: 'defendants',
       width: 180,
     },
     {
@@ -397,28 +592,201 @@
       width: 180,
       render: (text, record) => (
         <Space>
-          <div>详情</div>
-          <div>处理</div>
+          <div onClick={() => navigate(`/mediate/visit/fileMessage?caseTaskId=${'1'}&caseId=${'1'}`)} style={{ cursor: 'pointer' }}>详情</div>
+          <div onClick={() => navigate(`/mediate/visit/handleFeedback?caseTaskId=${'1'}&caseId=${'1'}`)} style={{ cursor: 'pointer' }}>处理</div>
         </Space>
       ),
     },
-  ]);
+  ])
+
+  const [backColumn, setBackColumn] = useState([
+    {
+      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,
+      render: (text, record) => (
+        <Space>
+          <div onClick={() => navigate(`/mediate/visit/fileMessage?caseTaskId=${'1'}&caseId=${'1'}`)} 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, setMangeColumn] = useState([
+    {
+      title: '督办时间',
+      dataIndex: 'turnaroundTime',
+      key: 'turnaroundTime',
+      width: 100,
+      render: (text, record, index) => <span>{index + 1}</span>,
+    },
+    {
+      title: '回复时限',
+      dataIndex: 'timeLimit',
+      key: 'timeLimit',
+      width: 60,
+    },
+    {
+      title: '督办部门',
+      dataIndex: 'caseGrade',
+      key: 'caseGrade',
+      width: 180,
+    },
+    {
+      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,
+      render: (text, record) => (
+        <Space>
+          <div>回复</div>
+          <div>详情</div>
+        </Space>
+      ),
+    },
+  ])
+
+
+
 
   const tabActive = (key) => {
-    setTabActivekey(key)
+    console.log(key, 'key')
+    setTabActivekey(key);
+    if (key === '1') {
+      setColumnType(fakeColumns3)
+    }
+    if (key === '2') {
+      setColumnType(fakeColumns1)
+    }
+    if (key === '3') {
+      setColumnType(fakeColumns2)
+    }
+    if (key === '4') {
+      setColumnType(column)
+    }
+    if (key === '5') {
+      setColumnType(backColumn)
+    }
+    if (key === '6') {
+      setColumnType(mangeColumn)
+    }
   }
 
-  // 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 () => {
+    const res = await pageMyTaskBlApi({ page: 1, size: 10, timeStart: '', timeEnd: '', partyName: '', sortType: '', sortColmn: '' })
+    if (res.type) {
+      console.log(res.data, 'res.data')
+      // setColumn(res.data)
+    }
   }
+
+  const getCountList = async () => {
+    const res = await getCountListApi()
+    if (res.type) {
+      const data = res.data
+      setCountList(data)
+    }
+  }
+
+
+
+  useEffect(() => {
+    // pageMyTaskBl();
+    getCountList();
+  }, [columnType,direction])
 
 
 
@@ -445,7 +813,7 @@
       <div className='VisitWorkBench-middle'>
         <Tabs defaultActiveTab='1'>
           <TabPane
-            onChange={handleColumnType}
+            // onChange={handleColumnType}
             key='1'
             title={
               <span style={{ fontSize: '15px' }}>
@@ -459,8 +827,18 @@
             }
           >
             <Typography.Paragraph>
+              {tabActivekey === '5' &&
+                <Radio.Group
+                  type='button'
+                  name='direction'
+                  value={direction}
+                  onChange={(e) => setDirection(e)}
+                  style={{ marginBottom: 16 }}
+                  options={['回退审核', '上报审核', '结案申请审核', '联合处置审核']}
+                ></Radio.Group>
+              }
               <TableView
-                columns={fakeColumns}
+                columns={columnType}
                 dataSource={fakeData1}
                 size="small"
                 rowKey="id"
@@ -488,19 +866,33 @@
             <Typography.Paragraph>
             </Typography.Paragraph>
           </TabPane>
+          {tabActivekey === '4' &&
+            <TabPane
+              key='3'
+              title={
+                <span style={{ fontSize: '15px' }}>
+                  已结案
+                </span>
+              }
+            >
+              <Typography.Paragraph>
+              </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' }}>
+          <div className='bottomTab1'>
+            <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'>
+            <div className='VisitWorkBench-bottom-title' style={{ color: '#D46B08' }}>自行排查</div>
+            <img src={checkInto} alt='' className='VisitWorkBench-bottom-img' />
           </div>
         </div>
       </div>
diff --git a/gz-customerSystem/src/views/register/index.less b/gz-customerSystem/src/views/register/index.less
index 6a31642..463f38a 100644
--- a/gz-customerSystem/src/views/register/index.less
+++ b/gz-customerSystem/src/views/register/index.less
@@ -855,6 +855,8 @@
 
 		&-title{
 			width: 140px;
+			font-family: DingTalk;
+			font-size: 22px;
 		}
 
 		&-img {
@@ -869,4 +871,18 @@
 	display: flex;
 	justify-content: space-between;
 	align-items: center;
+}
+
+.bottomTab1{
+	// display: 'flex',	background: linear-gradient(to right, #6a1b9a, #e040fb)
+	display: flex;
+	background: linear-gradient(to right, #E8F7FF, #9FD4FD);
+	padding: 12px 16px 16px 16px;
+}
+
+.bottomTab2{
+	display: flex;
+	background: linear-gradient(to right, #FFF7E6, #FFD591);
+	padding: 12px 16px 16px 16px;
+
 }
\ No newline at end of file
diff --git a/gz-customerSystem/src/views/register/matterDetail/fileMessage.jsx b/gz-customerSystem/src/views/register/matterDetail/fileMessage.jsx
index a0bc307..13869c8 100644
--- a/gz-customerSystem/src/views/register/matterDetail/fileMessage.jsx
+++ b/gz-customerSystem/src/views/register/matterDetail/fileMessage.jsx
@@ -2,13 +2,17 @@
 import NewPage from '@/components/NewPage';
 import { Row, Col, Space } from 'antd';
 import { Steps, Tabs, Typography, Rate, Button } from '@arco-design/web-react';
-import { apply } from '@/assets/images';
+import { apply,floating } from '@/assets/images';
 import { result } from '@/assets/images/icon';
 import * as $$ from '@/utils/utility';
-import { ApplyDialog, AgentDialog, Respondent } from '../visit/component/previewTable';
 import TableView from '../../../components/TableView';
 import { register, fold, down, empty, link } from '@/assets/images';
 import ProgressStep from '@/components/ProgressStep/VisitStep';
+import { ApplyDialog, AgentDialog, Respondent, Company } from '../visit/component/previewTable';
+import HandleRecord from './HandleRecord';
+import { useParams } from 'react-router-dom';
+import ApplyInfo from './ApplyInfo'
+
 
 const Step = Steps.Step;
 const TabPane = Tabs.TabPane;
@@ -21,15 +25,27 @@
   return $$.ax.request({ url: `caseEvaluate/getByCaseId?caseId=${caseId}`, type: 'get', service: 'mediate' });
 }
 
+function getCaseInfoApi(id) {
+  return $$.ax.request({ url: 'caseInfo/getCaseInfo?id=' + id, type: 'get', service: 'mediate' });
+}
+
+function listFeedbackApi(id) {
+  return $$.ax.request({ url: `caseFeedback/listFeedback?id=` + id, type: 'get', service: 'mediate' });
+}
+
+function getListCaseFlow(data) {
+  return $$.ax.request({ url: `caseTask/listCaseFlow`, type: 'get', service: 'mediate', data });
+}
+
 
 const FileMessage = (props) => {
-
+	const routeData = useParams();
   const [tabsActive, setTabsActive] = useState('1');
   const [current, setCurrent] = useState(7);
   const [grade, setGrade] = useState(0);
+  const [caseInfo, setCaseInfo] = useState({})
   const [TransactResult, setTransactResult] = useState({})
   const [filesCheck, setFilesCheck] = useState(false);
-  const [infoData, setInfoData] = useState({});
   const [tabsList, setTabList] = useState([
     {
       img: result,
@@ -38,13 +54,19 @@
       isNeedStep: true
     },
     {
+      img: floating,
+      label: '流转督办',
+      key: '2',
+    },
+    {
       img: apply,
       label: '申请记录',
-      key: '2',
-      isNeedStep: true,//加上这个就有进度条
+      key: '3',
     },
   ])
   const [selectedTab, setSelectedTab] = useState('1'); // 默认选中第一个 tab
+  const [list, setList] = useState([])
+  const [progressData, setProgressData] = useState({})
 
 
   const tabs = [
@@ -120,59 +142,29 @@
     console.log(res, 'resrs')
   }
 
-  const applyDialog = [
-    {
-      trueName: '李四',
-      perClassName: '高级',
-      phone: '13700137000',
-      sex: '女',
-      certiTypeName: '护照',
-      certiNo: 'G12345678',
-      nationName: '满',
-      addr: '上海市浦东新区某公寓2号楼2单元202室',
-      placeAddr: '上海市黄浦区某路3号',
-      extreme: '否',
-      workUnit: '上海某金融公司',
-      person: '/path/to/anotherPerson.jpg', // 这应该是图片的实际路径
-      link: '/path/to/anotherLink.png',     // 这应该是链接图标的实际路径
+  const getCaseInfo = async () => {
+    const res = await getCaseInfoApi('24083010062110001')
+    if (res.type) {
+      setCaseInfo(res.data)
     }
-    // 可以根据需要添加更多的对象来模拟更多条目的数据
-  ];
+  }
 
-  const agentDialog = [
-    {
-      trueName: '王五',
-      perClassName: '自然人',
-      phone: '13600136000',
-      sex: '男',
-      certiTypeName: '身份证',
-      certiNo: '110101199501012345',
-      nationName: '汉',
-      addr: '广州市天河区某大厦A座501室',
-      placeAddr: '广州市越秀区某街4号',
-      extreme: '否',
-      workUnit: '广州某贸易公司',
-      agentRelateName: '配偶',
-      agentTypeName: '法定代理人',
-      perTypeName: '成年人',
-      person: '/path/to/person.jpg', // 应该是图片的实际路径
-      link: '/path/to/link.png',     // 应该是链接图标的实际路径
-    },
-  ];
+  const listFeedback = async (id) => {
+    const res = await listFeedbackApi(id)
+    if (res.type) {
+      let data = res.data.caseFeedbackList
+      setList(data)
+    }
+  }
 
-  const respondent = [
-    {
-      orgaType: '广东好又多贸易有限公司',
-      perClassName: '企业法人',
-      phone: '020-12345678',
-      address: '广州市天河区珠江新城花城大道66号',
-      companyType: '有限责任公司',
-      legalPerson: '江照月',
-      creditCode: '914401011234567890',
-      president: '广州市天河区珠江新城花城大道66号A座20层',
-      link: '/path/to/link.png', // 应该是链接图标的实际路径
-    },
-  ];
+  const getData = async () => {
+    const res = await getListCaseFlow({
+      caseId: routeData.caseId
+    })
+    if (res.type) {
+      setProgressData(res.data)
+    }
+  }
 
   const fakeColumns = [
     {
@@ -350,9 +342,21 @@
   useEffect(() => {
     getByCaseId();
     getTransactResult();
+    getCaseInfo();
+    listFeedback('24083010062110001');
+    getData()
   }, [])
 
 
+  const applyData = caseInfo?.personList?.filter(item => item.perTypeName === "申请方当事人" && item.perClassName === "自然人");
+  const agentData = caseInfo?.personList?.filter(item => item.perTypeName === "申请方代理人");
+  const company = caseInfo?.personList?.filter(item => item.perTypeName === "申请方当事人" && item.perClassName === "非法人组织");
+  const respondentData = caseInfo?.personList?.filter(item => item.perTypeName === "申请方当事人" && item.perClassName === "法人");
+
+  const applyData1 = caseInfo?.personList?.filter(item => item.perTypeName === "被申请方当事人" && item.perClassName === "自然人");
+  const agentData1 = caseInfo?.personList?.filter(item => item.perTypeName === "被申请方代理人");
+  const company1 = caseInfo?.personList?.filter(item => item.perTypeName === "被申请方当事人" && item.perClassName === "非法人组织");
+  const respondentData1 = caseInfo?.personList?.filter(item => item.perTypeName === "被申请方当事人" && item.perClassName === "法人");
 
 
 
@@ -399,22 +403,52 @@
                         <div className='MediationInfo-subTitle' style={{ marginTop: '-9px' }}></div><h4>当事人信息</h4>
                       </Space>
                     </Col>
-
                     <div style={{ marginBottom: '8px' }}>申请方</div>
                     <div className="line-container" style={{ marginBottom: '20px' }}>
                       <div className="line left-line"></div>
                       <div className="line middle-line"></div>
                       <div className="line right-line"></div>
                     </div>
-                    <ApplyDialog applyDialog={applyDialog} />
-                    <AgentDialog agentDialog={agentDialog} />
+                    {/* ApplyDialog 只有在 applyData 存在且不为空时才渲染 */}
+                    {applyData && applyData.length > 0 ? (
+                      <ApplyDialog applyDialog={applyData} />
+                    ) : null}
+
+                    {/* AgentDialog 只有在 agentData 存在且不为空时才渲染 */}
+                    {agentData && agentData.length > 0 ? (
+                      <AgentDialog agentDialog={agentData} />
+                    ) : null}
+
+                    {/* Respondent 只有在 respondentData 存在且不为空时才渲染 */}
+                    {respondentData && respondentData.length > 0 ? (
+                      <Respondent respondent={respondentData} />
+                    ) : null}
+
+                    {company && company.length > 0 ? (
+                      <Company company={company} />
+                    ) : null}
+
                     <div style={{ marginBottom: '8px' }}>被申请方</div>
                     <div className="line-container" style={{ marginBottom: '20px' }}>
                       <div className="line left-line"></div>
                       <div className="line middle-line"></div>
                       <div className="line right-line"></div>
                     </div>
-                    <Respondent respondent={respondent} />
+                    {applyData1 && applyData1.length > 0 ? (
+                      <ApplyDialog applyDialog={applyData1} />
+                    ) : null}
+
+                    {agentData1 && agentData1.length > 0 ? (
+                      <AgentDialog agentDialog={agentData1} />
+                    ) : null}
+
+                    {respondentData1 && respondentData1.length > 0 ? (
+                      <Respondent respondent={respondentData1} />
+                    ) : null}
+
+                    {company1 && company1.length > 0 ? (
+                      <Company company={company1} />
+                    ) : null}
                     <Col span={24} style={{ display: 'flex', alignItems: 'center', marginBottom: '4px' }}>
                       <Space size='small'>
                         <div className='MediationInfo-subTitle' style={{ marginTop: '-9px' }}></div><h5>纠纷基本情况</h5>
@@ -423,68 +457,68 @@
                     <Row gutter={[16, 16]}>
                       <Col span={8}>
                         <div><div className="title-text">事项状态</div></div>
-                        <div style={{ color: '#1A6FB8' }}>{infoData?.statusName || '-'}</div>
+                        <div style={{ color: '#1A6FB8' }}>{caseInfo?.statusName || '-'}</div>
                       </Col>
                       <Col span={16}>
                         <div><div className="title-text">事项编号</div></div>
-                        <div>{infoData?.caseRef || '-'}</div>
+                        <div>{caseInfo?.caseRef || '-'}</div>
                       </Col>
                       {/*事项等级分为三级,颜色需要做判断*/}
                       <Col span={8}>
                         <div className="title"><div className="title-text">事项等级</div></div>
-                        <div style={{ display: 'flex' }}><div style={{ backgroundColor: '#00B42A', marginRight: '4px', borderRadius: '4px' }}><div style={{ color: '#FFFFFF', padding: '0px 6px' }}>{infoData.caseLevel || '-'}</div></div>级</div>
+                        <div style={{ display: 'flex' }}><div style={{ backgroundColor: '#00B42A', marginRight: '4px', borderRadius: '4px' }}><div style={{ color: '#FFFFFF', padding: '0px 6px' }}>{caseInfo?.caseLevel || '-'}</div></div>级</div>
                       </Col>
                       <Col span={8}>
                         <div><div className="title-text">来访时间</div></div>
-                        <div>{infoData.visitTime || '-'}</div>
+                        <div>{caseInfo?.visitTime || '-'}</div>
                       </Col>
                       <Col span={8}>
                         <div ><div className="title-text">来访人数(人)</div></div>
-                        <div>{infoData.visitPeopleNum || '-'}</div>
+                        <div>{caseInfo?.visitPeopleNum || '-'}</div>
                       </Col>
                       <Col span={8}>
                         <div ><div className="title-text">纠纷类型</div></div>
-                        <div>{infoData.caseType || '-'}</div>
+                        <div>{caseInfo?.caseType || '-'}</div>
                       </Col>
                       <Col span={8}>
                         <div ><div className="title-text">纠纷发生时间</div></div>
-                        <div>{infoData.occurTime || '-'}</div>
+                        <div>{caseInfo?.occurTime || '-'}</div>
                       </Col>
                       <Col span={8}>
                         <div ><div className="title-text">纠纷发生地点</div></div>
-                        <div>{infoData.addr || '-'}</div>
+                        <div>{caseInfo?.addr || '-'}</div>
                       </Col>
                       <Col span={8}>
                         <div ><div className="title-text">问题属地</div></div>
-                        <div>{infoData.questionName || '-'}</div>
+                        <div>{caseInfo?.questionName || '-'}</div>
                       </Col>
                       <Col span={8}>
                         <div ><div className="title-text">涉及人数(人)</div></div>
-                        <div>{infoData.peopleNum || '-'}</div>
+                        <div>{caseInfo?.peopleNum || '-'}</div>
                       </Col>
                       <Col span={8}>
                         <div ><div className="title-text">涉及金额(元)</div></div>
-                        <div>{$$.thousands(infoData.amount) || '-'}</div>
+                        <div>{$$.thousands(caseInfo?.amount) || '-'}</div>
                       </Col>
                       <Col span={8}>
                         <div ><div className="title-text">事项来源</div></div>
-                        <div>{infoData.canalName || '-'}</div>
+                        <div>{caseInfo?.canalName || '-'}</div>
                       </Col>
                       <Col span={16}>
                         <div ><div className="title-text">来访形式</div></div>
-                        <div>{infoData.visitWayName || '-'}</div>
+                        <div>{caseInfo?.visitWayName || '-'}</div>
                       </Col>
                       <Col span={24}>
                         <div className="title"><div className="title-text">事项概况</div></div>
-                        <div>{infoData.caseDes || '-'}</div>
+                        <div>{caseInfo?.caseDes || '-'}</div>
                       </Col>
                       <Col span={24}>
                         <div className="title"><div className="title-text">事项申请</div></div>
-                        <div>{infoData.caseClaim || '-'}</div>
+                        <div>{caseInfo?.caseClaim || '-'}</div>
                       </Col>
                       <Col span={16}>
                         <div className="title"><div className="title-text">是否重大矛盾纠纷</div></div>
-                        <div>{infoData.majorStatus === '0' ? '否' : '是'}</div>
+                        <div>{caseInfo?.majorStatus === '0' ? '否' : '是'}</div>
                       </Col>
                     </Row>
                     <Col span={24} style={{ display: 'flex', alignItems: 'center', marginBottom: '16px', marginTop: '20px' }}>
@@ -548,7 +582,9 @@
                     <div className='gap'></div>
                     <Col span={24} style={{ marginTop: '12px' }}>
                       <div style={{ color: 'rgb(134, 144, 156)' }}>办理记录</div>
-                      <div>
+                      <HandleRecord isReview={false} data={list} />
+
+                      {/* <div>
                         {records.map(record => (
                           <div key={record.id} className='container-bottom-left-record'>
                             <div className='container-bottom-left-record-top'>
@@ -574,7 +610,7 @@
                             </div>
                           </div>
                         ))}
-                      </div>
+                      </div> */}
                     </Col>
                     <div className='gap'></div>
                     <div style={{ marginLeft: '-16px' }}>
@@ -668,14 +704,14 @@
                         <div className="title">
                           <div className="title-text">登记机构</div>
                         </div>
-                        <div>天河区棠下街道综治中心</div>
+                        <div>{caseInfo?.inputUnitName || '-'}</div>
                       </Col>
                       <Col span={8}>
                         <div className="title">
                           <div className="title-text">登记人</div>
                         </div>
                         <div>
-                          李晓明
+                          {caseInfo.inputUserName}
                           <img src={register} alt='' style={{ width: '14px', height: '14px', marginLeft: '8px', marginTop: '4px' }} />
                         </div>
                       </Col>
@@ -683,7 +719,7 @@
                         <div className="title">
                           <div className="title-text">登记时间</div>
                         </div>
-                        <div>2024-7-8 10:00</div>
+                        <div>{caseInfo?.visitTime || '-'}</div>
                       </Col>
                     </Row>
                   </div>
@@ -697,7 +733,10 @@
               }
               {
                 tabsActive === '2' &&
-                <></>
+                <ProgressStep progressData={progressData} />
+              }
+              {tabsActive === '3' &&
+                <ApplyInfo />
               }
             </TabPane>
           })}

--
Gitblit v1.8.0