tsg-web/src/views/sz/szzf/ajdj/editTabs.js

138 lines
4.8 KiB
JavaScript

import React, { useEffect, useState } from 'react';
import { message, Tabs } from 'antd';
import BascForm from '../form/index'
import { basicData, clqkData, xzfy } from './config'
import Bajz from './bajz'
import Lsyx from './lsyx'
import { httpget, httppost } from '../../../../utils/request';
import apiurl from '../../../../service/apiurl';
import dayjs from 'dayjs'
const items = [
{
key: '1',
label: '基本情况',
},
{
key: '2',
label: '处理情况',
},
{
key: '3',
label: '行政复议、行政应诉情况',
},
{
key: '4',
label: '办案宗卷',
},
{
key: '5',
label: '历史影像及图片',
},
];
const Page = ({ mode, onCrudSuccess,record,submit }) => {
const [formData,setFormData] =useState({})
const [clqkDataConfig,setConfig] =useState([])
// debugger;
const [key, setKeys] = useState('1')
const onChange = async(key) => {
console.log(key);
setKeys(key)
if(key == 2){
const res = await httpget(apiurl.szzf.clyj.tree)
const arr = clqkData.map(item=>{
if(item.key == 'treatmentBasis'){
item.treeData = res.data
}
return item
})
setConfig(arr)
}
};
const getFormInfo = (e) => {
if(!e){
submit()
return;
}
let params = {
...formData,
...e,
caseDate: dayjs(e.caseDate).format("YYYY-MM-DD HH:mm:ss"),
illegalDate: e.illegalDate ? dayjs(e.v).format("YYYY-MM-DD HH:mm:ss") : e.illegalDate,
}
if (mode == 'save') {
addBasic(params)
} else if (mode == 'edit') {
editBasic(params)
}
}
const addBasic = (params) => {
httppost(apiurl.szzf.ajdj.add, params).then(res => {
if (res.code == 200) {
message.success('新增成功')
submit()
} else {
message.error(res.description)
}
})
}
const editBasic = (params) => {
httppost(apiurl.szzf.ajdj.edit, params).then(res => {
if (res.code == 200) {
message.success('编辑成功')
submit()
} else {
message.error(res.description)
}
})
}
useEffect(()=>{
if(mode == 'edit' || mode =='view'){
httpget(apiurl.szzf.ajdj.detail + record.id).then(async res=>{
let obj = {
createName: localStorage.getItem('userName'),
createTime: dayjs().format('YYYY-MM-DD HH:mm:ss'),
createBy:localStorage.getItem('userId')
}
if(res.data?.caseDate){
obj.caseDate=dayjs(res.data.caseDate)
}
if(res.data?.illegalDate){
obj.illegalDate=dayjs(res.data.illegalDate)
}
// if(res.data.IllegalDate){
// obj.IllegalDate = dayjs(res.data.IllegalDate)
// }
setFormData({...res.data,...obj})
})
}else if(mode == 'save'){
let obj = {
createName: localStorage.getItem('userName'),
createTime: dayjs().format('YYYY-MM-DD HH:mm:ss'),
createBy:localStorage.getItem('userId'),
}
setFormData({...obj})
}
},[])
return (
<>
<Tabs defaultActiveKey="1" items={items} onChange={onChange} />
<>
{key == 1 && <BascForm formJson={basicData} formJsonData={formData} fileKey='files1'type={mode} getFormInfo={getFormInfo} uploadUrl={apiurl.szzf.ajdj.upload} downloadUrl={apiurl.szzf.ajdj.download}></BascForm>}
{key == 2 && <BascForm formJson={clqkDataConfig} fileKey='files2' formJsonData={formData} type={mode} getFormInfo={getFormInfo} uploadUrl={apiurl.szzf.ajdj.upload} downloadUrl={apiurl.szzf.ajdj.download}></BascForm>}
{key == 3 && <BascForm formJson={xzfy} formJsonData={formData} type={mode} getFormInfo={getFormInfo} uploadUrl={apiurl.szzf.ajdj.upload} downloadUrl={apiurl.szzf.ajdj.download}></BascForm>}
{key == 4 && <Bajz formJson={xzfy} formJsonData={formData} type={mode} getFormInfo={getFormInfo} uploadUrl={apiurl.szzf.ajdj.upload} downloadUrl={apiurl.szzf.ajdj.download}></Bajz>}
{key == 5 && <Lsyx formJson={xzfy} formJsonData={formData} type={mode} getFormInfo={getFormInfo} uploadUrl={apiurl.szzf.ajdj.upload} downloadUrl={apiurl.szzf.ajdj.download}></Lsyx>}
</>
</>
)
}
export default Page