yangys
2025-08-23 88f640713525e88dac333ea3bf7e23e22891ab0f
解决偏离单再次回传验证问题
已修改2个文件
15 ■■■■ 文件已修改
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/entity/NcNode.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/DNCSendBackService.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/entity/NcNode.java
@@ -225,4 +225,12 @@
    public void unlock() {
        this.isLocked = UNLOCK;
    }
    /**
     * 是否已锁定
     * @return 是否
     */
    public boolean hasLocked() {
        return this.isLocked != null && this.isLocked == LOCKED;
    }
}
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/DNCSendBackService.java
@@ -248,7 +248,6 @@
                PackageAndProcessEdition pkgAndEdition = parseProgramPackageFromFolderName(folderName);
                String programPackageName = pkgAndEdition.getProgramPackageName();
                //111
                Optional<NcNode> optPackageNode = allAcceptPackages.stream().filter(node -> StringUtils.equals(node.getName(),programPackageName)).findFirst();
@@ -261,8 +260,12 @@
                    throw new ServiceException(programPackageName + "已经固化,请勿重复入库。");
                }
                //偏离程序判断是否重复回传
                if(packageNode.isDeviationProgram() && packageNode.hasLocked()) {
                    throw new ServiceException(programPackageName + "已锁定的程序不可以再次回传。");
                }
                //检查是否在审批过程中
                //根据节点信息查询流程
                boolean active = flowCommonService.isProcessInstanceActive(packageNode.getProcessInstanceId());
                if(active){
                    throw new ServiceException(programPackageName+"正在审批中,请勿等待审批完成。");