|
@@ -225,7 +225,7 @@ public class TPssrApproveController extends BaseController {
|
|
|
String userId = getUserId().toString();
|
|
|
|
|
|
String condition = devTask.getCondition();
|
|
|
- if (condition.equals("1")) {
|
|
|
+ if (condition.equals("0")) {
|
|
|
approve.setApproveStatus(2L);
|
|
|
TPssrSubcontent tPssrSubcontent = new TPssrSubcontent();
|
|
|
tPssrSubcontent.setId(approve.getSubId());
|
|
@@ -233,7 +233,8 @@ public class TPssrApproveController extends BaseController {
|
|
|
tPssrSubcontentService.updateTPssrSubcontent(tPssrSubcontent);
|
|
|
tPssrApproveService.updateTPssrApprove(approve);
|
|
|
}else{
|
|
|
- // todo驳回操作,修改子表状态
|
|
|
+ // 驳回操作,修改子表状态
|
|
|
+ handleTurnDown(approve.getSubId(),condition);
|
|
|
}
|
|
|
//处理流程节点
|
|
|
Map<String, Object> param = new HashMap<>();
|
|
@@ -246,6 +247,81 @@ public class TPssrApproveController extends BaseController {
|
|
|
return AjaxResult.success();
|
|
|
}
|
|
|
|
|
|
+ public void handleTurnDown(Long subId,String condition){
|
|
|
+ TPssrSubcontent subcontent = tPssrSubcontentService.selectTPssrSubcontentById(subId);
|
|
|
+ switch (subcontent.getSerialNumber()) {
|
|
|
+ case "01":
|
|
|
+ break;
|
|
|
+ case "02":
|
|
|
+ break;
|
|
|
+ case "03":
|
|
|
+ break;
|
|
|
+ case "04":
|
|
|
+ break;
|
|
|
+ case "05":
|
|
|
+ break;
|
|
|
+ case "06":
|
|
|
+ break;
|
|
|
+ case "07":
|
|
|
+ break;
|
|
|
+ case "08":
|
|
|
+ break;
|
|
|
+ case "09":
|
|
|
+ break;
|
|
|
+ case "10":
|
|
|
+ break;
|
|
|
+ case "11":
|
|
|
+ break;
|
|
|
+ case "12":
|
|
|
+ break;
|
|
|
+ case "13":
|
|
|
+ break;
|
|
|
+ case "14":
|
|
|
+ break;
|
|
|
+ case "15":
|
|
|
+ break;
|
|
|
+ case "16":
|
|
|
+ break;
|
|
|
+ case "17":
|
|
|
+ TPssrLock lock = new TPssrLock();
|
|
|
+ lock.setApproveStatus(2L);
|
|
|
+ lock.setSubId(subId);
|
|
|
+ for (TPssrLock tPssrLock : tPssrLockService.selectTPssrLockList(lock)) {
|
|
|
+ if("1".equals(condition)){
|
|
|
+ tPssrLock.setApproveStatus(1L);
|
|
|
+ } else if ("2".equals(condition)) {
|
|
|
+ tPssrLock.setApproveStatus(3L);
|
|
|
+ } else if ("3".equals(condition)) {
|
|
|
+ tPssrLock.setApproveStatus(4L);
|
|
|
+ }
|
|
|
+ tPssrLockService.updateTPssrLock(tPssrLock);
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case "18":
|
|
|
+ break;
|
|
|
+ case "19":
|
|
|
+ break;
|
|
|
+ case "20":
|
|
|
+ break;
|
|
|
+ case "21":
|
|
|
+ break;
|
|
|
+ case "22":
|
|
|
+ break;
|
|
|
+ case "23":
|
|
|
+ break;
|
|
|
+ case "24":
|
|
|
+ break;
|
|
|
+ case "25":
|
|
|
+ break;
|
|
|
+ case "26":
|
|
|
+ break;
|
|
|
+ case "27":
|
|
|
+ break;
|
|
|
+ case "28":
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 子项内容确认
|
|
|
*/
|
|
@@ -261,7 +337,7 @@ public class TPssrApproveController extends BaseController {
|
|
|
|
|
|
//处理流程节点
|
|
|
Map<String, Object> param = new HashMap<>();
|
|
|
- param.put("condition", "1");
|
|
|
+ param.put("condition", "0");
|
|
|
//认领任务
|
|
|
processEngine.getTaskService().claim(taskId, userId);
|
|
|
taskService.addComment(taskId, processInstancesId, "通过");
|
|
@@ -348,61 +424,22 @@ public class TPssrApproveController extends BaseController {
|
|
|
approve.setProcessId(pi.getProcessInstanceId());
|
|
|
tPssrApproveService.updateTPssrApprove(approve);
|
|
|
} else {
|
|
|
- //有审批数据,
|
|
|
+ // 已存在流程时,删除旧流程,重新发起
|
|
|
TPssrApprove approve = tPssrApproves.get(0);
|
|
|
- String processInstancesId = approve.getProcessId();
|
|
|
- ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
|
|
|
- TaskService taskService = processEngine.getTaskService();
|
|
|
- List<Task> tasks = processEngine.getTaskService()//获取任务service
|
|
|
- .createTaskQuery()//创建查询对象
|
|
|
- .processInstanceId(processInstancesId).list();
|
|
|
-
|
|
|
- //处理流程节点
|
|
|
- if (tasks.size() == 1) {
|
|
|
- String taskId = tasks.get(0).getId();
|
|
|
- String taskName = tasks.get(0).getName();
|
|
|
- Map<String, Object> param = new HashMap<>();
|
|
|
- if (taskName.equals("确认人")) {
|
|
|
- param.put("condition", "1");
|
|
|
- taskService.addComment(taskId, processInstancesId, "发起新确认流程");
|
|
|
- taskService.complete(taskId, param);
|
|
|
- Task task = processEngine.getTaskService()//获取任务service
|
|
|
- .createTaskQuery()//创建查询对象
|
|
|
- .processInstanceId(processInstancesId).singleResult();
|
|
|
- param.put("condition", "0");
|
|
|
- param.put("confirmUsers", Arrays.asList(confirmers.split(",")));
|
|
|
- //认领任务
|
|
|
-// processEngine.getTaskService().claim(taskId, userId);
|
|
|
- taskService.addComment(task.getId(), processInstancesId, "发起新确认流程");
|
|
|
- taskService.complete(task.getId(), param);
|
|
|
- } else {
|
|
|
- param.put("condition", "0");
|
|
|
- param.put("confirmUsers", Arrays.asList(confirmers.split(",")));
|
|
|
- //认领任务
|
|
|
-// processEngine.getTaskService().claim(taskId, userId);
|
|
|
- taskService.complete(taskId, param);
|
|
|
- }
|
|
|
- } else {
|
|
|
- for (Task task : tasks) {
|
|
|
- Map<String, Object> param = new HashMap<>();
|
|
|
- param.put("condition", "1");
|
|
|
- taskService.addComment(task.getId(), processInstancesId, "发起新确认流程");
|
|
|
- taskService.complete(task.getId(), param);
|
|
|
- }
|
|
|
- Task task = processEngine.getTaskService()//获取任务service
|
|
|
- .createTaskQuery()//创建查询对象
|
|
|
- .processInstanceId(processInstancesId).singleResult();
|
|
|
-
|
|
|
- Map<String, Object> param = new HashMap<>();
|
|
|
- param.put("condition", "0");
|
|
|
- param.put("confirmUsers", Arrays.asList(confirmers.split(",")));
|
|
|
- //认领任务
|
|
|
-// processEngine.getTaskService().claim(taskId, userId);
|
|
|
- taskService.addComment(task.getId(), processInstancesId, "发起新确认流程");
|
|
|
- taskService.complete(task.getId(), param);
|
|
|
- }
|
|
|
+ runtimeService.deleteProcessInstance(approve.getProcessId(), "pssr1confirm");
|
|
|
+ historyService.deleteHistoricProcessInstance(approve.getProcessId());
|
|
|
|
|
|
- approve.setApproveStatus(1L);
|
|
|
+ // 开始申请流程
|
|
|
+ long businessKey = approve.getApproveId();
|
|
|
+ //开始工作流、监听
|
|
|
+ Authentication.setAuthenticatedUserId(userId);//设置当前申请人
|
|
|
+ Map<String, Object> variables = new HashMap<>();
|
|
|
+ variables.put("applyUser", userId);
|
|
|
+ variables.put("confirmUsers", Arrays.asList(confirmers.split(",")));
|
|
|
+ variables.put("chargePerson", sub.getConfirm());
|
|
|
+ //采用key来启动流程定义并设置流程变量,返回流程实例
|
|
|
+ ProcessInstance pi = runtimeService.startProcessInstanceByKey("pssr1confirm", String.valueOf(businessKey), variables);
|
|
|
+ approve.setProcessId(pi.getProcessInstanceId());
|
|
|
tPssrApproveService.updateTPssrApprove(approve);
|
|
|
}
|
|
|
}
|
|
@@ -566,7 +603,11 @@ public class TPssrApproveController extends BaseController {
|
|
|
}else{
|
|
|
// 已存在流程时,删除旧流程,重新发起
|
|
|
TPssrApprove approve = tPssrApproves.get(0);
|
|
|
- runtimeService.deleteProcessInstance(approve.getProcessId(), "pssr3confirm");
|
|
|
+ try {
|
|
|
+ runtimeService.deleteProcessInstance(approve.getProcessId(), "pssr3confirm");
|
|
|
+ } catch (Exception e) {
|
|
|
+ logger.info("无运行时流程");
|
|
|
+ }
|
|
|
historyService.deleteHistoricProcessInstance(approve.getProcessId());
|
|
|
|
|
|
tPssrLock = new TPssrLock();
|