From 47e16d0a56559916c5fb9c4de08838e7a1d457d8 Mon Sep 17 00:00:00 2001 From: zhangyongtian <1181606322@qq.com> Date: Mon, 09 Sep 2024 18:10:50 +0800 Subject: [PATCH] feat: 完善功能 --- gz-customerSystem/src/views/register/matterDetail/index.jsx | 154 ++++++++++---------------------------------------- 1 files changed, 32 insertions(+), 122 deletions(-) diff --git a/gz-customerSystem/src/views/register/matterDetail/index.jsx b/gz-customerSystem/src/views/register/matterDetail/index.jsx index 18e733b..49176cf 100644 --- a/gz-customerSystem/src/views/register/matterDetail/index.jsx +++ b/gz-customerSystem/src/views/register/matterDetail/index.jsx @@ -1,10 +1,10 @@ import React, { useState, useEffect } from 'react'; import { Row, Col, Space, Button, Switch } from 'antd'; import PersonCard from '@/components/personCard'; -import TableView from '@/components/TableView'; import * as $$ from '@/utils/utility'; -import { Typography, Steps } from '@arco-design/web-react'; -import { question, register, Matter, transfer } from '@/assets/images' +import { Typography } from '@arco-design/web-react'; +import { question, register } from '@/assets/images'; +import FileTable from "./FileTable"; function getCaseInfoApi(id) { return $$.ax.request({ url: 'caseInfo/getCaseInfo?id=' + id, type: 'get', service: 'mediate' }); @@ -13,115 +13,8 @@ export default function MatterDetail(props) { const [fakeData, setFakeData] = useState([]);//当事人信息数据 - const [upload, setUpLoad] = useState(false); - const [filesCheck, setFilesCheck] = useState(false); const [infoData, setInfoData] = useState({}); - const fakeColumns = [ - { - title: '序号', - dataIndex: 'caseNo', - key: 'caseNo', - width: 100, - render: (text, record, index) => <span>{index + 1}</span>, - }, - { - title: '材料类型', - dataIndex: 'judicNo', - key: 'judicNo', - width: 60, - - }, - { - title: '材料数量', - dataIndex: 'inputUserName', - key: 'perClassName', - width: 180, - render: (text) => ( - <> - {text}份 - </> - ) - - - }, - { - title: '材料名称', - dataIndex: 'perClassName', - key: 'perClassName', - width: 180, - - }, - { - title: '最新上传时间', - dataIndex: 'mediateUserName', - key: 'mediateUserName', - width: 180, - - }, - { - title: '操作', - dataIndex: 'perClassName', - key: 'perClassName', - width: 200, - render: (text) => ( - <div style={{ display: 'flex', color: '#1A6FB8', gap: '16px' }}> - <div onClick={() => setFilesCheck(true)}>查看</div> - <div>删除</div> - <div>下载</div> - <div onClick={() => setUpLoad(true)}>上传</div> - </div> - ) - }, - // 更多列配置... - ]; - const fakeData1 = [ - { - 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 表示系列案 - // 更多字段... - }, - - // 更多数据... - ]; - useEffect(() => { console.log(props); getCaseInfo(props.caseId) @@ -130,15 +23,40 @@ //获取id const getCaseInfo = async (id) => { const res = await getCaseInfoApi(id) - if (res.type) { let data = res.data + const partyList = data.personList.concat(data.agentList) setInfoData({ ...data, questionName: data.queProvName === null ? '-' : data.queProvName + '/' + data.queCityName + '/' + data.queAreaName + '/' + data.queRoadName + '/' + data.queVillageName, caseType: data.caseTypeFirstName === null ? '-' : data.caseTypeFirstName + '/' + data.caseTypeName }) - setFakeData(data.personList.concat(data.agentList)) + setFakeData(partyList.map(item => { + const fileInfoList = item.fileInfoList + let file = [];//身份证明材料、企业登记材料 + let file1 = [];//法人、机构身份证明材料、代理人授权委托书 + if (fileInfoList && fileInfoList.length != 0) { + fileInfoList.forEach(item => { + if (item.ownerType == '22_00018-202' || item.ownerType == '22_00018-203') { + file.push({ + name: item.fileList[0].trueName, + uid: item.fileList[0].id, + }) + } + if (item.ownerType == '22_00018-204' || item.ownerType == '22_00018-207') { + file1.push({ + name: item.fileList[0].trueName, + uid: item.fileList[0].id, + }) + } + }) + } + return { + ...item, + file, + file1 + } + })) } } @@ -232,7 +150,7 @@ </Col> <Col span={16}> <div className="title"><div className="title-text">是否重大矛盾纠纷</div></div> - <div>{infoData.majorStatus === '0' ? '否' : '是'}</div> + <div>{infoData.majorStatus === '0' ? '否' : infoData.majorStatus === '1' ? '是' : '-'}</div> </Col> </Row> <Col span={24} style={{ display: 'flex', alignItems: 'center', marginBottom: '8px', marginTop: '20px' }}> @@ -240,15 +158,7 @@ <div className='MediationInfo-subTitle' style={{ marginTop: '-9px' }}></div><h5>事件材料</h5> </Space> </Col> - - <TableView - columns={fakeColumns} - dataSource={fakeData1} - size="small" - rowKey="id" - bordered={true} - style={{ marginBottom: '20px' }} - /> + <FileTable mainId={props.caseId} fileInfoList={infoData.fileInfoList} isReview={true}/> <Col span={24} className='title'> <Space size='small'> <div className='MediationInfo-subTitle' style={{ marginTop: '-9px' }}></div><h5>登记信息</h5> -- Gitblit v1.8.0