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 + -
显示快捷键?