From ae3833a1fc16bd3c9fd13f8301397e5835a9e49c Mon Sep 17 00:00:00 2001
From: zhangyongtian <1181606322@qq.com>
Date: Sun, 15 Sep 2024 15:31:02 +0800
Subject: [PATCH] fix: 自行排查更改、流程组件完善
---
gz-customerSystem/src/components/ProgressStep/VisitStep.jsx | 39 +++
gz-customerSystem/src/views/register/visit/component/SelfVisitorRegister.jsx | 451 +++++++++++++++++++++++++++++++++++++++++++++
gz-customerSystem/src/views/register/index.less | 13
gz-customerSystem/src/views/register/visit/preview.jsx | 31 +-
gz-customerSystem/src/views/register/visit/SelfInspection.jsx | 6
gz-customerSystem/src/views/register/visit/index.jsx | 2
gz-customerSystem/src/components/ProgressStep/index.less | 11
gz-customerSystem/src/views/register/visit/SelfPreview.jsx | 9
8 files changed, 524 insertions(+), 38 deletions(-)
diff --git a/gz-customerSystem/src/components/ProgressStep/VisitStep.jsx b/gz-customerSystem/src/components/ProgressStep/VisitStep.jsx
index 0dfa948..e81b8b9 100644
--- a/gz-customerSystem/src/components/ProgressStep/VisitStep.jsx
+++ b/gz-customerSystem/src/components/ProgressStep/VisitStep.jsx
@@ -42,6 +42,27 @@
setProType('handleCaseFlowList')
}, [progressData])
+ //详细结果的处理
+ const typeDom = (data) => {
+ //审核结果同意
+ if (data.auditResult && data.auditResult == '24_00004-1') {
+ return <span>审核结果:<span style={{ color: '#00B42A' }}>{data.auditResultName}</span></span>
+ }
+ //审核结果不同意
+ if (data.auditResult && data.auditResult == '24_00004-2') {
+ return <span>审核结果:<span style={{ color: '#FF4D4F' }}>{data.auditResultName}</span></span>
+ }
+ //化解结果成功
+ if (data.mediResult && data.mediResult == '22_00025-1') {
+ return <span>审核结果:<span style={{ color: '#00B42A' }}>{data.mediResultName}</span></span>
+ }
+ //化解结果不成功
+ if (data.mediResult && data.mediResult == '22_00025-2') {
+ return <span>审核结果:<span style={{ color: '#FF4D4F' }}>{data.mediResultName}</span></span>
+ }
+ return <span>{data.handleNotes || '-'}</span>
+ }
+
return (
<Fragment>
{hasTab &&
@@ -62,16 +83,18 @@
return (
<div key={t + 1}>
<div className="myStep-item">
- {t === progressData[proType].length - 1 ? null : <div className={`${!x.handleContent ? 'myStep-item-divider' : x.fileInfoList?.length > 0 ? 'myStep-item-divider2' : "myStep-item-divider1"} ${x.status === '2' && 'myStep-item-divider-success'}`} />}
- <div className={`myStep-item-icon1 myStep-item-${x.status === 1 ? 'noStarted1' : 'success1'}`}>
- <div className="myStep-item-title">{x.nodeShowName || '事件流转'}</div>
- <img className='myStep-item-img' src={x.status === 1 ? ledger_8 : iconMap[x.taskType]} alt="" />
+ <div>
+ <div className={`myStep-item-icon1 myStep-item-${x.status === 1 ? 'noStarted1' : 'success1'}`}>
+ <div className="myStep-item-title">{x.nodeShowName || '事件流转'}</div>
+ <img className='myStep-item-img' src={x.status === 1 ? ledger_8 : iconMap[x.taskType]} alt="" />
+ </div>
+ {t === progressData[proType].length - 1 ? null : <div className='myStep-item-divider' />}
</div>
<div className="myStep-item-right">
{t === progressData[proType].length - 1 ?
<div>
<div className="myStep-item-p" style={{ color: 'rgba(0,0,0,0.50)' }}>
- {x.processName}
+ {x.processName || '-'}
</div>
<div className="myStep-item-p">
<span>{x.handleUnitName || '-'}</span>
@@ -96,7 +119,11 @@
x.handleNotes &&
<div className='myStep-item-p-yy' style={{ width: '200px' }}>
<span className='myStep-item-p-yy-l'>
- <span><Tooltip placement="top" title={x.handleNotes || ''}><span>{x.handleNotes || '-'}</span></Tooltip></span>
+ <span>
+ <Tooltip placement="top" title={x.handleNotes || ''}>
+ {typeDom(x)}
+ </Tooltip>
+ </span>
</span>
</div>
}
diff --git a/gz-customerSystem/src/components/ProgressStep/index.less b/gz-customerSystem/src/components/ProgressStep/index.less
index e574fab..d298d6a 100644
--- a/gz-customerSystem/src/components/ProgressStep/index.less
+++ b/gz-customerSystem/src/components/ProgressStep/index.less
@@ -3,7 +3,7 @@
.myStep {
&-item {
position: relative;
- padding-bottom: 32px;
+ padding-bottom: 34px;
&-success {
background-color: @main-color;
@@ -74,16 +74,15 @@
&-divider {
position: absolute;
- top: 0;
+ top: 56px;//52+4
left: 24px;
- width: 3px;
- height: 32px+52px;
- padding-top: 22px;
+ width: 2px;
+ bottom: 4px;
&::after {
content: '';
display: inline-block;
- height: 32px+52px;
+ height: 100%;
border-left: 2px solid;
border-color: @divider-color;
}
diff --git a/gz-customerSystem/src/views/register/index.less b/gz-customerSystem/src/views/register/index.less
index 4b3a281..d016546 100644
--- a/gz-customerSystem/src/views/register/index.less
+++ b/gz-customerSystem/src/views/register/index.less
@@ -523,12 +523,13 @@
}
.reviewLine {
- height: calc(100% - 19px);
- width: 14px;
- display: flex;
- align-items: center;
- justify-content: center;
- position: relative;
+ height: calc(100% - 23px);
+ width: 14px;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ position: relative;
+ margin-top: 4px;
&::before {
content: '';
diff --git a/gz-customerSystem/src/views/register/visit/SelfInspection.jsx b/gz-customerSystem/src/views/register/visit/SelfInspection.jsx
index 2bbe0fe..5d3bf4e 100644
--- a/gz-customerSystem/src/views/register/visit/SelfInspection.jsx
+++ b/gz-customerSystem/src/views/register/visit/SelfInspection.jsx
@@ -6,7 +6,7 @@
import '../index.less';
import { Space } from 'antd';
import { Button, Steps, Message } from '@arco-design/web-react';
-import VisitorRegister from './component/visitorRegister';
+import VisitorRegister from './component/SelfVisitorRegister';
import Preview from './preview';
const Step = Steps.Step;
@@ -222,13 +222,13 @@
<div style={{ position: 'relative' }}>
<NewPage
pageHead={
- { breadcrumbData: [{ title: '工作台' }, { title: '来访登记' }], title: '来访登记' }
+ { breadcrumbData: [{ title: '工作台' }, { title: '来访登记' }], title: '自行排查' }
}
>
<Fragment>
<div style={{ backgroundColor: '#fff', margin: '12px 16px 0px 16px', paddingTop: '16px', paddingLeft: '91px' }}>
<Steps type='navigation' current={current}>
- <Step title='来访登记' disabled />
+ <Step title='排查登记' disabled />
<Step title='事件流转' disabled />
<Step title='办理反馈' disabled />
<Step title='结案审核' disabled />
diff --git a/gz-customerSystem/src/views/register/visit/SelfPreview.jsx b/gz-customerSystem/src/views/register/visit/SelfPreview.jsx
index 1b42818..ec84936 100644
--- a/gz-customerSystem/src/views/register/visit/SelfPreview.jsx
+++ b/gz-customerSystem/src/views/register/visit/SelfPreview.jsx
@@ -7,7 +7,12 @@
import PreviewImage from '@/components/PreviewImage';
const Preview = (props) => {
- const [data, setData] = useState({})
+ const [data, setData] = useState({});
+ const levelColorMap = {
+ 1: '#F53F3F',
+ 2: '#EF6C24',
+ 3: '#00B42A',
+ }
useEffect(() => {
console.log(props.data);
@@ -108,7 +113,7 @@
<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' }}>{props.data?.caseLevel || '-'}</div></div>级</div>
+ <div style={{ display: 'flex' }}><div style={{ backgroundColor: levelColorMap[props.data?.caseLevel], 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>
diff --git a/gz-customerSystem/src/views/register/visit/component/SelfVisitorRegister.jsx b/gz-customerSystem/src/views/register/visit/component/SelfVisitorRegister.jsx
new file mode 100644
index 0000000..4bc0b21
--- /dev/null
+++ b/gz-customerSystem/src/views/register/visit/component/SelfVisitorRegister.jsx
@@ -0,0 +1,451 @@
+import React, { useState, useEffect, useRef } from "react";
+import { Row, Col, Space, Tooltip, Button } from 'antd';
+import { Form, Input, Radio, Select, DatePicker, Cascader, Modal, Upload, InputNumber } from '@arco-design/web-react';
+import PersonCard from '@/components/personCard';
+import * as $$ from '@/utils/utility';
+import {
+ question1,
+} from '@/assets/images';
+import '../../index.less';
+import ApplyDialog from "./applyDialog";
+import AgentDialog from "./agentDialog";
+import MapView from './map';
+import { scan } from '@/assets/images/icon';
+import { EventLevelDrawer, MattersDetail } from './levelDetail';
+import DocumentScanner from '../../matterDetail/FileUpLoad';
+import FileTable from "../../matterDetail/FileTable";
+
+
+const RadioGroup = Radio.Group;// 根据调解案号获取纠纷登记信息
+const FormItem = Form.Item;
+const InputSearch = Input.Search;
+
+
+const VisitorRegister = (props) => {
+ const [dialogType, setDialogType] = useState();//添加当事人的类型
+ const [addVisabled, setAddVisabled] = useState(false);//添加当事人弹窗控制
+ const [fakeData, setFakeData] = useState([]);//当事人信息数据
+ const [scanFile, setScanFile] = useState(false);
+ const [ocrText, setOcrText] = useState('');
+
+ const [mapView, setMapView] = useState(false);
+ const [visible, setVisible] = useState(false);
+ const [apply, setApply] = useState(false);
+ const [editData, setEditData] = useState(null);
+ const [agentVisible, setAgentVisible] = useState(false);
+
+ const peopleMap = {
+ '15_020008-1': '申请方',
+ '15_020008-2': '被申请方',
+ '24_00006-1': '申请方代理人',
+ '24_00006-2': '被申请方代理人'
+ }
+
+ useEffect(() => {
+ if (props.formRef.current) {
+ //引入当事人数据
+ props.formRef.current.setFieldValue('fakeData', fakeData)
+ }
+ }, [fakeData])
+
+ useEffect(() => {
+ setFakeData(props.partyList || [])
+ }, [props.partyList])
+
+ //获取当前时间
+ const getFormattedDateTime = () => {
+ let now = new Date();
+ let year = now.getFullYear();
+ let month = (now.getMonth() + 1).toString().padStart(2, '0'); // 月份是从0开始的,所以要+1
+ let day = now.getDate().toString().padStart(2, '0');
+ let hours = now.getHours().toString().padStart(2, '0');
+ let minutes = now.getMinutes().toString().padStart(2, '0');
+
+ return `${year}-${month}-${day} ${hours}:${minutes}`;
+ }
+
+ //添加当事人
+ const handleAdd = (type) => {
+ if (type === '24_00006-1' || type === '24_00006-2') {
+ setAgentVisible(true)
+ } else {
+ setAddVisabled(true)
+ }
+ setDialogType(type)
+ }
+
+ const handleConfirm = (scanContent) => {
+ // 处理确认逻辑
+ props.formRef.current.setFieldValue(ocrText, scanContent)
+ setScanFile(false);
+ console.log(scanContent, 'scanContent')
+
+ };
+
+ const handleCancel = () => {
+ // 处理取消逻辑
+ setScanFile(false);
+ };
+
+ //添加当事人
+ const handleAddParty = (value, isEdit) => {
+ console.log(value);
+ if (isEdit) {
+ //编辑
+ const newList = fakeData.map(item => {
+ if (item.id === value.id) {
+ return value
+ } else {
+ return item
+ }
+ })
+ setFakeData(newList)
+ setEditData(null)
+ } else {
+ setFakeData([...fakeData, {
+ ...value
+ }])
+ }
+ }
+
+ //删除当事人
+ const handleDeleteParty = (event, value) => {
+ event.stopPropagation();
+ const filterData = fakeData.filter(item => item.id !== value.id)
+ setFakeData(filterData)
+ }
+
+ //编辑
+ const handleEdit = (value) => {
+ if (value.perType === '15_020008-1' || value.perType === '15_020008-2') {
+ //当事人
+ setAddVisabled(true)
+ } else {
+ //代理人
+ setAgentVisible(true)
+ }
+ setDialogType(value.perType)
+ setEditData(value)
+ }
+
+ return (
+ <div className='dataSync-page' style={{ ...props.style, marginTop: '8px' }}>
+ <Col span={24} style={{ display: 'flex', alignItems: 'center' }}>
+ <Space size='small'>
+ <div className='MediationInfo-subTitle' style={{ marginTop: '-9px', }}></div><h4>当事人信息</h4>
+ </Space>
+ </Col>
+ <div style={{ margin: '16px 0' }}>
+ <PersonCard
+ isCheck={true}
+ data={fakeData}
+ handleAdd={handleAdd}
+ handleDeleteParty={handleDeleteParty}
+ handleEdit={handleEdit}
+ />
+ </div>
+ <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>
+ <Form
+ ref={props.formRef}
+ layout='vertical'
+ requiredSymbol={false}
+ scrollToFirstError={true}
+ initialValues={{
+ caseLevel: 3,
+ occurTime: getFormattedDateTime(),
+ majorStatus: 0,
+ }}//默认值
+ >
+ <Row gutter={[32, 0]}>
+ <Col span={8}>
+ <FormItem
+ label={<div style={{ display: 'flex' }}>
+ 事项等级
+ <Tooltip onClick={() => setApply(true)}>
+ <img src={question1} alt="" style={{ width: '13px', height: '13px', margin: '4px 4px 0px 4px' }} />
+ </Tooltip>
+ </div>
+ }
+ field='caseLevel'
+ >
+ <Select placeholder='请选择事项等级' allowClear options={$$.options.caseLevelList}>
+ </Select>
+ </FormItem>
+ </Col>
+ <Col span={8}>
+ <FormItem label='涉及人数(人)' field='peopleNum'>
+ <InputNumber placeholder='请填写' />
+ </FormItem>
+ </Col>
+ <Col span={8}>
+ <FormItem label='涉及金额(元)' field='amount'>
+ <InputNumber placeholder='请填写' />
+ </FormItem>
+ </Col>
+ <Col span={8}>
+ <FormItem
+ label={(<div style={{ display: 'flex' }}>纠纷类型<div className="must">必填</div></div>)}
+ rules={[{ message: '请选择纠纷类型', required: true }]}
+ field='myCaseType'
+ >
+ <Cascader
+ placeholder='请选择'
+ options={$$.caseTypeSelect.caseTypeSelect}
+ onChange={(value, option) => {
+ if (option) {
+ props.formRef.current.setFieldsValue({
+ caseTypeFirst: option[0].value,
+ caseTypeFirstName: option[0].label,
+ caseType: option[1].value,
+ caseTypeName: option[1].label,
+ })
+ } else {
+ //清除数据
+ props.formRef.current.setFieldsValue({
+ caseTypeFirst: undefined,
+ caseTypeFirstName: undefined,
+ caseType: undefined,
+ caseTypeName: undefined,
+ })
+ }
+ }}
+ allowClear
+ />
+ </FormItem>
+ </Col>
+ <Col span={8}>
+ <FormItem
+ label={(<div style={{ display: 'flex' }}>纠纷发生时间<div className="must">必填</div></div>)}
+ rules={[{ message: '请选择纠纷发生时间', required: true }]}
+ field='occurTime'
+ >
+ <DatePicker
+ style={{ width: '100%' }}
+ placeholder='请选择'
+ format='YYYY-MM-DD HH:mm'
+ showTime={true}
+ />
+ </FormItem>
+ </Col>
+ <Col span={8}>
+ <FormItem
+ label={(<div style={{ display: 'flex' }}>纠纷发生地点<div className="must">必填</div></div>)}
+ rules={[{ message: '请选择纠纷发生地点', required: true }]}
+ field='addr'
+ >
+ <InputSearch
+ placeholder='选择纠纷发生地的详细地址'
+ searchButton='选择'
+ readOnly={true} // 设置为只读,防止直接编辑
+ onSearch={() => setMapView(true)}
+ />
+ </FormItem>
+ </Col>
+ <Col span={8}>
+ <FormItem
+ label={(<div style={{ display: 'flex' }}>问题属地<div className="must">必填</div></div>)}
+ field='myQuesAddress'
+ rules={[{ message: '请选择问题属地', required: true }]}
+ >
+ <Cascader
+ placeholder='请选择'
+ options={$$.locationOption()}
+ showSearch
+ onChange={(value, option) => {
+ if (option) {
+ console.log(option)
+ props.formRef.current.setFieldsValue({
+ // queProv: option[0].value,
+ // queProvName: option[0].label,
+ // queCity: option[1].value,
+ // queCityName: option[1].label,
+ queArea: option[0].value,
+ queAreaName: option[0].label,
+ queRoad: option[1] && option[1].value || '',
+ queRoadName: option[1] && option[1].label || '',
+ })
+ } else {
+ //清除数据
+ props.formRef.current.setFieldsValue({
+ queProv: undefined,
+ queProvName: undefined,
+ queCity: undefined,
+ queCityName: undefined,
+ queArea: undefined,
+ queAreaName: undefined,
+ queRoad: undefined,
+ queRoadName: undefined,
+ })
+ }
+ }}
+ allowClear
+ />
+ </FormItem>
+ </Col>
+ <Col span={24}>
+ <FormItem
+ label={<div style={{ display: 'flex' }}>
+ 事项概况
+ <Tooltip onClick={() => setVisible(true)}>
+ <img src={question1} alt="" style={{ width: '13px', height: '13px', margin: '4px 4px 0px 4px' }} />
+ </Tooltip>
+ <div className="must" style={{ marginLeft: '4px' }}>必填</div>
+ <img src={scan} alt="" style={{ marginRight: '-2px', marginLeft: '8px' }} />
+ <div style={{ marginLeft: '8px', color: '#1A6FB8', fontSize: '14px', cursor: 'pointer' }} onClick={() => { setScanFile(true); setOcrText('caseDes') }}>识别材料</div>
+ </div>
+ }
+ field='caseDes'
+ rules={[{ message: '请填写事项概况', required: true }]}
+ >
+ <Input.TextArea
+ maxLength={2000}
+ showWordLimit
+ rows={5}
+ placeholder='请完整描述事项概况,应具备5要素:发生时间+发生地点+人物情况+事项起因+事项经过'
+ wrapperStyle={{ width: '100%' }}
+ />
+ </FormItem>
+ </Col>
+ <Col span={24}>
+ <FormItem
+ label={<div style={{ display: 'flex' }}>
+ 申请请求
+ {/* <Tooltip onClick={() => setApply(true)}>
+ <img src={question1} alt="" style={{ width: '13px', height: '13px', margin:'4px 4px 0px 4px' }} />
+ </Tooltip> */}
+ <div className="must">必填</div>
+ <img src={scan} alt="" style={{ marginRight: '-2px', marginLeft: '8px' }} />
+ <div style={{ marginLeft: '8px', color: '#1A6FB8', fontSize: '14px', cursor: 'pointer' }} onClick={() => { setScanFile(true); setOcrText('caseClaim') }}>识别材料</div>
+ </div>
+ }
+ field='caseClaim'
+ rules={[{ message: '请填写申请请求', required: true }]}
+
+ >
+ <Input.TextArea
+ maxLength={2000}
+ showWordLimit
+ rows={5}
+ placeholder='希望相关部门如何处理,建议分条描述,如请求1,请求2...'
+ wrapperStyle={{ width: '100%' }}
+ />
+ </FormItem>
+ </Col>
+ <div style={{ marginLeft: '16px', padding: '12px 16px', backgroundColor: '#F2F3F5', borderRadius: '2px', marginTop: '4px', display: 'flex', alignItems: 'center' }}>
+ <FormItem
+ label='是否重大矛盾纠纷'
+ style={{ width: '300px', marginBottom: 0 }}
+ field='majorStatus'
+ layout='horizontal'
+ labelCol={{ span: 11 }}
+ wrapperCol={{ span: 13 }}
+ >
+ <RadioGroup options={[{ value: 0, label: '否' }, { value: 1, label: '是' }]} />
+ </FormItem>
+ </div>
+ </Row>
+
+ </Form >
+ <Col span={24} style={{ display: 'flex', alignItems: 'center', marginBottom: '8px', marginTop: '20px' }}>
+ <Space size='small'>
+ <div className='MediationInfo-subTitle' style={{ marginTop: '-9px' }}></div><h4>事件材料</h4>
+ </Space>
+ </Col>
+ <div style={{ marginBottom: '65px' }}>
+ <FileTable
+ mainId={props.mainId}
+ fileInfoList={props.fileInfoList}
+ isReview={false}
+ handleSaveList={(list) => {
+ props.formRef.current.setFieldValue('fileInfoList', list)
+ }}
+ />
+ </div>
+ <DocumentScanner
+ visible={scanFile}
+ onConfirm={handleConfirm}
+ onCancel={handleCancel}
+ />
+ <Modal
+ title={(editData ? '修改' : '添加') + peopleMap[dialogType]}
+ visible={addVisabled}
+ onOk={() => setAddVisabled(false)}
+ onCancel={() => {
+ setAddVisabled(false)
+ setEditData(null)
+ }}
+ autoFocus={false}
+ focusLock={true}
+ footer={null}
+ unmountOnExit={true}
+ maskClosable={false}
+ >
+ <ApplyDialog
+ dialogType={dialogType}
+ onClose={() => setAddVisabled(false)}
+ handleAddParty={handleAddParty}
+ editData={editData}
+ mainId={props.mainId}
+ />
+ </Modal>
+ <Modal
+ title={(editData ? '修改' : '添加') + peopleMap[dialogType]}
+ visible={agentVisible}
+ onOk={() => setAgentVisible(false)}
+ onCancel={() => {
+ setAgentVisible(false)
+ setEditData(null)
+ }}
+ autoFocus={false}
+ focusLock={true}
+ footer={null}
+ unmountOnExit={true}
+ maskClosable={false}
+ >
+ <AgentDialog
+ handleAddParty={handleAddParty}
+ onClose={() => setAgentVisible(false)}
+ fakeData={fakeData}
+ dialogType={dialogType}
+ editData={editData}
+ mainId={props.mainId}
+ />
+ </Modal>
+ <Modal
+ style={{ width: '1200px' }}
+ visible={mapView}
+ onCancel={() => setMapView(false)}
+ footer={null}
+ title='选择纠纷发生地'
+ centered
+ unmountOnExit={true}
+ maskClosable={false}
+ >
+ <MapView
+ selectAdd={(data) => {
+ props.formRef.current.setFieldsValue({
+ addr: data.addName,
+ lng: data.pt.lng,
+ lat: data.pt.lat,
+ })
+ setMapView(false)
+ }}
+ />
+ </Modal>
+ <MattersDetail
+ visible={visible}
+ onClose={() => setVisible(false)}
+ />
+ <EventLevelDrawer
+ visible={apply}
+ onClose={() => setApply(false)}
+ />
+ </div >
+ )
+}
+
+export default VisitorRegister;
\ No newline at end of file
diff --git a/gz-customerSystem/src/views/register/visit/index.jsx b/gz-customerSystem/src/views/register/visit/index.jsx
index 3f150f2..6783643 100644
--- a/gz-customerSystem/src/views/register/visit/index.jsx
+++ b/gz-customerSystem/src/views/register/visit/index.jsx
@@ -218,7 +218,7 @@
if (response.type) {
if(isSelfAccept) {
//自行受理
- navigate(`mediate/visit/handleFeedback?caseTaskId=${response.data}&caseId=${id}`)
+ navigate(`/mediate/visit/handleFeedback?caseTaskId=${response.data}&caseId=${id}`)
} else {
Message.success('提交成功!')
navigate(`/mediate/visit/visitWorkBench`, { replace: true })
diff --git a/gz-customerSystem/src/views/register/visit/preview.jsx b/gz-customerSystem/src/views/register/visit/preview.jsx
index 1e608dc..ff662fa 100644
--- a/gz-customerSystem/src/views/register/visit/preview.jsx
+++ b/gz-customerSystem/src/views/register/visit/preview.jsx
@@ -15,7 +15,12 @@
import PreviewImage from '@/components/PreviewImage';
const Preview = (props) => {
- const [data, setData] = useState({})
+ const [data, setData] = useState({});
+ const levelColorMap = {
+ 1: '#F53F3F',
+ 2: '#EF6C24',
+ 3: '#00B42A',
+ }
useEffect(() => {
console.log(props.data);
@@ -116,15 +121,21 @@
<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' }}>{props.data?.caseLevel || '-'}</div></div>级</div>
+ <div style={{ display: 'flex' }}>
+ <div style={{ backgroundColor: levelColorMap[props.data?.caseLevel], 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>{props.data?.visitTime || '-'}</div>
+ <div><div className="title-text">事项来源</div></div>
+ <div>自行排查</div>
</Col>
<Col span={8}>
- <div ><div className="title-text">来访人数(人)</div></div>
- <div>{props.data?.visitPeopleNum || '-'}</div>
+ <div ><div className="title-text">来访形式</div></div>
+ <div>排查</div>
</Col>
<Col span={8}>
<div ><div className="title-text">纠纷类型</div></div>
@@ -157,14 +168,6 @@
<Col span={8}>
<div ><div className="title-text">涉及金额(元)</div></div>
<div>{$$.thousands(props.data?.amount) || '-'}</div>
- </Col>
- <Col span={8}>
- <div ><div className="title-text">事项来源</div></div>
- <div>{props.data?.canalName}</div>
- </Col>
- <Col span={16}>
- <div ><div className="title-text">来访形式</div></div>
- <div>来访</div>
</Col>
<Col span={24}>
<div className="title"><div className="title-text">事项概况</div></div>
--
Gitblit v1.8.0