From 172053309302ca857aae36d6769157dc7bb43472 Mon Sep 17 00:00:00 2001
From: zhangyongtian <1181606322@qq.com>
Date: Sat, 07 Sep 2024 16:54:33 +0800
Subject: [PATCH] Merge branch 'master' of http://120.79.193.119:9090/r/gzzfw/frontEnd/gzDyh

---
 gz-customerSystem/src/views/register/handleFeedback/component/handle.jsx    |   59 +++-
 gz-customerSystem/src/views/register/matterDetail/FileUpLoad.jsx            |    1 
 gz-customerSystem/src/views/register/index.less                             |   94 +++++++
 gz-customerSystem/src/assets/images/index.js                                |   10 
 gz-customerSystem/src/views/register/visit/component/visitorRegister.jsx    |  128 +++++-----
 gz-customerSystem/src/views/filesCheck/newFileCheck.jsx                     |  233 ++++++++++---------
 gz-customerSystem/src/views/register/visit/component/levelDetail.jsx        |  134 ++++++++++
 gz-customerSystem/src/views/register/handleFeedback/index.jsx               |   19 +
 gz-customerSystem/src/api/appUrl.js                                         |    4 
 gz-customerSystem/src/assets/images/aiPerson.png                            |    0 
 gz-customerSystem/src/assets/images/caselogo.png                            |    0 
 gz-customerSystem/src/views/register/handleFeedback/component/AuditView.jsx |    2 
 12 files changed, 472 insertions(+), 212 deletions(-)

diff --git a/gz-customerSystem/src/api/appUrl.js b/gz-customerSystem/src/api/appUrl.js
index 06e403f..0a06d79 100644
--- a/gz-customerSystem/src/api/appUrl.js
+++ b/gz-customerSystem/src/api/appUrl.js
@@ -2,7 +2,7 @@
  * @Company: hugeInfo
  * @Author: ldh
  * @Date: 2022-02-16 11:25:57
- * @LastEditTime: 2024-09-02 19:58:19
+ * @LastEditTime: 2024-09-07 16:09:36
  * @LastEditors: dminyi 1301963064@qq.com
  * @Version: 1.0.0
  * @Description: api地址
@@ -18,7 +18,7 @@
   // fileUrl: 'http://gz.hugeinfo.com.cn',
 
   // 文件查看url 后面接附件编号
-  fileShowUrl: "/dyh-sys/api/v1/fileInfo/show/",
+  fileShowUrl: "/dyh-sys/api/web/fileInfo/show/",
   // 文件下载url 后面接附件编号
   fileDownUrl: "/dyh-sys/api/v1/fileInfo/down/",
   // 在线文档编辑链接
diff --git a/gz-customerSystem/src/assets/images/aiPerson.png b/gz-customerSystem/src/assets/images/aiPerson.png
new file mode 100644
index 0000000..203085f
--- /dev/null
+++ b/gz-customerSystem/src/assets/images/aiPerson.png
Binary files differ
diff --git a/gz-customerSystem/src/assets/images/caselogo.png b/gz-customerSystem/src/assets/images/caselogo.png
new file mode 100644
index 0000000..f064573
--- /dev/null
+++ b/gz-customerSystem/src/assets/images/caselogo.png
Binary files differ
diff --git a/gz-customerSystem/src/assets/images/index.js b/gz-customerSystem/src/assets/images/index.js
index 128e320..9a8f3c0 100644
--- a/gz-customerSystem/src/assets/images/index.js
+++ b/gz-customerSystem/src/assets/images/index.js
@@ -2,7 +2,7 @@
  * @Company: hugeInfo
  * @Author: lwh
  * @Date: 2023-04-24 16:12:00
- * @LastEditTime: 2024-08-30 10:47:30
+ * @LastEditTime: 2024-09-07 14:08:18
  * @LastEditors: dminyi 1301963064@qq.com
  * @Version: 1.0.0
  * @Description:
@@ -61,7 +61,9 @@
 import applyRecord from "./applyRecord.png";
 import downO from "./downO.png";
 import up from "./up.png";
-import Audit from "./Audit.png"
+import Audit from "./Audit.png";
+import aiPerson from "./aiPerson.png";
+import caselogo from "./caselogo.png";
 
 export {
   ledger_1,
@@ -118,5 +120,7 @@
   applyRecord,
   downO,
   up,
-  Audit
+  Audit,
+  aiPerson,
+  caselogo
 };
\ No newline at end of file
diff --git a/gz-customerSystem/src/views/filesCheck/newFileCheck.jsx b/gz-customerSystem/src/views/filesCheck/newFileCheck.jsx
index 5d85122..ee9ddb3 100644
--- a/gz-customerSystem/src/views/filesCheck/newFileCheck.jsx
+++ b/gz-customerSystem/src/views/filesCheck/newFileCheck.jsx
@@ -2,7 +2,7 @@
  * @Company: hugeInfo
  * @Author: ldh
  * @Date: 2022-03-11 11:03:44
- * @LastEditTime: 2024-09-05 20:46:47
+ * @LastEditTime: 2024-09-07 16:11:58
  * @LastEditors: dminyi 1301963064@qq.com
  * @Version: 1.0.0
  * @Description: 大厅来访材料附件查看
@@ -44,10 +44,9 @@
 const FormItem = Form.Item;
 const Option = Select.Option;
 
-// http://localhost:9002/dyh-sys/api/web/fileInfo/listFileByCat?mainId=10001&ownerCat=&createStart=&createEnd=&uploaderType=
 // 获取附件
-function getFileListDataApi(submitData) {
-	return $$.ax.request({ url: `fileInfo/listFileByCat?mainId=${submitData}`, type: 'get', service: 'mediate' });
+function getFileListDataApi() {
+	return $$.ax.request({ url: `fileInfo/listFileByCat?mainId=${'10001'}&ownerCat=&createStart=&createEnd=&uploaderType=`, type: 'get', service: 'sys', });
 }
 
 const NewFileCheck = ({ caseId }) => {
@@ -166,12 +165,12 @@
 		const res = await getFileListDataApi(caseId || searchParams.get('caseId'));
 		global.setSpinning(false);
 		if (res.type) {
-			let resData = res.data?.dataList || [];
+			let resData = res.data || [];
 			let arr = [];
 			let filesArr = [];
 			let index = 0;
 			resData.forEach((x, t) => {
-				arr.push(x.ownerTypeName);
+				arr.push(x.ownerCatName);
 				filesArr = filesArr.concat(x.fileList || []);
 			});
 			forEach: for (let i = 0; i < filesArr.length - 1; i++) {
@@ -186,6 +185,7 @@
 			setOpenKeys(arr);
 		}
 	}
+	console.log(files,'filesfiles')
 
 	useEffect(() => {
 		getFileListData();
@@ -277,116 +277,123 @@
 					</Row>
 
 				</Form>
-
-				<Menu
-					className="filesCheck-nav-menu"
-					style={{ width: '200px' }}
-					onOpenChange={(openKeys) => setOpenKeys(openKeys)}
-					mode="inline"
-					selectedKeys={[files[fileIndex]?.id]}
-					openKeys={openKeys}
-				>
-					{data.data?.map((x, t) => {
-						return (
-							<SubMenu
-								key={x.ownerTypeName}
-								expandIcon={openKeys.includes(x.ownerTypeName) ? <CaretRightOutlined /> : <CaretDownOutlined />}
-								title={x.ownerTypeName}
-							>
-								{x.fileList?.map((y, z) => {
-									return (
-										<Menu.Item
-											onClick={async () => {
-												global.setSpinning(true);
-												for (let i = 0; i < files.length; i++) {
-													if (files[i].id === y.id) {
-														setFileIndex(i);
-														break;
-													}
-												}
-											}}
-											icon={iconType(y.cat)}
-											key={y.id}
-										>
-											{y.name}
-										</Menu.Item>
-									);
-								})}
-							</SubMenu>
-						);
-					})}
-				</Menu>
-			</nav>
-			{files[fileIndex] ? (
-				<main className="filesCheck-main">
-					{/* 头部操作区 */}
-					<div className="filesCheck-main-action">
-						<div className="filesCheck-main-action-title">
-							<h3>{files[fileIndex]?.name}</h3>
-						</div>
-						{files[fileIndex]?.cat === '22_00017-3' && (
-							<>
-								<div className="filesCheck-main-action-item">
-									<Tooltip title="左转">
-										<RotateLeftOutlined onClick={() => handleRotateImg('left')} />
-									</Tooltip>
-								</div>
-								<div className="filesCheck-main-action-item">
-									<Tooltip title="右转">
-										<RotateRightOutlined onClick={() => handleRotateImg('right')} />
-									</Tooltip>
-								</div>
-							</>
-						)}
-						<div className="filesCheck-main-action-item">
-							<Tooltip title="下载">
-								<a href={`${appUrl.fileUrl}${appUrl.fileDownUrl}${files[fileIndex]?.id}`}>
-									<DownloadOutlined />
-								</a>
-							</Tooltip>
-						</div>
-					</div>
-					{files[fileIndex]?.cat === '22_00017-3' ? (
-						<div className="filesCheck-main-imgBg" ref={imgBgRef}>
-							<img
-								ref={imgRef}
-								style={{ transform: 'scale3d(1,1,1) rotate(0deg)' }}
-								className="filesCheck-main-img"
-								src={`${appUrl.fileUrl}${appUrl.fileShowUrl}${files[fileIndex]?.id}`}
-								alt="图片加载中..."
-							/>
-						</div>
-					) : (
-						<div className="filesCheck-main-other">
-							<div className="filesCheck-main-other-icon">{iconType(files[fileIndex]?.cat)}</div>
-							<div className="filesCheck-main-other-text">
-								您所查看的附件不支持预览,请下载查看{files[fileIndex]?.cat === '22_00017-6' ? '或跳转预览' : ''}。
-							</div>
-							<div>
-								{files[fileIndex]?.cat === '22_00017-6' && (
-									<Button
-										className="public-buttonMargin"
-										onClick={() => window.open(`${appUrl.fileUrl}${appUrl.fileShowUrl}${files[fileIndex]?.id}`)}
+				<div style={{ display: 'flex' }}>
+					<div style={{ width: '200px' }}>
+						<Menu
+							// className="filesCheck-nav-menu"
+							style={{ width: '200px' }}
+							onOpenChange={(openKeys) => setOpenKeys(openKeys)}
+							mode="inline"
+							selectedKeys={[files[fileIndex]?.id]}
+							openKeys={openKeys}
+						>
+							{data.data?.map((x, t) => {
+								return (
+									<SubMenu
+										key={x.ownerCatName}
+										expandIcon={openKeys.includes(x.ownerCatName) ? <CaretRightOutlined /> : <CaretDownOutlined />}
+										title={x.ownerCatName}
 									>
-										跳转查看
-									</Button>
+										{x.fileList?.map((y, z) => {
+											return (
+												<Menu.Item
+													onClick={async () => {
+														global.setSpinning(true);
+														for (let i = 0; i < files.length; i++) {
+															if (files[i].id === y.id) {
+																setFileIndex(i);
+																break;
+															}
+														}
+													}}
+													icon={iconType(y.cat)}
+													key={y.id}
+												>
+													{y.name}
+												</Menu.Item>
+											);
+										})}
+									</SubMenu>
+								);
+							})}
+						</Menu>
+
+					</div>
+					<div style={{ flex: 1 }}>
+						{files[fileIndex] ? (
+							<main className="filesCheck-main">
+								{/* 头部操作区 */}
+								<div className="filesCheck-main-action">
+									<div className="filesCheck-main-action-title">
+										<h3>{files[fileIndex]?.name}</h3>
+									</div>
+									{files[fileIndex]?.cat === '22_00017-3' && (
+										<>
+											<div className="filesCheck-main-action-item">
+												<Tooltip title="左转">
+													<RotateLeftOutlined onClick={() => handleRotateImg('left')} />
+												</Tooltip>
+											</div>
+											<div className="filesCheck-main-action-item">
+												<Tooltip title="右转">
+													<RotateRightOutlined onClick={() => handleRotateImg('right')} />
+												</Tooltip>
+											</div>
+										</>
+									)}
+									<div className="filesCheck-main-action-item">
+										<Tooltip title="下载">
+											<a href={`${appUrl.fileUrl}${appUrl.fileDownUrl}${files[fileIndex]?.id}`}>
+												<DownloadOutlined />
+											</a>
+										</Tooltip>
+									</div>
+								</div>
+								{files[fileIndex]?.ownerCat === "22_00014-1" ? (
+									<div className="filesCheck-main-imgBg" ref={imgBgRef}>
+										<img
+											ref={imgRef}
+											style={{ transform: 'scale3d(1,1,1) rotate(0deg)' }}
+											className="filesCheck-main-img"
+											src={`${appUrl.fileUrl}${appUrl.fileShowUrl}${files[fileIndex]?.id}`}
+											alt="图片加载中..."
+										/>
+									</div>
+								) : (
+									<div className="filesCheck-main-other">
+										<div className="filesCheck-main-other-icon">{iconType(files[fileIndex]?.cat)}</div>
+										<div className="filesCheck-main-other-text">
+											您所查看的附件不支持预览,请下载查看{files[fileIndex]?.cat === '22_00017-6' ? '或跳转预览' : ''}。
+										</div>
+										<div>
+											{files[fileIndex]?.cat === '22_00017-6' && (
+												<Button
+													className="public-buttonMargin"
+													onClick={() => window.open(`${appUrl.fileUrl}${appUrl.fileShowUrl}${files[fileIndex]?.id}`)}
+												>
+													跳转查看
+												</Button>
+											)}
+											<a href={`${appUrl.fileUrl}${appUrl.fileDownUrl}${files[fileIndex]?.id}`}>
+												<Button type="primary">下载</Button>
+											</a>
+										</div>
+									</div>
 								)}
-								<a href={`${appUrl.fileUrl}${appUrl.fileDownUrl}${files[fileIndex]?.id}`}>
-									<Button type="primary">下载</Button>
-								</a>
-							</div>
-						</div>
-					)}
-					<div className="filesCheck-imgLeft" onClick={() => handleNext('back')}>
-						<LeftOutlined />
+								<div className="filesCheck-imgLeft" onClick={() => handleNext('back')}>
+									<LeftOutlined />
+								</div>
+								<div className="filesCheck-imgRight" onClick={() => handleNext('next')}>
+									<RightOutlined />
+								</div>
+							</main>
+						) : (
+							<div style={{ width: '100%', paddingTop: '20%' }}>{$$.MyEmpty()}</div>
+						)}
 					</div>
-					<div className="filesCheck-imgRight" onClick={() => handleNext('next')}>
-						<RightOutlined />
-					</div>
-				</main>
-			) : (
-				<div style={{ width: '100%', paddingTop: '20%' }}>{$$.MyEmpty()}</div>
-			)}
+				</div>
+			</nav>
+			{/*图片查看*/}
 		</>
 	);
 };
diff --git a/gz-customerSystem/src/views/register/handleFeedback/component/AuditView.jsx b/gz-customerSystem/src/views/register/handleFeedback/component/AuditView.jsx
index e9238b0..fb9456b 100644
--- a/gz-customerSystem/src/views/register/handleFeedback/component/AuditView.jsx
+++ b/gz-customerSystem/src/views/register/handleFeedback/component/AuditView.jsx
@@ -8,7 +8,7 @@
 
 const FormItem = Form.Item;
 const appUrl = $$.appUrl;
-const RadioGroup = Radio.Group;// 根据调解案号获取纠纷登记信息
+const RadioGroup = Radio.Group;
 
 
 function delFile(id) {
diff --git a/gz-customerSystem/src/views/register/handleFeedback/component/handle.jsx b/gz-customerSystem/src/views/register/handleFeedback/component/handle.jsx
index 186e5cf..0340129 100644
--- a/gz-customerSystem/src/views/register/handleFeedback/component/handle.jsx
+++ b/gz-customerSystem/src/views/register/handleFeedback/component/handle.jsx
@@ -1,6 +1,6 @@
 import React, { useState, useRef, useEffect } from 'react';
 import { Col, Space, Row, Tooltip } from 'antd';
-import { register, } from '@/assets/images';
+import { register, aiPerson } from '@/assets/images';
 import { Form, Input, Tabs, Typography, Button, Modal, Select } from '@arco-design/web-react';
 import { question1, } from '@/assets/images';
 import ProgressStep from '@/components/ProgressStep/VisitStep';
@@ -13,7 +13,8 @@
 import ArcoUpload from '@/components/ArcoUpload';
 import HandleRecord from '../../matterDetail/HandleRecord';
 import SupervisingView from '../../matterDetail/Supervising'
-import UniteHandle from '../../matterDetail/UniteHandle'
+import UniteHandle from '../../matterDetail/UniteHandle';
+
 
 const Option = Select.Option;
 const FormItem = Form.Item;
@@ -99,7 +100,13 @@
   return $$.ax.request({ url: `caseFeedback/updateFeedback`, type: 'post', service: 'mediate', data });
 }
 
+function getFeedbackInfoApi(caseTaskId) {
+  return $$.ax.request({ url: `caseFeedback/getFeedbackInfo?caseTaskId=` + caseTaskId, type: 'get', service: 'mediate' });
+}
 
+function getByIdRoleApi(id) {
+  return $$.ax.request({ url: `ctUser/getByIdRole?id=` + id, type: 'get', service: 'cust' });
+}
 
 
 
@@ -112,6 +119,8 @@
   const [personView, setPersonView] = useState(false);
   const [supervising, setSupervising] = useState(false)
   const [data, setData] = useState({})
+  const [feedbackInfoData, setFeedbackInfoData] = useState({})
+  const [personData, setPersonData] = useState({})
   const [caseResult, SetCaseResult] = useState(false);
   const [list, setList] = useState([]);
   const [mode, SetMode] = useState(false);
@@ -175,6 +184,12 @@
 
   }
 
+  const getByIdRole = async () => {
+    const res = await getByIdRoleApi('2105180249501982')
+    setPersonData(res.data)
+
+  }
+
 
   //删除文件
   const handleDelFile = async (id) => {
@@ -201,7 +216,7 @@
     } else {
       const res = await saveFeedbackApi({
         ...submitData,
-        caseId: '24083010062110001',
+        caseId: "24083010062110001",
         id: id,
         caseTaskId: '',
       })
@@ -210,6 +225,12 @@
         listFeedback('24083010062110001')
       }
     }
+  }
+
+  const getFeedbackInfo = async () => {
+    const res = await getFeedbackInfoApi('24083010062110001')
+    setFeedbackInfoData(res.data)
+    console.log(res.data, 'res.data')
   }
 
   //获取办理记录接口
@@ -277,10 +298,16 @@
     setSupervising(!supervising)
   }
 
+  const handlePersonView = () => {
+    setPersonView(!personView)
+
+  }
+
 
   useEffect(() => {
     listFeedback('24083010062110001');
-    // getByIdRole()
+    getFeedbackInfo();
+    getByIdRole();
   }, [])
 
 
@@ -296,22 +323,22 @@
           <Row gutter={[16, 16]}>
             <Col span={8} style={{ display: 'flex' }}>
               <div><div className="title-text">承办部门:</div></div>
-              <div>天河区棠下街综治中心</div>
+              <div>{feedbackInfoData?.handleUnitName}</div>
             </Col>
             <Col span={8} style={{ display: 'flex' }}>
               <div><div className="title-text">经办人:</div></div>
               <div style={{ display: 'flex' }}>
-                <div>王一顺</div>
-                <img onClick={() => setPersonView(!personView)} src={register} alt='' style={{ width: '14px', height: '14px', marginLeft: '8px', marginTop: '4px' }} />
+                <div>{feedbackInfoData?.handleUserName}</div>
+                <img onClick={() => handlePersonView()} src={register} alt='' style={{ width: '14px', height: '14px', marginLeft: '8px', marginTop: '4px' }} />
               </div>
             </Col>
             <Col span={8} style={{ display: 'flex' }}>
               <div><div className="title-text">配合部门:</div></div>
-              <div>-</div>
+              <div>{feedbackInfoData?.assistUnitName}</div>
             </Col>
             <Col span={8} style={{ display: 'flex' }}>
               <div><div className="title-text">受理时间:</div></div>
-              <div>2024-7-5 11:45</div>
+              <div>{feedbackInfoData?.acceptTime}</div>
             </Col>
           </Row>
 
@@ -395,7 +422,7 @@
                           >
                             <ArcoUpload
                               params={{
-                                action: `${appUrl.fileUrl}/${appUrl.sys}/api/web/fileInfo/upload?mainId='24083010062110001'&&ownerId=${id}&ownerType=22_00018-102`,
+                                action: `${appUrl.fileUrl}/${appUrl.sys}/api/web/fileInfo/upload?mainId=${'24083010062110001'}&ownerId=${id}&ownerType=${'22_00018-501'}`,
                               }}
                               field='file1'
                               // handleChangeFile={handleChangeFile}
@@ -499,21 +526,21 @@
           <table border="1" align="center" cellpadding="5" className="table">
             <tr>
               <th bgcolor="#F7F8FA" className="table-title" width="120">姓名</th>
-              <td width='380'><div style={{ display: 'flex' }}><div>{data.trueName}</div></div></td>
+              <td width='380'><div style={{ display: 'flex' }}><div>{personData?.trueName}</div></div></td>
               <th bgcolor="#F7F8FA" className="table-title" width="120">登录账号</th>
-              <td width='380'>{data.acc}</td>
+              <td width='380'>{personData?.acc}</td>
             </tr>
             <tr>
               <th bgcolor="#F7F8FA" className="table-title">手机号码</th>
-              <td>{data.mobile}</td>
+              <td>{personData?.mobile}</td>
               <th bgcolor="#F7F8FA" className="table-title">工作电话</th>
-              <td>020-83002020</td>
+              <td>-</td>
             </tr>
             <tr>
               <th bgcolor="#F7F8FA" className="table-title">所属部门</th>
-              <td>{data.deptName}</td>
+              <td>{personData?.deptName}</td>
               <th bgcolor="#F7F8FA" className="table-title">职务</th>
-              <td>主任</td>
+              <td>{personData?.userRoles}</td>
             </tr>
           </table>
         </Modal>
diff --git a/gz-customerSystem/src/views/register/handleFeedback/index.jsx b/gz-customerSystem/src/views/register/handleFeedback/index.jsx
index d384530..2aa9934 100644
--- a/gz-customerSystem/src/views/register/handleFeedback/index.jsx
+++ b/gz-customerSystem/src/views/register/handleFeedback/index.jsx
@@ -3,22 +3,22 @@
  * @Author: dminyi 1301963064@qq.com
  * @Date: 2024-08-09 09:59:43
  * @LastEditors: dminyi 1301963064@qq.com
- * @LastEditTime: 2024-09-06 12:03:54
+ * @LastEditTime: 2024-09-06 17:43:15
  * @FilePath: \gzDyh\gz-customerSystem\src\views\basicInformation\organization\index.jsx
  * @Description: 来访登记
  * 
  */
 
-import React, { useState, useRef, Fragment } from "react";
+import React, { useState } from "react";
 import NewPage from '@/components/NewPage';
-import * as $$ from '@/utils/utility';
 import "@arco-themes/react-gzzz/css/arco.css";
 import '../index.less';
 import { Typography, Steps, Tabs } from '@arco-design/web-react';
-import { Audit, Matter, transfer } from '@/assets/images'
+import { Audit, Matter, transfer, aiPerson } from '@/assets/images'
 import MatterDetail from '../matterDetail';
 import Handle from './component/handle';
-import AuditView from './component/AuditView'
+import AuditView from './component/AuditView';
+import {AiQuestion} from '../visit/component/levelDetail'
 
 const Step = Steps.Step;
 const TabPane = Tabs.TabPane;
@@ -31,6 +31,7 @@
 const Organization = () => {
 	const [current, setCurrent] = useState(3);
 	const [tabsActive, setTabsActive] = useState('1');
+	const [AiQuestionView, setAiQuestionView] = useState(false)
 	const [tabsList, setTabList] = useState([
 		{
 			img: Matter,
@@ -102,6 +103,14 @@
 					})}
 				</Tabs>
 			</NewPage>
+			<div className="gradient-box" onClick={() => setAiQuestionView(true)}>
+				<div><img src={aiPerson} alt='' style={{ width: '24px', height: '24px', marginRight: '6px' }} /></div>
+				<div style={{ color: '#FFFFFF' }}>智能调解助理</div>
+			</div>
+			<AiQuestion
+        visible={AiQuestionView}
+        onClose={() => setAiQuestionView(false)}
+      />
 		</div>
 	)
 }
diff --git a/gz-customerSystem/src/views/register/index.less b/gz-customerSystem/src/views/register/index.less
index cb8d2af..1bc0930 100644
--- a/gz-customerSystem/src/views/register/index.less
+++ b/gz-customerSystem/src/views/register/index.less
@@ -701,4 +701,98 @@
 	align-items: center;
 	margin-bottom: 4px;
 
+}
+
+.gradient-box {
+	position: absolute;
+	right: 0;
+	top: 50%;
+	transform: translateY(-50%);
+	background: linear-gradient(to right, #6a1b9a, #e040fb);
+	display: flex;
+	align-items: center;
+	padding: 12px 8px;
+	border-radius: 12px 0px 0px 12px;
+}
+
+.aiBox {
+	flex: 1 1 0%;
+	background-color: rgb(242, 243, 245);
+	height: 100vh;
+
+	&-case {
+		display: flex;
+		margin: 16px;
+		gap: 10px;
+
+		&-logo {
+			width: 30px;
+			padding-top: 3px;
+
+			&-img {
+				width: 26px;
+				height: 26px;
+			}
+		}
+	}
+
+	&-list {
+
+		&-item {
+			display: flex;
+			background-color: #fff;
+			width: fit-content;
+			padding: 8px 12px;
+			border-radius: 8px;
+			margin-bottom: 8px;
+
+			&-type {
+				border: 1px solid #1A6FB8;
+				padding: 0px 8px;
+				color: #1A6FB8;
+				border-radius: 4px;
+			}
+
+			&-name{
+				margin: 0px 16px 0px 8px;
+			}
+
+			&-btn{
+				color: #1A6FB8;
+			}
+		}
+	}
+}
+
+.marginLeft{
+	margin-left: 55px;
+
+
+	//fontWeight: '600', marginBottom: '16px'
+	&-title{
+		font-weight: 600;
+		margin-bottom: 16px;
+	}
+}
+
+.layerDetail{
+	margin-top: -8px;
+
+	&-title{
+		color: rgb(26, 111, 184);
+		margin-bottom: 16px;
+	}
+
+	&-name{
+		font-size: 16px;
+		margin-bottom: 16px;
+	}
+
+	&-littleTitle{
+		margin-bottom: 16px;
+	}
+
+	&-content{
+		margin-bottom: 16px;
+	}
 }
\ No newline at end of file
diff --git a/gz-customerSystem/src/views/register/matterDetail/FileUpLoad.jsx b/gz-customerSystem/src/views/register/matterDetail/FileUpLoad.jsx
index 3167be5..5d1dba2 100644
--- a/gz-customerSystem/src/views/register/matterDetail/FileUpLoad.jsx
+++ b/gz-customerSystem/src/views/register/matterDetail/FileUpLoad.jsx
@@ -35,7 +35,6 @@
   const handleScaned = () => {
     setScaned(true)
     const content = fileView.response.data.ocrResult.wordsResult.join('\n')
-    
     setTimeout(() => {
       console.log(formRef.current, content);
       formRef.current.setFieldValue('scanContent', content)
diff --git a/gz-customerSystem/src/views/register/visit/component/levelDetail.jsx b/gz-customerSystem/src/views/register/visit/component/levelDetail.jsx
index 43816a1..14556eb 100644
--- a/gz-customerSystem/src/views/register/visit/component/levelDetail.jsx
+++ b/gz-customerSystem/src/views/register/visit/component/levelDetail.jsx
@@ -2,12 +2,14 @@
  * @Author: dminyi 1301963064@qq.com
  * @Date: 2024-08-27 16:47:12
  * @LastEditors: dminyi 1301963064@qq.com
- * @LastEditTime: 2024-09-05 17:03:04
+ * @LastEditTime: 2024-09-07 15:35:53
  * @FilePath: \gzDyh\gz-customerSystem\src\views\register\visit\component\levelDetail.jsx
  * @Description: 右抽屉提示
  */
-import React from 'react';
+import React, { useState } from 'react';
 import MyDrawer from '@/components/MyDrawer';
+import { caselogo } from '@/assets/images';
+
 
 const EventLevelDrawer = ({ visible, onClose }) => {
     return (
@@ -102,6 +104,132 @@
 
 }
 
+const AiQuestion = ({ visible, onClose }) => {
+    const [list, setList] = useState([
+        {
+            id: '1',
+            type: '典型案例',
+            name: '唐某某诉重庆某工业有限公司劳动合同纠纷案'
+        },
+        {
+            id: '2',
+            type: '相似案例',
+            name: '曾某某诉某网络科技公司劳动争议案'
+        },
+        {
+            id: '3',
+            type: '相似案例',
+            name: '曾某某诉某网络科技公司劳动争议案'
+        },
+    ])
+
+    const [layerList, setLayerList] = useState([
+        {
+            id: '1',
+            name: '法条一'
+        },
+        {
+            id: '2',
+            name: '法条二'
+        },
+        {
+            id: '3',
+            name: '法条三'
+        },
+    ])
+
+    const [caseDetail,setCaseDetail] = useState(false)
+    const toggleView = (id) => {
+        console.log(id, 'iddddddd')
+        setCaseDetail(true)
+        aiCaseDetail(id)
+    };
+
+    const caseDetailOnClose = () => {
+        setCaseDetail(false)
+    }
+
+    const aiCaseDetail = () => {
+    
+    }
 
 
-export { EventLevelDrawer, MattersDetail, NoHandleReason };
\ No newline at end of file
+
+    return (
+        <>
+            <MyDrawer
+                visible={visible}
+                onClose={onClose}
+                title="智能调解助理"
+                width={1000}
+                style={{ position: 'absolute' }}
+                bodyStyle={{ marginTop: '-8px' }}
+                titleBefore={true}
+            >
+                <div style={{ display: 'flex' }}>
+                    <div style={{ width: '100px' }}></div>
+                    <div className='aiBox'>
+                        <div className='aiBox-case'>
+                            <div className='aiBox-case-logo'>
+                                <img src={caselogo} alt='' className='aiBox-case-logo-img' />
+                            </div>
+                            <div style={{ flex: 1 }}>刘家健入职吴昆物流公司工作6天,因不适应工作内容、环境等,向吴昆物流公司提出离职申请,但公司称入职1周内因个人原因辞职不予支付工资。刘家健因此向社区调委会申请调解。刘家健希望吴昆物流公司支付6天的工资。经调解,双方达成一致意见,吴昆物流公司同意支付刘家健6天的工资共计1575元。基于这个案件生成合理的调解策略.</div>
+                        </div>
+                        <div className='marginLeft'>
+                            <div className='marginLeft-title'>相关案例:</div>
+                            <div className='aiBox-list'>
+                                {list?.map((item, index) => (
+                                    <div className='aiBox-list-item'>
+                                        <div className='aiBox-list-item-type'>{item.type}</div>
+                                        <div className='aiBox-list-item-name'>{item.name}</div>
+                                        <div className='aiBox-list-item-btn' onClick={() => toggleView(item.id)}>查看</div>
+                                    </div>
+                                ))}
+                            </div>
+
+
+                        </div>
+                        <div className='marginLeft'>
+                            <div className='marginLeft-title'>相关法条:</div>
+                            <div className='aiBox-list'>
+                                {layerList?.map((item, index) => (
+                                    <div className='aiBox-list-item'>
+                                        <div className='aiBox-list-item-type'>相关法条</div>
+                                        <div className='aiBox-list-item-name'>{item.name}</div>
+                                        <div className='aiBox-list-item-btn' onClick={() => toggleView(item.id)}>查看</div>
+                                    </div>
+                                ))}
+                            </div>
+                        </div>
+
+                    </div>
+                </div>
+            </MyDrawer>
+            <div className='MyDrawer'>
+            <MyDrawer
+                visible={caseDetail}
+                onClose={caseDetailOnClose}
+                title="查看相关案例"
+                width={400}
+                style={{ position: 'absolute' }}
+                bodyStyle={{ marginTop: '-8px' }}
+                titleBefore={true}
+            >
+                <div className='layerDetail'>
+                    <div className='layerDetail-title'>参考案例</div>
+                    <div className='layerDetail-name'>唐某某诉重庆某工业有限公司劳动合同纠纷案</div>
+                    <div className='layerDetail-littleTitle'>智能摘要</div>
+                    <div className='layerDetail-content'>法院生效裁判认为,本案是肖某某要求某工业公司支付经济补偿金,原审法院已经确认某工业公司存在未足额支付肖某某工资、未休年休假工资情形,故依照《中华人民共和国劳动合同法》(以下简称劳动合同法)第三十八条第一款的规定,某工业公司应当支付解除合同的经济补偿金。</div>
+                </div>
+            </MyDrawer>
+
+        </div>
+
+        </>
+
+    )
+}
+
+
+
+export { EventLevelDrawer, MattersDetail, NoHandleReason, AiQuestion };
\ 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 ce4f64f..fd11eb0 100644
--- a/gz-customerSystem/src/views/register/visit/component/visitorRegister.jsx
+++ b/gz-customerSystem/src/views/register/visit/component/visitorRegister.jsx
@@ -57,6 +57,32 @@
   const [evidenceNumber, setEvidenceNumber] = useState('');
   const [applyFile, setApplyFile] = useState([]);
   const [evidenceFile, setEvidenceFile] = useState([]);
+  const [fakeData1, setFakeData1] = useState([
+    {
+      ownerTyp: "22_00018-101",
+      ownerTypeName: "申请材料",
+      size: '0',
+      ownerId: null,
+      ownerName: null,
+      perType: null,
+      agentStatus: null,
+      fileNames: "-",
+      fileList: []
+    },
+    {
+      ownerType: "22_00018-102",
+      ownerTypeName: "证据材料",
+      size: '0',
+      ownerId: null,
+      ownerName: null,
+      perType: null,
+      agentStatus: null,
+      fileNames: "-",
+      fileList: []
+    },
+
+  ]);
+
   const peopleMap = {
     '15_020008-1': '申请方',
     '15_020008-2': '被申请方',
@@ -109,13 +135,19 @@
 
   const listIdTypeInfo = async () => {
     const res = await listIdTypeInfoApi({
-      mainId: "2409061125411006", //事项ID
-      ownerIdList: ["2409061125411006"], //具体所属编号
+      mainId: props.mainId, //事项ID
+      ownerIdList: [props.mainId], //具体所属编号
+      typeList: []
     })
     if (res.type) {
-      console.log(res,'resres')
+      let data = res.data?.[0]?.fileList
+      if (res.data.length > 0) {
+        setFakeData1(data)
+      }
     }
   }
+
+  // console.log(fakeData1,'fakeData1')
 
 
 
@@ -166,52 +198,6 @@
     }
   }
 
-  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 fakeColumns = [
@@ -224,36 +210,30 @@
     },
     {
       title: '材料类型',
-      dataIndex: 'judicNo',
-      key: 'judicNo',
+      dataIndex: 'ownerTypeName',
+      key: 'ownerTypeName',
       width: 60,
 
     },
     {
       title: '材料数量',
-      dataIndex: 'inputUserName',
-      key: 'perClassName',
+      dataIndex: 'size',
+      key: 'size',
       width: 180,
-      render: (text, index) => (
-        <div onClick={() => console.log(text, index)}>
-          1
-          {/* {sourceType === '1' ? matterNumber : sourceType === '2' ? evidenceNumber : 0}份 */}
-        </div>
-      )
-
+      render: (text) => <span>{text}份</span>,
 
     },
     {
       title: '材料名称',
-      dataIndex: 'perClassName',
-      key: 'perClassName',
+      dataIndex: 'fileNames',
+      key: 'fileNames',
       width: 180,
 
     },
     {
       title: '最新上传时间',
-      dataIndex: 'mediateUserName',
-      key: 'mediateUserName',
+      dataIndex: 'fileNames',
+      key: 'fileNames',
       width: 180,
 
     },
@@ -304,6 +284,11 @@
 
   };
 
+  const handleUpload = () => {
+    listIdTypeInfo()
+    setUpLoad(false);
+  };
+
   const handleCancel = () => {
     // 处理取消逻辑
     setScanFile(false);
@@ -350,10 +335,17 @@
     setEditData(value)
   }
 
+  const uploadQuery = {
+    mainId: props.mainId,
+    ownerCat: null,
+    createStart: null,
+    createEnd: null,
+    uploaderType:null
+  }
+
   // console.log(sourceType, 'sourceType')
   // console.log(props.formRef?.current?.getFields(),'formRef.current.getFields()')
   useEffect(() => {
-    listIdTypeInfo()
   }, [])
 
   return (
@@ -597,7 +589,7 @@
         columns={fakeColumns}
         dataSource={fakeData1}
         size="small"
-        rowKey="id"
+        rowKey="ownerType"
         bordered={true}
         style={{ marginBottom: '65px' }}
       />
@@ -642,7 +634,7 @@
                 <Row gutter={[32, 0]}>{formType(sourceType)}</Row>
               </Form>
             </Col>
-            <Button type="primary" style={{ marginTop: '-20px', marginLeft: '16px' }} onClick={() => { setMatterNumber(fileLength?.length); setEvidenceNumber(evidenceLength?.length); setUpLoad(false) }}>上传完成</Button>
+            <Button type="primary" style={{ marginTop: '-20px', marginLeft: '16px' }} onClick={() => handleUpload()}>上传完成</Button>
           </Row>
         </div>
 
@@ -650,7 +642,7 @@
       <Modal style={{ width: '1200px' }} visible={filesCheck} onCancel={() => setFilesCheck(false)} footer={null} title='查看事件材料' centered>
         {/* <div className="mediationWindow-modal-main" style={{ display: 'flex' }}> */}
         <div style={{ marginTop: '-16px' }}>
-          <NewFileCheck />
+          <NewFileCheck  />
         </div>
         {/* </div> */}
       </Modal>

--
Gitblit v1.8.0