94 lines
3.2 KiB
JavaScript
94 lines
3.2 KiB
JavaScript
|
|
import React from 'react'
|
|||
|
|
import { connect } from 'dva'
|
|||
|
|
import { Button, Row, Col, Form, Input, Select, Upload, Icon, Modal, Spin, message } from 'antd';
|
|||
|
|
import config from "../../../config.js"
|
|||
|
|
import storage from '../../../utils/storage'
|
|||
|
|
import Edit from '../../Edit/Edit.js'
|
|||
|
|
import EditComponent from '../../../baseComponents/EditComponent/index.js'
|
|||
|
|
class FoPreOperSch extends EditComponent {
|
|||
|
|
//保存前处理事件
|
|||
|
|
onBeforeSaveHandleRecord(params) {
|
|||
|
|
let files = []
|
|||
|
|
super.onBeforeSaveHandleRecord(params);
|
|||
|
|
const { editCode, record, srcRecord } = params ? params : {};
|
|||
|
|
if (this.state.updateLoadFileList) {
|
|||
|
|
this.state.updateLoadFileList.forEach(t => {
|
|||
|
|
if (t.response) {
|
|||
|
|
|
|||
|
|
//附件信息赋值给数据库对象,多个附件需要遍历附件信息
|
|||
|
|
files.push({
|
|||
|
|
IMG_FILE_ID: t.response.Data.imgFileID, //附件表文件名称
|
|||
|
|
ORG_ID: record.ORG_ID,
|
|||
|
|
PRE_OPER_SCH_ID: record.ID, //附件表关联的主表ID
|
|||
|
|
})
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
record.Nav_PreOperSchFile = files
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
//加载前处理事件(加载附件显示,通过数组遍历,只需修改导航属性Nav_PreOperSchFile)
|
|||
|
|
onBeforeEdit(params) {
|
|||
|
|
super.onBeforeEdit(params);
|
|||
|
|
const { isNew, isCopy, copySrcData } = params ? params : {};
|
|||
|
|
const updateLoadFileList = [];
|
|||
|
|
if (this.state.data && this.state.data.Nav_PreOperSchFile) {
|
|||
|
|
this.state.data.Nav_PreOperSchFile.forEach(t => {
|
|||
|
|
updateLoadFileList.push({
|
|||
|
|
uid: t.ID,
|
|||
|
|
name: t.name ? t.name : (t.Nav_ImgFile ? t.Nav_ImgFile.FILE_NAME : '未知文件'),
|
|||
|
|
status: t.status ? t.status : 'done',
|
|||
|
|
response: { Data: { imgFileID: t.IMG_FILE_ID }, file: t },
|
|||
|
|
url: t.Nav_ImgFile ? (config.picServerHost + t.Nav_ImgFile.FILE_PATH) : '',
|
|||
|
|
});
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
this.setState({
|
|||
|
|
updateLoadFileList,
|
|||
|
|
})
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//render加载上结组件(可支持新增上传)
|
|||
|
|
onRenderHeadControl(params) {
|
|||
|
|
const { colConfig, record } = params;
|
|||
|
|
const Tenant = storage('lacal').getItem('Tenant').val
|
|||
|
|
if (colConfig.field === 'updateFile') {
|
|||
|
|
const that = this;
|
|||
|
|
const uploadSopProps = {
|
|||
|
|
name: 'file',
|
|||
|
|
action: config.serviceHost('api/PF/File/UploadFile'),
|
|||
|
|
data: { OrgId: this.props.login.OrgId },
|
|||
|
|
fileList: this.state.updateLoadFileList,
|
|||
|
|
headers: {
|
|||
|
|
Tenant: Tenant,
|
|||
|
|
},
|
|||
|
|
onChange(info) {
|
|||
|
|
that.setState({
|
|||
|
|
updateLoadFileList: info.fileList,
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
if (info.file.status !== 'uploading') {
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
if (info.file.status === 'done') {
|
|||
|
|
message.success(`${info.file.name} file uploaded successfully`);
|
|||
|
|
} else if (info.file.status === 'error') {
|
|||
|
|
message.error(`${info.file.name} file upload failed.`);
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
};
|
|||
|
|
return <>
|
|||
|
|
<Upload {...uploadSopProps}>
|
|||
|
|
<Button>
|
|||
|
|
<Icon type="upload" /> 上传附件
|
|||
|
|
</Button>
|
|||
|
|
</Upload>
|
|||
|
|
</>
|
|||
|
|
}
|
|||
|
|
return super.onRenderHeadControl(params);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
export default connect(({ login, loading, EMemOrder, custom, app }) => ({ login, loading, EMemOrder, custom, app }))(Form.create()(FoPreOperSch))
|