/*************************运营公司-停车场管理-流程************************************************************/
//启动工作流
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);
}
}
}
}
//启动工作流
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);
}
}
}
}