权限申请功能代码优化

This commit is contained in:
yujh 2024-06-21 11:10:58 +08:00
parent ac8233ed6d
commit 1f91e64c79
4 changed files with 37 additions and 2 deletions

View File

@ -1,5 +1,7 @@
package com.actionsoft.apps.coe.pal.publisher.client.web;
import com.actionsoft.apps.coe.pal.pal.repository.cache.PALRepositoryCache;
import com.actionsoft.apps.coe.pal.pal.repository.model.PALRepositoryModel;
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;
@ -16,13 +18,15 @@ public class FilePermWeb extends ActionWeb {
super(me);
}
public String filePermissionApplication(String palVersionId) {
PALRepositoryModel model = PALRepositoryCache.getCache().get(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);
bo.set("APPLYFILEIDS",palVersionId);
bo.set("APPLYFILES",model.getName());
SDK.getBOAPI().create(FilePermConstant.BO_ACT_FILE_PERM,bo,processInstance.getId(),uid);
ProcessExecuteQuery start = SDK.getProcessAPI().start(processInstance);
TaskInstance taskInstance = start.fetchActiveTasks().get(0);

View File

@ -16,13 +16,17 @@ public interface PublisherConstant {
public static final String PROCESSGROUPID = "obj_893ec85d8219468bb6df6a19fab4f7c9"; //发布流程流程组Id
public static final String PROCESSID = "obj_fb1c7a54b98b412187388c8bab407362";
public static final String PROCESSID_HIS_DATA = "obj_538f9d1558bf40c7b827ff311db133cd";//历史数据查询视图
public static final String BOTABLENAME = "BO_ACT_COE_PUBLISH"; //发布流程BO表主表表名
public static final String BOSUBTABLE_N = "BO_ACT_COE_PUBLISH_N"; //发布流程BO子表-新增
public static final String BOSUBTABLE_C = "BO_ACT_COE_PUBLISH_C"; //发布流程BO子表-更新
public static final String BOSUBTABLE_S = "BO_ACT_COE_PUBLISH_S"; //发布流程BO子表-停止
public static final String BO_ACT_PUBLISH_HIS = "BO_ACT_PUBLISH_HIS";// 发布流程历史数据
public static final String ORG_RELATION_MANAGEMENT_STANDARD = "管理标准"; //管理标准
public static final String ORG_RELATION_TECHNICAL_STANDARD = "技术标准"; //技术标准
public static final String ORG_RELATION_WORK_STANDARD = "工作标准"; //工作标准
}

View File

@ -12,7 +12,6 @@ import com.actionsoft.bpms.util.UUIDGener;
import com.actionsoft.bpms.util.UtilString;
import com.actionsoft.sdk.local.SDK;
import com.alibaba.fastjson.JSONObject;
import java.util.List;

View File

@ -22,6 +22,7 @@ import com.actionsoft.bpms.bo.engine.BO;
import com.actionsoft.bpms.bpmn.engine.core.delegate.ProcessExecutionContext;
import com.actionsoft.bpms.bpmn.engine.listener.ExecuteListener;
import com.actionsoft.bpms.bpmn.engine.listener.ExecuteListenerInterface;
import com.actionsoft.bpms.bpmn.engine.model.run.delegate.ProcessInstance;
import com.actionsoft.bpms.commons.database.RowMap;
import com.actionsoft.bpms.util.DBSql;
import com.actionsoft.bpms.util.UUIDGener;
@ -56,6 +57,9 @@ public class ApplyTasAfterkComplete extends ExecuteListener implements ExecuteLi
Timestamp nowTime = new Timestamp(System.currentTimeMillis());
BO bo = SDK.getBOAPI().query(PublisherConstant.BOTABLENAME).detailByBindId(processInstId);
updateEffectiveDateProperty(processInstId, bo, bolistN, bolistC);
//增加提交后记录历史单据
addPublishHistory(ctx,bo);
}
private void updateEffectiveDateProperty(String processInstId, BO bo, List<BO> bolistN, List<BO> bolistC) {
// 对epc表单制度图进行生效日期更新和手册重新生成
@ -285,4 +289,28 @@ public class ApplyTasAfterkComplete extends ExecuteListener implements ExecuteLi
return taskId;
}
/**
* 增加历史记录到历史维护表中
* @param processInstId
* @param uuid
* @param type
*/
public void addPublishHistory(ProcessExecutionContext ctx,BO sourceBo) {
BO bo = new BO();
bo.set("SOURCEBINDID",ctx.getProcessInstance().getId());
bo.set("SUBMITUID",sourceBo.getString("APPLYUSERID"));
bo.set("SUBMITNAME",sourceBo.getString("APPLYUSERNAME"));
bo.set("SEND_SCOPE_ORG",sourceBo.getString("SEND_SCOPE_ORG"));
bo.set("SEND_SCOPE_ORG_NAME",sourceBo.getString("APPLYUSERNAME"));
bo.set("SEND_SCOPE_POST",sourceBo.getString("SEND_SCOPE_POST"));
bo.set("SEND_SCOPE_POST_NAME",sourceBo.getString("APPLYUSERNAME"));
bo.set("SEND_SCOPE_LEVEL",sourceBo.getString("SEND_SCOPE_LEVEL"));
bo.set("SEND_SCOPE_LEVEL_NAME",sourceBo.getString("APPLYUSERNAME"));
bo.set("MARKAR",sourceBo.getString("MARKAR"));
bo.set("PROCESS_TITLE",sourceBo.getString("PROCESS_TITLE"));
bo.set("PUBLICSTATUS",0);
ProcessInstance processInstance = SDK.getProcessAPI().createBOProcessInstance(PublisherConstant.PROCESSID_HIS_DATA, ctx.getUserContext().getUID(), "");
int i = SDK.getBOAPI().create(PublisherConstant.BO_ACT_PUBLISH_HIS, bo, processInstance, ctx.getUserContext());
}
}