From 27fb65ba5c31fbbad4c17166a72901d8db80ae03 Mon Sep 17 00:00:00 2001
From: dminyi <1301963064@qq.com>
Date: Wed, 04 Sep 2024 19:18:56 +0800
Subject: [PATCH] 联调办理反馈接口
---
gz-customerSystem/src/views/register/handleFeedback/component/handle.jsx | 170 ++++++--
gz-customerSystem/src/views/register/visit/component/previewTable.jsx | 110 ++++-
gz-customerSystem/src/views/register/index.less | 11
gz-customerSystem/src/components/SelectObjModal/selectPerson.jsx | 5
gz-customerSystem/src/views/register/visit/component/visitorRegister.jsx | 13
gz-customerSystem/src/views/register/visit/preview.jsx | 137 +++---
gz-customerSystem/src/views/register/matterDetail/fileMessage.jsx | 641 ++++++++++++++++++++++++++++++++
gz-customerSystem/src/views/register/visit/index.jsx | 4
8 files changed, 907 insertions(+), 184 deletions(-)
diff --git a/gz-customerSystem/src/components/SelectObjModal/selectPerson.jsx b/gz-customerSystem/src/components/SelectObjModal/selectPerson.jsx
index a3943e4..410056e 100644
--- a/gz-customerSystem/src/components/SelectObjModal/selectPerson.jsx
+++ b/gz-customerSystem/src/components/SelectObjModal/selectPerson.jsx
@@ -2,7 +2,7 @@
* @Author: dminyi 1301963064@qq.com
* @Date: 2024-08-29 17:41:09
* @LastEditors: dminyi 1301963064@qq.com
- * @LastEditTime: 2024-08-29 20:03:51
+ * @LastEditTime: 2024-09-04 15:16:56
* @FilePath: \gzDyh\gz-customerSystem\src\components\SelectObjModal\selectPerson.jsx
* @Description: 选择经办人
*/
@@ -31,7 +31,7 @@
* onClose, // 关闭
* onOk, // 点击确定的回调
*/
-const SelectObjModal = ({ visible = false, checkKeys = [], type = 'person', isCheckbox = false, searchData = {}, onClose, onOk }) => {
+const SelectObjModal = ({ visible = false, checkKeys = [], type = 'person', isCheckbox = false, searchData = {}, onClose, onOk, }) => {
const [data, setData] = useState([]);
const [checkedKeys, setCheckedKeys] = useState({ keys: [], items: [] });
@@ -153,6 +153,7 @@
// 默认调解员查询'22_00024-4'
const searchRole = type === 'person' ? { roleCode: '22_00024-4' } : {};
+ console.log(checkedKeys.keys,'checkedKeys.keyscheckedKeys.keys')
useEffect(() => {
if (!visible) return;
// 获取数据
diff --git a/gz-customerSystem/src/views/register/handleFeedback/component/handle.jsx b/gz-customerSystem/src/views/register/handleFeedback/component/handle.jsx
index a91254a..58787a7 100644
--- a/gz-customerSystem/src/views/register/handleFeedback/component/handle.jsx
+++ b/gz-customerSystem/src/views/register/handleFeedback/component/handle.jsx
@@ -9,15 +9,15 @@
import { scan } from '@/assets/images/icon'
import DocumentScanner from './FileUpLoad'
import * as $$ from '@/utils/utility';
-import {
- IconLink,
-} from '@arco-design/web-react/icon';
import CaseResult from './CaseResult'
+import ArcoUpload from '@/components/ArcoUpload';
const InputSearch = Input.Search;
const FormItem = Form.Item;
const TabPane = Tabs.TabPane;
+const appUrl = $$.appUrl;
+
const style = {
textAlign: 'center',
@@ -80,10 +80,23 @@
return $$.ax.request({ url: 'ctUser/getByIdRole?id=' + id, type: 'get', service: 'cust' });
}
+function choosePrincipalApi(id) {
+ return $$.ax.request({ url: 'caseInfoUnfold/choosePrincipal?caseId=24083010062110001&userId=' + id, type: 'get', service: 'mediate' });
+}
+
+function delFile(id) {
+ return $$.ax.request({ url: `fileInfo/deleteFileById`, type: 'get', service: 'sys', data: { id } });
+}
+
+function getNewTimeIdApi(id) {
+ return $$.ax.request({ url: `caseUtils/getNewTimeId`, type: 'get', service: 'utils' });
+}
+
const Handle = () => {
+ const formRef = useRef();
const [selectedTab, setSelectedTab] = useState('1'); // 默认选中第一个 tab
const [wantUser, setWantUser] = useState({});
const [formView, setFormView] = useState(false);
@@ -97,12 +110,15 @@
];
const [isModalVisible, setIsModalVisible] = useState(false);
-
-
+ const [id, setId] = useState('')
const handleTabChange = (newTabIndex) => {
setSelectedTab(newTabIndex);
};
+
+ const handleCheckedKeys = (userId) => {
+ choosePrincipal(userId)
+ }
const [records, setRecords] = useState([
{
@@ -211,16 +227,50 @@
}
+ const choosePrincipal = async (id) => {
+ console.log(id, 'choosePrincipalId')
+ const res = await choosePrincipalApi(id)
+ if (res.type) {
+ let data = res.data
+ console.log(data, 'choosePrincipalchoosePrincipal')
+ }
+
+ }
+
+
+ //删除文件
+ const handleDelFile = async (id) => {
+ const res = await delFile(id)
+ if (res.type) {
+ $$.infoSuccess({ content: '删除成功!' });
+ }
+ }
+
+ const getNewTimeId = async () => {
+ const res = await getNewTimeIdApi()
+ if (res.type) {
+ setId(res.data)
+ }
+ }
+
+ const addMark = () => {
+ setFormView(!formView);
+ getNewTimeId()
+ }
+
+ const handleFinish = () => {
+ console.log(formRef.current.getFields(), formRef, 'formRef.current.getFields()', 'formRef')
+ }
+
+ const Supervising = () => {
+
+ }
+
useEffect(() => {
getByIdRole()
}, [])
-
-
-
-
-
return (
@@ -344,50 +394,61 @@
</Space>
</Col>
<Col span={24}>
- <FormItem
- label={<div style={{ display: 'flex' }}>
- 办理意见
- <img src={scan} alt="" style={{ marginRight: '-2px', marginLeft: '8px' }} />
- <div style={{ marginLeft: '8px', color: '#1A6FB8', fontSize: '14px', cursor: 'pointer' }} onClick={openScanner}>识别材料</div>
- </div>
- }
- field='caseDes'
- rules={[{ message: '请填写事项概况', required: true }]}
+ <Form
+ ref={formRef}
+ layout='vertical'
+ requiredSymbol={false}
+ scrollToFirstError={true}
>
- <Input.TextArea
- maxLength={200}
- showWordLimit
- rows={5}
- placeholder='请完整描述事项概况,应具备5要素:发生时间+发生地点+人物情况+事项起因+事项经过'
- wrapperStyle={{ width: '100%' }}
- />
- </FormItem>
- </Col>
- <Col span={24}>
- <FormItem
- label={<div style={{ display: 'flex' }}>
- 办理附件
- </div>
- }
- field='caseDes'
- rules={[{ message: '请填写事项概况', required: true }]}
- >
- <Upload
- drag
- multiple
- accept='image/*'
- action='/'
- onDrop={(e) => {
- }}
- tip='支持png、jpg、pdf格式的图片上传,每次上传大小不超过10M'
- showUploadList={{
- fileIcon: <IconLink style={{ color: '#1D2129' }} />,
- }}
- />
- </FormItem>
+ <Row gutter={[32, 0]}>
+ <Col span={24}>
+ <FormItem
+ label={<div style={{ display: 'flex' }}>
+ 办理意见
+ <img src={scan} alt="" style={{ marginRight: '-2px', marginLeft: '8px' }} />
+ <div style={{ marginLeft: '8px', color: '#1A6FB8', fontSize: '14px', cursor: 'pointer' }} onClick={openScanner}>识别材料</div>
+ </div>
+ }
+ field='caseDes'
+ rules={[{ message: '请填写事项概况', required: true }]}
+ >
+ <Input.TextArea
+ maxLength={200}
+ showWordLimit
+ rows={5}
+ placeholder='请完整描述事项概况,应具备5要素:发生时间+发生地点+人物情况+事项起因+事项经过'
+ wrapperStyle={{ width: '100%' }}
+ />
+ </FormItem>
+
+ </Col>
+ <Col span={24}>
+ <FormItem
+ label={<div style={{ display: 'flex' }}>
+ 办理附件
+ </div>
+ }
+ field='caseDes'
+ rules={[{ message: '请填写事项概况', required: true }]}
+ >
+ <ArcoUpload
+ params={{
+ action: `${appUrl.fileUrl}/${appUrl.sys}/api/web/fileInfo/upload?mainId='24083010062110001'&&ownerId=${id}&ownerType=22_00018-102`,
+ }}
+ field='file1'
+ // handleChangeFile={handleChangeFile}
+ label=''
+ // editData={props.editData}
+ handleDelFile={handleDelFile}
+ />
+ </FormItem>
+ </Col>
+
+ </Row>
+ </Form>
</Col>
<Space size='middle'>
- <Button type='primary'>保存</Button>
+ <Button type='primary' onClick={() => handleFinish()}>保存</Button>
<Button type='secondary'>取消添加</Button>
</Space>
</div>
@@ -396,9 +457,10 @@
</Col>
</Form>
<Space style={{ marginTop: '38px', bottom: '4px' }}>
- <Button type="primary" style={{ backgroundColor: '#1A6FB8' }} onClick={() => setFormView(!formView)}>添加办理记录</Button>
- <Button type='outline' style={{ color: '#1A6FB8', border: '1px solid #1A6FB8' }} onClick={() => SetCaseResult(!caseResult)}>结案申请</Button>
+ <Button type="primary" style={{ backgroundColor: '#1A6FB8' }} onClick={() => addMark()}>添加办理记录</Button>
<Button type='outline' style={{ color: '#1A6FB8', border: '1px solid #1A6FB8' }}>联合处置申请</Button>
+ <Button type='outline' style={{ color: '#1A6FB8', border: '1px solid #1A6FB8' }} onClick={() => SetCaseResult(!caseResult)}>结案申请</Button>
+ <Button type='outline' style={{ color: '#EF6C24', border: '1px solid #EF6C24' }} onClick={() => Supervising(!caseResult)}>督办</Button>
<Button type='secondary'>返回上级页面</Button>
</Space>
</div>
@@ -457,8 +519,10 @@
visible={isModalVisible}
checkKeys={wantUser.wantUserId ? [{ label: wantUser.wantUserName, value: wantUser.wantUserId }] : undefined}
onOk={(value) => {
+ console.log(value.key, value, 'value.key', 'value')
setIsModalVisible(false);
setWantUser({ wantUserId: value.keys[0], wantUserName: value.items[0].name });
+ handleCheckedKeys(value.keys?.[0])
}}
onClose={() => setIsModalVisible(false)}
/>
diff --git a/gz-customerSystem/src/views/register/index.less b/gz-customerSystem/src/views/register/index.less
index 814959a..859eec0 100644
--- a/gz-customerSystem/src/views/register/index.less
+++ b/gz-customerSystem/src/views/register/index.less
@@ -188,7 +188,7 @@
.arco-upload-list-type-text .arco-upload-list-item:first-of-type,
.arco-upload-list-type-picture-list .arco-upload-list-item:first-of-type {
- margin-top: 34px;
+ // margin-top: 34px;
}
@@ -446,8 +446,13 @@
margin-bottom: 8px;
}
-.MyDrawer{
- position:absolute;
+.MyDrawer {
+ position: absolute;
z-index: 9999;
}
+.gap {
+ height: 8px;
+ background-color: #F2F3F5;
+ margin: 16px -18px 0px -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 bd333db..2bb5a4f 100644
--- a/gz-customerSystem/src/views/register/matterDetail/fileMessage.jsx
+++ b/gz-customerSystem/src/views/register/matterDetail/fileMessage.jsx
@@ -1,8 +1,17 @@
-import React,{useState} from 'react';
+import React, { useState } from 'react';
import NewPage from '@/components/NewPage';
-import { Steps, Tabs } from '@arco-design/web-react';
-import {apply} from '@/assets/images';
-import {result} from '@/assets/images/icon';
+import { Row, Col, Space } from 'antd';
+import { Steps, Tabs, Typography, Rate,Button } from '@arco-design/web-react';
+import { apply } 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';
+
+
+
const Step = Steps.Step;
const TabPane = Tabs.TabPane;
@@ -12,20 +21,315 @@
const [tabsActive, setTabsActive] = useState('1');
const [current, setCurrent] = useState(7);
+ const [filesCheck, setFilesCheck] = useState(false);
+ const [infoData, setInfoData] = useState({});
const [tabsList, setTabList] = useState([
- {
- img: result,
- label: '档案信息',
- key: '1',
- isNeedStep:true
- },
- {
- img: apply,
- label: '申请记录',
- key: '2',
- isNeedStep: true,//加上这个就有进度条
- },
- ])
+ {
+ img: result,
+ label: '档案信息',
+ key: '1',
+ isNeedStep: true
+ },
+ {
+ img: apply,
+ label: '申请记录',
+ key: '2',
+ isNeedStep: true,//加上这个就有进度条
+ },
+ ])
+ const [selectedTab, setSelectedTab] = useState('1'); // 默认选中第一个 tab
+
+
+ const tabs = [
+ { index: '1', label: '承办部门' },
+ { index: '2', label: '配合部门' },
+ ];
+ const fakeData = [
+ {
+ handlerUserName: '天河区棠下街综治中心',
+ finishTime: new Date().getTime() - 24 * 60 * 60 * 1000, // 一天前的时间
+ handleResult: '1',
+ status: '2',
+ taskNodeName: '来访登记',
+ mediResult: '22_00025-1',
+ handleContent: '调解成功,双方达成一致意见。',
+ operationName: '李晓明'
+ },
+ {
+ handlerUserName: '系统派单',
+ finishTime: new Date().getTime() - 12 * 60 * 60 * 1000, // 半天前的时间
+ handleResult: '1',
+ status: '2',
+ taskNodeName: '事件流转',
+ mediResult: '22_00025-1',
+ handleContent: '派单至:白云区新市街市场监管所',
+ },
+ {
+ handlerUserName: '白云区新市街市场监管所',
+ finishTime: new Date().getTime() - 11 * 60 * 60 * 1000, // 半天前的时间
+ handleResult: '1',
+ status: '2',
+ taskNodeName: '事件流转',
+ mediResult: '22_00025-1',
+ handleContent: '已签收',
+ operationName: '赵菲菲'
+ },
+ {
+ handlerUserName: '白云区新市街市场监管所',
+ finishTime: new Date().getTime() - 11 * 60 * 60 * 1000, // 半天前的时间
+ handleResult: '1',
+ status: '3',
+ taskNodeName: '事件回退',
+ mediResult: '22_00025-1',
+ // handleContent: '已签收',
+ operationName: '赵菲菲'
+ },
+ {
+ handlerUserName: '天河区棠下街综治中心',
+ finishTime: new Date().getTime() - 6 * 60 * 60 * 1000, // 6小时前的时间
+ handleResult: '2',
+ status: '1',
+ taskNodeName: '事件流转',
+ mediResult: '22_00025-1',
+ handleContent: '案件已被签收,准备开始调解。',
+ operationName: '李晓明'
+ },
+ ];
+
+ const handleTabChange = (newTabIndex) => {
+ setSelectedTab(newTabIndex);
+ };
+
+ 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 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 respondent = [
+ {
+ orgaType: '广东好又多贸易有限公司',
+ perClassName: '企业法人',
+ phone: '020-12345678',
+ address: '广州市天河区珠江新城花城大道66号',
+ companyType: '有限责任公司',
+ legalPerson: '江照月',
+ creditCode: '914401011234567890',
+ president: '广州市天河区珠江新城花城大道66号A座20层',
+ link: '/path/to/link.png', // 应该是链接图标的实际路径
+ },
+ ];
+
+ 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: 'perClassName',
+ key: 'perClassName',
+ width: 200,
+ render: (text) => (
+ <div style={{ display: 'flex', color: '#1A6FB8', gap: '16px' }}>
+ <div onClick={() => setFilesCheck(true)}>查看</div>
+ <div>下载</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 表示系列案
+ // 更多字段...
+ },
+
+ // 更多数据...
+ ];
+ const [records, setRecords] = useState([
+ {
+ id: 1,
+ date: '2024 - 7 - 1 10:00',
+ location: '天河区棠下街综治中心',
+ remark: '配合部门',
+ showView: false,
+ details: [
+ {
+ title: '操作人',
+ content: (
+ <div style={{ display: 'flex' }}>
+ <div>李晓明</div>
+ <img src={register} alt='' style={{ width: '14px', height: '14px', marginLeft: '8px', marginTop: '4px' }} />
+ </div>
+ ),
+ },
+ {
+ title: '办理意见',
+ content: (
+ <div>
+ 调解开始,我首先安抚双方情绪,确保对话在一个平和的氛围中展开。随后,我引导王先生详细说明了他的财务困境及还款意愿,同时让银行代表理解其处境,强调长期合作的重要性。经过反复沟通,银行同意调整还款计划,降低利率,并给予王先生一定的宽限期。王先生则承诺按新计划履行还款义务,双方最终达成一致,签署了调解协议。
+ </div>
+ ),
+ },
+ {
+ title: '办理附件',
+ content: (
+ <a href="your-link-here.html" target="_blank">
+ <img src={link} alt="" className="title-file" />江照月法人身份证明.pdf
+ </a>
+ ),
+ },
+ ],
+ },
+ {
+ id: 2,
+ date: '2024 - 7 - 2 14:00',
+ location: '天河区天河南街道办事处',
+ remark: '承办部门',
+ showView: false,
+ details: [
+ {
+ title: '操作人',
+ content: (
+ <div style={{ display: 'flex' }}>
+ <div>张伟</div>
+ <img src={register} alt='' style={{ width: '14px', height: '14px', marginLeft: '8px', marginTop: '4px' }} />
+ </div>
+ ),
+ },
+ {
+ title: '办理意见',
+ content: (
+ <div>
+ 在本次协调会议中,我们成功解决了双方之间的纠纷,确保了所有参与方的利益得到了妥善处理。通过深入交流,各方达成了共识,同意采取一系列措施来解决现存的问题。
+ </div>
+ ),
+ },
+ {
+ title: '办理附件',
+ content: '广州市天河区天河南路200号',
+ },
+ ],
+ },
+ ]);
+ const toggleView = (id) => {
+ setRecords(records.map(record => {
+ if (record.id === id) {
+ return {
+ ...record,
+ showView: !record.showView,
+ };
+ }
+ return record;
+ }));
+ };
+
+
+
+
+
return (
@@ -63,7 +367,308 @@
</div>
}
{tabsActive === '1' &&
- <></>
+ <>
+ <div style={{ backgroundColor: '#ffff', margin: '8px 8px 0px 16px', padding: '12px 18px 16px 16px', height: 'calc(100vh - 278px)', overflowY: 'scroll' }}>
+ <Col span={24} style={{ display: 'flex', alignItems: 'center', marginBottom: '8px' }}>
+ <Space size='small'>
+ <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} />
+ <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} />
+ <Col span={24} style={{ display: 'flex', alignItems: 'center', marginBottom: '4px' }}>
+ <Space size='small'>
+ <div className='MediationInfo-subTitle' style={{ marginTop: '-9px' }}></div><h5>纠纷基本情况</h5>
+ </Space>
+ </Col>
+ <Row gutter={[16, 16]}>
+ <Col span={8}>
+ <div><div className="title-text">事项状态</div></div>
+ <div style={{ color: '#1A6FB8' }}>{infoData?.statusName || '-'}</div>
+ </Col>
+ <Col span={16}>
+ <div><div className="title-text">事项编号</div></div>
+ <div>{infoData?.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>
+ </Col>
+ <Col span={8}>
+ <div><div className="title-text">来访时间</div></div>
+ <div>{infoData.visitTime || '-'}</div>
+ </Col>
+ <Col span={8}>
+ <div ><div className="title-text">来访人数(人)</div></div>
+ <div>{infoData.visitPeopleNum || '-'}</div>
+ </Col>
+ <Col span={8}>
+ <div ><div className="title-text">纠纷类型</div></div>
+ <div>{infoData.caseType || '-'}</div>
+ </Col>
+ <Col span={8}>
+ <div ><div className="title-text">纠纷发生时间</div></div>
+ <div>{infoData.occurTime || '-'}</div>
+ </Col>
+ <Col span={8}>
+ <div ><div className="title-text">纠纷发生地点</div></div>
+ <div>{infoData.addr || '-'}</div>
+ </Col>
+ <Col span={8}>
+ <div ><div className="title-text">问题属地</div></div>
+ <div>{infoData.questionName || '-'}</div>
+ </Col>
+ <Col span={8}>
+ <div ><div className="title-text">涉及人数(人)</div></div>
+ <div>{infoData.peopleNum || '-'}</div>
+ </Col>
+ <Col span={8}>
+ <div ><div className="title-text">涉及金额(元)</div></div>
+ <div>{$$.thousands(infoData.amount) || '-'}</div>
+ </Col>
+ <Col span={8}>
+ <div ><div className="title-text">事项来源</div></div>
+ <div>{infoData.canalName || '-'}</div>
+ </Col>
+ <Col span={16}>
+ <div ><div className="title-text">来访形式</div></div>
+ <div>{infoData.visitWayName || '-'}</div>
+ </Col>
+ <Col span={24}>
+ <div className="title"><div className="title-text">事项概况</div></div>
+ <div>{infoData.caseDes || '-'}</div>
+ </Col>
+ <Col span={24}>
+ <div className="title"><div className="title-text">事项申请</div></div>
+ <div>{infoData.caseClaim || '-'}</div>
+ </Col>
+ <Col span={16}>
+ <div className="title"><div className="title-text">是否重大矛盾纠纷</div></div>
+ <div>{infoData.majorStatus === '0' ? '否' : '是'}</div>
+ </Col>
+ </Row>
+ <Col span={24} style={{ display: 'flex', alignItems: 'center', marginBottom: '16px', marginTop: '20px' }}>
+ <Space size='small'>
+ <div className='MediationInfo-subTitle' style={{ marginTop: '-9px' }}></div><h4>办理结果</h4>
+ </Space>
+ </Col>
+ <table border="1" align="center" cellpadding="8" className="table" >
+ <tr>
+ <th bgcolor="#F7F8FA" className="table-title" width="120">化解结果</th>
+ <td width='380'>化解成功</td>
+ <th bgcolor="#F7F8FA" className="table-title" width="120">经办人</th>
+ <td width='380'>李晓明</td>
+ </tr>
+ <tr>
+ <th bgcolor="#F7F8FA" className="table-title">承办部门</th>
+ <td>天河区棠下街综治中心</td>
+ <th bgcolor="#F7F8FA" className="table-title">配合部门</th>
+ <td>-</td>
+ </tr>
+ <tr>
+ <th bgcolor="#F7F8FA" className="table-title" width="120">受理时间</th>
+ <td width='380'>2024-7-1 10:00</td>
+ <th bgcolor="#F7F8FA" className="table-title" width="120">办结时间</th>
+ <td width='380'>2024-7-15 11:45</td>
+ </tr>
+ <tr>
+ <th bgcolor="#F7F8FA" className="table-title" width="120">办理意见</th>
+ <td width='380' colspan='3'>调解开始,我首先安抚双方情绪,确保对话在一个平和的氛围中展开。随后,我引导被申请人详细说明了他的财务困境及还款意愿,同时让银行代表理解其处境,强调长期合作的重要性。经过反复沟通,被申请人理解了自身行为给申请人带来的不便,在相关证据的出示下,被申请人同意了申请方的申请请求,双方最终达成一致,签署了调解协议。</td>
+ </tr>
+ <tr>
+ <th bgcolor="#F7F8FA" className="table-title" width="120">协议要点</th>
+ <td width='380' colspan='3'>经过协商,李女士同意承担主要维修费用,但考虑到水管老化属自然磨损,张先生也表示愿意承担一小部分费用以示友好特申请结案。</td>
+ </tr>
+ <tr>
+ <th bgcolor="#F7F8FA" className="table-title" width="120">结案意见</th>
+ <td width='380' colspan='3'>考虑到事项已经得到平息,过程材料也都比较完善,现申请结案</td>
+ </tr>
+ <tr>
+ <th bgcolor="#F7F8FA" className="table-title" width="120">协议文书</th>
+ <td colspan='3'>
+ <a href="your-link-here.html" target="_blank">
+ <img src={link} alt="" className="title-file" />申请人张三丰的人民调解协议书.pdf
+ </a>
+ </td>
+ </tr>
+ </table>
+ <Col span={24} style={{ display: 'flex', alignItems: 'center', marginBottom: '16px', marginTop: '20px' }}>
+ <Space size='small'>
+ <div className='MediationInfo-subTitle' style={{ marginTop: '-9px' }}></div><h4>事件材料</h4>
+ </Space>
+ </Col>
+ <TableView
+ columns={fakeColumns}
+ dataSource={fakeData1}
+ size="small"
+ rowKey="id"
+ bordered={true}
+ style={{marginBottom:'16px'}}
+ />
+ <div className='gap'></div>
+ <Col span={24} style={{marginTop:'12px'}}>
+ <div style={{ color: 'rgb(134, 144, 156)' }}>办理记录</div>
+ <div>
+ {records.map(record => (
+ <div key={record.id} className='container-bottom-left-record'>
+ <div className='container-bottom-left-record-top'>
+ {
+ record.showView ? (
+ <img src={down} alt='' style={{ width: '18px', marginRight: '6px' }} onClick={() => toggleView(record.id)} />
+ ) : (
+ <img src={fold} alt='' className='container-bottom-left-record-top-icon' onClick={() => toggleView(record.id)} />
+ )
+ }
+ <div>{`${record.date} ${record.location}`}</div>
+ <div className={`container-bottom-left-record-top-${record.remark === '配合部门' ? 'remark' : 'hostOrg'}`}>{record.remark}</div>
+ </div>
+ <div className='container-bottom-left-record-bottom' style={{ display: record.showView ? 'block' : 'none' }}>
+ <table border="1" cellpadding="8" className='container-bottom-left-record-bottom-table'>
+ {record.details.map(detail => (
+ <tr key={detail.title}>
+ <th bgcolor="#F7F8FA" className="table-title" width="120">{detail.title}</th>
+ <td>{detail.content}</td>
+ </tr>
+ ))}
+ </table>
+ </div>
+ </div>
+ ))}
+ </div>
+ </Col>
+ <div className='gap'></div>
+ <div style={{ marginLeft: '-16px' }}>
+ <Tabs defaultActiveTab='1'>
+ <TabPane
+ key='1'
+ title={
+ <span style={{ fontSize: '15px' }}>
+ 流转进度
+ </span>
+ }
+ >
+ <Typography.Paragraph>
+ <div style={{ display: 'flex', marginLeft: '16px', gap: '16px' }}>
+ {tabs.map((tab) => (
+ <div
+ key={tab.index}
+ style={{
+ color: selectedTab === tab.index ? 'rgba(26,111,184,1)' : 'rgba(0,0,0,0.45)',
+ padding: '6px 12px',
+ border: `1px solid ${selectedTab === tab.index ? 'rgba(26,111,184,1)' : 'rgba(229,230,235,1)'}`,
+ borderRadius: '4px',
+ cursor: 'pointer',
+ }}
+ onClick={() => handleTabChange(tab.index)}
+ >
+ {tab.label}
+ </div>
+ ))}
+ </div>
+ {selectedTab === '1' &&
+ <div className='progress'>
+ <ProgressStep progressData={fakeData} />
+ </div>
+ }
+ </Typography.Paragraph>
+ </TabPane>
+ <TabPane
+ key='2'
+ title={
+ <span style={{ fontSize: '15px' }}>
+ 督办信息
+ </span>
+ }
+ >
+ <Typography.Paragraph>Content of Tab Panel 2</Typography.Paragraph>
+ </TabPane>
+ </Tabs>
+
+ </div>
+ <div className='gap'></div>
+ <Col span={24} style={{ display: 'flex', alignItems: 'center', margin:'12px 0px 4px 0px'}}>
+ <Space size='small'>
+ <div className='MediationInfo-subTitle' style={{ marginTop: '-9px' }}></div><h4>当事人评价</h4>
+ </Space>
+ </Col>
+ <Row gutter={[16, 16]}>
+ <Col span={8}>
+ <div className="title">
+ <div className="title-text">评价等级</div>
+ </div>
+ <div style={{ display: 'flex' }}><Rate defaultValue={3} disabled /></div>
+ </Col>
+ <Col span={8}>
+ <div className="title">
+ <div className="title-text">评价时间</div>
+ </div>
+ <div>2024-8-1 12:00</div>
+ </Col>
+ <Col span={8}>
+ <div className="title">
+ <div className="title-text">评价人</div>
+ </div>
+ <div>张梦雨</div>
+ </Col>
+ <Col span={12}>
+ <div className="title">
+ <div className="title-text">评语</div>
+ </div>
+ <div>实名表扬天河区棠下街综治中心,真的很有耐心处置我提出的问题,得到满意的答复。</div>
+ </Col>
+ </Row>
+ <div className='gap'></div>
+ <Col span={24} style={{ display: 'flex', alignItems: 'center', margin:'12px 0px 4px 0px' }}>
+ <Space size='small'>
+ <div className='MediationInfo-subTitle' style={{ marginTop: '-9px' }}></div><h4>登记信息</h4>
+ </Space>
+ </Col>
+ <Row gutter={[16, 16]} style={{marginBottom:'90px'}}>
+ <Col span={8}>
+ <div className="title">
+ <div className="title-text">登记机构</div>
+ </div>
+ <div>天河区棠下街道综治中心</div>
+ </Col>
+ <Col span={8}>
+ <div className="title">
+ <div className="title-text">登记人</div>
+ </div>
+ <div>
+ 李晓明
+ <img src={register} alt='' style={{ width: '14px', height: '14px', marginLeft: '8px', marginTop: '4px' }} />
+ </div>
+ </Col>
+ <Col span={8}>
+ <div className="title">
+ <div className="title-text">登记时间</div>
+ </div>
+ <div>2024-7-8 10:00</div>
+ </Col>
+ </Row>
+ </div>
+ <div className="dataSync-excel">
+ <Space size="large" style={{ margin: '4px 14px' }}>
+ <Button type="primary" style={{ backgroundColor: '#1A6FB8' }} >导出</Button>
+ <Button type='secondary'>返回上级页面</Button>
+ </Space>
+ </div>
+ </>
}
{
tabsActive === '2' &&
diff --git a/gz-customerSystem/src/views/register/visit/component/previewTable.jsx b/gz-customerSystem/src/views/register/visit/component/previewTable.jsx
index 1478a43..b4a700a 100644
--- a/gz-customerSystem/src/views/register/visit/component/previewTable.jsx
+++ b/gz-customerSystem/src/views/register/visit/component/previewTable.jsx
@@ -10,11 +10,11 @@
<table border="1" align="center" cellpadding="6" className="table">
<tr>
<th bgcolor="#F7F8FA" className="table-title" width="120">姓名</th>
- <td width='380'><div style={{ display: 'flex' }}><div>{item.trueName}</div><div className="title-personRemark">{item.perClassName}</div></div></td>
+ <td width='380'><div style={{ display: 'flex' }}><div>{item.trueName || '-'}</div><div className="title-personRemark">自然人</div></div></td>
<th bgcolor="#F7F8FA" className="table-title" width="120">联系方式</th>
- <td width='380'>{item.phone}</td>
+ <td width='380'>{item.mobile || '-'}</td>
<th bgcolor="#F7F8FA" className="table-title" width='140'>性别</th>
- <td>{item.sex}</td>
+ <td>{item.sexName || '-'}</td>
<td rowspan="4" width="112" height='147' style={{ padding: '0px' }}>
<img border="0" src={person} alt="" style={{
width: '100%',
@@ -26,23 +26,23 @@
</tr>
<tr>
<th bgcolor="#F7F8FA" className="table-title">证件类型</th>
- <td>{item.certiTypeName}</td>
+ <td>{item.certiTypeName || '-'}</td>
<th bgcolor="#F7F8FA" className="table-title">证件号码</th>
- <td>{item.certiNo}</td>
+ <td>{item.certiNo || '-'}</td>
<th bgcolor="#F7F8FA" className="table-title">民族</th>
- <td>{item.nationName}</td>
+ <td>{item.nationName || '-'}</td>
</tr>
<tr>
<th bgcolor="#F7F8FA" className="table-title">联系地址</th>
- <td>{item.addr}</td>
+ <td>{item.addr || '-'}</td>
<th bgcolor="#F7F8FA" className="table-title">户籍地址</th>
- <td>{item.placeAddr}</td>
+ <td>{item.placeAddr || '-'}</td>
<th bgcolor="#F7F8FA" className="table-title" rowspan="2" >是否有个人极端倾向</th>
- <td rowspan="2" >{item.extreme}</td>
+ <td rowspan="2" >{item.extreme === 1 ? '是' : '否' || '-'}</td>
</tr>
<tr>
<th bgcolor="#F7F8FA" className="table-title">工作单位</th>
- <td>{item.workUnit}</td>
+ <td>{item.workUnit || '-'}</td>
<th bgcolor="#F7F8FA" className="table-title">身份证明材料</th>
<td>
<a href="your-link-here.html" target="_blank">
@@ -68,42 +68,42 @@
<table border="1" align="center" cellpadding="6" className="table" style={{ marginTop: '20px', marginBottom: '20px' }}>
<tr>
<th bgcolor="#F7F8FA" className="table-title" width="120">姓名</th>
- <td width='380'><div style={{ display: 'flex' }}><div>{item.trueName}</div><div className="title-personRemark">{item.perClassName}</div></div></td>
+ <td width='380'><div style={{ display: 'flex' }}><div>{item.trueName || '-'}</div><div className="title-personRemark">代理人</div></div></td>
<th bgcolor="#F7F8FA" className="table-title" width="120">联系方式</th>
- <td width='380'>{item.phone}</td>
+ <td width='380'>{item.mobile || '-'}</td>
<th bgcolor="#F7F8FA" className="table-title" width="140">性别</th>
- <td>{item.sex}</td>
+ <td>{item.sexName || '-'}</td>
<td rowspan="4" width="112" height='147' style={{ padding: '0px' }}>
<img border="0" src={person} alt="" style={{ width: '100%', height: '100%' }} />
</td>
</tr>
<tr>
<th bgcolor="#F7F8FA" className="table-title">证件类型</th>
- <td>{item.certiTypeName}</td>
+ <td>{item.certiTypeName || '-'}</td>
<th bgcolor="#F7F8FA" className="table-title">证件号码</th>
- <td>{item.certiNo}</td>
+ <td>{item.certiNo || '-'}</td>
<th bgcolor="#F7F8FA" className="table-title">民族</th>
- <td>{item.nationName}</td>
+ <td>{item.nationName || '-'}</td>
</tr>
<tr>
<th bgcolor="#F7F8FA" className="table-title">联系地址</th>
- <td>{item.addr}</td>
+ <td>{item.addr || '-'}</td>
<th bgcolor="#F7F8FA" className="table-title">户籍地址</th>
- <td>{item.placeAddr}</td>
+ <td>{item.placeAddr || '-'}</td>
<th bgcolor="#F7F8FA" className="table-title" >是否有个人极端倾向</th>
- <td>{item.extreme}</td>
+ <td>{item.extreme || '-'}</td>
</tr>
<tr>
<th bgcolor="#F7F8FA" className="table-title">工作单位</th>
- <td>{item.workUnit}</td>
+ <td>{item.workUnit || '-'}</td>
<th bgcolor="#F7F8FA" className="table-title">委托关系</th>
- <td>{item.agentRelateName}</td>
+ <td>{item.agentRelate || '-'}</td>
<th bgcolor="#F7F8FA" className="table-title">委托类型</th>
- <td>{item.agentTypeName}</td>
+ <td>{item.agentType || '-'}</td>
</tr>
<tr>
<th bgcolor="#F7F8FA" className="table-title">代理对象</th>
- <td>{item.perTypeName}</td>
+ <td>{item.personId || '-'}</td>
<th bgcolor="#F7F8FA" className="table-title">身份证明材料</th>
<td>
<a href="your-link-here.html" target="_blank">
@@ -125,30 +125,30 @@
)
}
-const Respondent = ({ respondent}) => {
+const Respondent = ({ respondent }) => {
return (
<>
{respondent?.map((item, index) => (
<table border="1" align="center" cellpadding="6" className="table" style={{ marginTop: '20px', marginBottom: '20px' }}>
<tr>
<th bgcolor="#F7F8FA" className="table-title" width="120">企业名称</th>
- <td width='380'><div style={{ display: 'flex' }}><div>{item.orgaType}</div><div className="title-personRemark">{item.perClassName}</div></div></td>
+ <td width='380'><div style={{ display: 'flex' }}><div>{item.trueName}</div><div className="title-personRemark">{item.perClassName}</div></div></td>
<th bgcolor="#F7F8FA" className="table-title" width="120">联系方式</th>
- <td width='380'>{item.phone}</td>
+ <td width='380'>{item.mobile || '-'}</td>
<th bgcolor="#F7F8FA" className="table-title" width="120">企业所在地</th>
- <td>{item.address}</td>
+ <td>{item.addr || '-'}</td>
</tr>
<tr>
<th bgcolor="#F7F8FA" className="table-title">企业类型</th>
- <td>{item.companyType}</td>
+ <td>{item.orgaTypeName || '-'}</td>
<th bgcolor="#F7F8FA" className="table-title">法定代表人</th>
- <td>{item.legalPerson}</td>
+ <td>{item.deputy || '-'}</td>
<th bgcolor="#F7F8FA" className="table-title">统一社会信用代码</th>
- <td>{item.creditCode}</td>
+ <td>{item.orgaCode || '-'}</td>
</tr>
<tr>
<th bgcolor="#F7F8FA" className="table-title">住所</th>
- <td>{item.president}</td>
+ <td>{item.placeAddr || '-'}</td>
<th bgcolor="#F7F8FA" className="table-title">企业登记材料</th>
<td>
<a href="your-link-here.html" target="_blank">
@@ -171,4 +171,50 @@
}
-export { ApplyDialog, AgentDialog,Respondent };
\ No newline at end of file
+const Company = ({ company }) => {
+ return (
+ <>
+ {company?.map((item, index) => (
+ <table border="1" align="center" cellpadding="6" className="table" style={{ marginTop: '20px', marginBottom: '20px' }}>
+ <tr>
+ <th bgcolor="#F7F8FA" className="table-title" width="120">机构名称</th>
+ <td width='380'><div style={{ display: 'flex' }}><div>{item.trueName}</div><div className="title-personRemark">{item.perClassName}</div></div></td>
+ <th bgcolor="#F7F8FA" className="table-title" width="120">联系方式</th>
+ <td width='380'>{item.mobile || '-'}</td>
+ <th bgcolor="#F7F8FA" className="table-title" width="120">机构所在地</th>
+ <td>{item.addr || '-'}</td>
+ </tr>
+ <tr>
+ <th bgcolor="#F7F8FA" className="table-title">机构类型</th>
+ <td>{item.orgaTypeName || '-'}</td>
+ <th bgcolor="#F7F8FA" className="table-title">机构代表人</th>
+ <td>{item.deputy || '-'}</td>
+ <th bgcolor="#F7F8FA" className="table-title">机构组织代码</th>
+ <td>{item.orgaCode || '-'}</td>
+ </tr>
+ <tr>
+ <th bgcolor="#F7F8FA" className="table-title">住所</th>
+ <td>{item.placeAddr || '-'}</td>
+ <th bgcolor="#F7F8FA" className="table-title">机构登记材料</th>
+ <td>
+ <a href="your-link-here.html" target="_blank">
+ <img src={link} alt="" className="title-file" />广东好又多贸易有限公司营业执照副本.pdf
+ </a>
+ </td>
+ <th bgcolor="#F7F8FA" className="table-title" >机构代表人身份证明材料</th>
+ <td>
+ <a href="your-link-here.html" target="_blank">
+ <img src={link} alt="" className="title-file" />江照月法人身份证明.pdf
+ </a>
+ </td>
+ </tr>
+ </table>
+
+ ))
+ }
+ </>
+ )
+
+}
+
+export { ApplyDialog, AgentDialog, Respondent, Company };
\ No newline at end of file
diff --git a/gz-customerSystem/src/views/register/visit/component/visitorRegister.jsx b/gz-customerSystem/src/views/register/visit/component/visitorRegister.jsx
index e6af7c8..6c4034c 100644
--- a/gz-customerSystem/src/views/register/visit/component/visitorRegister.jsx
+++ b/gz-customerSystem/src/views/register/visit/component/visitorRegister.jsx
@@ -109,16 +109,16 @@
<Col span={24}>
<ArcoUpload
params={{
- action: `${appUrl.fileUrl}/${appUrl.sys}/api/web/fileInfo/upload?mainId=${props.mainId}&&ownerId=${props.mainId}&ownerType=22_00014-1`,
+ action: `${appUrl.fileUrl}/${appUrl.sys}/api/web/fileInfo/upload?mainId=${props.mainId}&&ownerId=${props.mainId}&ownerType=22_00018-101`,
}}
field='file'
handleChangeFile={handleChangeFile}
- label='身份证明材料'
+ label=''
editData={props.editData}
handleDelFile={handleDelFile}
onFileListChange={(v) => { setFileLength(v); console.log(v, 'vvsetFileLength') }}
/>
- {fileLength.length > 0 && <div style={{ position: 'absolute', top: '233px', left: '16px', color: '#86909C' }}>申请材料累计上传:<span style={{ color: '#1A6FB8' }}>{fileLength.length}</span></div>}
+ {fileLength.length > 0 && <div style={{ position: 'absolute',top:'198px', left: '16px', color: '#86909C' }}>申请材料累计上传:<span style={{ color: '#1A6FB8' }}>{fileLength.length}</span></div>}
</Col>
</>
)
@@ -130,11 +130,11 @@
<Col span={24}>
<ArcoUpload
params={{
- action: `${appUrl.fileUrl}/${appUrl.sys}/api/web/fileInfo/upload?mainId=${props.mainId}&&ownerId=${props.mainId}&ownerType=22_00014-2`,
+ action: `${appUrl.fileUrl}/${appUrl.sys}/api/web/fileInfo/upload?mainId=${props.mainId}&&ownerId=${props.mainId}&ownerType=22_00018-102`,
}}
field='file1'
handleChangeFile={handleChangeFile}
- label='身份证明材料'
+ label=''
editData={props.editData}
handleDelFile={handleDelFile}
/>
@@ -325,7 +325,8 @@
setEditData(value)
}
- console.log(sourceType, 'sourceType')
+ // console.log(sourceType, 'sourceType')
+ // console.log(props.formRef?.current?.getFields(),'formRef.current.getFields()')
return (
diff --git a/gz-customerSystem/src/views/register/visit/index.jsx b/gz-customerSystem/src/views/register/visit/index.jsx
index 2978bd8..c32fc7c 100644
--- a/gz-customerSystem/src/views/register/visit/index.jsx
+++ b/gz-customerSystem/src/views/register/visit/index.jsx
@@ -2,7 +2,7 @@
* @Author: dminyi 1301963064@qq.com
* @Date: 2024-08-09 09:59:43
* @LastEditors: dminyi 1301963064@qq.com
- * @LastEditTime: 2024-09-02 19:59:41
+ * @LastEditTime: 2024-09-04 10:20:40
* @FilePath: \gzDyh\gz-customerSystem\src\views\basicInformation\organization\index.jsx
* @Description: 来访登记
*/
@@ -186,7 +186,7 @@
<Step title='结案归档' disabled />
</Steps>
</div>
- <Preview style={{ display: isReview ? '' : 'none' }} />
+ <Preview style={{ display: isReview ? '' : 'none' }} data={formRef?.current?.getFields()} />
<VisitorRegister formRef={formRef} style={{ display: isReview ? 'none' : '' }} mainId={id} />
<div className="dataSync-excel">
<Space size="large" style={{ margin: '4px 14px' }}>
diff --git a/gz-customerSystem/src/views/register/visit/preview.jsx b/gz-customerSystem/src/views/register/visit/preview.jsx
index 13644b1..254c18a 100644
--- a/gz-customerSystem/src/views/register/visit/preview.jsx
+++ b/gz-customerSystem/src/views/register/visit/preview.jsx
@@ -2,7 +2,7 @@
* @Author: dminyi 1301963064@qq.com
* @Date: 2024-08-13 15:19:57
* @LastEditors: dminyi 1301963064@qq.com
- * @LastEditTime: 2024-09-03 17:02:58
+ * @LastEditTime: 2024-09-04 15:00:02
* @FilePath: \gzDyh\gz-customerSystem\src\views\basicInformation\organization\preview.jsx
* @Description: 预览信息
*/
@@ -14,7 +14,7 @@
import { Modal } from '@arco-design/web-react';
import NewFileCheck from '../../filesCheck/newFileCheck';
import * as $$ from '../../../utils/utility';
-import { ApplyDialog, AgentDialog,Respondent } from './component/previewTable'
+import { ApplyDialog, AgentDialog, Respondent, Company } from './component/previewTable'
const Preview = (props) => {
const [filesCheck, setFilesCheck] = useState(false);
@@ -125,59 +125,19 @@
// 更多列配置...
];
- 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 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 applyData = props.data?.fakeData?.filter(item => item.perTypeName === "申请方当事人" && item.perClassName === "自然人");
+ const agentData = props.data?.fakeData?.filter(item => item.perTypeName === "申请方代理人");
+ const company = props.data?.fakeData?.filter(item => item.perTypeName === "申请方当事人" && item.perClassName === "非法人组织");
+ const respondentData = props.data?.fakeData?.filter(item => item.perTypeName === "申请方当事人" && item.perClassName === "法人");
- const respondent = [
- {
- orgaType: '广东好又多贸易有限公司',
- perClassName: '企业法人',
- phone: '020-12345678',
- address: '广州市天河区珠江新城花城大道66号',
- companyType: '有限责任公司',
- legalPerson: '江照月',
- creditCode: '914401011234567890',
- president: '广州市天河区珠江新城花城大道66号A座20层',
- link: '/path/to/link.png', // 应该是链接图标的实际路径
- },
- ];
+ const applyData1 = props.data?.fakeData?.filter(item => item.perTypeName === "被申请方当事人" && item.perClassName === "自然人");
+ const agentData1 = props.data?.fakeData?.filter(item => item.perTypeName === "被申请方代理人");
+ const company1 = props.data?.fakeData?.filter(item => item.perTypeName === "被申请方当事人" && item.perClassName === "非法人组织");
+ const respondentData1 = props.data?.fakeData?.filter(item => item.perTypeName === "被申请方当事人" && item.perClassName === "法人");
+
+ console.log(props.data, 'props.data')
+
@@ -195,15 +155,46 @@
<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: '8px' }}>
<Space size='small'>
<div className='MediationInfo-subTitle' style={{ marginTop: '-9px' }}></div><h4>纠纷基本情况</h4>
@@ -214,39 +205,49 @@
<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' }}>3</div></div>级</div>
+ <div style={{ display: 'flex' }}><div style={{ backgroundColor: '#00B42A', marginRight: '4px', borderRadius: '4px' }}><div style={{ color: '#FFFFFF', padding: '0px 6px' }}>{props.data?.caseLevel || '-'}</div></div>级</div>
</Col>
<Col span={8}>
<div><div className="title-text">来访时间</div></div>
- <div>2024-7-12 10:00</div>
+ <div>{props.data?.visitTime || '-'}</div>
</Col>
<Col span={8}>
<div ><div className="title-text">来访人数(人)</div></div>
- <div>2</div>
+ <div>{props.data?.visitPeopleNum || '-'}</div>
</Col>
<Col span={8}>
<div ><div className="title-text">纠纷类型</div></div>
- <div>市场监管/金融纠纷</div>
+ <div>
+ {props.data?.caseTypeFirstName ?
+ `${props.data.caseTypeFirstName}/${props.data.caseTypeName}`
+ : '-'
+ }
+ </div>
</Col>
<Col span={8}>
<div ><div className="title-text">纠纷发生时间</div></div>
- <div>2024-7-11</div>
+ <div>{props.data?.occurTime || '-'}</div>
</Col>
<Col span={8}>
<div ><div className="title-text">纠纷发生地点</div></div>
- <div>广州市天河区中山七路康王柏德来商业城</div>
+ <div>{props.data?.addr || '-'}</div>
</Col>
<Col span={8}>
<div ><div className="title-text">问题属地</div></div>
- <div>广州市/天河区/棠下街道</div>
+ <div>
+ {props.data?.queProvName ?
+ `${props.data.queProvName}/${props.data.queCityName}/${props.data.queAreaName}/${props.data.queRoadName}`
+ : '-'
+ }
+ </div>
</Col>
<Col span={8}>
<div ><div className="title-text">涉及人数(人)</div></div>
- <div>2</div>
+ <div>{props.data?.peopleNum || '-'}</div>
</Col>
<Col span={8}>
<div ><div className="title-text">涉及金额(元)</div></div>
- <div>{$$.thousands(20000)}</div>
+ <div>{$$.thousands(props.data?.amount) || '-'}</div>
</Col>
<Col span={8}>
<div ><div className="title-text">事项来源</div></div>
@@ -258,15 +259,15 @@
</Col>
<Col span={24}>
<div className="title"><div className="title-text">事项概况</div></div>
- <div>张先生与李先生是多年的朋友关系。2023年4月,李先生因生意周转需要向张先生借款人民币20万元,并口头承诺于一年内还清。出于信任,张先生未要求签订书面借条或借款合同。然而,到了2024年4月,李先生并未如约归还借款。张先生多次通过电话、微信等方式催促还款,但李先生先是拖延,后干脆以各种理由拒绝偿还,甚至声称该笔款项属于赠予而非借款,这使得张先生感到十分无奈。 </div>
+ <div>{props.data?.caseDes || '-'} </div>
</Col>
<Col span={24}>
<div className="title"><div className="title-text">事项申请</div></div>
- <div>张先生与李先生是多年的朋友关系。2023年4月,李先生因生意周转需要向张先生借款人民币20万元,并口头承诺于一年内还清。出于信任,张先生未要求签订书面借条或借款合同。然而,到了2024年4月,李先生并未如约归还借款。张先生多次通过电话、微信等方式催促还款,但李先生先是拖延,后干脆以各种理由拒绝偿还,甚至声称该笔款项属于赠予而非借款,这使得张先生感到十分无奈。 </div>
+ <div>{props.data?.caseClaim || '-'}</div>
</Col>
<Col span={16}>
<div className="title"><div className="title-text">是否重大矛盾纠纷</div></div>
- <div>否</div>
+ <div>{props.data?.majorStatus === 1 ? '是' : '否'}</div>
</Col>
</Row>
<Col span={24} style={{ display: 'flex', alignItems: 'center', marginBottom: '8px', marginTop: '20px' }}>
--
Gitblit v1.8.0