表单与用户界面

状态值比对

满足其中1个条件即通过

return "返回修改".equals("#form.app_bug.status?java#")
    || "返回确认".equals("#form.app_bug.status?java#")
    || "#form.app_bug.status?java#".startsWith("#form.");

都不满足则通过

boolean condition="返回修改".equals("#form.app_bug.status?java#")
    || "返回确认".equals("#form.app_bug.status?java#")
    || "#form.app_bug.status?java#".startsWith("#form.");
return !condition

直接基于(保存用户名的)Hash变量判断

不包含Joget管理员

import org.joget.apps.form.model.FormRow;
import org.joget.apps.form.model.FormRowSet;
import org.joget.apps.form.service.FormUtil;
import org.joget.workflow.util.WorkflowUtil;

        //获取HashVariable
        String hashVariable = "#form.app_project.permissionTableEdit[{requestParam.key}]#";

        //获取当前用户
        String currentUser = "#currentUser.username#";

       if(!currentUser.equals("") && (hashVariable.equals(currentUser ) || hashVariable.contains(currentUser))){
            return true;
        }else{return false;}


包含Joget管理员

import org.joget.apps.form.model.FormRow;
import org.joget.apps.form.model.FormRowSet;
import org.joget.apps.form.service.FormUtil;
import org.joget.workflow.model.service.WorkflowUserManager;
import org.joget.workflow.util.WorkflowUtil;
		

//是管理员返回true
        boolean isAdmin = WorkflowUtil.isCurrentUserInRole(WorkflowUserManager.ROLE_ADMIN);
        if(isAdmin){
            return true;
        }
        
        //获取HashVariable
        String hashVariable = "#form.app_setup.permissionNewProject[setup]#";
        //获取当前用户
        String currentUser = "#currentUser.username#";
        if(!currentUser.equals("") && (hashVariable.equals(currentUser ) || hashVariable.contains(currentUser))){
            return true;
        }
        
        return false;


基于Hash变量判断与当前用户权限

流程白名单

参见 Beanshell配置流程执行者

  • No labels