/*
|
* @Company: hugeInfo
|
* @Author: lwh
|
* @Date: 2024-12-14 11:11:04
|
* @LastEditTime: 2024-12-14 11:38:16
|
* @LastEditors: lwh
|
* @Version: 1.0.0
|
* @Description: 司法确认查看案件详情
|
*/
|
import React, { useState, useEffect } from 'react';
|
import { Row, Space, Typography, Tooltip } from 'antd';
|
import { Scrollbars } from "react-custom-scrollbars";
|
import Preview from '../register/visit/preview';
|
import HandleRecord from '../register/matterDetail/HandleRecord';
|
import RateModule from '../register/matterDetail/RateModule';
|
import RegisInfoModule from '../register/matterDetail/RegisInfoModule';
|
import DismissModule from "../register/matterDetail/DismissModule";
|
|
import * as $$ from '../../utils/utility';
|
|
function listFeedbackApi(id) {
|
return $$.ax.request({ url: `caseFeedback/listFeedback?id=` + id, type: 'get', service: 'mediate' });
|
}
|
|
function getByCaseIdApi(caseId) {
|
return $$.ax.request({ url: `caseEvaluate/getByCaseId?caseId=${caseId}`, type: 'get', service: 'mediate' });
|
}
|
// 办理结果(化解结果、协议文书等结案信息)
|
function getTransactResultApi(caseId) {
|
return $$.ax.request({ url: `caseInfoUnfold/getTransactResult?caseId=${caseId}`, type: 'get', service: 'mediate' });
|
}
|
|
const CaseDetail = ({ caseId, caseData }) => {
|
const [data, setData] = useState({});
|
|
const [transactResult, setTransactResult] = useState(null);
|
|
const [grade, setGrade] = useState(null);
|
const [list, setList] = useState([])
|
|
const [dismissData, setDismissData] = useState(null);
|
|
async function getTransactResult(id) {
|
const res = await getTransactResultApi(id)
|
if (res.type) {
|
if (res.data) {
|
setTransactResult({ ...res.data })
|
} else {
|
setTransactResult(null)
|
}
|
}
|
}
|
|
const listFeedback = async (id) => {
|
const res = await listFeedbackApi(id)
|
if (res.type) {
|
let data = res.data.caseFeedbackList
|
setList(data)
|
}
|
}
|
|
const getByCaseId = async (id) => {
|
const res = await getByCaseIdApi(id)
|
if (res.type) {
|
setGrade(res.data)
|
}
|
}
|
|
useEffect(() => {
|
getByCaseId(caseId);
|
listFeedback(caseId);
|
getTransactResult(caseId)
|
}, [caseId]);
|
|
return (
|
<>
|
<Scrollbars style={{ height: 'calc(100vh - 219px)' }} autoHide>
|
<div style={{ backgroundColor: '#ffff', margin: '0 16px 0px 16px', padding: '12px', marginTop: '8px' }}>
|
<Preview videoList={[]} isReview={true} mainId={caseId} data={caseData} transactResult={transactResult} isDoc={true} />
|
</div>
|
{list.length != 0 &&
|
<div style={{ backgroundColor: '#ffff', margin: '8px 16px 0px 16px', padding: '12px' }}>
|
<Space size='small'>
|
<div className='MediationInfo-subTitle' style={{ marginTop: '-9px' }}></div><h4>办理记录({list.length})</h4>
|
</Space>
|
<HandleRecord isReview={true} data={list} noEdit />
|
</div>
|
}
|
{grade &&
|
<div style={{ backgroundColor: '#ffff', margin: '8px 16px 0px 16px', padding: '12px' }}>
|
<RateModule grade={grade} />
|
</div>
|
}
|
{caseData?.canal === '22_00001-1' &&
|
<div style={{ backgroundColor: '#ffff', margin: '8px 16px 0px 16px', padding: '12px' }}>
|
<RegisInfoModule caseInfo={caseData} />
|
</div>
|
}
|
{dismissData && <div style={{ backgroundColor: '#ffff', margin: '8px 16px 0px 16px', padding: '12px' }}>
|
<DismissModule dismissData={dismissData} />
|
</div>}
|
<div style={{ backgroundColor: '#ffff', margin: '0 16px 64px 16px', padding: '12px' }}></div>
|
</Scrollbars>
|
</>
|
);
|
};
|
|
export default CaseDetail;
|