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