From a7cba2f05df12ab546ef1c20b63aad10ec0e7a5c Mon Sep 17 00:00:00 2001 From: liyj <1003249715@qq.com> Date: Fri, 30 Aug 2024 16:45:54 +0800 Subject: [PATCH] Merge branch 'master' of http://120.79.193.119:9090/r/gzzfw/frontEnd/gzDyh --- gz-customerSystem/src/views/register/visit/component/handle.jsx | 181 +++++++++++++++++++++++++++++++++----------- 1 files changed, 134 insertions(+), 47 deletions(-) diff --git a/gz-customerSystem/src/views/register/visit/component/handle.jsx b/gz-customerSystem/src/views/register/visit/component/handle.jsx index 6c8cb7b..620a5fc 100644 --- a/gz-customerSystem/src/views/register/visit/component/handle.jsx +++ b/gz-customerSystem/src/views/register/visit/component/handle.jsx @@ -1,15 +1,45 @@ import React, { useState } from 'react'; -import { Steps, Button } from '@arco-design/web-react'; -import { Col, Space, Row, Tooltip } from 'antd'; +import { Steps } from '@arco-design/web-react'; +import { Col, Space, Row, Tooltip, Button } from 'antd'; import { register, empty } from '../../../../assets/images' -import { Form, Select, Empty } from '@arco-design/web-react'; +import { Form, Input, Empty, Tabs, Typography, Modal } from '@arco-design/web-react'; import { question1, } from '@/assets/images'; +import ProgressStep from '../../../../components/ProgressStep/VisitStep' +import SelectObjModal from '../../../../components/SelectObjModal/selectPerson' +import WantUserTag from '../../../../components/WantUserTag/Handling' -const Option = Select.Option; +const InputSearch = Input.Search; const FormItem = Form.Item; +const TabPane = Tabs.TabPane; + +const style = { + textAlign: 'center', + marginTop: 20, +}; + const Handle = () => { + const [selectedTab, setSelectedTab] = useState('1'); // 默认选中第一个 tab + const [wantUser, setWantUser] = useState({}); + const tabs = [ + { index: '1', label: '承办部门' }, + { index: '2', label: '配合部门' }, + ]; + + const [isModalVisible, setIsModalVisible] = useState(false); + + const showModal = () => { + setIsModalVisible(true); + }; + + const hideModal = () => { + setIsModalVisible(false); + }; + + const handleTabChange = (newTabIndex) => { + setSelectedTab(newTabIndex); + }; return ( <> @@ -56,56 +86,113 @@ requiredSymbol={false} scrollToFirstError={true} > - <Row> - <Col span={8}> - <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' }} /> - </Tooltip> - </div> + <Col span={8}> + <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' }} /> + </Tooltip> + </div> + } + field='level' > + {wantUser.wantUserId ? + <WantUserTag name={wantUser.wantUserName} onClose={() => setWantUser({ wantUserId: null, wantUserName: null })} /> + : + <InputSearch + searchButton='选择' + placeholder='请选择' + style={{ width: 350 }} + onClick={() => setIsModalVisible(true)} + onSearch={() => setIsModalVisible(true)} + /> } - field='level' > - <Select placeholder='请选择' allowClear> - {['一级', '二级', '三级', '四级'].map((option, index) => ( - <Option key={option} value={option}> - {option} - </Option> - ))} - - </Select> - <Button type='primary' style={{ position: 'absolute', right: 0 }}>保存</Button> - </FormItem> - </Col> - <Col span={24}> - <div style={{ color: 'rgb(134, 144, 156)' }}>办理记录</div> - <Empty - icon={ - <div - style={{ - display: 'flex', - // width: 160, - justifyContent: 'center', - }} - > - <img src={empty} alt='' style={{ width: '160px', height: '160px' }} /> - </div> - } - description='暂无数据' - /> - </Col> - </Row> + </FormItem> + </Col> + <Col span={24}> + <div style={{ color: 'rgb(134, 144, 156)' }}>办理记录</div> + <Empty + icon={ + <div + style={{ + display: 'flex', + // width: 160, + justifyContent: 'center', + }} + > + <img src={empty} alt='' style={{ width: '160px', height: '160px' }} /> + </div> + } + description='暂无数据' + /> + </Col> </Form> <Space> - <Button type="primary" style={{ backgroundColor: '#1A6FB8' }}>保存</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='outline' style={{ color: '#1A6FB8', border: '1px solid #1A6FB8' }} >自行受理</Button> + <Button type="primary" style={{ backgroundColor: '#1A6FB8' }}>添加办理记录</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> </Space> </div> - <div className='container-bottom-right'>22</div> + <div className='container-bottom-right'> + <Tabs defaultActiveTab='1' className='tabs-container' > + <TabPane + key='1' + title={ + <span style={{ fontSize: '15px' }}> + 流转进度 + </span> + } + > + <Typography.Paragraph> + <div style={{ display: 'flex', marginLeft: '16px', gap: '16px' }}> + {tabs.map((tab) => ( + <div + key={tab.index} + style={{ + color: selectedTab === tab.index ? 'rgba(26,111,184,1)' : 'rgba(0,0,0,0.45)', + padding: '6px 12px', + border: `1px solid ${selectedTab === tab.index ? 'rgba(26,111,184,1)' : 'rgba(229,230,235,1)'}`, + borderRadius: '4px', + cursor: 'pointer', + }} + onClick={() => handleTabChange(tab.index)} + > + {tab.label} + </div> + ))} + </div> + {selectedTab === '1' && + <div className='progress'> + <ProgressStep caseId='202408291012566613' pageFrom="dispatchRecord" /> + </div> + } + </Typography.Paragraph> + </TabPane> + <TabPane + key='2' + title={ + <span style={{ fontSize: '15px' }}> + 督办信息 + </span> + } + > + <Typography.Paragraph style={style}>Content of Tab Panel 2</Typography.Paragraph> + </TabPane> + </Tabs> + + </div> </div> + + {/* 选择经办人*/} + <SelectObjModal + visible={isModalVisible} + checkKeys={wantUser.wantUserId ? [{ label: wantUser.wantUserName, value: wantUser.wantUserId }] : undefined} + onOk={(value) => { + setIsModalVisible(false); + setWantUser({ wantUserId: value.keys[0], wantUserName: value.items[0].name }); + }} + onClose={() => setIsModalVisible(false)} + /> </div> </> ) -- Gitblit v1.8.0