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 <> {params.record.Nav_ApproveUser?.NAME} } 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: {text}, // 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 <> // // // } // // 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) // } // } // }) // }, }