From b59f4448c4c2477af474e4cca5eb9ff9b5e9e6ed Mon Sep 17 00:00:00 2001 From: yujh_java Date: Mon, 7 Jul 2025 09:51:10 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=8F=90=E7=A4=BA=E8=AF=8D?= =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../repository/web/CoeProcessLevelWeb.java | 31 +++++++++++-------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/com.actionsoft.apps.coe.pal/src/com/actionsoft/apps/coe/pal/pal/repository/web/CoeProcessLevelWeb.java b/com.actionsoft.apps.coe.pal/src/com/actionsoft/apps/coe/pal/pal/repository/web/CoeProcessLevelWeb.java index 5d1076c2..40d07d12 100755 --- a/com.actionsoft.apps.coe.pal/src/com/actionsoft/apps/coe/pal/pal/repository/web/CoeProcessLevelWeb.java +++ b/com.actionsoft.apps.coe.pal/src/com/actionsoft/apps/coe/pal/pal/repository/web/CoeProcessLevelWeb.java @@ -11730,19 +11730,10 @@ public class CoeProcessLevelWeb extends ActionWeb { PALRepositoryCache.getAllChildrenModelsByPid(model.getWsId(), model.getId(), childList, ids); removeList.addAll(childList); for (PALRepositoryModel removeModel : removeList) { - //普通用户不允许删除已发布的文件 - if (removeModel.isPublish() && !"admin".equals(_uc.getUID())) { - return ResponseObject.newErrResponse("已发布文件["+ removeModel.getName() + VersionUtil.getVersionStrV(removeModel.getVersion()) + "]不允许删除,请联系系统管理员!").toString(); - } - //增加删除逻辑限制 0611 by yujh - //普通用户不允许删除已发停用的文件 - if (removeModel.isStop() && !"admin".equals(_uc.getUID())) { - return ResponseObject.newErrResponse("已停用文件["+ removeModel.getName() + VersionUtil.getVersionStrV(removeModel.getVersion()) + "]不允许删除,请联系系统管理员!").toString(); - } - - //普通用户不允许删除审批中的文件 - if (removeModel.isApproval() && !"admin".equals(_uc.getUID())) { - return ResponseObject.newErrResponse("审批中文件["+ removeModel.getName() + VersionUtil.getVersionStrV(removeModel.getVersion()) + "]不允许删除,请联系系统管理员!").toString(); + //校验禁止删除逻辑 + String errorResponse = checkRemovalPermission(removeModel, _uc); + if (errorResponse != null) { + return errorResponse; } } @@ -13241,6 +13232,18 @@ public class CoeProcessLevelWeb extends ActionWeb { return ro.toString(); } + // 提取重复的错误判断逻辑到一个方法中 + private String checkRemovalPermission(PALRepositoryModel model, UserContext _uc) { + if ("admin".equals(_uc.getUID())) { + return null; + } + //非设计状态(即草稿)不允许删除 + if (model.isPublish() || model.isStop() || model.isApproval()) { + return ResponseObject.newErrResponse("文件[" + model.getName() + VersionUtil.getVersionStrV(model.getVersion()) + "]非草稿状态不允许删除,请联系系统管理员!").toString(); + } + return null; + } + class ComparatorMap implements Comparator { @Override @@ -13252,4 +13255,6 @@ public class CoeProcessLevelWeb extends ActionWeb { } + + }