mh_jy_safe_web/src/files/edit/HM104.js
2025-08-25 10:08:30 +08:00

221 lines
8.1 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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)
// }
// }
// })
// },
}