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 | 177 +++++++++++----------------------------------------------- 1 files changed, 35 insertions(+), 142 deletions(-) diff --git a/gz-customerSystem/src/views/register/matterDetail/index.jsx b/gz-customerSystem/src/views/register/matterDetail/index.jsx index 4767604..49176cf 100644 --- a/gz-customerSystem/src/views/register/matterDetail/index.jsx +++ b/gz-customerSystem/src/views/register/matterDetail/index.jsx @@ -1,161 +1,62 @@ 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' }); } -function listIdTypeInfoApi(data) { - return $$.ax.request({ url: `fileInfo/listIdTypeInfo`, type: 'post', service: 'sys', data }); -} - export default function MatterDetail(props) { - const [fakeData, setFakeData] = useState([{ - "trueName": "王大锤", - "mobile": "13380313412", - "certiType": "09_00015-1", - "certiTypeName": "身份证", - "certiNo": "440981199902025123", - "perType": "15_020008-1", - "perClass": "09_01001-1", - "perTypeName": "申请方当事人", - "perClassName": "自然人", - "id": "24083010053310002" - }, { - "trueName": "刘俊峰", - "mobile": "13380313412", - "certiType": "09_00015-1", - "certiTypeName": "身份证", - "certiNo": "440981199902023234", - "perType": "15_020008-2", - "perClass": "09_01001-1", - "perTypeName": "被申请方当事人", - "perClassName": "自然人", - "id": "24083010054710003" - }]);//当事人信息数据 - const [upload, setUpLoad] = useState(false); - const [filesCheck, setFilesCheck] = useState(false); + const [fakeData, setFakeData] = useState([]);//当事人信息数据 const [infoData, setInfoData] = useState({}); - - const fakeColumns = [ - { - title: '序号', - dataIndex: 'caseNo', - key: 'caseNo', - width: 100, - render: (text, record, index) => <span>{index + 1}</span>, - }, - { - title: '材料类型', - dataIndex: 'ownerTypeName', - key: 'ownerTypeName', - width: 60, - - }, - { - title: '材料数量', - dataIndex: 'size', - key: 'size', - width: 180, - render: (text) => <span>{text}份</span>, - - }, - { - title: '材料名称', - dataIndex: 'fileNames', - key: 'fileNames', - width: 180, - - }, - { - title: '最新上传时间', - dataIndex: 'fileNames', - key: 'fileNames', - 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, setFakeData1] = useState([ - { - ownerTyp: "22_00018-101", - ownerTypeName: "申请材料", - size: '0', - ownerId: null, - ownerName: null, - perType: null, - agentStatus: null, - fileNames: "-", - fileList: [] - }, - { - ownerType: "22_00018-102", - ownerTypeName: "证据材料", - size: '0', - ownerId: null, - ownerName: null, - perType: null, - agentStatus: null, - fileNames: "-", - fileList: [] - }, - - ]); - - const listIdTypeInfo = async () => { - const res = await listIdTypeInfoApi({ - mainId: props.id, //事项ID - ownerIdList: [props.id], //具体所属编号 - typeList: [] - }) - if (res.type) { - let data = res.data?.[0]?.fileList - if (res.data.length > 0) { - setFakeData1(data) - } - } - } useEffect(() => { console.log(props); - getCaseInfo(props.id) - listIdTypeInfo() - }, [props.id]) + getCaseInfo(props.caseId) + }, [props.caseId]) //获取id const getCaseInfo = async (id) => { - const res = await getCaseInfoApi('24083010062110001') - + 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 + } + })) } } @@ -257,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