From b19c397d6f9af0e33df450dd6b3719fb27ecbfab Mon Sep 17 00:00:00 2001 From: anhc <3442943606@qq.com> Date: Mon, 11 Jul 2022 13:52:00 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B0=8F=E7=BB=84=E6=9D=83=E9=99=90=E8=B0=83?= =?UTF-8?q?=E6=95=B4=EF=BC=8C=E6=89=B9=E9=87=8F=E5=88=A0=E9=99=A4=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E5=8A=A0=E5=85=A5=E5=B0=8F=E7=BB=84=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E6=9D=83=E9=99=90=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pal/repository/web/CoeProcessLevelWeb.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) 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 84a6e237..6454a0a2 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 @@ -9504,9 +9504,21 @@ public String deleteReply(String replyid, String messageid) { public String removePalRepositoryLevel(String wsId, String teamId, String repositoryIds) { ResponseObject ro = ResponseObject.newOkResponse(); JSONArray repositoryIdArr = JSONArray.parseArray(repositoryIds); + boolean isOlderVersion = SDK.getAppAPI().getPropertyBooleanValue("com.actionsoft.apps.coe.pal", "IsOlderVersion", true); + int failed = 0; for (int i = 0; i < repositoryIdArr.size(); i++) { String repositoryId = repositoryIdArr.getString(i); PALRepositoryModel model = PALRepositoryCache.getCache().get(repositoryId); + //新版小组的权限校验 + if (!isOlderVersion){ + ResponseObject res = ResponseObject.newOkResponse(); + CoeCooperationAPIManager.getInstance().queryCooperationFileActionPerm(teamId, _uc.getUID(),model.getVersionId(),res); + Map data = (Map) res.getData(); + if (!data.get("havingRemovePerm")){ + failed ++; + continue; + } + } String result = removeTreeNode(repositoryId, wsId); JSONObject moveRo = JSONObject.parseObject(result); if (!"ok".equals(moveRo.getString("result"))) { @@ -9514,6 +9526,9 @@ public String deleteReply(String replyid, String messageid) { return ResponseObject.newErrResponse(moveRo.getString("msg")).toString(); } } + if (!isOlderVersion && failed >= repositoryIdArr.size()){ + return ResponseObject.newErrResponse("删除文件失败,无操作权限").toString(); + } // 操作行为日志记录 if (SDK.getAppAPI().getPropertyBooleanValue(CoEConstant.APP_ID, "IS_RECORD_OP_LOG", false)) { CoEOpLogAPI.auditOkOp(_uc, CoEOpLogConst.MODULE_CATEGORY_REPOSITORY, CoEOpLogConst.OP_DELETE, CoEOpLogConst.INFO_REPOSITORY_DELETE);