jBPM工作流相关

/*************************运营公司-停车场管理-流程************************************************************/
   //启动工作流
public BeanParkLots startWork(BeanParkLots bean,String userName){
Map<String,Object> map= new HashMap<String,Object>();
    map.put("name",userName);
    map.put("role", "运营管理员");
    map.put("parkLosId", bean.getId());
    ProcessInstance processInstance = executionService.startProcessInstanceByKey("company", map);
    String processId = processInstance.getId();
    List<Task> myTasks = taskService.createTaskQuery().processInstanceId(processId).list();
    for(Task task : myTasks){
    taskService.completeTask(task.getId());
    }
    bean.setProcessId(processId);
    bean.setProceStatus("审批中");
   return bean;
   }
   //获取运营管理员的待办流程
  public Pagination searchWork(int pageNo, int pageSize,String roleName){
  List<Task> tasks = taskService.findPersonalTasks(roleName);
  List<BeanParkLots> list = new ArrayList<BeanParkLots>();
  if(tasks.size()>0){
  for(Task task:tasks){
  BeanParkLots parkLot = dao.getByProcessId(taskService.getTask(task.getId()).getExecutionId());
  list.add(parkLot);
  }
  }
  Pagination patination  = new Pagination(pageNo,pageSize,list.size(),list);
  return patination;
   }


  
  
  
  
//运营管理员审批通过
  public BeanParkLots agreeTask(Integer id,String roleName){
 BeanParkLots parkLots = dao.findById(id);
 List<Task> tasks = taskService.findPersonalTasks(roleName);
 if(tasks.size()>0){
 for(Task task:tasks){
   String taskId = task.getId();
String executionId = taskService.getTask(taskId).getExecutionId();
Execution processInstance = executionService.findExecutionById(executionId).getProcessInstance();
 if(parkLots.getProcessId().equals(processInstance.getId())){
 taskService.completeTask(taskId, "通过");
 parkLots.setProceStatus("审批完成");
 if(parkLots.getProcessCompany()!=null && !"".equals(parkLots.getProcessCompany())){
 parkLots.setBelongcompany(Integer.parseInt(parkLots.getProcessCompany()));
 }
 dao.updater(parkLots);
 }
 }
 }
 
 return parkLots;
  }

//运营管理员审批未通过
  public BeanParkLots disagreeTask(Integer id,String roleName){
 BeanParkLots parkLots = dao.findById(id);
 List<Task> tasks = taskService.findPersonalTasks(roleName);
 if(tasks.size()>0){
 for(Task task:tasks){
   String taskId = task.getId();
String executionId = taskService.getTask(taskId).getExecutionId();
Execution processInstance = executionService.findExecutionById(executionId).getProcessInstance();
 if(parkLots.getProcessId().equals(processInstance.getId())){
 parkLots.setProceStatus("退回修改");
 taskService.completeTask(taskId, "未通过");
 dao.updater(parkLots);
 }
 }
 }
 return  parkLots;
  }
  //申请人被退回修改后再次提交
  public void repeatTask(String processId,String userName){
 List<Task> tasks = taskService.findPersonalTasks(userName);
 if(tasks.size()>0){
 for(Task task:tasks){
   String taskId = task.getId();
String executionId = taskService.getTask(taskId).getExecutionId();
Execution processInstance = executionService.findExecutionById(executionId).getProcessInstance();
 if(processId.equals(processInstance.getId())){
 taskService.completeTask(taskId);
 }
 }
 }
  }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值