diff --git a/src/main/java/neatlogic/framework/process/notify/constvalue/ProcessTaskNotifyTriggerType.java b/src/main/java/neatlogic/framework/process/notify/constvalue/ProcessTaskNotifyTriggerType.java index e81876d5e7e17e7df74f77572176042dbe1e87fc..3fbcba628ffd8376150aa65cc2e6d0f552fb6710 100644 --- a/src/main/java/neatlogic/framework/process/notify/constvalue/ProcessTaskNotifyTriggerType.java +++ b/src/main/java/neatlogic/framework/process/notify/constvalue/ProcessTaskNotifyTriggerType.java @@ -1,29 +1,60 @@ package neatlogic.framework.process.notify.constvalue; import neatlogic.framework.notify.core.INotifyTriggerType; -import neatlogic.framework.util.I18n; +import neatlogic.framework.process.constvalue.ProcessTaskGroupSearch; +import neatlogic.framework.process.constvalue.ProcessUserType; +import neatlogic.framework.util.$; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; public enum ProcessTaskNotifyTriggerType implements INotifyTriggerType { - STARTPROCESS("startprocess", new I18n("上报"), new I18n("用户上报提交工单时触发通知")), - ABORTPROCESSTASK("abortprocesstask", new I18n("取消工单"), new I18n("取消工单")), - RECOVERPROCESSTASK("recoverprocesstask", new I18n("恢复工单"), new I18n("工单完成前,有权限用户恢复工单时触发通知")), - COMPLETEPROCESSTASK("completeprocesstask", new I18n("完成工单"), new I18n("工单流转至结束时触发通知")), - WAITINGSCOREPROCESSTASK("waitingscoreprocesstask", new I18n("待评分"), new I18n("工单完成后需要评分时触发通知")), - SCOREPROCESSTASK("scoreprocesstask", new I18n("评分"), new I18n("评分")), - REOPENPROCESSTASK("reopenprocesstask", new I18n("重新打开工单"), new I18n("工单完成后,用户评分前,有权限的用户重新打开工单并回退至某一步骤重新开始处理时触发通知")), - MARKREPEATPROCESSTASK("markrepeatprocesstask", new I18n("标记重复事件"), new I18n("标记重复事件")), - DELETEPROCESSTASK("deleteprocesstask", new I18n("删除工单"), new I18n("删除工单")), + STARTPROCESS("startprocess", "nfpnc.processtasknotifytriggertype.text.startprocess", "nfpnc.processtasknotifytriggertype.description.startprocess", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.MAJOR.getValue(), + ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.MINOR.getValue(), + ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.DEFAULT_WORKER.getValue())), + ABORTPROCESSTASK("abortprocesstask", "nfpnc.processtasknotifytriggertype.text.abortprocesstask", "nfpnc.processtasknotifytriggertype.text.abortprocesstask", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.MAJOR.getValue(), + ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.MINOR.getValue(), + ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.DEFAULT_WORKER.getValue())), + RECOVERPROCESSTASK("recoverprocesstask", "nfpnc.processtasknotifytriggertype.text.recoverprocesstask", "nfpnc.processtasknotifytriggertype.description.recoverprocesstask", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.DEFAULT_WORKER.getValue())), + COMPLETEPROCESSTASK("completeprocesstask", "nfpnc.processtasknotifytriggertype.text.completeprocesstask", "nfpnc.processtasknotifytriggertype.description.completeprocesstask", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.WORKER.getValue(), + ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.DEFAULT_WORKER.getValue())), + WAITINGSCOREPROCESSTASK("waitingscoreprocesstask", "nfpnc.processtasknotifytriggertype.text.waitingscoreprocesstask", "nfpnc.processtasknotifytriggertype.description.waitingscoreprocesstask", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.WORKER.getValue(), + ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.DEFAULT_WORKER.getValue())), + SCOREPROCESSTASK("scoreprocesstask", "nfpnc.processtasknotifytriggertype.text.scoreprocesstask", "nfpnc.processtasknotifytriggertype.text.scoreprocesstask", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.WORKER.getValue(), + ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.DEFAULT_WORKER.getValue())), + REOPENPROCESSTASK("reopenprocesstask", "nfpnc.processtasknotifytriggertype.text.reopenprocesstask", "nfpnc.processtasknotifytriggertype.description.reopenprocesstask", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.DEFAULT_WORKER.getValue())), + MARKREPEATPROCESSTASK("markrepeatprocesstask", "nfpnc.processtasknotifytriggertype.text.markrepeatprocesstask", "nfpnc.processtasknotifytriggertype.text.markrepeatprocesstask", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.DEFAULT_WORKER.getValue())), + DELETEPROCESSTASK("deleteprocesstask", "nfpnc.processtasknotifytriggertype.text.deleteprocesstask", "nfpnc.processtasknotifytriggertype.text.deleteprocesstask", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.DEFAULT_WORKER.getValue())), ; private String trigger; - private I18n text; - private I18n description; + private String text; + private String description; + private List excludeList; - ProcessTaskNotifyTriggerType(String _trigger, I18n _text, I18n _description) { + ProcessTaskNotifyTriggerType(String _trigger, String _text, String _description) { this.trigger = _trigger; this.text = _text; this.description = _description; + this.excludeList = new ArrayList<>(); + } + + ProcessTaskNotifyTriggerType(String _trigger, String _text, String _description, List _excludeList) { + this.trigger = _trigger; + this.text = _text; + this.description = _description; + this.excludeList = _excludeList; } @Override @@ -33,12 +64,12 @@ public enum ProcessTaskNotifyTriggerType implements INotifyTriggerType { @Override public String getText() { - return text.toString(); + return $.t(text); } @Override public String getDescription() { - return description.toString(); + return $.t(description); } public static String getText(String trigger) { @@ -49,4 +80,9 @@ public enum ProcessTaskNotifyTriggerType implements INotifyTriggerType { } return ""; } + + @Override + public List getExcludeList() { + return excludeList; + } } diff --git a/src/main/java/neatlogic/framework/process/notify/constvalue/ProcessTaskStepNotifyTriggerType.java b/src/main/java/neatlogic/framework/process/notify/constvalue/ProcessTaskStepNotifyTriggerType.java index 2c7382aa102fc1bb67e95ee0b0c45df245b1c600..52fbf2c9e851ea65559b5436350a2eb2914cf7dc 100755 --- a/src/main/java/neatlogic/framework/process/notify/constvalue/ProcessTaskStepNotifyTriggerType.java +++ b/src/main/java/neatlogic/framework/process/notify/constvalue/ProcessTaskStepNotifyTriggerType.java @@ -1,32 +1,63 @@ package neatlogic.framework.process.notify.constvalue; import neatlogic.framework.notify.core.INotifyTriggerType; -import neatlogic.framework.util.I18n; +import neatlogic.framework.process.constvalue.ProcessTaskGroupSearch; +import neatlogic.framework.process.constvalue.ProcessUserType; +import neatlogic.framework.util.$; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; public enum ProcessTaskStepNotifyTriggerType implements INotifyTriggerType { - ACTIVE("active", new I18n("步骤激活"), new I18n("流转到某个步骤,该步骤被自动激活时触发通知")), - ASSIGNEXCEPTION("assignexception", new I18n("分配异常"), new I18n("步骤激活时分配处理人,处理人不存在或规则无法匹配到有效处理人时触发通知")), - START("start", new I18n("步骤开始"), new I18n("步骤自动开始或者处理人手动开始处理时触发通知")), - TRANSFER("transfer", new I18n("步骤转交"), new I18n("有步骤转交权限的用户将当前步骤处理权限转交给其他用户时触发通知")), - SUCCEED("succeed", new I18n("步骤成功"), new I18n("步骤完成时触发通知")), - BACK("back", new I18n("步骤回退"), new I18n("工单完成前,由处理人手动回退工单至前面的某个步骤时触发通知")), - RETREAT("retreat", new I18n("步骤撤回"), new I18n("工单完成前,由上一步骤有权限的用户手动撤回工单时触发通知,重新处理上一步骤")), - PAUSE("pause", new I18n("步骤暂停"), new I18n("有权限的用户暂停当前步骤时触发通知")), - RECOVER("recover", new I18n("步骤恢复"), new I18n("有权限的用户恢复当前步骤时触发通知")), - FAILED("failed", new I18n("步骤失败"), new I18n("当前步骤出现分配异常、流转异常、系统异常导致步骤失败时触发通知")), - URGE("urge", new I18n("步骤催办"), new I18n("工单完成前,用户对工单进行催办时触发通知")), - COMMENT("comment", new I18n("步骤回复"),new I18n("用户对步骤进行回复时触发通知")), + ACTIVE("active", "nfpnc.processtaskstepnotifytriggertype.text.active", "nfpnc.processtaskstepnotifytriggertype.description.active", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.MAJOR.getValue(), + ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.MINOR.getValue())), + ASSIGNEXCEPTION("assignexception", "nfpnc.processtaskstepnotifytriggertype.text.assignexception", "nfpnc.processtaskstepnotifytriggertype.description.assignexception", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.MAJOR.getValue(), + ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.MINOR.getValue(), + ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.WORKER.getValue())), + START("start", "nfpnc.processtaskstepnotifytriggertype.text.start", "nfpnc.processtaskstepnotifytriggertype.description.start", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.MINOR.getValue(), + ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.WORKER.getValue())), + TRANSFER("transfer", "nfpnc.processtaskstepnotifytriggertype.text.transfer", "nfpnc.processtaskstepnotifytriggertype.description.transfer", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.MAJOR.getValue())), + SUCCEED("succeed", "nfpnc.processtaskstepnotifytriggertype.text.succeed", "nfpnc.processtaskstepnotifytriggertype.description.succeed", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.WORKER.getValue())), + BACK("back", "nfpnc.processtaskstepnotifytriggertype.text.back", "nfpnc.processtaskstepnotifytriggertype.description.back", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.WORKER.getValue())), + RETREAT("retreat", "nfpnc.processtaskstepnotifytriggertype.text.retreat", "nfpnc.processtaskstepnotifytriggertype.description.retreat", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.MAJOR.getValue())), + PAUSE("pause", "nfpnc.processtaskstepnotifytriggertype.text.pause", "nfpnc.processtaskstepnotifytriggertype.description.pause", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.WORKER.getValue())), + RECOVER("recover", "nfpnc.processtaskstepnotifytriggertype.text.recover", "nfpnc.processtaskstepnotifytriggertype.description.recover", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.WORKER.getValue())), + FAILED("failed", "nfpnc.processtaskstepnotifytriggertype.text.failed", "nfpnc.processtaskstepnotifytriggertype.description.failed", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.WORKER.getValue())), + URGE("urge", "nfpnc.processtaskstepnotifytriggertype.text.urge", "nfpnc.processtaskstepnotifytriggertype.description.urge", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.WORKER.getValue())), + COMMENT("comment", "nfpnc.processtaskstepnotifytriggertype.text.comment","nfpnc.processtaskstepnotifytriggertype.description.comment", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.WORKER.getValue())), ; private String trigger; - private I18n text; - private I18n description; + private String text; + private String description; + private List excludeList; - ProcessTaskStepNotifyTriggerType(String _trigger, I18n _text, I18n _description) { + ProcessTaskStepNotifyTriggerType(String _trigger, String _text, String _description) { this.trigger = _trigger; this.text = _text; this.description = _description; + this.excludeList = new ArrayList<>(); + } + + ProcessTaskStepNotifyTriggerType(String _trigger, String _text, String _description, List _excludeList) { + this.trigger = _trigger; + this.text = _text; + this.description = _description; + this.excludeList = _excludeList; } @Override @@ -36,12 +67,12 @@ public enum ProcessTaskStepNotifyTriggerType implements INotifyTriggerType { @Override public String getText() { - return text.toString(); + return $.t(text); } @Override public String getDescription() { - return description.toString(); + return $.t(description); } public static String getText(String trigger) { @@ -52,4 +83,9 @@ public enum ProcessTaskStepNotifyTriggerType implements INotifyTriggerType { } return ""; } + + @Override + public List getExcludeList() { + return excludeList; + } } diff --git a/src/main/java/neatlogic/framework/process/notify/constvalue/ProcessTaskStepTaskNotifyTriggerType.java b/src/main/java/neatlogic/framework/process/notify/constvalue/ProcessTaskStepTaskNotifyTriggerType.java index 1c016d86e5b3dc5597ee926e8927982fadeb76d7..d7d56b2f87c011ba1fdc3ed8cb5303bf632d6c45 100755 --- a/src/main/java/neatlogic/framework/process/notify/constvalue/ProcessTaskStepTaskNotifyTriggerType.java +++ b/src/main/java/neatlogic/framework/process/notify/constvalue/ProcessTaskStepTaskNotifyTriggerType.java @@ -1,23 +1,44 @@ package neatlogic.framework.process.notify.constvalue; import neatlogic.framework.notify.core.INotifyTriggerType; -import neatlogic.framework.util.I18n; +import neatlogic.framework.process.constvalue.ProcessTaskGroupSearch; +import neatlogic.framework.process.constvalue.ProcessUserType; +import neatlogic.framework.util.$; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; public enum ProcessTaskStepTaskNotifyTriggerType implements INotifyTriggerType { - CREATETASK("createtask", new I18n("子任务创建"), new I18n("步骤处理人为当前步骤创建子任务时触发通知")), - EDITTASK("edittask", new I18n("子任务编辑"), new I18n("步骤处理人编辑子任务内容时触发通知")), - DELETETASK("deletetask", new I18n("子任务删除"), new I18n("步骤处理人删除子任务时触发通知")), - COMPLETETASK("completetask", new I18n("子任务完成"), new I18n("任务处理人完成子任务时触发通知")), - COMPLETEALLTASK("completealltask", new I18n("子任务满足步骤流转"), new I18n("所有子任务满足流转条件时触发通知")); + CREATETASK("createtask", "nfpnc.processtasksteptasknotifytriggertype.text.createtask", "nfpnc.processtasksteptasknotifytriggertype.description.createtask", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.WORKER.getValue())), + EDITTASK("edittask", "nfpnc.processtasksteptasknotifytriggertype.text.edittask", "nfpnc.processtasksteptasknotifytriggertype.description.edittask", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.WORKER.getValue())), + DELETETASK("deletetask", "nfpnc.processtasksteptasknotifytriggertype.text.deletetask", "nfpnc.processtasksteptasknotifytriggertype.description.deletetask", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.MINOR.getValue(), + ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.WORKER.getValue())), + COMPLETETASK("completetask", "nfpnc.processtasksteptasknotifytriggertype.text.completetask", "nfpnc.processtasksteptasknotifytriggertype.description.completetask", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.WORKER.getValue())), + COMPLETEALLTASK("completealltask", "nfpnc.processtasksteptasknotifytriggertype.text.completealltask", "nfpnc.processtasksteptasknotifytriggertype.description.completealltask", + Arrays.asList(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.WORKER.getValue())); private String trigger; - private I18n text; - private I18n description; + private String text; + private String description; + private List excludeList; - ProcessTaskStepTaskNotifyTriggerType(String _trigger, I18n _text, I18n _description) { + ProcessTaskStepTaskNotifyTriggerType(String _trigger, String _text, String _description) { this.trigger = _trigger; this.text = _text; this.description = _description; + this.excludeList = new ArrayList<>(); + } + + ProcessTaskStepTaskNotifyTriggerType(String _trigger, String _text, String _description, List _excludeList) { + this.trigger = _trigger; + this.text = _text; + this.description = _description; + this.excludeList = _excludeList; } @Override @@ -27,12 +48,12 @@ public enum ProcessTaskStepTaskNotifyTriggerType implements INotifyTriggerType { @Override public String getText() { - return text.toString(); + return $.t(text); } @Override public String getDescription() { - return description.toString(); + return $.t(description); } public static String getText(String trigger) { @@ -43,4 +64,9 @@ public enum ProcessTaskStepTaskNotifyTriggerType implements INotifyTriggerType { } return ""; } + + @Override + public List getExcludeList() { + return excludeList; + } } diff --git a/src/main/java/neatlogic/framework/process/notify/core/ProcessTaskNotifyHandlerBase.java b/src/main/java/neatlogic/framework/process/notify/core/ProcessTaskNotifyHandlerBase.java index d0be391c669ae9e7c6369b5bdad011ab4eada504..c9d528ee74fe829ed3432223a1e4776be66738e8 100644 --- a/src/main/java/neatlogic/framework/process/notify/core/ProcessTaskNotifyHandlerBase.java +++ b/src/main/java/neatlogic/framework/process/notify/core/ProcessTaskNotifyHandlerBase.java @@ -113,5 +113,13 @@ public abstract class ProcessTaskNotifyHandlerBase extends NotifyPolicyHandlerBa includeList.add(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.DEFAULT_WORKER.getValue()); includeList.add(ProcessTaskGroupSearch.PROCESSUSERTYPE.getValue() + "#" + ProcessUserType.FOCUS_USER.getValue()); config.put("includeList", includeList); + myCustomAuthorityConfig(config); + } + + /** + * 自定义接收对象下拉框选项 + * @param config + */ + protected void myCustomAuthorityConfig(JSONObject config) { } }