From 564bfb399c4bf4d9a59d7d5d2f2bf56f75f5b220 Mon Sep 17 00:00:00 2001 From: dminyi <1301963064@qq.com> Date: Mon, 02 Sep 2024 14:22:47 +0800 Subject: [PATCH] 流转办理 --- gz-customerSystem/src/views/register/handleFeedback/component/handle.jsx | 121 +++++++++----- gz-customerSystem/src/views/register/matterDetail/index.jsx | 23 +- gz-customerSystem/src/views/register/handleFeedback/component/FileUpLoad.jsx | 122 ++++++-------- gz-customerSystem/src/views/register/index.less | 1 gz-customerSystem/src/views/register/visit/component/visitorRegister.jsx | 88 ++--------- gz-customerSystem/src/api/appUrl.js | 85 +++++----- gz-customerSystem/src/views/register/eventFlow/index.jsx | 6 gz-customerSystem/src/views/register/visit/index.jsx | 4 gz-customerSystem/src/router/router.js | 4 9 files changed, 209 insertions(+), 245 deletions(-) diff --git a/gz-customerSystem/src/api/appUrl.js b/gz-customerSystem/src/api/appUrl.js index 7a6fde3..d4e5a71 100644 --- a/gz-customerSystem/src/api/appUrl.js +++ b/gz-customerSystem/src/api/appUrl.js @@ -2,62 +2,61 @@ * @Company: hugeInfo * @Author: ldh * @Date: 2022-02-16 11:25:57 - * @LastEditTime: 2024-08-31 10:29:49 + * @LastEditTime: 2024-09-02 10:43:43 * @LastEditors: dminyi 1301963064@qq.com * @Version: 1.0.0 * @Description: api地址 */ export const debug = { - // web服务 - // baseUrl: 'http://gz.hugeinfo.com.cn', - baseUrl: 'http://b8bmfu.natappfree.cc', - // baseUrl: 'http://mdqgnh.natappfree.cc', + // web服务 + // baseUrl: 'http://gz.hugeinfo.com.cn', + baseUrl: "http://192.168.3.108:9002", + // baseUrl: 'http://mdqgnh.natappfree.cc', - // 附件服务 - fileUrl: 'http://b8bmfu.natappfree.cc', - // fileUrl: 'http://gz.hugeinfo.com.cn', + // 附件服务 + fileUrl: "http://192.168.3.108:9002", + // fileUrl: 'http://gz.hugeinfo.com.cn', + // 文件查看url 后面接附件编号 + fileShowUrl: "/dyh-sys/api/v1/fileInfo/show/", + // 文件下载url 后面接附件编号 + fileDownUrl: "/dyh-sys/api/v1/fileInfo/down/", + // 在线文档编辑链接 + fileDocx: "/word/docDraft/showWord", + // 签章的文档编辑链接 + fileDocx2: "/InsertSeal/Word/AddSeal1/Word1", - // 文件查看url 后面接附件编号 - fileShowUrl: '/dyh-sys/api/v1/fileInfo/show/', - // 文件下载url 后面接附件编号 - fileDownUrl: '/dyh-sys/api/v1/fileInfo/down/', - // 在线文档编辑链接 - fileDocx: '/word/docDraft/showWord', - // 签章的文档编辑链接 - fileDocx2: '/InsertSeal/Word/AddSeal1/Word1', - - // 不同服务接口type - mediate: 'dyh-mediate', // dyh-mediate - cust: 'dyh-cust', // dyh-cust - oper: 'dyh-oper', // dyh-oper - sys: 'dyh-sys', // dyh-sys - disp: 'dyh-disp', //dyh-disp - utils: 'dyh-utils' + // 不同服务接口type + mediate: "dyh-mediate", // dyh-mediate + cust: "dyh-cust", // dyh-cust + oper: "dyh-oper", // dyh-oper + sys: "dyh-sys", // dyh-sys + disp: "dyh-disp", //dyh-disp + utils: "dyh-utils", }; // 正式版 export const web = { - // web服务 - baseUrl: 'https://zfw-dyh.by.gov.cn', - // baseUrl: 'http://146.4.99.61:8088/byzfw', + // web服务 + baseUrl: "https://zfw-dyh.by.gov.cn", + // baseUrl: 'http://146.4.99.61:8088/byzfw', - // 附件服务 - fileUrl: 'https://dyh.hugeinfo.com.cn', + // 附件服务 + fileUrl: "https://dyh.hugeinfo.com.cn", - // 文件查看url 后面接附件编号 - fileShowUrl: '/dyh-sys/api/v1/fileInfo/show/', - // 文件下载url 后面接附件编号 - fileDownUrl: '/dyh-sys/api/v1/fileInfo/down/', - // 在线文档编辑链接 - fileDocx: '/word/docDraft/showWord', - // 签章的文档编辑链接 - fileDocx2: '/InsertSeal/Word/AddSeal1/Word1', + // 文件查看url 后面接附件编号 + fileShowUrl: "/dyh-sys/api/v1/fileInfo/show/", + // 文件下载url 后面接附件编号 + fileDownUrl: "/dyh-sys/api/v1/fileInfo/down/", + // 在线文档编辑链接 + fileDocx: "/word/docDraft/showWord", + // 签章的文档编辑链接 + fileDocx2: "/InsertSeal/Word/AddSeal1/Word1", - // 不同服务接口type - mediate: 'dyh-mediate', // dyh-mediate - cust: 'dyh-cust', // dyh-cust - oper: 'dyh-oper', // dyh-oper - sys: 'dyh-sys', // dyh-sys - disp: 'dyh-disp', //dyh-disp + // 不同服务接口type + mediate: "dyh-mediate", // dyh-mediate + cust: "dyh-cust", // dyh-cust + oper: "dyh-oper", // dyh-oper + sys: "dyh-sys", // dyh-sys + disp: "dyh-disp", //dyh-disp }; diff --git a/gz-customerSystem/src/router/router.js b/gz-customerSystem/src/router/router.js index 5dd82ce..5436453 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-08-27 10:42:32 + * @LastEditTime: 2024-08-31 17:09:28 * @LastEditors: dminyi 1301963064@qq.com * @Version: 1.0.0 * @Description: 路由 @@ -215,6 +215,8 @@ <Route path="visit" element={<Visit />} /> <Route path="visit/eventFlow" element={<EventFlow />} /> <Route path="visit/handleFeedback" element={<HandleFeedback />} /> + + {/* 工作流模块 */} <Route path="workflowTemplate" element={<WorkflowTemplate />} /> <Route path="workflowTemplate/workflowTemplateEdit" element={<WorkflowTemplateEdit />} /> diff --git a/gz-customerSystem/src/views/register/eventFlow/index.jsx b/gz-customerSystem/src/views/register/eventFlow/index.jsx index 17dd752..f9bbea1 100644 --- a/gz-customerSystem/src/views/register/eventFlow/index.jsx +++ b/gz-customerSystem/src/views/register/eventFlow/index.jsx @@ -2,7 +2,7 @@ * @Author: dminyi 1301963064@qq.com * @Date: 2024-08-09 09:59:43 * @LastEditors: dminyi 1301963064@qq.com - * @LastEditTime: 2024-08-28 14:38:20 + * @LastEditTime: 2024-08-31 17:13:53 * @FilePath: \gzDyh\gz-customerSystem\src\views\basicInformation\organization\index.jsx * @Description: 来访登记 */ @@ -15,7 +15,7 @@ import { Button, Steps, Tabs, Message } from '@arco-design/web-react'; import { question, register, Matter, transfer } from '@/assets/images' import EventFlow from './component/EventFlow'; -import MatterDetali from '../matterDetail'; +import MatterDetail from '../matterDetail'; const Step = Steps.Step; const TabPane = Tabs.TabPane; @@ -74,7 +74,7 @@ </div> } {tabsActive === '1' && - <MatterDetali /> + <MatterDetail /> } { (tabsActive === '2' && current === 2) && <EventFlow /> diff --git a/gz-customerSystem/src/views/register/handleFeedback/component/FileUpLoad.jsx b/gz-customerSystem/src/views/register/handleFeedback/component/FileUpLoad.jsx index f136c12..e68d3ab 100644 --- a/gz-customerSystem/src/views/register/handleFeedback/component/FileUpLoad.jsx +++ b/gz-customerSystem/src/views/register/handleFeedback/component/FileUpLoad.jsx @@ -1,92 +1,86 @@ import React, { useState, useEffect } from 'react'; import { Typography, Button } from 'antd'; import { CheckOutlined, } from '@ant-design/icons'; -import { Form, Input, Modal,Upload } from '@arco-design/web-react'; +import { Form, Input, Modal, Upload } from '@arco-design/web-react'; import { IconLink } from '@arco-design/web-react/icon'; -const { TextArea } = Input; -const { Text } = Typography; +const FormItem = Form.Item; const DocumentScanner = ({ visible, - onCancel, onConfirm, - formRef, + onCancel + }) => { + + const [scanFile, setScanFile] = useState(false); const [scanImage, setScanImage] = useState(false); const [scaned, setScaned] = useState(false); - const [fileView, setFileView] = useState(null); + const [fileView, setFileView] = useState(); - useEffect(() => { - if (!visible) { - setScanImage(false); - setScaned(false); - setFileView(null); - } - }, [visible]); - - const handleUploadChange = (info) => { - if (info.fileList.length > 0) { + const handleUploadChange = (info, currentFile) => { + if (info.length > 0) { setScanImage(true); } setFileView({ - ...info.fileList[0], - url: URL.createObjectURL(info.fileList[0].originFile), + ...currentFile, + url: URL.createObjectURL(currentFile.originFile), }); }; - const handleStartRecognition = () => { - setScaned(true); - setScanImage(false); - }; - const handleUseText = (text) => { - onConfirm(text); - onCancel(); // 关闭弹窗 - }; + return ( <> - <Modal - style={{ width: '1200px' }} - visible={visible && !scanImage && !scaned} - onCancel={onCancel} - title='识别上传材料' - centered - footer={null} - > + <Modal style={{ width: '1200px' }} visible={visible} onCancel={onCancel} title='识别上传材料' centered footer={null}> <Form - ref={formRef} layout='vertical' requiredSymbol={false} + initialValues={{ + }}//默认值 style={{ marginTop: '4px' }} > - <Form.Item label='选择图片' name='file'> + <FormItem + label='选择图片' + field='file' + > <Upload drag + // multiple limit={1} accept='image/*' - onDrop={() => {}} - tip='支持png、jpg、pdf等格式文件上传,每次上传大小不超过10M' + // action='/' + onDrop={(e) => { + }} + tip='支持png、 jpg、pdf等格式文件上传,每次上传大小不超过10M' showUploadList={{ + // Please dont remove this comment fileIcon: <IconLink style={{ color: '#1D2129' }} />, }} + // onChange={(info, currentFile) => { + // console.log(currentFile, info, 'info', 'currentFile') + // if (info.length > 0) { + // setScanImage(true); + // } + // setFileView({ + // ...currentFile, + // url: URL.createObjectURL(currentFile.originFile), + + // }); + + // }} onChange={handleUploadChange} - > - <Text>点击或者拖拽文件到这里</Text> - </Upload> - </Form.Item> + // onSuccess={() => setScanImage(true)} + /> + {/* <img src={file?.url} alt=""/> */} + </FormItem> + </Form> + </Modal> - <Modal - style={{ width: '944px' }} - visible={visible && scanImage} - onCancel={() => setScanImage(false)} - footer={null} - title='选择识别范围' - centered - > + <Modal style={{ width: '944px' }} visible={scanImage} onCancel={() => setScanImage(false)} footer={null} title='选择识别范围' centered> <img src={fileView?.url} alt="" @@ -98,35 +92,21 @@ objectFit: 'contain', }} /> - <div style={{ marginTop: '20px' }}> - <Button type="primary" onClick={handleStartRecognition}> - 开始识别 - </Button> - </div> + <div><Button type="primary" onClick={() => setScaned(true)} style={{ marginTop: '20px' }}>开始识别</Button></div> </Modal> - <Modal - style={{ width: '1200px' }} - visible={visible && scaned} - onCancel={() => setScaned(false)} - footer={null} - title='识别上传材料' - centered - > - <div style={{ marginTop: '20px', marginBottom: '8px' }}>识别内容</div> - <TextArea + <Modal style={{ width: '1200px' }} visible={scaned} onCancel={() => setScaned(false)} footer={null} title='识别上传材料' centered> + <div style={{ marginBottom: '8px' }}>识别内容</div> + <Input.TextArea showWordLimit rows={5} placeholder='' wrapperStyle={{ width: '100%' }} defaultValue='识别内容' - onChange={(e) => handleUseText(e.target.value)} + onChange={(v) => console.log(v, 'vvvvvv')} /> - <div style={{ marginTop: '24px' }}> - <Button type="primary" onClick={() => handleUseText('识别内容')}> - 使用文字 - </Button> - </div> + <div style={{ marginTop: '24px' }}><Button type="primary" onClick={() => { onConfirm(); setScanFile(false); setScanImage(false); setScaned(false); }}>使用文字</Button></div> </Modal> + </> ); }; diff --git a/gz-customerSystem/src/views/register/handleFeedback/component/handle.jsx b/gz-customerSystem/src/views/register/handleFeedback/component/handle.jsx index 4b4fbcc..59e43c9 100644 --- a/gz-customerSystem/src/views/register/handleFeedback/component/handle.jsx +++ b/gz-customerSystem/src/views/register/handleFeedback/component/handle.jsx @@ -1,7 +1,7 @@ import React, { useState, useRef, useEffect } from 'react'; -import { Col, Space, Row, Tooltip, Button } from 'antd'; +import { Col, Space, Row, Tooltip } from 'antd'; import { register, fold, down, empty, link } from '@/assets/images'; -import { Form, Input, Tabs, Typography, Empty } from '@arco-design/web-react'; +import { Form, Input, Tabs, Typography, Empty, Upload, Button, Modal } from '@arco-design/web-react'; import { question1, } from '@/assets/images'; import ProgressStep from '@/components/ProgressStep/VisitStep'; import SelectObjModal from '@/components/SelectObjModal/selectPerson'; @@ -9,6 +9,9 @@ import { scan } from '@/assets/images/icon' import DocumentScanner from './FileUpLoad' import * as $$ from '@/utils/utility'; +import { + IconLink, +} from '@arco-design/web-react/icon'; const InputSearch = Input.Search; @@ -77,7 +80,8 @@ const Handle = () => { const [selectedTab, setSelectedTab] = useState('1'); // 默认选中第一个 tab const [wantUser, setWantUser] = useState({}); - // const [scanFile, setScanFile] = useState(false); + const [formView, setFormView] = useState(false); + const [personView, setPersonView] = useState(false); const tabs = [ { index: '1', label: '承办部门' }, @@ -177,20 +181,20 @@ const [scannerVisible, setScannerVisible] = useState(false); - const handleConfirm = (text) => { - console.log('识别完成:', text); + const handleConfirm = () => { + // 处理确认逻辑 + setScannerVisible(false); + }; + + const handleCancel = () => { + // 处理取消逻辑 setScannerVisible(false); }; const openScanner = () => { setScannerVisible(true); - formRef.current?.resetFields(); - formRef.current?.setFieldsValue({}); }; - const onCancel = () => { - setScannerVisible(false); - }; @@ -245,7 +249,7 @@ <FormItem label={<div style={{ display: 'flex' }}> <span style={{ color: '#86909C' }}>经办人</span> <Tooltip> - <img src={question1} alt="" style={{ width: '13px', height: '13px', margin: '4px 4px 0px 4px' }} /> + <img onClick={() => setPersonView(!personView)} src={question1} alt="" style={{ width: '13px', height: '13px', margin: '4px 4px 0px 4px' }} /> </Tooltip> </div> } @@ -309,38 +313,67 @@ description='暂无数据' /> } - <div className='Form'> - <Col span={24} style={{ marginBottom: '8px' }}> - <Space size='small'> - <div className='MediationInfo-subTitle' style={{ marginTop: '-9px' }}></div><h5>添加办理记录</h5> + {formView && + <div className='Form'> + <Col span={24} style={{ marginBottom: '8px' }}> + <Space size='small'> + <div className='MediationInfo-subTitle' style={{ marginTop: '-9px' }}></div><h5>添加办理记录</h5> + </Space> + </Col> + <Col span={24}> + <FormItem + label={<div style={{ display: 'flex' }}> + 办理意见 + <img src={scan} alt="" style={{ marginRight: '-2px', marginLeft: '8px' }} /> + <div style={{ marginLeft: '8px', color: '#1A6FB8', fontSize: '14px', cursor: 'pointer' }} onClick={openScanner}>识别材料</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' }}> + 办理附件 + </div> + } + field='caseDes' + rules={[{ message: '请填写事项概况', required: true }]} + > + <Upload + drag + multiple + accept='image/*' + action='/' + onDrop={(e) => { + }} + tip='支持png、jpg、pdf格式的图片上传,每次上传大小不超过10M' + showUploadList={{ + fileIcon: <IconLink style={{ color: '#1D2129' }} />, + }} + /> + </FormItem> + </Col> + <Space size='middle'> + <Button type='primary'>保存</Button> + <Button type='secondary'>取消添加</Button> </Space> - </Col> - <Col span={24}> - <FormItem - label={<div style={{ display: 'flex' }}> - 办理意见 - <img src={scan} alt="" style={{ marginRight: '-2px', marginLeft: '8px' }} /> - <div style={{ marginLeft: '8px', color: '#1A6FB8', fontSize: '14px', cursor: 'pointer' }} onClick={openScanner}>识别材料</div> - </div> - } - field='caseDes' - rules={[{ message: '请填写事项概况', required: true }]} - > - <Input.TextArea - maxLength={2000} - showWordLimit - rows={5} - placeholder='请完整描述事项概况,应具备5要素:发生时间+发生地点+人物情况+事项起因+事项经过' - wrapperStyle={{ width: '100%' }} - /> - </FormItem> - </Col> + </div> - </div> + } </Col> </Form> - <Space style={{ marginTop: '38px', position: 'absolute', bottom: '4px' }}> - <Button type="primary" style={{ backgroundColor: '#1A6FB8' }}>添加办理记录</Button> + <Space style={{ marginTop: '38px', bottom: '4px' }}> + <Button type="primary" style={{ backgroundColor: '#1A6FB8' }} onClick={() => setFormView(!formView)}>添加办理记录</Button> <Button type='outline' style={{ color: '#1A6FB8', border: '1px solid #1A6FB8' }} >结案申请</Button> <Button type='outline' style={{ color: '#1A6FB8', border: '1px solid #1A6FB8' }}>联合处置申请</Button> <Button type='secondary'>返回上级页面</Button> @@ -409,11 +442,15 @@ <DocumentScanner visible={scannerVisible} - onCancel={onCancel} onConfirm={handleConfirm} - formRef={formRef} + onCancel={handleCancel} /> - </div > + + <Modal visible={personView} onCancel={() => setPersonView(false)} title='工作人员信息' centered footer={null}> + + </Modal> + + </div> </> ) diff --git a/gz-customerSystem/src/views/register/index.less b/gz-customerSystem/src/views/register/index.less index f1e6dff..65c7ca0 100644 --- a/gz-customerSystem/src/views/register/index.less +++ b/gz-customerSystem/src/views/register/index.less @@ -363,6 +363,7 @@ border: 1px dashed #1a6fb8; border-radius: 10px; margin-top: 16px; + margin-right: 16px; } .tabs-container .arco-tabs-header { diff --git a/gz-customerSystem/src/views/register/matterDetail/index.jsx b/gz-customerSystem/src/views/register/matterDetail/index.jsx index 403d0c3..972716b 100644 --- a/gz-customerSystem/src/views/register/matterDetail/index.jsx +++ b/gz-customerSystem/src/views/register/matterDetail/index.jsx @@ -11,7 +11,7 @@ } -export default function MatterDetali() { +export default function MatterDetail() { const [fakeData, setFakeData] = useState([{ "trueName": "王大锤", "mobile": "13380313412", @@ -151,13 +151,14 @@ if (res.type) { let data = res.data - setInfoData([...fakeData1, { + setInfoData({ ...data, - questionName: data.queProvName + '/' + data.queCityName + '/' + data.queAreaName + '/' + data.queRoadName + '/' + data.queVillageName, - caseType: data.caseTypeFirstName + '/' + data.caseTypeName - }]) - + questionName: data.queProvName === null ? '-' : data.queProvName + '/' + data.queCityName + '/' + data.queAreaName + '/' + data.queRoadName + '/' + data.queVillageName, + caseType: data.caseTypeFirstName === null ? '-' : data.caseTypeFirstName + '/' + data.caseTypeName + }) + setFakeData(data.personList.concat(data.agentList)) } + } @@ -192,11 +193,11 @@ <Row gutter={[16, 16]}> <Col span={8}> <div><div className="title-text">事项状态</div></div> - <div style={{ color: '#1A6FB8' }}>{infoData.statusName || '-'}</div> + <div style={{ color: '#1A6FB8' }}>{infoData?.statusName || '-'}</div> </Col> <Col span={16}> <div><div className="title-text">事项编号</div></div> - <div>{infoData.caseId || '-'}</div> + <div>{infoData?.caseRef || '-'}</div> </Col> {/*事项等级分为三级,颜色需要做判断*/} <Col span={8}> @@ -279,18 +280,18 @@ {/*事项等级分为三级,颜色需要做判断*/} <Col span={8}> <div className="title"><div className="title-text">登记机构</div><img src={question} alt="" style={{ width: '14px', height: '14px', marginTop: '4px', marginLeft: '4px' }} /></div> - <div>天河区棠下街道综治中心</div> + <div>{infoData.inputUnitName || '-'}</div> </Col> <Col span={8}> <div><div className="title-text">登记人</div></div> <div style={{ display: 'flex' }}> - <div>李晓明</div> + <div>{infoData.inputUserName || '-'}</div> <img src={register} alt='' style={{ width: '14px', height: '14px', marginLeft: '8px', marginTop: '4px' }} /> </div> </Col> <Col span={8}> <div ><div className="title-text">登记时间</div></div> - <div>2024-7-8 10:00</div> + <div>{infoData.createTime || '-'}</div> </Col> </Row> <Button type='primary' style={{ marginTop: '20px' }}>修改</Button> diff --git a/gz-customerSystem/src/views/register/visit/component/visitorRegister.jsx b/gz-customerSystem/src/views/register/visit/component/visitorRegister.jsx index 1e1a0c1..630a3b2 100644 --- a/gz-customerSystem/src/views/register/visit/component/visitorRegister.jsx +++ b/gz-customerSystem/src/views/register/visit/component/visitorRegister.jsx @@ -20,6 +20,7 @@ import MapView from './map' import { scan } from '@/assets/images/icon' import { EventLevelDrawer, MattersDetail } from './levelDetail' +import DocumentScanner from '../../handleFeedback/component/FileUpLoad' const RadioGroup = Radio.Group;// 根据调解案号获取纠纷登记信息 const FormItem = Form.Item; @@ -319,6 +320,16 @@ setDialogType(type) } + const handleConfirm = () => { + // 处理确认逻辑 + setScanFile(false); + }; + + const handleCancel = () => { + // 处理取消逻辑 + setScanFile(false); + }; + //添加当事人 const handleAddParty = (value) => { if (value.id) { @@ -589,78 +600,11 @@ style={{ marginBottom: '65px' }} /> - <Modal style={{ width: '1200px' }} visible={scanFile} onCancel={() => setScanFile(false)} title='识别上传材料' centered footer={null}> - <Form - ref={props.formRef} - layout='vertical' - requiredSymbol={false} - initialValues={{ - }}//默认值 - style={{ marginTop: '4px' }} - > - <FormItem - label='选择图片' - field='file' - > - <Upload - drag - // multiple - limit={1} - accept='image/*' - // action='/' - onDrop={(e) => { - }} - tip='支持png、 jpg、pdf等格式文件上传,每次上传大小不超过10M' - showUploadList={{ - // Please dont remove this comment - fileIcon: <IconLink style={{ color: '#1D2129' }} />, - }} - onChange={(info, currentFile) => { - console.log(currentFile, info, 'info', 'currentFile') - if (info.length > 0) { - setScanImage(true); - } - setFileView({ - ...currentFile, - url: URL.createObjectURL(currentFile.originFile), - - }); - - }} - onSuccess={() => setScanImage(true)} - /> - {/* <img src={file?.url} alt=""/> */} - </FormItem> - - </Form> - - </Modal> - <Modal style={{ width: '944px' }} visible={scanImage} onCancel={() => setScanImage(false)} footer={null} title='选择识别范围' centered> - <img - src={fileView?.url} - alt="" - style={{ - display: 'block', // 确保图片在容器中居中显示 - margin: 'auto', // 居中显示 - maxWidth: '100%', // 图片最大宽度为容器宽度的100% - maxHeight: '100%', // 图片最大高度为容器高度的100% - objectFit: 'contain', // 图片缩放以适应容器,保持原图比例 - }} - /> - <div><Button type="primary" onClick={() => setScaned(true)} style={{ marginTop: '20px' }}>开始识别</Button></div> - </Modal> - <Modal style={{ width: '1200px' }} visible={scaned} onCancel={() => setScaned(false)} footer={null} title='识别上传材料' centered> - <div style={{ marginTop: '20px', marginBottom: '8px' }}>识别内容</div> - <Input.TextArea - showWordLimit - rows={5} - placeholder='' - wrapperStyle={{ width: '100%' }} - defaultValue='识别内容' - onChange={(v) => console.log(v, 'vvvvvv')} - /> - <div style={{ marginTop: '24px' }}><Button type="primary" onClick={() => { setScanFile(false); setScanImage(false); setScaned(false) }}>使用文字</Button></div> - </Modal> + <DocumentScanner + visible={scanFile} + onConfirm={handleConfirm} + onCancel={handleCancel} + /> <Modal style={{ width: '512px' }} visible={upload} onCancel={() => setUpLoad(false)} footer={null} title='上传材料' centered> <div style={{ paddingTop: '8px' }}> <Row gutter={[30, 24]}> diff --git a/gz-customerSystem/src/views/register/visit/index.jsx b/gz-customerSystem/src/views/register/visit/index.jsx index f9836b8..bf03f00 100644 --- a/gz-customerSystem/src/views/register/visit/index.jsx +++ b/gz-customerSystem/src/views/register/visit/index.jsx @@ -2,7 +2,7 @@ * @Author: dminyi 1301963064@qq.com * @Date: 2024-08-09 09:59:43 * @LastEditors: dminyi 1301963064@qq.com - * @LastEditTime: 2024-08-31 16:52:26 + * @LastEditTime: 2024-09-02 11:40:22 * @FilePath: \gzDyh\gz-customerSystem\src\views\basicInformation\organization\index.jsx * @Description: 来访登记 */ @@ -36,7 +36,7 @@ const formRef = useRef(); const [isReview, setIsReview] = useState(false);//预览页面控制 - const [current, setCurrent] = useState(1); + const [current, setCurrent] = useState(3); //提交信息,需要校验规则 const handleSubmit = async () => { -- Gitblit v1.8.0