mh_jy_safe_web/src/files/edit/HM104.js

221 lines
8.1 KiB
JavaScript
Raw Normal View History

2025-08-25 10:08:30 +08:00
import { message } from "antd/lib/index";
import { getPropertyData, extendInclude, extendRule, getDataFieldValue, setDataFieldValue, initFilter, guid } from "../../utils/common";
import moment from 'moment';
import { Button, Row, Col, Form, Input, Select, Upload, Icon, Modal, Spin,Table } from 'antd';
/**
* @return {string}
*/
// 编辑
export default {
onBeforeSaveHandleRecord(params) {
params.record.TaskID = params.data.TaskID //TaskID传递消息表ID
params.record.PUBLISH = params.customParams;
// params.record.FORM_CODE = params.data.reloadKey.substring(0,params.data.reloadKey.indexOf("_"));
},
onBeforeEdit(params) {
const { isNew, dispatch, login, setFieldValueByBatch, setFieldEditable, setFieldVisible,stateData } = params ? params : {};
if (isNew) {
let json = initFilter(login.OrgId);
dispatch({
type: 'FMProcess/getFullGet',
payload: json,
onComplete: (ret) => {
if (ret) {
let temps = [];
let detail = ret.Nav_Details.map((item, i) => {
item['ROW_NO'] = i + 1;
return item;
});
temps.push({ field: 'DEPARTMENT_ID', value: ret.DEPARTMENT_ID })
temps.push({ field: 'COMPLETE_DATE', value: moment(new Date()).format('YYYY-MM-DD HH:mm:ss') })
temps.push({ field: 'Nav_Details', value: detail })
setFieldValueByBatch(temps);
}
}
});
setFieldVisible("CONTEXT", false);
}
else
{
if(stateData.IS_PUBLISH === 9)
{
setFieldVisible("CONTEXT", true);
}
else
{setFieldVisible("CONTEXT", false);}
}
},
onAfterAddSubRow(params) {
const { record, srcRecord, editCode, setFieldEditable, saveRowRecord } = params ? params : {};
let isUpdate = record.IS_ALLOW_UPDATE;
//setFieldEditable("Nav_ApproveUser.NAME", isUpdate);
},
handleRenderRowControl(params) {
if (params.colConfig.field === 'Nav_ApproveUser.NAME' && !params.record.IS_ALLOW_UPDATE) {
return <>
<a>{params.record.Nav_ApproveUser?.NAME}</a>
</>
} else {
return ""
}
},
onSubChange: ({ row, getFieldValue, setFieldValueByBatch, pageCode, record, setDataState, colInfo, dispatch, stateData, saveRowRecord }) => {
if (colInfo.FIELD_NAME === "Nav_OperationStep.NAME" ) {
if (record.OPERATION_STEP_ID !== null && record.OPERATION_STEP_ID !== undefined) {
let json = initFilter(stateData.ORG_ID, record.OPERATION_STEP_ID);
dispatch({
type: 'app/getDataByPost',
url: 'HM/HMJobtaskIdentify/GetRiskPost',
payload: json,
onlyData: false,
onComplete: (ret) => {
if (ret && ret.IsSuccessful) {
// if(ret.Data.Nav_DetailRisk)
// {
// let detailRisks = [];
// ret.Data.Nav_DetailRisk.forEach(item => {
// let objDetailRisk = {
// JOBTASK_IDENTIFY_DETAIL_ID: record.ID,
// ID: guid(),
// EVALUATE_RISK_ID: item.EVALUATE_RISK_ID,
// Nav_EvaluateRisk: item.Nav_EvaluateRisk,
// ORG_ID: record.ORG_ID,
// }
// detailRisks.push(objDetailRisk);
// })
// record["Nav_DetailRisk"] = detailRisks;
// }
stateData.CYCLE_TYPE=ret.Data.CYCLE_TYPE;
if(ret.Data.Nav_DetailPost)
{
let detailPosts = [];
ret.Data.Nav_DetailPost.forEach(item => {
let objDetailPost = {
JOBTASK_IDENTIFY_DETAIL_ID: record.ID,
ID: guid(),
POST_ID: item.POST_ID,
Nav_Post: item.Nav_Post,
ORG_ID: record.ORG_ID,
}
detailPosts.push(objDetailPost);
})
record["Nav_DetailPost"] = detailPosts;
}
saveRowRecord(record)
}
}
});
}
}
},
// handleRenderHeadControl(params) {
// if (params.colConfig.field === 'Nav_Details') {
// const data = params.record.Nav_Details;
// // 合并单元格这里我抽出了一个函数调用的时候只需要将dataIndex作为参数传入即可
// const mergeCells2 =(text, data, key, index) =>{
// // 上一行该列数据是否一样
// if (index !== 0 && text === data[index - 1][key]) {
// return 0
// }
// let rowSpan = 1
// // 判断下一行是否相等
// for (let i = index + 1; i < data.length; i++) {
// if (text !== data[i][key]) {
// break
// }
// rowSpan++
// }
// return rowSpan
// }
// const columns = [
// // { title: '序号', dataIndex: 'ROW_NO',
// // render: (value, row, index) => {debugger
// // if(!value)
// // {
// // value= index + 1;
// // }
// // }
// // },
// { title: '任务名称', dataIndex: 'OperationStepName' , width: 200,align:"left",
// render: (text, record, index) => {
// const obj = {
// children: <span>{text}</span>,
// props: {}
// };
// //过滤获取到相同的数据
// let arr = data.filter((res) => {
// return res.OperationStepName == record.OperationStepName;
// });
// if (index == 0 || data[index - 1].OperationStepName != record.OperationStepName) {
// obj.props.rowSpan = arr.length;
// } else {
// obj.props.rowSpan = 0;
// }
// return obj;
// // const obj = {
// // children: text !== null ? text : '',
// // attrs: {}
// // }
// // obj.attrs.rowSpan = mergeCells(record.ID, data, 'OperationStepName')
// // return obj
// }
// },
// { title: '岗位', dataIndex: 'DetailPost' , width: 200,align:"left"},
// { title: '涉及风险', dataIndex: 'Nav_EvaluateRisk.NAME' , width: 200,align:"center"}
// ];
// const paginationConfig = {
// pageSizeOptions: ['5', '10', '20', '50', '100'],
// // current: this.state.loadParamJson.PageIndex,
// pageSize: 10,
// total: params.record.Nav_Details?.length,
// showSizeChanger: true,
// size: 'small',
// // position:'both',
// showTotal: () => `共 ${params.record.Nav_Details?.length} 条`
// };
// return <>
// <Table size='small' columns={columns} dataSource={data} pagination={false} scroll={{ y: 300 }} />
// </>
// }
// // else {
// // return ""
// // }
// }
// onChange: ({ value,colInfo, getFieldValue, setFieldValueByBatch, dispatch,setFieldEditable,setFieldVisible }) => {
// if (!(colInfo.FIELD_NAME == 'approve'))
// return;
// let id = getFieldValue('ApproveId')
// let json = initFilter(null,id);
// dispatch({
// type: 'app/getDataByPost',
// url: 'PF/PFApproveTemp/GetDetail',
// payload: json,
// onlyData: false,
// onComplete: (re) => {
// if (re && re.IsSuccessful && re.Data) {
// let temps = [];
// let detail=re.Data.Nav_ApproveDetails.map((item,i)=>{
// item['ROW_NO'] = i+1;
// let isUpdate = item.IS_ALLOW_UPDATE;
// //if(isUpdate === false)
// //{
// setFieldEditable(item['Nav_ApproveUser.NAME'], false)
// //}
// return item;
// });
// temps.push({ field: 'Nav_ApproveDetails', value: detail })
// setFieldValueByBatch(temps);
// setFieldEditable('Nav_ApproveDetails', false)
// //updateSubTableData(params.pageCode,detail,true)
// }
// }
// })
// },
}