From 8e9f556423b0e3a19ce70df2bca8c351035368b0 Mon Sep 17 00:00:00 2001
From: zhangyongtian <1181606322@qq.com>
Date: Thu, 12 Sep 2024 16:06:02 +0800
Subject: [PATCH] Merge branch 'master' of http://120.79.193.119:9090/r/gzzfw/frontEnd/gzDyh
---
gz-customerSystem/src/views/register/handleFeedback/index.jsx | 177 ++++++++++++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 156 insertions(+), 21 deletions(-)
diff --git a/gz-customerSystem/src/views/register/handleFeedback/index.jsx b/gz-customerSystem/src/views/register/handleFeedback/index.jsx
index 00b2ace..7120e5c 100644
--- a/gz-customerSystem/src/views/register/handleFeedback/index.jsx
+++ b/gz-customerSystem/src/views/register/handleFeedback/index.jsx
@@ -1,57 +1,176 @@
+
/*
* @Author: dminyi 1301963064@qq.com
* @Date: 2024-08-09 09:59:43
* @LastEditors: dminyi 1301963064@qq.com
- * @LastEditTime: 2024-09-03 14:44:51
+ * @LastEditTime: 2024-09-11 12:20:34
* @FilePath: \gzDyh\gz-customerSystem\src\views\basicInformation\organization\index.jsx
* @Description: 来访登记
+ *
*/
-import React, { useState, useRef, Fragment } from "react";
+import React, { useEffect, 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, Message } from '@arco-design/web-react';
-import { question, register, Matter, transfer } from '@/assets/images'
+import { Typography, Steps, Tabs } from '@arco-design/web-react';
+import { Audit, Matter, applyRecord, transfer, Aimge } from '@/assets/images'
import MatterDetail from '../matterDetail';
import Handle from './component/handle';
+import AuditView from './component/AuditView';
+import { AiQuestion } from '../visit/component/levelDetail';
+import * as $$ from '@/utils/utility';
+import { useParams } from 'react-router-dom';
+
const Step = Steps.Step;
const TabPane = Tabs.TabPane;
const style = {
- // textAlign: 'center',
- // marginTop: 20,
+ // textAlign: 'center',
+ // marginTop: 20,
};
+
+function getCaseApi(data) {
+ return $$.ax.request({ urlAi: `case-law/get-case`, typeAi: 'post', service: 'mediate', data });
+}
+
+function getLawApi(data) {
+ return $$.ax.request({ urlAi: `case-law/get-law`, typeAi: 'post', service: 'mediate', data });
+}
+
+
+
+function getTabButton(caseTaskId) {
+ return $$.ax.request({ url: `caseTask/getTabButton?caseTaskId=` + caseTaskId, type: 'get', service: 'mediate' });
+}
+
+function getCaseInfoApi(id) {
+ return $$.ax.request({ url: '/caseInfo/getCaseInfo?id=' + id, type: 'get', service: 'mediate' });
+}
+
const Organization = () => {
+ const routeData = useParams();
+ const caseTaskId = $$.getQueryString('caseTaskId')
+ const caseId = $$.getQueryString('caseId')
const [current, setCurrent] = useState(3);
- const [tabsActive, setTabsActive] = useState('1');
- const [tabsList, setTabList] = useState([
+ const [tabsActive, setTabsActive] = useState('sxxq');
+ const [AiQuestionView, setAiQuestionView] = useState(false)
+ const [aiData, setAiData] = useState([])
+ const [aiLawData, setAiLawData] = useState([]);
+ const [caseDetailAi, setCaseDetailAi] = useState({});
+ const [caseDetailView, setCaseDetail] = useState({})
+ const [authorData, setAuthorData] = useState({});
+ const [disTab, setDisTab] = useState(true);
+ const [tabsList, setTabsList] = useState([]);
+ const myTab = [
{
img: Matter,
label: '事项详情',
- key: '1'
+ key: "sxxq"
},
{
- img: transfer,
- label: '流转办理',
- key: '2',
- isNeedStep: true,//加上这个就有进度条
+ img: transfer,
+ label: '事项办理',
+ key: "sxbl",
+ isNeedStep: true,
},
- ])
+ // {
+ // img: applyRecord,
+ // label: '申请记录',
+ // key: "sqjl",
+ // },
+ ]
+
+ const handleAi = () => {
+ setAiQuestionView(true)
+ }
+
+ const getCase = async (caseDes,caseClaim) => {
+ const res = await getCaseApi({
+ caseDes: caseDes,
+ caseClaim: caseClaim,
+ caseId: caseId
+ })
+ console.log(res.data, 'res')
+ if (res.type) {
+ setAiData(res.data)
+ }
+ }
+
+ const getLaw = async (caseDes,caseClaim) => {
+ const res = await getLawApi({
+ caseDes: caseDes,
+ caseClaim: caseClaim,
+ caseId: caseId
+ })
+ if (res.type) {
+ setAiLawData(res.data)
+ }
+ }
+
+
+
+ const getAuthor = async () => {
+ const res = await getTabButton(caseTaskId)
+ if (res.type) {
+ const { tabList } = res.data
+ console.log(tabList, 'tabList1')
+ setAuthorData(res.data)
+ if (tabList.length === 0) {
+ //没有tab就不展示
+ setDisTab(false)
+ } else {
+ setTabsList(myTab.filter(item => {
+ const flag = tabList.some(result => {
+ if (result.id === item.key) {
+ return true
+ }
+ })
+ return flag
+ }))
+ console.log(tabsList, 'tabsList2')
+ setTabsActive(tabList[0].id)
+ }
+ }
+ }
+
+ const getCaseInfo = async (id) => {
+ const res = await getCaseInfoApi(id)
+ if (res.type) {
+ console.log(res, 'res')
+ let caseDes = res.data.caseDes;
+ let caseClaim = res.data.caseClaim;
+ setCaseDetailAi(caseDes)
+ getCase(caseDes,caseClaim);
+ getLaw(caseDes,caseClaim);
+ }
+ }
+
+
+
+
+ useEffect(() => {
+ getCaseInfo(caseId)
+ getAuthor();
+ // getCase();
+ // getLaw();
+ console.log(caseDetailAi, 'caseDetailAi')
+ }, [])
+
+
return (
- <div style={{ position: 'relative' }}>
+ <div style={{ position: 'relative', height: '100vh' }}>
<NewPage
pageHead={
{ breadcrumbData: [{ title: '工作台' }, { title: '事件中心' }], title: '办理反馈' }
}
>
<Tabs
- defaultActiveTab='1'
+ defaultActiveTab='sxxq'
onChange={(v) => setTabsActive(v)}
className='myTabContent'
>
@@ -77,18 +196,34 @@
</Steps>
</div>
}
- {tabsActive === '1' &&
- <MatterDetail />
+ {tabsActive === 'sxxq' &&
+ <MatterDetail hasApplet={true} hasEditBtn={true} authorData={authorData} caseId={caseId} />
}
{
- tabsActive === '2' && <Typography.Paragraph style={style}>
- <Handle />
+ tabsActive === 'sxbl' && <Typography.Paragraph style={style}>
+ <Handle authorData={authorData} caseId={caseId} caseTaskId={caseTaskId} />
+ </Typography.Paragraph>
+ }
+ {
+ tabsActive === 'sqjl' && <Typography.Paragraph style={style}>
+ <AuditView authorData={authorData} />
</Typography.Paragraph>
}
</TabPane>
})}
</Tabs>
</NewPage>
+ <div className="gradient-box" onClick={() => handleAi()}>
+ <div><img src={Aimge} alt='' style={{ width: '111px', height: '120px' }} /></div>
+ <div style={{ color: '#FFFFFF' }}>穗调解数智人</div>
+ </div>
+ <AiQuestion
+ visible={AiQuestionView}
+ onClose={() => setAiQuestionView(false)}
+ aiData={aiData}
+ aiLawData={aiLawData}
+ caseDetailAi={caseDetailAi}
+ />
</div>
)
}
--
Gitblit v1.8.0