From 9f705a54328c4b59ad9566c521bc6e0e7577acb3 Mon Sep 17 00:00:00 2001 From: liuwh <964324856@qq.com> Date: Fri, 13 Sep 2024 19:10:30 +0800 Subject: [PATCH] Merge branch 'master' of http://120.79.193.119:9090/r/gzzfw/frontEnd/gzDyh into master --- gz-customerSystem/src/views/register/matterDetail/UniteHandle.jsx | 211 +++++++++++++++++++++++++++++++--------------------- 1 files changed, 125 insertions(+), 86 deletions(-) diff --git a/gz-customerSystem/src/views/register/matterDetail/UniteHandle.jsx b/gz-customerSystem/src/views/register/matterDetail/UniteHandle.jsx index 53965fa..3bac15e 100644 --- a/gz-customerSystem/src/views/register/matterDetail/UniteHandle.jsx +++ b/gz-customerSystem/src/views/register/matterDetail/UniteHandle.jsx @@ -1,30 +1,28 @@ import React, { useState, useRef } from 'react'; -import { Form, Input, Tabs, Typography, Button, Modal, Select } from '@arco-design/web-react'; -import { Col, Space, Row, Tooltip } from 'antd'; +import { Form, Input, Button, Modal, Select, Tooltip } from '@arco-design/web-react'; +import { Col, Row } from 'antd'; import ArcoUpload from '@/components/ArcoUpload'; import * as $$ from '@/utils/utility'; import { question1, } from '@/assets/images'; +import SelectObjModal from '@/components/SelectObjModal/selectPerson'; const FormItem = Form.Item; -const Option = Select.Option; const appUrl = $$.appUrl; function delFile(id) { return $$.ax.request({ url: `fileInfo/deleteFileById`, type: 'get', service: 'sys', data: { id } }); } +function postAssistApply(data) { + return $$.ax.request({ url: `caseAssistApply/addCaseAssistApply`, type: 'post', service: 'mediate', data }); +} -const UniteHandle = ({ id, visible, handleOnCancel }) => { + +const UniteHandle = ({ id, visible, handleOnCancel, caseId, caseTaskId }) => { const formRef = useRef(); - const [supervising, setSupervising] = useState(false); - const [fileVisible, setFileVisible] = useState(false); - - const options = [ - { value: '1', label: '一' }, { value: '2', label: '二' }, { value: '3', label: '三' } - ]; - - - + const [isModalVisible, setIsModalVisible] = useState(false); + const [wantUser, setWantUser] = useState([]); + const [selectOptions, setSelectOptions] = useState([]);//部门选择的options //删除文件 const handleDelFile = async (id) => { @@ -35,84 +33,125 @@ } const handleSupervising = () => { - setSupervising(!supervising) + formRef.current.validate(undefined, (errors, values) => { + if (!errors) { + handleJoint({ + id, + caseId, + applyContent: values.applyContent, + applyAssistUnitId: wantUser?.map(item => item.value).join(',') || '', + applyAssistUnitName: wantUser?.map(item => item.name).join(',') || '', + }) + } + }) } + //form数据同步要提交的数据 + const handleSync = (value) => { + let newList = wantUser.filter(item => value.indexOf(item.value) != -1) + setWantUser(newList); + } + + //联合处置请求 + const handleJoint = async (data) => { + const res = await postAssistApply(data) + if (res.type) { + $$.infoSuccess({ content: '提交申请成功!' }); + handleOnCancel(); + } + } return ( - <> - <Modal visible={visible} onCancel={handleOnCancel} title='联合处置申请' centered footer={null}> - <Form - ref={formRef} - layout='vertical' - requiredSymbol={false} - scrollToFirstError={true} - initialValues={{ - suggestion: '' - }}//默认值 - > - <Row> - <Col span={24}> - <FormItem - label={<div style={{ display: 'flex' }}><div>添加配合部门</div><div style={{ color: '#86909C' }}>(可多选)</div></div>} - field='' + <Modal + visible={visible} + onCancel={handleOnCancel} + title='联合处置申请' + centered + footer={null} + unmountOnExit={true} + maskClosable={false} + autoFocus={false} + focusLock={false} + > + <Form + ref={formRef} + layout='vertical' + requiredSymbol={false} + scrollToFirstError={true} + initialValues={{ + applyContent: '在事项办理过程中:\n因[......业务]涉及白云区新市街司法所\n因[......业务]涉及白云区新市街劳监大队\n特申请将上述部门列为配合部门,请审批' + }}//默认值 + > + <Row> + <Col span={24}> + <FormItem + label={<div style={{ display: 'flex' }}><div>添加配合部门</div><div style={{ color: '#86909C' }}>(可多选)</div></div>} + field='unit' + > + <Select + mode='multiple' + placeholder='请选择配合部门' + allowClear + onFocus={(e) => { + e.stopPropagation() + setIsModalVisible(true) + }} + options={selectOptions} + onChange={handleSync} > - <Select - mode='multiple' - placeholder='请选择督办部门' - style={{}} - allowClear - > - {options.map((option) => ( - <Option key={option.value} value={option.value} onChange={(v) => console.log(v, 'vvvvvv')}> - {option.label} - </Option> - ))} - </Select> - </FormItem> - </Col> - <Col span={24}> - <FormItem - field='suggestion' - label={(<div style={{ display: 'flex' }}>添加理由<div className="must">必填</div></div>)} - > - <Input.TextArea - rows={5} - wrapperStyle={{ width: '700px' }} - value='在事项办理过程中:因[......业务]涉及白云区新市街司法所因[......业务]涉及白云区新市街劳监大队特申请将上述部门列为配合部门,请审批' - /> - </FormItem> - </Col> - <Col span={24}> - <FormItem - label={ - <div> - 附件材料 - <Tooltip onClick={() => setFileVisible(true)}> - <img src={question1} alt="" style={{ width: '13px', height: '13px', margin: '-3px 4px 0px 4px' }} /> - </Tooltip> - </div> - } - field='caseDes' - rules={[{ message: '请填写事项概况', required: true }]} - > - <ArcoUpload - params={{ - action: `${appUrl.fileUrl}/${appUrl.sys}/api/web/fileInfo/upload?mainId='24083010062110001'&&ownerId=${id}&ownerType=22_00018-508`, - }} - field='file1' - // handleChangeFile={handleChangeFile} - label='' - // editData={props.editData} - handleDelFile={handleDelFile} - /> - </FormItem> - </Col> - <Button type='primary' style={{ marginTop: '-16px' }} onClick={() => handleSupervising()}>提交申请</Button> - </Row> - </Form> - </Modal> - </> + </Select> + </FormItem> + </Col> + <Col span={24}> + <FormItem + field='applyContent' + label={(<div style={{ display: 'flex' }}>添加理由<div className="must">必填</div></div>)} + rules={[{ required: true, message: '请输入添加理由' }]} + > + <Input.TextArea + rows={5} + /> + </FormItem> + </Col> + <Col span={24}> + <ArcoUpload + params={{ + action: `${appUrl.fileUrl}/${appUrl.sys}/api/web/fileInfo/upload?mainId=${caseId}&&ownerId=${id}&ownerType=22_00018-508`, + }} + field='file' + label={ + <div> + 附件材料 + <Tooltip> + <img src={question1} alt="" style={{ width: '13px', height: '13px', margin: '-3px 4px 0px 4px' }} /> + </Tooltip> + </div> + } + handleDelFile={handleDelFile} + /> + </Col> + <div className='dialogFooter'> + <Button type='primary' style={{ marginTop: '-16px' }} onClick={handleSupervising}>提交申请</Button> + </div> + </Row> + </Form> + <SelectObjModal + visible={isModalVisible} + checkKeys={wantUser} + onOk={(value) => { + console.log(value); + setWantUser(value.items) + setSelectOptions(value.items.map(item => ({ + label: item.name, + value: item.value + }))) + formRef.current.setFieldValue('unit', value.items.map(item => item.value)) + }} + onClose={() => setIsModalVisible(false)} + type='dept' + isCheckbox={true} + /> + </Modal> ) } -- Gitblit v1.8.0