| | |
| | | |
| | | |
| | | const choosePrincipal = async (id) => { |
| | | console.log(id, 'choosePrincipalId') |
| | | const res = await choosePrincipalApi(caseId, id) |
| | | if (res.type) { |
| | | let data = res.data |
| | | console.log(data, 'choosePrincipalchoosePrincipal') |
| | | getFeedbackInfo() |
| | | } |
| | | |
| | | } |
| | | |
| | | const getByIdRole = async () => { |
| | | const res = await getByIdRoleApi(caseId) |
| | | setPersonData(res.data) |
| | | |
| | | const res = await getByIdRoleApi(feedbackInfoData?.handleUserId) |
| | | if (res.type) { |
| | | setPersonView(!personView) |
| | | setPersonData(res.data) |
| | | } |
| | | } |
| | | |
| | | |
| | |
| | | |
| | | //新增、编辑办理理由 |
| | | const saveFeedback = async (submitData) => { |
| | | console.log(submitData, 'submitData1111') |
| | | if (submitData.id) { |
| | | //编辑 |
| | | const res = await updateFeedbackApi({ |
| | |
| | | |
| | | const getFeedbackInfo = async () => { |
| | | const res = await getFeedbackInfoApi(caseId) |
| | | setFeedbackInfoData(res.data) |
| | | console.log(res.data, 'res.data') |
| | | if (res.type) { |
| | | setFeedbackInfoData(() => res.data) |
| | | // getByIdRole(); |
| | | } |
| | | } |
| | | |
| | | //获取办理记录接口 |
| | |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | const handleSubmit = async () => { |
| | | if (formRef.current) { |
| | | formRef.current.validate(undefined, (errors, values) => { |
| | | if (!errors) { |
| | | const params = formRef.current.getFields() |
| | | |
| | | } |
| | | }); |
| | | } |
| | | } |
| | | |
| | | |
| | | //添加办理记录 |
| | | const addMark = () => { |
| | | setFormView(!formView); |
| | |
| | | |
| | | //保存信息 |
| | | const handleFinish = () => { |
| | | let submitData = formRef.current.getFields() |
| | | saveFeedback(submitData) |
| | | setFormView(!formView); |
| | | if (formRef.current) { |
| | | formRef.current.validate(undefined, (errors, values) => { |
| | | if (!errors) { |
| | | let submitData = formRef.current.getFields() |
| | | saveFeedback(submitData) |
| | | setFormView(!formView); |
| | | } |
| | | }); |
| | | } |
| | | } |
| | | |
| | | //点击编辑办理事由 |
| | |
| | | } |
| | | |
| | | const handlePersonView = () => { |
| | | setPersonView(!personView) |
| | | getByIdRole(); |
| | | |
| | | } |
| | | |
| | |
| | | listFeedback(caseId); |
| | | getData(caseId) |
| | | getFeedbackInfo(); |
| | | getByIdRole(); |
| | | }, []) |
| | | |
| | | // useEffect(() => { |
| | |
| | | |
| | | return ( |
| | | <> |
| | | <div className='container'> |
| | | <div className='container' style={{ height: 'calc(-307px + 100vh)' }}> |
| | | <div className='container-top'> |
| | | <Col span={24}> |
| | | <Space size='small'> |
| | |
| | | <Col span={8} style={{ display: 'flex' }}> |
| | | <div><div className="title-text">经办人:</div></div> |
| | | <div style={{ display: 'flex' }}> |
| | | <div>{feedbackInfoData?.handleUserName}</div> |
| | | <img onClick={() => handlePersonView()} src={register} alt='' style={{ width: '14px', height: '14px', marginLeft: '8px', marginTop: '4px' }} /> |
| | | { |
| | | feedbackInfoData?.handleUserName ? |
| | | <> |
| | | <div>{feedbackInfoData?.handleUserName}</div> |
| | | <img onClick={() => handlePersonView()} src={register} alt='' style={{ width: '14px', height: '14px', marginLeft: '8px', marginTop: '4px' }} /> |
| | | </> : |
| | | <Button onClick={() => { setIsModalVisible(true); }} style={{ color: '#1A6FB8', marginTop: '-2px' }} type='outline'>选择</Button> |
| | | } |
| | | </div> |
| | | </Col> |
| | | <Col span={8} style={{ display: 'flex' }}> |
| | |
| | | </Col> |
| | | <Col span={8} style={{ display: 'flex' }}> |
| | | <div><div className="title-text">受理时间:</div></div> |
| | | <div>{feedbackInfoData?.acceptTime}</div> |
| | | <div>{$$.minuteFormat(feedbackInfoData?.acceptTime)}</div> |
| | | </Col> |
| | | </Row> |
| | | |
| | |
| | | |
| | | <div className='container-bottom'> |
| | | <div className='container-bottom-left'> |
| | | <Col span={24} style={{ marginBottom: '8px' }}> |
| | | <Col span={24} style={{}}> |
| | | <Space size='small'> |
| | | <div className='MediationInfo-subTitle' style={{ marginTop: '-9px' }}></div><h5>办理反馈</h5> |
| | | </Space> |
| | |
| | | requiredSymbol={false} |
| | | scrollToFirstError={true} |
| | | > |
| | | <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 })} /> |
| | | : |
| | | caseId && managerName ? |
| | | <WantUserTag name={managerName} onClose={() => setWantUser({ wantUserId: null, wantUserName: null })} /> |
| | | : |
| | | <Button onClick={() => setIsModalVisible(true)} style={{ color: '#1A6FB8', border: '1px solid #1A6FB8' }} type='outline'>选择</Button> |
| | | } |
| | | </FormItem> |
| | | </Col> |
| | | <Col span={24}> |
| | | <div style={{ color: 'rgb(134, 144, 156)' }}>办理记录</div> |
| | | <HandleRecord isReview={false} handleEdit={handleEdit} data={list} /> |
| | | {/* {formView && */} |
| | | <div className='Form' style={{ display: formView ? '' : 'none' }}> |
| | |
| | | </div> |
| | | } |
| | | field='handleContent' |
| | | rules={[{ message: '请填写事项概况', required: true }]} |
| | | rules={[{ message: '请填写办理意见', required: true }]} |
| | | > |
| | | <Input.TextArea |
| | | maxLength={200} |
| | | showWordLimit |
| | | rows={5} |
| | | placeholder='请完整描述事项概况,应具备5要素:发生时间+发生地点+人物情况+事项起因+事项经过' |
| | | placeholder='办理意见应该填写完整,办理意见应具备5要素:调解时间+调解参与部门/人+调解地点+调解过程+调解结果' |
| | | wrapperStyle={{ width: '100%' }} |
| | | /> |
| | | </FormItem> |
| | | |
| | | </Col> |
| | | <Col span={24}> |
| | | <FormItem |
| | |
| | | 办理附件 |
| | | </div> |
| | | } |
| | | field='caseDes' |
| | | rules={[{ message: '请填写事项概况', required: true }]} |
| | | field='file' |
| | | > |
| | | <ArcoUpload |
| | | params={{ |
| | | action: `${appUrl.fileUrl}/${appUrl.sys}/api/web/fileInfo/upload?mainId=${caseId}&ownerId=${caseId}&ownerType=${'22_00018-501'}`, |
| | | action: `${appUrl.fileUrl}/${appUrl.sys}/api/web/fileInfo/upload?mainId=${caseId}&ownerId=${id}&ownerType=${'22_00018-501'}`, |
| | | }} |
| | | field='file1' |
| | | // handleChangeFile={handleChangeFile} |
| | |
| | | {/* } */} |
| | | </Col> |
| | | </Form> |
| | | <Space style={{ marginTop: '38px', bottom: '4px' }}> |
| | | <Button type="primary" style={{ backgroundColor: '#1A6FB8' }} onClick={() => addMark()}>添加办理记录</Button> |
| | | <Button type='outline' style={{ color: '#1A6FB8', border: '1px solid #1A6FB8' }} onClick={() => uniteHandle()}>联合处置申请</Button> |
| | | <Button type='outline' style={{ color: '#1A6FB8', border: '1px solid #1A6FB8' }} onClick={() => handleCaseResultApply()} >结案申请</Button> |
| | | <Button type='outline' style={{ color: '#EF6C24', border: '1px solid #EF6C24' }} onClick={() => Supervising()}>督办</Button> |
| | | <Button type='secondary' onClick={() => navigate(-1)}>返回上级页面</Button> |
| | | </Space> |
| | | {!formView && |
| | | <div className="dataSync-excel"> |
| | | <Space size="middle" style={{ margin: '4px 14px' }}> |
| | | <Button type="primary" style={{ backgroundColor: '#1A6FB8' }} onClick={() => addMark()}>添加办理记录</Button> |
| | | <Button type='outline' style={{ color: '#1A6FB8', border: '1px solid #1A6FB8' }} onClick={() => uniteHandle()}>联合处置申请</Button> |
| | | <Button type='outline' style={{ color: '#1A6FB8', border: '1px solid #1A6FB8' }} onClick={() => handleCaseResultApply()} >结案申请</Button> |
| | | <Button type='outline' style={{ color: '#EF6C24', border: '1px solid #EF6C24' }} onClick={() => Supervising()}>督办</Button> |
| | | <Button type='secondary' onClick={() => navigate(-1)}>返回上级页面</Button> |
| | | </Space> |
| | | </div> |
| | | |
| | | } |
| | | </div> |
| | | <div className='container-bottom-right'> |
| | | <Tabs defaultActiveTab='1' className='tabs-container' > |
| | | <TabPane |
| | | key='1' |
| | | title={ |
| | | <span style={{ fontSize: '15px' }}> |
| | | <span style={{ fontSize: '15px', paddingTop: '-16px' }}> |
| | | 流转进度 |
| | | </span> |
| | | } |
| | | > |
| | | <Typography.Paragraph> |
| | | <div className='progress'> |
| | | <div className='progress' style={{ paddingBottom: '16px' }}> |
| | | <ProgressStep progressData={progressData} hasTab={true} /> |
| | | </div> |
| | | |
| | |
| | | visible={isModalVisible} |
| | | checkKeys={wantUser.wantUserId ? [{ label: wantUser.wantUserName, value: wantUser.wantUserId }] : undefined} |
| | | onOk={(value) => { |
| | | console.log(value, 'value') |
| | | console.log(value.key, value, 'value.key', 'value') |
| | | setIsModalVisible(false); |
| | | setWantUser({ wantUserId: value.keys[0], wantUserName: value.items[0].name }); |
| | | handleCheckedKeys(value.keys?.[0]) |
| | | handleCheckedKeys(value.keys?.[0]); |
| | | |
| | | }} |
| | | onClose={() => setIsModalVisible(false)} |
| | | type='person' |
| | |
| | | </tr> |
| | | <tr> |
| | | <th bgcolor="#F7F8FA" className="table-title">所属部门</th> |
| | | <td>{personData?.deptName}</td> |
| | | <td>{personData?.unitName}</td> |
| | | <th bgcolor="#F7F8FA" className="table-title">职务</th> |
| | | <td>{personData?.userRoles}</td> |
| | | </tr> |
| | |
| | | allowClear |
| | | > |
| | | {options.map((option) => ( |
| | | <Option key={option.value} value={option.value} onChange={(v) => console.log(v, 'vvvvvv')}> |
| | | <Option key={option.value} value={option.value}> |
| | | {option.label} |
| | | </Option> |
| | | ))} |