From d773483d402b983f67822c434546009bd0f1e2e9 Mon Sep 17 00:00:00 2001
From: dminyi <1301963064@qq.com>
Date: Sun, 08 Sep 2024 15:18:44 +0800
Subject: [PATCH] ai对接
---
gz-customerSystem/src/views/register/index.less | 9 +++
gz-customerSystem/src/views/register/visit/component/levelDetail.jsx | 85 +++++++++++++++++++++-------
gz-customerSystem/src/views/register/handleFeedback/index.jsx | 51 ++++++-----------
gz-customerSystem/src/views/register/index.jsx | 10 +++
gz-customerSystem/src/router/router.js | 5 +
5 files changed, 105 insertions(+), 55 deletions(-)
diff --git a/gz-customerSystem/src/router/router.js b/gz-customerSystem/src/router/router.js
index 42c09b3..fc2e138 100644
--- a/gz-customerSystem/src/router/router.js
+++ b/gz-customerSystem/src/router/router.js
@@ -2,7 +2,7 @@
* @Company: hugeInfo
* @Author: ldh
* @Date: 2022-03-28 11:22:41
- * @LastEditTime: 2024-09-07 18:23:05
+ * @LastEditTime: 2024-09-08 15:15:51
* @LastEditors: dminyi 1301963064@qq.com
* @Version: 1.0.0
* @Description: 路由
@@ -144,6 +144,8 @@
import FileMessage from "../views/register/matterDetail/fileMessage";
//结案审核
import ClosingReview from "../views/register/closingReview";
+//工作台
+import VisitWorkBench from "../views/register";
import Test from "../views/test";
@@ -221,6 +223,7 @@
<Route path="visit/handleFeedback/:caseTaskId?/:caseId?" element={<HandleFeedback />} />
<Route path="visit/fileMessage" element={<FileMessage />} />
<Route path="visit/closingReview/:caseTaskId?/:caseId?" element={<ClosingReview />}/>
+ <Route path="visit/visitWorkBench" element={<VisitWorkBench />}/>
diff --git a/gz-customerSystem/src/views/register/handleFeedback/index.jsx b/gz-customerSystem/src/views/register/handleFeedback/index.jsx
index 17d0936..8c2488e 100644
--- a/gz-customerSystem/src/views/register/handleFeedback/index.jsx
+++ b/gz-customerSystem/src/views/register/handleFeedback/index.jsx
@@ -3,7 +3,7 @@
* @Author: dminyi 1301963064@qq.com
* @Date: 2024-08-09 09:59:43
* @LastEditors: dminyi 1301963064@qq.com
- * @LastEditTime: 2024-09-08 11:17:47
+ * @LastEditTime: 2024-09-08 11:53:51
* @FilePath: \gzDyh\gz-customerSystem\src\views\basicInformation\organization\index.jsx
* @Description: 来访登记
*
@@ -38,9 +38,7 @@
return $$.ax.request({ urlAi: `case-law/get-law`, typeAi: 'post', service: 'mediate', data });
}
-function getCaseDetailApi(data) {
- return $$.ax.request({ urlAi: `case-law/get-case-detail`, typeAi: 'get', service: 'mediate', data });
-}
+
function getTabButton(data) {
return $$.ax.request({ url: `caseTask/getTabButton`, type: 'get', service: 'mediate', data });
@@ -51,7 +49,7 @@
const Organization = () => {
const routeData = useParams();
const [current, setCurrent] = useState(3);
- const [tabsActive, setTabsActive] = useState('1');
+ const [tabsActive, setTabsActive] = useState('sxxq');
const [AiQuestionView, setAiQuestionView] = useState(false)
const [aiData, setAiData] = useState([])
const [aiLawData, setAiLawData] = useState([])
@@ -63,23 +61,18 @@
{
img: Matter,
label: '事项详情',
- key: '1'
+ key: "sxxq"
},
{
img: transfer,
- label: '流转办理',
- key: '2',
+ label: '事项办理',
+ key: "sxbl",
isNeedStep: true,
},
{
img: applyRecord,
label: '申请记录',
- key: '3',
- },
- {
- img: Audit,
- label: '审核',
- key: '4',
+ key: "sqjl",
},
]
@@ -110,15 +103,7 @@
}
}
- const getCaseDetail = async () => {
- const res = await getCaseDetailApi({
- caseId: '10086',
- type: '1'
- })
- if (res.type) {
- setCaseDetail(res.data)
- }
- }
+
const getAuthor = async () => {
const res = await getTabButton({
@@ -126,6 +111,7 @@
})
if (res.type) {
const { tabList } = res.data
+ console.log(tabList, 'tabList1')
setAuthorData(res.data)
if (tabList.length === 0) {
//没有tab就不展示
@@ -139,6 +125,7 @@
})
return flag
}))
+ console.log(tabsList, 'tabsList2')
setTabsActive(tabList[0].id)
}
}
@@ -148,10 +135,9 @@
useEffect(() => {
- // getAuthor();
- // getCase();
- // getLaw();
- // getCaseDetail();
+ getAuthor();
+ getCase();
+ getLaw();
}, [])
@@ -165,11 +151,11 @@
}
>
<Tabs
- defaultActiveTab='1'
+ defaultActiveTab='sxxq'
onChange={(v) => setTabsActive(v)}
className='myTabContent'
>
- {myTab?.map(item => {
+ {tabsList?.map(item => {
return <TabPane
key={item.key}
title={
@@ -191,16 +177,16 @@
</Steps>
</div>
}
- {tabsActive === '1' &&
+ {tabsActive === 'sxxq' &&
<MatterDetail hasApplet={true} hasEditBtn={true} />
}
{
- tabsActive === '2' && <Typography.Paragraph style={style}>
+ tabsActive === 'sxbl' && <Typography.Paragraph style={style}>
<Handle />
</Typography.Paragraph>
}
{
- tabsActive === '3' && <Typography.Paragraph style={style}>
+ tabsActive === 'sqjl' && <Typography.Paragraph style={style}>
<AuditView />
</Typography.Paragraph>
}
@@ -217,7 +203,6 @@
onClose={() => setAiQuestionView(false)}
aiData={aiData}
aiLawData={aiLawData}
- caseDetail={caseDetailView}
/>
</div>
)
diff --git a/gz-customerSystem/src/views/register/index.jsx b/gz-customerSystem/src/views/register/index.jsx
new file mode 100644
index 0000000..31c0b8c
--- /dev/null
+++ b/gz-customerSystem/src/views/register/index.jsx
@@ -0,0 +1,10 @@
+import React from 'react';
+
+const VisitWorkBench = () => {
+ return (
+ <>
+ </>
+ )
+}
+
+export default VisitWorkBench;
\ No newline at end of file
diff --git a/gz-customerSystem/src/views/register/index.less b/gz-customerSystem/src/views/register/index.less
index b3f48ff..38205be 100644
--- a/gz-customerSystem/src/views/register/index.less
+++ b/gz-customerSystem/src/views/register/index.less
@@ -719,6 +719,7 @@
flex: 1 1 0%;
background-color: rgb(242, 243, 245);
height: 100vh;
+ overflow-y: auto;
&-case {
display: flex;
@@ -745,20 +746,28 @@
padding: 8px 12px;
border-radius: 8px;
margin-bottom: 8px;
+ margin-right: 16px;
+ align-items: center;
+
&-type {
border: 1px solid #1A6FB8;
padding: 0px 8px;
color: #1A6FB8;
border-radius: 4px;
+ width: 79px;
+ height: 24px;
}
&-name{
margin: 0px 16px 0px 8px;
+ max-width: 828px;
+ width: fit-content;
}
&-btn{
color: #1A6FB8;
+ width: 30px;
}
}
}
diff --git a/gz-customerSystem/src/views/register/visit/component/levelDetail.jsx b/gz-customerSystem/src/views/register/visit/component/levelDetail.jsx
index 6404305..c48c6e5 100644
--- a/gz-customerSystem/src/views/register/visit/component/levelDetail.jsx
+++ b/gz-customerSystem/src/views/register/visit/component/levelDetail.jsx
@@ -2,13 +2,19 @@
* @Author: dminyi 1301963064@qq.com
* @Date: 2024-08-27 16:47:12
* @LastEditors: dminyi 1301963064@qq.com
- * @LastEditTime: 2024-09-08 10:36:03
+ * @LastEditTime: 2024-09-08 15:06:05
* @FilePath: \gzDyh\gz-customerSystem\src\views\register\visit\component\levelDetail.jsx
* @Description: 右抽屉提示
*/
import React, { useEffect, useState } from 'react';
import MyDrawer from '@/components/MyDrawer';
import { caselogo } from '@/assets/images';
+import * as $$ from '@/utils/utility';
+
+
+function getCaseDetailApi(data) {
+ return $$.ax.request({ urlAi: `case-law/get-case-detail`, typeAi: 'get', service: 'mediate', data });
+}
const EventLevelDrawer = ({ visible, onClose }) => {
@@ -104,7 +110,7 @@
}
-const AiQuestion = ({ visible, onClose, aiData,aiLawData,caseDetailView }) => {
+const AiQuestion = ({ visible, onClose, aiData, aiLawData }) => {
const [list, setList] = useState([
// {
// id: '1',
@@ -122,6 +128,10 @@
// name: '曾某某诉某网络科技公司劳动争议案'
// },
])
+ const [caseDetailView, setCaseDetailView] = useState({})
+
+ const [modalType, setModalType] = useState('case')
+ const [lawDetail, setLawDetail] = useState({})
const [layerList, setLayerList] = useState([
{
@@ -139,25 +149,47 @@
])
const [caseDetail, setCaseDetail] = useState(false)
- const toggleView = (type,id) => {
- console.log(id, 'iddddddd')
+ const toggleView = (type, id) => {
setCaseDetail(true)
- if(type==='case'){
- setCaseDetail(true)
-
+ setModalType(type)
+
+ if (type === 'case') {
+ getCaseDetail(id);
+ }
+ if (type === 'law') {
+ console.log(id,'idddddd')
+
+ const lawItem = aiLawData.find(item => item.lawInfoId === id)
+ console.log(lawItem,'lawItem')
+ setLawDetail(lawItem)
}
};
+
const caseDetailOnClose = () => {
setCaseDetail(false)
}
-
+ const getCaseDetail = async (id) => {
+ const res = await getCaseDetailApi({
+ caseId: id,
+ type: '1'
+ })
+ if (res.type) {
+ setCaseDetailView(res.data)
+ }
+ }
+
+
+
+
+
useEffect(() => {
- setList(aiData)
- setLayerList(aiLawData)
- }, [aiData,aiLawData])
+ setList(aiData);
+ setLayerList(aiLawData);
+
+ }, [aiData, aiLawData])
return (
<>
@@ -186,7 +218,7 @@
<div className='aiBox-list-item'>
<div className='aiBox-list-item-type'>{item.caseType === 1 ? '典型案例' : '相似案例'}</div>
<div className='aiBox-list-item-name'>{item.caseName}</div>
- <div className='aiBox-list-item-btn' onClick={() => toggleView('case',item.id)}>查看</div>
+ <div className='aiBox-list-item-btn' onClick={() => toggleView('case', item.caseId)}>查看</div>
</div>
))}
</div>
@@ -198,7 +230,7 @@
<div className='aiBox-list-item'>
<div className='aiBox-list-item-type'>相关法条</div>
<div className='aiBox-list-item-name'>{item.lawTitle}{item.lawIndex}</div>
- <div className='aiBox-list-item-btn' onClick={() => toggleView('law',item.lawInfoId)}>查看</div>
+ <div className='aiBox-list-item-btn' onClick={() => toggleView('law', item.lawInfoId)}>查看</div>
</div>
))}
</div>
@@ -211,20 +243,31 @@
<MyDrawer
visible={caseDetail}
onClose={caseDetailOnClose}
- title="查看相关案例"
+ title={modalType === 'case'?"查看相关案例":"查看相关法条"}
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>
+ {
+ modalType === 'case' &&
+ <div className='layerDetail'>
+ <div className='layerDetail-title'>参考案例</div>
+ <div className='layerDetail-name'>{caseDetailView?.caseTitle || '-'}</div>
+ <div className='layerDetail-littleTitle'>基本案情</div>
+ <div className='layerDetail-content'>{caseDetailView?.caseDesc || '-'}</div>
+ <div className='layerDetail-littleTitle'>结果</div>
+ <div className='layerDetail-content'>{caseDetailView?.caseClaim || '-'}</div>
+ </div>
+ }
+ {
+ modalType === 'law' &&
+ <div className='layerDetail'>
+ <div className='layerDetail-title'>{lawDetail?.lawIndex} {lawDetail?.lawTitle}</div>
+ <div className='layerDetail-littleTitle'>{lawDetail.lawDesc}</div>
+ </div>
+ }
</MyDrawer>
-
</div>
</>
--
Gitblit v1.8.0