applyworkitemcontrol.java
来自「公司自己开发的工作流引擎」· Java 代码 · 共 67 行
JAVA
67 行
package cn.com.iaspec.workflow.engine.business;
import cn.com.iaspec.workflow.engine.*;
import cn.com.iaspec.workflow.vo.workflow.*;
import com.sunyard.sunflow.client.*;
import com.sunyard.sunflow.engine.context.*;
/**
* <p>Title:申请工作项类 </p>
*
* <p>Description: 深圳市劳动仲裁信息管理系统</p>
*
* <p>Copyright: Copyright (c) 2005</p>
*
* <p>Company: 永泰软件工程有限公司</p>
*
* @author syj
* @version 1.0
*/
public class ApplyWorkItemControl{
/**
* 申请工作函数
* @param userinfo UserInfo
* @param workItemID long
* @return int
* @throws ApplyWorkItemException
*/
public ApplyWorkItemInfo applyWorkItem(UserInfo userInfo,long workItemID)
throws ApplyWorkItemException{
SunflowClient sunflow=WorkflowSession.getSunflowClient(userInfo);;
ApplyWorkItemInfo info=new ApplyWorkItemInfo();
try{
WorkItemContext workItem=sunflow.findWorkItem(workItemID);
info.setActor(workItem.getExecutorID());
info.setApplyResult(0);
info.setState(workItem.getState());
info.setUrl(workItem.getDescription());
info.setWorkitemId(workItemID);
info.setWorkitemName(workItem.getWorkItemName());
if(workItem.getState()==2){
sunflow.applyWorkItem(workItemID);
info.setActor(userInfo.getUserId());
info.setState(4);
//工作流申请成功
info.setApplyResult(0);
}
else{
//工作流已经被申请,而且是本人
if(info.getActor().equals(userInfo.getUserId())){
info.setApplyResult(1);
}
else{ //工作流已经被申请,但不是本人
info.setApplyResult(2);
}
}
}
catch(Exception e){
e.printStackTrace();
throw new ApplyWorkItemException("申请工作项出现异常。");
}
finally{
WorkflowSession.deleteSunflowClient(userInfo);
}
return info;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?