| | |
| | | * @param progProperties 流程属性 |
| | | */ |
| | | void createProgramNodes(FlowProgramProperties progProperties){ |
| | | //FlowProgramProperties progProperties = flowCommonService.getProgramProperties(processInstanceId); |
| | | if(!FlowContants.Y.equals(progProperties.getHasCuredProgram())) { |
| | | //试切或者偏离 |
| | | ncNodeAutoCreateService.createNodeTreeWithProgram(progProperties); |
| | | }else{ |
| | | //有固化 |
| | | //TODO 还要区分是否可用判定是否可用。可用界 |
| | | if(!FlowContants.Y.equals(progProperties.getCureProgramUseable())) { |
| | | if(FlowContants.N.equals(progProperties.getCureProgramUseable())) { |
| | | //固化程序不可用,需要重新建立程序包名和文件节点;可用情况在流程审批中已经升级过节点了 |
| | | NcNode curedProgramPackage = ncNodeService.getById(Func.toLong(progProperties.getCuredNodeId())); |
| | | |
| | |
| | | List<FlowProgramFile> newFlowFileList = flowProgramFileService.listByProcessInstanceId(progProperties.getProcessInstanceId()); |
| | | for (FlowProgramFile newFlowFile : newFlowFileList) { |
| | | NcNode newProgramNode = new NcNode(); |
| | | BeanUtils.copyProperties(curedProgramPackage, newProgramNode); |
| | | EntityUtil.clearBaseProperties(newProgramNode); |
| | | |
| | | newProgramNode.setName(newFlowFile.getName()); |
| | | newProgramNode.setNodeType(NcNode.TYPE_PROGRAM_FILE); |
| | | newProgramNode.setParentId(newCuredNode.getParentId()); |
| | | newProgramNode.setParentId(newCuredNode.getId()); |
| | | newProgramNode.setIsLastEdition(1); |
| | | newProgramNode.setIsLocked(0); |
| | | newProgramNode.setParentIds(newCuredNode.getParentIds() + "," + newCuredNode.getId()); |
| | | |
| | | newProgramNode.setFlowProgramFileId(newFlowFile.getId()); |
| | | ncNodeService.save(newProgramNode); |
| | | } |
| | | |