|
@@ -369,16 +369,65 @@ public class WorkContractBorrowService extends CrudService<WorkContractBorrowDao
|
|
|
|
|
|
}
|
|
|
}
|
|
|
- // 设置意见
|
|
|
- workCntractBorrow.getAct().setComment(("yes".equals(workCntractBorrow.getAct().getFlag()) ? "[同意] " : "[驳回] ") + workCntractBorrow.getAct().getComment());
|
|
|
- workCntractBorrow.preUpdate();
|
|
|
- // 提交流程任务
|
|
|
- vars.put(exp, "yes".equals(workCntractBorrow.getAct().getFlag()) ? true : false);
|
|
|
- vars.put("passs", true);
|
|
|
- workActivityProcessService.updateProcess(workActivityProcess,workActivityMenu,key,taskCount,workCntractBorrow.getProcessInstanceId(),taskDefKey,"modifyApply",workCntractBorrow.getAct().getFlag(),comment, activities);
|
|
|
- // 提交流程任务
|
|
|
- actTaskService.complete(workCntractBorrow.getAct().getTaskId(), workCntractBorrow.getAct().getProcInsId(), workCntractBorrow.getAct().getComment(), vars);
|
|
|
- boolean state = actTaskService.isProcessEnd(workCntractBorrow.getAct().getProcInsId());
|
|
|
+ Boolean state = null;
|
|
|
+ if("yes".equals(workCntractBorrow.getAct().getFlag())){
|
|
|
+ // 设置意见
|
|
|
+ workCntractBorrow.getAct().setComment(("yes".equals(workCntractBorrow.getAct().getFlag()) ? "[同意] " : "[驳回] ") + workCntractBorrow.getAct().getComment());
|
|
|
+ workCntractBorrow.preUpdate();
|
|
|
+ // 提交流程任务
|
|
|
+ vars.put(exp, "yes".equals(workCntractBorrow.getAct().getFlag()) ? true : false);
|
|
|
+ vars.put("passs", true);
|
|
|
+ workActivityProcessService.updateProcess(workActivityProcess,workActivityMenu,key,taskCount,workCntractBorrow.getProcessInstanceId(),taskDefKey,"modifyApply",workCntractBorrow.getAct().getFlag(),comment, activities);
|
|
|
+ // 提交流程任务
|
|
|
+ actTaskService.complete(workCntractBorrow.getAct().getTaskId(), workCntractBorrow.getAct().getProcInsId(), workCntractBorrow.getAct().getComment(), vars);
|
|
|
+ state = actTaskService.isProcessEnd(workCntractBorrow.getAct().getProcInsId());
|
|
|
+ }else{
|
|
|
+ //将流程图中尚未走到的task的流程追踪信息逻辑删除,添加一条"撤销"流程追踪信息
|
|
|
+ WorkActivityProcess process = new WorkActivityProcess();
|
|
|
+ process.setProcessInstanceId(workCntractBorrow.getProcessInstanceId());
|
|
|
+ process.setIsApproval("0");
|
|
|
+ WorkActivityProcess workActivityProcess1 = new WorkActivityProcess();
|
|
|
+ workActivityProcess1.setProcessInstanceId(workCntractBorrow.getProcessInstanceId());
|
|
|
+ List<WorkActivityProcess> processList = workActivityProcessService.findList(workActivityProcess1);
|
|
|
+ WorkProjectNotify notify = new WorkProjectNotify();
|
|
|
+ notify.setNotifyId(workCntractBorrow.getId());
|
|
|
+ List<User> userList = workProjectNotifyService.readByNotifyId(notify);
|
|
|
+ if (userList!=null && userList.size()!=0) {
|
|
|
+ for (User u : userList) {
|
|
|
+ User user = UserUtils.get(u.getId());
|
|
|
+ UserUtils.pushIm(u.getId(),"借用申请人:"+ user.getName()+" 请求被驳回!");
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(processList!=null && processList.size()>0){
|
|
|
+ for (int i =0;i<processList.size();i++) {
|
|
|
+ WorkActivityProcess p = processList.get(i);
|
|
|
+ if(StringUtils.isNotBlank(p.getIsApproval()) && "0".equals(p.getIsApproval())){
|
|
|
+ p.setDelFlag("1");
|
|
|
+ p.setIsApproval("-1");
|
|
|
+ workActivityProcessDao.updateDelFlagAndIsApproval(p);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ WorkActivityProcess pro = new WorkActivityProcess();
|
|
|
+ pro.setId("");
|
|
|
+ pro.preInsert();
|
|
|
+ pro.setDelFlag("0");
|
|
|
+ pro.setRemarks("[驳回操作]");
|
|
|
+ pro.setProcessKey(processList.get(0).getProcessKey());
|
|
|
+ pro.setIsApproval("1");
|
|
|
+ pro.setProcessInstanceId(processList.get(0).getProcessInstanceId());
|
|
|
+ pro.setCount(0);
|
|
|
+ workActivityProcessDao.insert(pro);
|
|
|
+ state = false;
|
|
|
+ }
|
|
|
+ try {
|
|
|
+ //结束该流程,设为"撤销"状态
|
|
|
+ actTaskService.endProcessInstance(workCntractBorrow.getProcessInstanceId(),"归档申请-驳回操作");
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
List<User> users = new ArrayList<>();
|
|
|
List<User> userList = new ArrayList<>();
|
|
|
if (!state) {
|
|
@@ -422,114 +471,6 @@ public class WorkContractBorrowService extends CrudService<WorkContractBorrowDao
|
|
|
}
|
|
|
}
|
|
|
workActivityProcessService.deleteProcessIdAuditUsers(workCntractBorrow.getProcessInstanceId());
|
|
|
- } else {
|
|
|
- if (StringUtils.isNotBlank(workActivityMenu.getProcessType()) && !workActivityMenu.getProcessType().equals("contractArchive")) {
|
|
|
- WorkProjectNotify notify = new WorkProjectNotify();
|
|
|
- notify.setNotifyId(workCntractBorrow.getId());
|
|
|
- userList = workProjectNotifyService.readByNotifyId(notify);
|
|
|
- WorkProjectNotify workProjectNotify = UtilNotify
|
|
|
- .saveNotify(workCntractBorrow.getId(),
|
|
|
- new User(),
|
|
|
- workCntractBorrow.getCompanyId(),
|
|
|
- title,
|
|
|
- str,
|
|
|
- "93",
|
|
|
- "0",
|
|
|
- "待审批",
|
|
|
- notifyRole);
|
|
|
- List<WorkProjectNotify> workProjectNotifys = activityService.getByFlagAndTaskDefKeyList(
|
|
|
- activities,
|
|
|
- workProjectNotify,
|
|
|
- taskDefKey,
|
|
|
- workCntractBorrow.getAct().getFlag(),
|
|
|
- taskCount,
|
|
|
- workCntractBorrow.getCreateBy(),
|
|
|
- workCntractBorrow.getOfficeId(),
|
|
|
- "3");
|
|
|
- for (WorkProjectNotify workProjectNotify1:workProjectNotifys){
|
|
|
- users.add(workProjectNotify1.getUser());
|
|
|
- workProjectNotify1.setId("");
|
|
|
- workProjectNotify1.setIsNewRecord(false);
|
|
|
- workProjectNotifyService
|
|
|
- .save(workProjectNotify1);
|
|
|
- if (!"modifyApply".equals(taskDefKey)){
|
|
|
- Map<String,Object> extras = new HashMap<>();
|
|
|
- extras.put("type","7001");
|
|
|
- extras.put("id",workProjectNotify.getId());
|
|
|
- extras.put("procDefKey","93");
|
|
|
- UserUtils.pushInfoToApp(title,str,extras,workProjectNotify1.getUser().getId());
|
|
|
-
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- } else {
|
|
|
- if (!"yes".equals(workCntractBorrow.getAct().getFlag())) {
|
|
|
- WorkProjectNotify notify = new WorkProjectNotify();
|
|
|
- notify.setNotifyId(workCntractBorrow.getId());
|
|
|
- userList = workProjectNotifyService.readByNotifyId(notify);
|
|
|
- workProjectNotifyService
|
|
|
- .save(UtilNotify
|
|
|
- .saveNotify(workCntractBorrow.getId(),
|
|
|
- workCntractBorrow.getCreateBy(),
|
|
|
- workCntractBorrow.getCompanyId(),
|
|
|
- title,
|
|
|
- str,
|
|
|
- "93",
|
|
|
- "0",
|
|
|
- "重新申请",
|
|
|
- notifyRole));
|
|
|
- users.add( workCntractBorrow.getCreateBy());
|
|
|
- } else {
|
|
|
- if (StringUtils.isNotBlank(enname)) {
|
|
|
- WorkProjectNotify notify = new WorkProjectNotify();
|
|
|
- notify.setNotifyId(workCntractBorrow.getId());
|
|
|
- userList = workProjectNotifyService.readByNotifyId(notify);
|
|
|
- WorkProjectNotify workProjectNotify = UtilNotify
|
|
|
- .saveNotify(workCntractBorrow.getId(),
|
|
|
- new User(),
|
|
|
- workCntractBorrow.getCompanyId(),
|
|
|
- title,
|
|
|
- str,
|
|
|
- "93",
|
|
|
- "0",
|
|
|
- "待审批",
|
|
|
- notifyRole);
|
|
|
- for (User user1:auditUsers){
|
|
|
- users.add(user1);
|
|
|
- workProjectNotify.setUser(user1);
|
|
|
- workProjectNotify.setId("");
|
|
|
- workProjectNotify.setIsNewRecord(false);
|
|
|
- workProjectNotifyService
|
|
|
- .save(workProjectNotify);
|
|
|
- if (!"modifyApply".equals(taskDefKey)){
|
|
|
- Map<String,Object> extras = new HashMap<>();
|
|
|
- extras.put("type","7001");
|
|
|
- extras.put("id",workProjectNotify.getId());
|
|
|
- extras.put("procDefKey","93");
|
|
|
- UserUtils.pushInfoToApp(title,str,extras,user1.getId());
|
|
|
-
|
|
|
- }
|
|
|
- }
|
|
|
- }else {
|
|
|
- WorkProjectNotify notify = new WorkProjectNotify();
|
|
|
- notify.setNotifyId(workCntractBorrow.getId());
|
|
|
- userList = workProjectNotifyService.readByNotifyId(notify);
|
|
|
- users.addAll(userList);
|
|
|
- users.add(workCntractBorrow.getCreateBy());
|
|
|
- workProjectNotifyService
|
|
|
- .save(UtilNotify
|
|
|
- .saveNotify(workCntractBorrow.getId(),
|
|
|
- workCntractBorrow.getCreateBy(),
|
|
|
- workCntractBorrow.getCompanyId(),
|
|
|
- title,
|
|
|
- str,
|
|
|
- "93",
|
|
|
- "0",
|
|
|
- "重新申请",
|
|
|
- notifyRole));
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
}
|
|
|
if (users!=null && users.size()!=0) {
|
|
|
for (User u : users) {
|
|
@@ -609,7 +550,9 @@ public class WorkContractBorrowService extends CrudService<WorkContractBorrowDao
|
|
|
actTaskService.endProcessInstance(invalidateProcessInstanceId,"归档申请-强制撤销");
|
|
|
workCntractBorrow.setStatus("3");
|
|
|
workCntractBorrow.preUpdate();
|
|
|
- dao.update(workCntractBorrow);
|
|
|
+ //dao.update(workCntractBorrow);
|
|
|
+ //撤回后直接删除该借用记录
|
|
|
+ dao.delete(workCntractBorrow);
|
|
|
|
|
|
}catch (ActivitiObjectNotFoundException e){
|
|
|
System.err.println("撤销合同作废异常,因为这个流程已不存在!");
|