import React, { useMemo } from 'react'; AuditServe; import AuditServe, { IDTYPE, TYPE } from './mapServe'; import { connect } from 'umi'; export { AuditServe }; const CustomRect = (props: any) => { const { size = { width: 130, height: 50 }, data, depUserTree, roleList, userList, } = props; const { width, height } = size; const { label, stroke, fill, fontFill, fontSize, type = 2, initiator, audits, } = data; const contentText = useMemo(() => { let text = '请选择审批人'; switch (type) { case TYPE.AUDIT: text = '请选择审批人'; break; case TYPE.INITIATOR: text = '所有人'; break; case TYPE.COPYMAN: text = '请选择抄送人'; break; } const getName: any = (id: any, data: any) => { let name = ''; for (let i = 0; i < data.length; i++) { let item = data[i]; if (item.id == id) { return item.title; } else if (item.children?.length > 0) { let title: any = getName(id, item.children); if (title) return title; } } return name; }; if (type != TYPE.AUDIT) { if (initiator?.length > 0) { const list = initiator .map((item: any) => { return getName(item.origin, depUserTree); }) .filter((item: any) => item); return list.join(','); } else { return text; } } else { if (audits?.length > 0) { switch (audits[0].type) { case IDTYPE.ROLE: return roleList.find((item: any) => item.ID == audits[0].value) ?.Name; case IDTYPE.USER: return userList.find((item: any) => item.ID == audits[0].value) ?.CName; case IDTYPE.LEADER: return '部门主管'; } } else { return text; } } }, [initiator, type, audits, depUserTree, roleList]); // const type: TYPE = 0; const titleDom = () => { let color = COLOR.AUDIT; let text = label == '动作节点' ? TITLETEXT.AUDIT : label; switch (type) { case TYPE.AUDIT: color = COLOR.AUDIT; text = TITLETEXT.AUDIT; break; case TYPE.INITIATOR: color = COLOR.INITIATOR; text = TITLETEXT.INITIATOR; break; case TYPE.COPYMAN: color = COLOR.COPYMAN; text = TITLETEXT.COPYMAN; break; } return (