workflowruler.java
来自「一个用java编写的功能强大的OA系统」· Java 代码 · 共 126 行
JAVA
126 行
package com.redmoon.oa.flow;import javax.servlet.http.HttpServletRequest;import cn.js.fan.web.SkinUtil;import com.redmoon.oa.pvg.Privilege;public class WorkflowRuler { String errMsg = ""; public WorkflowRuler() { } public boolean canMonitor(HttpServletRequest request, WorkflowDb wfd) { Privilege pvg = new Privilege(); String curUserName = pvg.getUser(request); if (curUserName.equals(wfd.getUserName())) return true; if (wfd.isMonitor(curUserName)) return true; return false; } public boolean canUserDeleteAction(HttpServletRequest request, WorkflowActionDb wa) { String flag = wa.getFlag(); int len = flag.length(); if (len >= 2) { if (flag.substring(1, 2).equals("0")) { return false; } } return true; } public boolean canUserOpenActionPropertyDialog(HttpServletRequest request, WorkflowActionDb wa) { String flag = wa.getFlag(); int len = flag.length(); if (len>=1) { if (flag.substring(0, 1).equals("0")) { return false; } } return true; } public boolean canUserStartFlow(HttpServletRequest request, WorkflowDb wfd) { if (wfd.getStatus()==wfd.STATUS_DISCARDED) return false; Privilege pvg = new Privilege(); String userName = pvg.getUser(request); boolean re = isUserFlowStarter(userName, wfd); if (!re) { errMsg = userName + "不是流程的发起者!"; return false; } if (wfd.isStarted()) { errMsg = "流程已开始!"; return false; } return true; } public boolean isUserFlowStarter(String userName, WorkflowDb wd) { if (wd.getUserName().equals(userName)) return true; else return false; } public boolean canUserModifyFlow(HttpServletRequest request, WorkflowDb wfd) { if (wfd.getStatus()==wfd.STATUS_DISCARDED) return false; Privilege pvg = new Privilege(); String userName = pvg.getUser(request); if (canMonitor(request, wfd)) return true; errMsg = userName + SkinUtil.LoadString(request, "pvg_invalid"); return false; } public boolean canUserHurry(HttpServletRequest request, WorkflowDb wfd) { if (wfd.getStatus()==wfd.STATUS_DISCARDED) return false; Privilege pvg = new Privilege(); String userName = pvg.getUser(request); if (!isUserFlowStarter(userName, wfd)) { errMsg = userName + "不是流程的发起者!"; return false; } if (wfd.isStarted()) { if (canMonitor(request, wfd)) return true; errMsg = userName + SkinUtil.LoadString(request, "pvg_invalid"); } return false; } public boolean canUserDelFlow(HttpServletRequest request, WorkflowDb wfd) { Privilege pvg = new Privilege(); String userName = pvg.getUser(request); if (canMonitor(request, wfd)) return true; errMsg = userName + "不是流程的发起者!"; return false; } public String getErrMsg() { return errMsg; }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?