| | |
| | | import java.util.Arrays; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.Optional; |
| | | |
| | | /** |
| | | * 普通派工完成数据处理器,功能:插入审批表数据,DispatchFinishListener调用 |
| | |
| | | //试切的 |
| | | pkgNode.setIsCured(1); |
| | | pkgNode.setIsLocked(NcNode.UNLOCK); |
| | | |
| | | Optional<NcNode> optOldCuredPackageNode = nodeService.lambdaQuery().eq(NcNode::getName,pkgNode.getName()) |
| | | .eq(NcNode::getProcessNo,pkgNode.getProcessNo()) |
| | | .eq(NcNode::getProcessEdition,pkgNode.getProcessEdition()) |
| | | .eq(NcNode::getIsLastEdition,1).eq(NcNode::getIsCured,1).oneOpt(); |
| | | //设置过期日期 |
| | | pkgNode.upgradeVersionNumber(); |
| | | if(optOldCuredPackageNode.isEmpty()){ |
| | | //之前 没有已固化的程序包名,则直接更新版本号,如果有,那就使用node现在的版本号,因为不可用转为试切,审批完成已经升级version |
| | | pkgNode.upgradeVersionNumber(); |
| | | } |
| | | pkgNode.setExpireDate(calculateExpireDate()); |
| | | nodeService.updateById(pkgNode); |
| | | |
| | |
| | | hisPackageNode.setParentIds(machineNode.getParentIds());//程序包与机床节点同级 |
| | | |
| | | //处理程序包下层的程序节点111 |
| | | List<NcNode> programNodes = nodeService.lambdaQuery().eq(NcNode::getParentId,hisPackageNode.getId()).list(); |
| | | List<NcNode> oriProgramNodes = nodeService.lambdaQuery().eq(NcNode::getParentId,hisPackageNode.getId()).list(); |
| | | FlowProgramFile pfile; |
| | | for(NcNode programNode : programNodes){ |
| | | programNode.setParentIds(hisPackageNode.getParentIds()+","+hisPackageNode.getId()); |
| | | programNode.setIsLastEdition(0); |
| | | for(NcNode oldProgramNode : oriProgramNodes){ |
| | | oldProgramNode.setParentIds(hisPackageNode.getParentIds()+","+hisPackageNode.getId()); |
| | | oldProgramNode.setIsLastEdition(0); |
| | | |
| | | pfile = flowProgramFileService.getById(programNode.getFlowProgramFileId()); |
| | | if(programNode.getParentId().equals(pkgNode.getId()) && !pfile.isProgram()){ |
| | | pfile = flowProgramFileService.getById(oldProgramNode.getFlowProgramFileId()); |
| | | if(oldProgramNode.getParentId().equals(pkgNode.getId()) && !pfile.isProgram()){ |
| | | //当前固化程序包名下的“其他文件”非程序文件。不设置为老版本,直接挪到固化树下,两个网络之间只交换程序文件,其他文件只能保留 |
| | | programNode.setIsLastEdition(1); |
| | | oldProgramNode.setIsLastEdition(1); |
| | | } |
| | | |
| | | } |
| | | nodeService.updateBatchById(programNodes); |
| | | nodeService.updateBatchById(oriProgramNodes); |
| | | } |
| | | nodeService.updateBatchById(historyProgramPackageNodes); |
| | | |
| | |
| | | List<FlowProgramFile> files = flowProgramFileService.lambdaQuery().eq(FlowProgramFile::getProcessInstanceId,pkgNode.getProcessInstanceId()).list(); |
| | | for(FlowProgramFile flowProgramFile : files){ |
| | | NcNode newProgNode = new NcNode(); |
| | | |
| | | BeanUtils.copyProperties(pkgNode,newProgNode); |
| | | EntityUtil.clearBaseProperties(newProgNode); |
| | | |
| | | newProgNode.setName(flowProgramFile.getName()); |
| | | newProgNode.setNodeType(NcNode.TYPE_PROGRAM_FILE); |
| | | newProgNode.setParentId(pkgNode.getId()); |
| | |
| | | //修改文件内容更新注释,并更新文件数据的地址 |
| | | ///替换注释后总是不行啊 |
| | | setGhAnnotation(flowProgramFile,machine.getMachineGroupCode(),annoDicts); |
| | | |
| | | //flowProgramFileService.updateById(flowProgramFile); |
| | | } |
| | | } |
| | | |