From 3968797420c55607e7643f701ad9aa3d3efb775a Mon Sep 17 00:00:00 2001 From: dminyi <1301963064@qq.com> Date: Mon, 09 Sep 2024 10:06:29 +0800 Subject: [PATCH] 工作台 --- gz-customerSystem/src/assets/images/tab3.png | 0 gz-customerSystem/src/assets/images/checkInto.png | 0 gz-customerSystem/src/assets/images/visitInto.png | 0 gz-customerSystem/src/assets/images/index.js | 20 + gz-customerSystem/src/api/appUrl.js | 4 gz-customerSystem/src/assets/images/tab5.png | 0 gz-customerSystem/src/assets/images/tab1.png | 0 gz-customerSystem/src/views/register/index.jsx | 450 ++++++++++++++++++++++++++++++++++++++++++++ gz-customerSystem/src/router/router.js | 2 gz-customerSystem/src/views/register/index.less | 71 +++++- gz-customerSystem/src/assets/images/tab6.png | 0 gz-customerSystem/src/assets/images/tab4.png | 0 gz-customerSystem/src/assets/images/tab2.png | 0 13 files changed, 514 insertions(+), 33 deletions(-) diff --git a/gz-customerSystem/src/api/appUrl.js b/gz-customerSystem/src/api/appUrl.js index 548b48f..8a620f0 100644 --- a/gz-customerSystem/src/api/appUrl.js +++ b/gz-customerSystem/src/api/appUrl.js @@ -10,11 +10,11 @@ export const debug = { // web服务 // baseUrl: 'http://gz.hugeinfo.com.cn', - baseUrl: "http://sbv8tf.natappfree.cc", + baseUrl: "http://192.168.3.108:9002", // baseUrl: 'http://mdqgnh.natappfree.cc', // 附件服务 - fileUrl: "http://sbv8tf.natappfree.cc", + fileUrl: "http://192.168.3.108:9002", // fileUrl: 'http://gz.hugeinfo.com.cn', // 文件查看url 后面接附件编号 diff --git a/gz-customerSystem/src/assets/images/checkInto.png b/gz-customerSystem/src/assets/images/checkInto.png new file mode 100644 index 0000000..9852049 --- /dev/null +++ b/gz-customerSystem/src/assets/images/checkInto.png Binary files differ diff --git a/gz-customerSystem/src/assets/images/index.js b/gz-customerSystem/src/assets/images/index.js index 9a8f3c0..91af7c6 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-07 14:08:18 + * @LastEditTime: 2024-09-09 09:44:30 * @LastEditors: dminyi 1301963064@qq.com * @Version: 1.0.0 * @Description: @@ -64,6 +64,14 @@ import Audit from "./Audit.png"; import aiPerson from "./aiPerson.png"; import caselogo from "./caselogo.png"; +import tab1 from "./tab1.png"; +import tab2 from "./tab2.png"; +import tab3 from "./tab3.png"; +import tab4 from "./tab4.png"; +import tab5 from "./tab5.png"; +import tab6 from "./tab6.png"; +import visitInto from "./visitInto.png"; +import checkInto from "./checkInto.png"; export { ledger_1, @@ -122,5 +130,13 @@ up, Audit, aiPerson, - caselogo + caselogo, + tab1, + tab2, + tab3, + tab4, + tab5, + tab6, + visitInto, + checkInto }; \ No newline at end of file diff --git a/gz-customerSystem/src/assets/images/tab1.png b/gz-customerSystem/src/assets/images/tab1.png new file mode 100644 index 0000000..923701f --- /dev/null +++ b/gz-customerSystem/src/assets/images/tab1.png Binary files differ diff --git a/gz-customerSystem/src/assets/images/tab2.png b/gz-customerSystem/src/assets/images/tab2.png new file mode 100644 index 0000000..57a3b63 --- /dev/null +++ b/gz-customerSystem/src/assets/images/tab2.png Binary files differ diff --git a/gz-customerSystem/src/assets/images/tab3.png b/gz-customerSystem/src/assets/images/tab3.png new file mode 100644 index 0000000..200fb5c --- /dev/null +++ b/gz-customerSystem/src/assets/images/tab3.png Binary files differ diff --git a/gz-customerSystem/src/assets/images/tab4.png b/gz-customerSystem/src/assets/images/tab4.png new file mode 100644 index 0000000..4e52d4a --- /dev/null +++ b/gz-customerSystem/src/assets/images/tab4.png Binary files differ diff --git a/gz-customerSystem/src/assets/images/tab5.png b/gz-customerSystem/src/assets/images/tab5.png new file mode 100644 index 0000000..c7f6b49 --- /dev/null +++ b/gz-customerSystem/src/assets/images/tab5.png Binary files differ diff --git a/gz-customerSystem/src/assets/images/tab6.png b/gz-customerSystem/src/assets/images/tab6.png new file mode 100644 index 0000000..b5b18fe --- /dev/null +++ b/gz-customerSystem/src/assets/images/tab6.png Binary files differ diff --git a/gz-customerSystem/src/assets/images/visitInto.png b/gz-customerSystem/src/assets/images/visitInto.png new file mode 100644 index 0000000..87f653b --- /dev/null +++ b/gz-customerSystem/src/assets/images/visitInto.png Binary files differ diff --git a/gz-customerSystem/src/router/router.js b/gz-customerSystem/src/router/router.js index fc2e138..59db9ab 100644 --- a/gz-customerSystem/src/router/router.js +++ b/gz-customerSystem/src/router/router.js @@ -225,8 +225,6 @@ <Route path="visit/closingReview/:caseTaskId?/:caseId?" element={<ClosingReview />}/> <Route path="visit/visitWorkBench" element={<VisitWorkBench />}/> - - {/* 工作流模块 */} <Route path="workflowTemplate" element={<WorkflowTemplate />} /> <Route path="workflowTemplate/workflowTemplateEdit" element={<WorkflowTemplateEdit />} /> diff --git a/gz-customerSystem/src/views/register/index.jsx b/gz-customerSystem/src/views/register/index.jsx index 2da95a0..30c32d4 100644 --- a/gz-customerSystem/src/views/register/index.jsx +++ b/gz-customerSystem/src/views/register/index.jsx @@ -1,19 +1,38 @@ -import React from 'react'; +/* + * @Author: dminyi 1301963064@qq.com + * @Date: 2024-09-08 15:14:12 + * @LastEditors: dminyi 1301963064@qq.com + * @LastEditTime: 2024-09-09 10:05:35 + * @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 TableView from '../../components/TableView'; +import { Space } from 'antd'; +import { Tabs, Typography } from '@arco-design/web-react'; + +const TabPane = Tabs.TabPane; + + const VisitWorkBench = () => { - + const [tabActivekey, setTabActivekey] = useState('1') + const [column, setColumn] = useState('1') const tabsList = [ { key: '1', label: '待分派', bgColor: '#E8F8FF', num: 10, + img: tab1 }, { key: '2', label: '待签收', bgColor: '#E8FFEA', num: 30, + img: tab2 }, { @@ -21,6 +40,7 @@ label: '待受理', bgColor: '#F5E8FF', num: 50, + img: tab3 }, { @@ -28,6 +48,7 @@ label: '办理中', bgColor: '#E6FFFB', num: 60, + img: tab4 }, { @@ -35,6 +56,7 @@ label: '待审核', bgColor: '#E8F7FF', num: 70, + img: tab5 }, { @@ -42,22 +64,378 @@ label: '督办', bgColor: '#FFF7E6', num: 80, + 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([ + { + title: tabActivekey === '5' ? '回退时间' : tabActivekey === '6' ? '督办时间' : '流转时间', + dataIndex: 'caseNo', + key: 'caseNo', + 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, + }, + { + title: '事项等级', + dataIndex: 'matterLevel', + key: 'matterLevel', + width: 180, + render: (text) => ( + <> + {text}份 + </> + ), + }, + { + title: '事项来源', + dataIndex: 'matterSource', + key: 'matterSource', + 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', + width: 180, + }, + { + title: '申请方', + dataIndex: 'applicant', + key: 'applicant', + width: 180, + }, + { + title: '被申请方', + dataIndex: 'respondent', + key: 'respondent', + width: 180, + }, + { + title: '操作', + dataIndex: 'actions', + key: 'actions', + width: 180, + render: (text, record) => ( + <Space> + <div>详情</div> + <div>处理</div> + </Space> + ), + }, + ]); + + const tabActive = (key) => { + setTabActivekey(key) + } + + // 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) + } + + + return ( <div className='VisitWorkBench'> <div className='VisitWorkBench-top'> - 工作总览 + <span style={{ fontWeight: 600 }}>工作总览</span> <div className='VisitWorkBench-top-list'> { tabsList.map((item, index) => ( - <div key={index} className='VisitWorkBench-top-list-tabsItem' style={{ backgroundColor: item.bgColor }}> + <div key={index} className='VisitWorkBench-top-list-tabsItem' style={{ backgroundColor: item.bgColor }} onClick={() => tabActive(item.key)}> <div> <div>{item.label}</div> - <div>{item.num}件</div> + <span className='VisitWorkBench-top-list-tabsItem-title'>{item.num}</span>件 </div> <div> - <img src={item.img} alt=''/> + <img src={item.img} alt='' className='VisitWorkBench-top-list-tabsItem-imgView' /> </div> </div> )) @@ -65,10 +443,66 @@ </div> </div> <div className='VisitWorkBench-middle'> - 222 + <Tabs defaultActiveTab='1'> + <TabPane + onChange={handleColumnType} + key='1' + title={ + <span style={{ fontSize: '15px' }}> + {tabActivekey === '1' ? '待分派' : + tabActivekey === '2' ? '待签收' : + tabActivekey === '3' ? '待受理' : + tabActivekey === '4' ? '办理中' : + tabActivekey === '5' ? '待审核' : '督办-未回复' + } + </span> + } + > + <Typography.Paragraph> + <TableView + columns={fakeColumns} + dataSource={fakeData1} + size="small" + rowKey="id" + bordered={true} + // style={{ marginBottom: '65px', marginTop: '-16px' }} + rowSelection={{ + type: 'Checkbox' + }} + /> + </Typography.Paragraph> + </TabPane> + <TabPane + key='2' + title={ + <span style={{ fontSize: '15px' }}> + {tabActivekey === '1' ? '已分派' : + tabActivekey === '2' ? '已签收' : + tabActivekey === '3' ? '已受理' : + tabActivekey === '4' ? '结案申请' : + tabActivekey === '5' ? '已审核' : '督办-未回复' + } + </span> + } + > + <Typography.Paragraph> + </Typography.Paragraph> + </TabPane> + </Tabs> + </div> <div className='VisitWorkBench-bottom'> - 333333 + 自行排查 + <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> + <div style={{display:'flex'}}> + <div className='VisitWorkBench-bottom-title'>自行排查</div> + <img src={checkInto} alt='' className='VisitWorkBench-bottom-img'/> + </div> + </div> </div> </div> ) diff --git a/gz-customerSystem/src/views/register/index.less b/gz-customerSystem/src/views/register/index.less index 94212ee..6a31642 100644 --- a/gz-customerSystem/src/views/register/index.less +++ b/gz-customerSystem/src/views/register/index.less @@ -760,13 +760,13 @@ height: 24px; } - &-name{ + &-name { margin: 0px 16px 0px 8px; max-width: 828px; width: fit-content; } - &-btn{ + &-btn { color: #1A6FB8; width: 30px; } @@ -774,65 +774,98 @@ } } -.marginLeft{ +.marginLeft { margin-left: 55px; //fontWeight: '600', marginBottom: '16px' - &-title{ + &-title { font-weight: 600; margin-bottom: 16px; } } -.layerDetail{ +.layerDetail { margin-top: -8px; - &-title{ + &-title { color: rgb(26, 111, 184); margin-bottom: 16px; } - &-name{ + &-name { font-size: 16px; margin-bottom: 16px; max-width: 400px; } - &-littleTitle{ + &-littleTitle { margin-bottom: 16px; } - &-content{ + &-content { margin-bottom: 16px; } } -.VisitWorkBench{ - &-top{ - background: #ffffff; - padding: 12px 16px 16px 16px; +.VisitWorkBench { + margin: 16px; - &-list{ + &-top { + background: #ffffff; + padding: 12px 16px 16px 16px; + + &-list { display: flex; - &-tabsItem{ + gap: 24px; + margin-top: 16px; + + &-tabsItem { + display: flex; padding: 12px 16px; flex: 1; + justify-content: space-between; + + &-title { + font-size: 18px; + margin-right: 4px; + } + + &-imgView { + width: 48px; + height: 48px; + } } - + } } - &-middle{ + &-middle { + background: #ffffff; + padding: 12px 16px 16px 16px; + margin-top: 12px; } - &-bottom{} + &-bottom { + background-color: #fff; + padding: 12px 16px 16px 16px; + margin-top: 12px; + + &-title{ + width: 140px; + } + + &-img { + width: 72px; + height: 72px; + } + } } -.modeMore{ +.modeMore { display: flex; justify-content: space-between; align-items: center; -- Gitblit v1.8.0