import React, { useEffect, useMemo } from 'react'; import { Form } from '@ant-design/compatible'; import '@ant-design/compatible/assets/index.css'; import { Modal, Input } from 'antd'; // 审批意见 function AuditModal(props) { const { flow, version, flowDetail, visible, onClose, onOk, form, sheetRef, loading } = props; const handleOk = () => { form.validateFields((err, fieldsValue) => { if (err) return; onOk({ ...fieldsValue, // 3 通过审批 2 拒绝审批 audit_status: visible == 1 ? 3 : 2, }); }); }; const content = useMemo(() => { let content = ''; if (visible == 1) { let isSingle = false; let serviceNode; const flowNode = flow.currentNode; const getLastTemplateNodeId = data => { let result; const getFun = item => { if (item.flow_path?.length > 0) { getFun(item.flow_path[0]); } else { result = item.template_node_id; } }; if (!data) return version.template_node_id; getFun(data[0]); return result; }; let lastTemplateNodeId = version.template_node_id; if (version.flow_path) { //如果多节点审批 获取当前是否审批流程的最后一个审批节点 let flowPathList = JSON.parse(version.flow_path); lastTemplateNodeId = getLastTemplateNodeId(flowPathList); } // 判断是否为最后一个审批节点 if ( lastTemplateNodeId == version.template_node_id && flow.current == flow.list.FlowNodes.length - 1 ) { serviceNode = flowDetail.nodes.find?.(item => item.Id == version.next_template_node_id); if (!serviceNode.muti_version) { //audit_status=4 表示为清单推进后留存的副本.不计入多清单计算 isSingle = versionList.find( item => item.audit_status != 4 && item.template_node_id == serviceNode.Id ); } } if (isSingle) { return `节点【${serviceNode.label}】只能拥有一个清单,是否覆盖?`; } } return ''; }, [visible]); useEffect(() => { if (visible) { try { const comment = sheetRef.current.getComment(); console.log(comment); let str = ''; comment.forEach(item => { let col = String.fromCharCode(item.c + 65); str += `单元格${col}${item.r}:${item.value}\n`; }); form.setFieldsValue({ audit_comment: str }); } catch (error) {} } }, [visible]); return (

{content}

{form.getFieldDecorator('audit_comment')()}
); } export default Form.create()(AuditModal);