workflowhelper.java
来自「公司自己开发的工作流引擎」· Java 代码 · 共 392 行 · 第 1/2 页
JAVA
392 行
package cn.com.iaspec.workflow.helper;
import java.sql.*;
import java.util.*;
import org.apache.log4j.*;
import cn.com.iaspec.workflow.engine.*;
import cn.com.iaspec.workflow.engine.ejb.*;
import cn.com.iaspec.workflow.exception.*;
import cn.com.iaspec.workflow.manage.ejb.*;
import cn.com.iaspec.workflow.organize.dao.*;
import cn.com.iaspec.workflow.organize.ejb.*;
import cn.com.iaspec.workflow.privilege.ejb.*;
import cn.com.iaspec.workflow.vo.db.*;
import cn.com.iaspec.workflow.vo.workflow.*;
import cn.com.iaspec.workflow.extbusiness.task.ejb.TaskEJB;
import cn.com.iaspec.workflow.extbusiness.pagemanage.vo.PageInfo;
/**
*
* <p>Title:工作流助手类 </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2005</p>
* <p>Company: IASPEC Technologies</p>
* @author xiesonglin
* @version 1.0
*/
public class WorkflowHelper {
private static Logger logger = Logger.getLogger(CaseWorkflowHelper.class);
public WorkflowHelper() {
}
/**
* 登录验证
* @param userId String 用户id
* @param password String 密码
* @return UserInfo 用户信息对象
*/
public UserInfo login(String loginName, String password) throws
Exception {//IncorrectLoginIdException, IncorrectPasswordException,
long startTime = System.currentTimeMillis();
WorkflowEJBHandle handle = new WorkflowEJBHandle();
try{
PrivilegeEJB ejb = handle.getPrivileEJB();
UserInfo result = ejb.login(loginName, password);
System.out.println("Execution login time: " +
(System.currentTimeMillis() - startTime) +
" ms.");
logger.info("Execution login time: " +
(System.currentTimeMillis() - startTime) +
" ms.");
return result;
}
catch(Exception e)
{
throw new Exception(e.getMessage());
}
}
/**
* 查询组织信息
* @param org LaOrganization
* @throws SQLException
* @return List
*/
public List queryOrgnization(WfOrganization org) throws SQLException {
long startTime = System.currentTimeMillis();
WfOrganizationDAO dao = new WfOrganizationDAO();
List result = dao.query(org);
logger.info("Execution queryOrgnization time: " +
(System.currentTimeMillis() -
startTime) + " ms.");
return result;
}
/**
* 取得工作项的相关变量信息
* @param workItemId int
* @param userInfo UserInfo
* @return WMTAttribute[]
*/
public ActivityVariable[] getWorkItemAllVariableValue(long workItemId,
UserInfo userInfo) throws Exception {
long startTime = System.currentTimeMillis();
WorkflowEJBHandle handle = new WorkflowEJBHandle();
EngineEJB ejb = handle.getEngineEJB();
ActivityVariable[] result = ejb.getWorkItemAllVariableValue(workItemId,
userInfo);
logger.info("Execution getWorkItemAllVariableValue time: " +
(System.currentTimeMillis() - startTime) + " ms.");
return result;
}
/**
* 返回活动节点的对象NextActivityInfod对象(根据userinfo和工作项的ID:workItemID查询)
* @param userinfo UserInfo
* @param workItemID long
* @return NextActivityInfo
*/
public NextActivityInfo getNextActivityInfo(UserInfo userInfo,
long workItemId) throws
Exception {
long startTime = System.currentTimeMillis();
WorkflowEJBHandle handle = new WorkflowEJBHandle();
EngineEJB ejb = handle.getEngineEJB();
NextActivityInfo result = ejb.getNextActivityInfo(userInfo, workItemId);
logger.info("Execution getNextActivityInfo time: " +
(System.currentTimeMillis() - startTime) + " ms.");
return result;
}
public ProcessDefine startPorcessDefine(UserInfo userInfo,
long processDefineId,
String procInstName, String desc) throws
CreateInstanceException, Exception {
long startTime = System.currentTimeMillis();
WorkflowEJBHandle handle = new WorkflowEJBHandle();
EngineEJB ejb = handle.getEngineEJB();
ProcessDefine result = ejb.startPorcessDefine(userInfo, processDefineId,
procInstName, desc);
logger.info("Execution startPorcessDefine time: " +
(System.currentTimeMillis() -
startTime) + " ms.");
return result;
}
/**
* 检出的工作项
* @param userInfo UserInfo
* @param workItemId long
* @throws Exception
*/
public void checkOutWorkItem(UserInfo userInfo, long workItemId) throws
Exception {
long startTime = System.currentTimeMillis();
WorkflowEJBHandle handle = new WorkflowEJBHandle();
EngineEJB ejb = handle.getEngineEJB();
ejb.checkOutWorkItem(userInfo, workItemId);
logger.info("Execution checkOutWorkItem time: " +
(System.currentTimeMillis() -
startTime) + " ms.");
}
/**
* 取得组织树信息
* @param userinfo UserInfo 当前用户
* @param orgRels String 部门所属关系
* @param actorSelModes String 用户选择类型
* @param caseAreaId String 所属行政区
* @param activityId String 活动定义id
* @return ArrayList 由TreeExample组成的list;
*/
public ArrayList getOrgCollectionData(UserInfo userInfo, String orgRels,
String actorSelModes,
String caseAreaId, String activityId) throws
Exception {
long startTime = System.currentTimeMillis();
WorkflowEJBHandle handle = new WorkflowEJBHandle();
OrganizationInfoEJB ejb = handle.getOrganizationInfoEJB();
ArrayList result = ejb.getOrgCollectionData(userInfo, orgRels,
actorSelModes,
caseAreaId, activityId);
logger.info("Execution getOrgCollectionData time: " +
(System.currentTimeMillis() - startTime) + " ms.");
return result;
}
/**
* 取得待办任务个数
* @param proInstanceID long
* @return Task
* @throws GetTaskBaseInfoException
*/
public long getTaskListCount(UserInfo userInfo) throws Exception {
long startTime = System.currentTimeMillis();
WorkflowEJBHandle handle = new WorkflowEJBHandle();
EngineEJB ejb = handle.getEngineEJB();
long result = ejb.getTaskListCount(userInfo);
logger.info("Execution getTaskListCount time: " +
(System.currentTimeMillis() -
startTime) + " ms.");
return result;
}
/**
* 取得用户有权限办理的一级菜单信息
* @param userId String 用户id
* @return List
*/
public List getUserFirstFuncInfo(String userId) throws Exception {
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?