From 8eb7929cdb4a8462372268f92761c23c024ef9c9 Mon Sep 17 00:00:00 2001 From: yujh Date: Thu, 13 Jun 2024 15:35:32 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=96=87=E6=A1=A3=E6=9D=83?= =?UTF-8?q?=E9=99=90=E7=94=B3=E8=AF=B7=E7=9B=B8=E5=85=B3=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../coe/pal/publisher/FilePermController.java | 28 ++++++++++++++++ .../pal/publisher/client/web/FilePermWeb.java | 32 +++++++++++++++++++ .../publisher/constant/FilePermConstant.java | 10 ++++++ 3 files changed, 70 insertions(+) create mode 100644 com.actionsoft.apps.coe.pal.publisher/src/com/actionsoft/apps/coe/pal/publisher/FilePermController.java create mode 100644 com.actionsoft.apps.coe.pal.publisher/src/com/actionsoft/apps/coe/pal/publisher/client/web/FilePermWeb.java create mode 100644 com.actionsoft.apps.coe.pal.publisher/src/com/actionsoft/apps/coe/pal/publisher/constant/FilePermConstant.java diff --git a/com.actionsoft.apps.coe.pal.publisher/src/com/actionsoft/apps/coe/pal/publisher/FilePermController.java b/com.actionsoft.apps.coe.pal.publisher/src/com/actionsoft/apps/coe/pal/publisher/FilePermController.java new file mode 100644 index 00000000..7cac190a --- /dev/null +++ b/com.actionsoft.apps.coe.pal.publisher/src/com/actionsoft/apps/coe/pal/publisher/FilePermController.java @@ -0,0 +1,28 @@ +package com.actionsoft.apps.coe.pal.publisher; + +import com.actionsoft.apps.coe.pal.publisher.client.web.FilePermWeb; +import com.actionsoft.apps.coe.pal.publisher.client.web.ProcessPublishWeb; +import com.actionsoft.bpms.server.UserContext; +import com.actionsoft.bpms.server.bind.annotation.Controller; +import com.actionsoft.bpms.server.bind.annotation.Mapping; + +/** + * 文件权限申请controller + */ +@Controller +public class FilePermController { + + /** + * 文件权限申请 + * @param me + * @param teamId + * @param wsid + * @return + */ + @Mapping("com.actionsoft.apps.coe.pal.publisher.filePermissionApplication") + public String filePermissionApplication(UserContext me,String palVersionId) { + FilePermWeb web =new FilePermWeb(me); + return web.filePermissionApplication(palVersionId); + } + +} diff --git a/com.actionsoft.apps.coe.pal.publisher/src/com/actionsoft/apps/coe/pal/publisher/client/web/FilePermWeb.java b/com.actionsoft.apps.coe.pal.publisher/src/com/actionsoft/apps/coe/pal/publisher/client/web/FilePermWeb.java new file mode 100644 index 00000000..72a88ed6 --- /dev/null +++ b/com.actionsoft.apps.coe.pal.publisher/src/com/actionsoft/apps/coe/pal/publisher/client/web/FilePermWeb.java @@ -0,0 +1,32 @@ +package com.actionsoft.apps.coe.pal.publisher.client.web; + +import com.actionsoft.apps.coe.pal.publisher.constant.FilePermConstant; +import com.actionsoft.bpms.bo.engine.BO; +import com.actionsoft.bpms.bpmn.engine.model.run.delegate.ProcessInstance; +import com.actionsoft.bpms.bpmn.engine.model.run.delegate.TaskInstance; +import com.actionsoft.bpms.commons.mvc.view.ActionWeb; +import com.actionsoft.bpms.server.UserContext; +import com.actionsoft.sdk.local.SDK; +import com.actionsoft.sdk.local.api.ProcessExecuteQuery; + +public class FilePermWeb extends ActionWeb { + public FilePermWeb(){ + } + public FilePermWeb(UserContext me){ + super(me); + } + public String filePermissionApplication(String palVersionId) { + String uid = super.getContext().getUID(); + //发起流程 + ProcessInstance processInstance = SDK.getProcessAPI().createProcessInstance(FilePermConstant.FILE_PERM_PROCESSDEFID,uid, null); + //创建一条BO记录 + BO bo =new BO(); + bo.set("APPLYTYPE","单一权限申请"); + bo.set("APPLYFILES",palVersionId); + SDK.getBOAPI().create(FilePermConstant.BO_ACT_FILE_PERM,bo,processInstance.getId(),uid); + ProcessExecuteQuery start = SDK.getProcessAPI().start(processInstance); + TaskInstance taskInstance = start.fetchActiveTasks().get(0); + return SDK.getFormAPI().getFormPage(super.getContext(),processInstance,taskInstance,taskInstance.getState(),1,"",bo.getId()); + } + +} diff --git a/com.actionsoft.apps.coe.pal.publisher/src/com/actionsoft/apps/coe/pal/publisher/constant/FilePermConstant.java b/com.actionsoft.apps.coe.pal.publisher/src/com/actionsoft/apps/coe/pal/publisher/constant/FilePermConstant.java new file mode 100644 index 00000000..4b150da1 --- /dev/null +++ b/com.actionsoft.apps.coe.pal.publisher/src/com/actionsoft/apps/coe/pal/publisher/constant/FilePermConstant.java @@ -0,0 +1,10 @@ +package com.actionsoft.apps.coe.pal.publisher.constant; + +public interface FilePermConstant { + + public static final String FILE_PERM_PROCESSDEFID = "obj_b1cb5def1a7540f79aed460fd47c8d23";//文档权限申请流程定义ID + + public static final String BO_ACT_FILE_PERM = "BO_ACT_FILE_PERM";//文件阅览权限申请 + public static final String BO_ACT_PUBLISH_PERM_SCOPE = "BO_ACT_PUBLISH_PERM_SCOPE";//文件阅览权限台账表 + +}