|
|
@@ -1,15 +1,12 @@
|
|
|
package com.hotent.project.manager.impl;
|
|
|
|
|
|
-import cn.hutool.core.util.ObjectUtil;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.hotent.base.manager.impl.BaseManagerImpl;
|
|
|
import com.hotent.base.util.AuthenticationUtil;
|
|
|
import com.hotent.base.util.StringUtil;
|
|
|
import com.hotent.baseInfo.req.CostTaskSearchReq;
|
|
|
-import com.hotent.constant.BaseConstant;
|
|
|
import com.hotent.constant.NodeConstant;
|
|
|
import com.hotent.constant.TaskStatusConstant;
|
|
|
import com.hotent.enterpriseDeclare.req.CostTaskPageReq;
|
|
|
@@ -18,9 +15,11 @@ import com.hotent.project.dao.CostProjectTaskDao;
|
|
|
import com.hotent.project.manager.*;
|
|
|
import com.hotent.project.model.CostProjectApproval;
|
|
|
import com.hotent.project.model.CostProjectTask;
|
|
|
+import com.hotent.project.model.CostProjectTaskMaterial;
|
|
|
import com.hotent.project.model.CostProjectTaskPreliminaryOpinion;
|
|
|
-import com.hotent.project.model.CostProjectTaskProccess;
|
|
|
import com.hotent.project.resp.CostProjectApprovalDetailResp;
|
|
|
+import com.hotent.surveyinfo.manager.CostSurveyTemplateUploadManager;
|
|
|
+import com.hotent.surveyinfo.model.CostSurveyTemplateUpload;
|
|
|
import com.hotent.uc.api.model.IUser;
|
|
|
import com.hotent.uc.manager.UserManager;
|
|
|
import com.hotent.uc.model.User;
|
|
|
@@ -60,6 +59,16 @@ public class CostProjectTaskManagerImpl extends BaseManagerImpl<CostProjectTaskD
|
|
|
@Autowired
|
|
|
private UserManager userService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private CostProjectTaskMaterialManager costProjectTaskMaterialManager;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private CostSurveyTemplateUploadManager costSurveyTemplateUploadManager;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private CostProjectTaskLogManager costProjectTaskLogManager;
|
|
|
+
|
|
|
+
|
|
|
|
|
|
@Override
|
|
|
public List<CostProjectTask> getTaskList(CostTaskSearchReq req) throws Exception {
|
|
|
@@ -69,12 +78,12 @@ public class CostProjectTaskManagerImpl extends BaseManagerImpl<CostProjectTaskD
|
|
|
req.setProvinceCode(user.getProvinceCode());
|
|
|
req.setCityCode(user.getCityCode());
|
|
|
req.setCountyCode(user.getCountyCode());
|
|
|
- List<CostProjectTask> list =baseMapper.getCostProjectTaskList(req.getDataScope()
|
|
|
- ,req.getProvinceCode()
|
|
|
- ,req.getCityCode()
|
|
|
- ,req.getCountyCode()
|
|
|
- ,req.getYear()
|
|
|
- ,req.getProjectName());
|
|
|
+ List<CostProjectTask> list = baseMapper.getCostProjectTaskList(req.getDataScope()
|
|
|
+ , req.getProvinceCode()
|
|
|
+ , req.getCityCode()
|
|
|
+ , req.getCountyCode()
|
|
|
+ , req.getYear()
|
|
|
+ , req.getProjectName());
|
|
|
/*LambdaQueryWrapper<CostProjectTask> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
if (ObjectUtil.isNotEmpty(req.getYear())) {
|
|
|
queryWrapper.eq(CostProjectTask::getYear, req.getYear());
|
|
|
@@ -250,20 +259,35 @@ public class CostProjectTaskManagerImpl extends BaseManagerImpl<CostProjectTaskD
|
|
|
return result;
|
|
|
}
|
|
|
|
|
|
- @Override
|
|
|
- @Transactional
|
|
|
- public void createOrUpdate(CostProjectTask costProjectTask) {
|
|
|
- //新建或更新
|
|
|
- this.saveOrUpdate(costProjectTask);
|
|
|
- }
|
|
|
+ @Override
|
|
|
+ @Transactional
|
|
|
+ public void createOrUpdate(CostProjectTask costProjectTask) {
|
|
|
+ //新建或更新
|
|
|
+ this.saveOrUpdate(costProjectTask);
|
|
|
+ }
|
|
|
|
|
|
- @Override
|
|
|
+ @Override
|
|
|
@Transactional
|
|
|
public String saveTask(CostTaskPageReq costTaskPageReq) {
|
|
|
- // 1.校验内容是否填写完毕!todo
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+ // 1.校验内容是否填写完毕!t
|
|
|
+ List<CostProjectTaskMaterial> costProjectTaskMaterials = costProjectTaskMaterialManager.listByTaskId(costTaskPageReq.getTaskId());
|
|
|
+ boolean c = costProjectTaskMaterials.stream()
|
|
|
+ .filter(item ->"1".equals(item.getIsRequired()))
|
|
|
+ .allMatch(
|
|
|
+ item -> "1".equals(item.getIsUpload())
|
|
|
+ );
|
|
|
+ if (!c) {
|
|
|
+ throw new RuntimeException("报送资料必填文件未全部填写完成!");
|
|
|
+ }
|
|
|
+ List<CostSurveyTemplateUpload> costSurveyTemplateUploads = costSurveyTemplateUploadManager.listByTaskId(costTaskPageReq.getTaskId());
|
|
|
+ boolean d = costSurveyTemplateUploads.stream()
|
|
|
+ .filter(item ->"1".equals(item.getIsRequired()))
|
|
|
+ .allMatch(
|
|
|
+ item -> "1".equals(item.getIsUpload())
|
|
|
+ );
|
|
|
+ if (!d) {
|
|
|
+ throw new RuntimeException("成本调查必填文件未全部填写完成!");
|
|
|
+ }
|
|
|
// 2. 子流程状态改为审核中
|
|
|
CostProjectTask task = this.getById(costTaskPageReq.getTaskId());
|
|
|
task.setCurrentNode(NodeConstant.clcs.getNodeKey());
|
|
|
@@ -285,9 +309,9 @@ public class CostProjectTaskManagerImpl extends BaseManagerImpl<CostProjectTaskD
|
|
|
|
|
|
return "意见反馈完成";
|
|
|
|
|
|
- }
|
|
|
+ }
|
|
|
|
|
|
- @Override
|
|
|
+ @Override
|
|
|
public String doProcessBtn(CostTaskPageReq req) {
|
|
|
|
|
|
CostProjectTask task = costProjectTaskManager.getById(req.getTaskId());
|
|
|
@@ -299,7 +323,7 @@ public class CostProjectTaskManagerImpl extends BaseManagerImpl<CostProjectTaskD
|
|
|
break;
|
|
|
case "2":
|
|
|
// 中止/恢复
|
|
|
- resultMessage = suspendTask(task,req);
|
|
|
+ resultMessage = suspendTask(task, req);
|
|
|
break;
|
|
|
case "3":
|
|
|
// 通过
|
|
|
@@ -307,15 +331,15 @@ public class CostProjectTaskManagerImpl extends BaseManagerImpl<CostProjectTaskD
|
|
|
break;
|
|
|
case "4":
|
|
|
// 退回
|
|
|
- resultMessage = returnToSubmit(task,req);
|
|
|
+ resultMessage = returnToSubmit(task, req);
|
|
|
break;
|
|
|
case "6":
|
|
|
// 退回上一步
|
|
|
- resultMessage = backPreToSubmit(task,req);
|
|
|
+ resultMessage = backPreToSubmit(task, req);
|
|
|
break;
|
|
|
case "7":
|
|
|
// 扭转下一步
|
|
|
- resultMessage = toNextSubmit(task,req);
|
|
|
+ resultMessage = toNextSubmit(task, req);
|
|
|
break;
|
|
|
default:
|
|
|
return "未知的操作类型";
|
|
|
@@ -328,7 +352,7 @@ public class CostProjectTaskManagerImpl extends BaseManagerImpl<CostProjectTaskD
|
|
|
*/
|
|
|
private String completeTask(CostProjectTask task) {
|
|
|
CostProjectTask nTask = costProjectTaskManager.getById(task.getId());
|
|
|
- if (nTask == null){
|
|
|
+ if (nTask == null) {
|
|
|
return "任务不存在";
|
|
|
}
|
|
|
|
|
|
@@ -336,22 +360,45 @@ public class CostProjectTaskManagerImpl extends BaseManagerImpl<CostProjectTaskD
|
|
|
new LambdaQueryWrapper<CostProjectTask>()
|
|
|
.eq(CostProjectTask::getPid, nTask.getId())
|
|
|
);
|
|
|
- boolean b = children.stream().noneMatch(child ->
|
|
|
- child.getStatus().equals(TaskStatusConstant.AUDITING.getStatusCode()));
|
|
|
- if (!b) {
|
|
|
- throw new RuntimeException("子任务未全部办理,主任务无法办结");
|
|
|
+ if (children.isEmpty()) {
|
|
|
+ // 子任务 所有“是否必填”为“是”的资料“初审结果”均为“通过”.
|
|
|
+ List<CostProjectTaskMaterial> costProjectTaskMaterials = costProjectTaskMaterialManager.listByTaskId(nTask.getId());
|
|
|
+ boolean c = costProjectTaskMaterials.stream()
|
|
|
+ .filter(item -> "1".equals(item.getIsRequired()))
|
|
|
+ .allMatch(
|
|
|
+ item -> "1".equals(item.getAuditedStatus())
|
|
|
+ );
|
|
|
+ if (!c) {
|
|
|
+ throw new RuntimeException("报送资料未全部通过!");
|
|
|
+ }
|
|
|
+ List<CostSurveyTemplateUpload> costSurveyTemplateUploads = costSurveyTemplateUploadManager.listByTaskId(nTask.getId());
|
|
|
+ boolean d = costSurveyTemplateUploads.stream()
|
|
|
+ .filter(item -> "1".equals(item.getIsRequired()))
|
|
|
+ .allMatch(
|
|
|
+ item -> "1".equals(item.getAuditedStatus())
|
|
|
+ );
|
|
|
+ if (!d) {
|
|
|
+ throw new RuntimeException("成本调查表未全部通过!");
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ // 主任务
|
|
|
+ boolean b = children.stream().noneMatch(child ->
|
|
|
+ child.getStatus().equals(TaskStatusConstant.AUDITING.getStatusCode()));
|
|
|
+ if (!b) {
|
|
|
+ throw new RuntimeException("子任务未全部办理,主任务无法办结");
|
|
|
+ }
|
|
|
}
|
|
|
task.setStatus(TaskStatusConstant.COMPLETED.getStatusCode());
|
|
|
costProjectTaskManager.updateById(task);
|
|
|
|
|
|
// 发送通知
|
|
|
- String title = NodeConstant.getNodeValueByKey(task.getCurrentNode())+"通过";
|
|
|
+ String title = NodeConstant.getNodeValueByKey(task.getCurrentNode()) + "通过";
|
|
|
// 操作人
|
|
|
- String content = "["+ NodeConstant.getNodeValueByKey(task.getCurrentNode()) +"]"+AuthenticationUtil.getCurrentUserFullname() + "已通过" + task.getAuditedUnitName() + "的项目(" + task.getProjectName() +")";
|
|
|
+ String content = "[" + NodeConstant.getNodeValueByKey(task.getCurrentNode()) + "]" + AuthenticationUtil.getCurrentUserFullname() + "已通过" + task.getAuditedUnitName() + "的项目(" + task.getProjectName() + ")";
|
|
|
String enterpriseId = task.getAuditedUnitId() == null ? "" : task.getAuditedUnitId();
|
|
|
String noticeSource = "系统";
|
|
|
String sendTarget = task.getCreateBy() == null ? "" : task.getCreateBy();
|
|
|
- costNoticeManager.sendNotice(task.getProjectId(),task.getId(), "1", title, content, enterpriseId, noticeSource, sendTarget);
|
|
|
+ costNoticeManager.sendNotice(task.getProjectId(), task.getId(), "1", title, content, enterpriseId, noticeSource, sendTarget);
|
|
|
|
|
|
return title;
|
|
|
}
|
|
|
@@ -359,19 +406,19 @@ public class CostProjectTaskManagerImpl extends BaseManagerImpl<CostProjectTaskD
|
|
|
/**
|
|
|
* 退回,填写原因 修改状态
|
|
|
*/
|
|
|
- private String returnToSubmit(CostProjectTask task,CostTaskPageReq req) {
|
|
|
- switch (req.getProcessNodeKey()){
|
|
|
+ private String returnToSubmit(CostProjectTask task, CostTaskPageReq req) {
|
|
|
+ switch (req.getProcessNodeKey()) {
|
|
|
case "sdsh":
|
|
|
throw new RuntimeException("当前节点无法退回");
|
|
|
default:
|
|
|
// 通知内容组装
|
|
|
- String title = NodeConstant.getNodeValueByKey(task.getCurrentNode())+"退回";
|
|
|
+ String title = NodeConstant.getNodeValueByKey(task.getCurrentNode()) + "退回";
|
|
|
String enterpriseId = task.getAuditedUnitId() == null ? "" : task.getAuditedUnitId();
|
|
|
String noticeSource = "系统";
|
|
|
String sendTarget = task.getCreateBy() == null ? "" : task.getCreateBy();
|
|
|
|
|
|
- String content = "["+ NodeConstant.getNodeValueByKey(task.getCurrentNode()) +"]"+AuthenticationUtil.getCurrentUserFullname() + "已退回" + task.getAuditedUnitName() + "的项目(" + task.getProjectName() +")";
|
|
|
- costNoticeManager.sendNotice(task.getProjectId(),task.getId(), "1", title, content, enterpriseId, noticeSource, sendTarget);
|
|
|
+ String content = "[" + NodeConstant.getNodeValueByKey(task.getCurrentNode()) + "]" + AuthenticationUtil.getCurrentUserFullname() + "已退回" + task.getAuditedUnitName() + "的项目(" + task.getProjectName() + ")";
|
|
|
+ costNoticeManager.sendNotice(task.getProjectId(), task.getId(), "1", title, content, enterpriseId, noticeSource, sendTarget);
|
|
|
|
|
|
// 更新任务的当前节点和状态
|
|
|
task.setStatus(TaskStatusConstant.NOT_PASSED.getStatusCode());
|
|
|
@@ -385,20 +432,20 @@ public class CostProjectTaskManagerImpl extends BaseManagerImpl<CostProjectTaskD
|
|
|
/**
|
|
|
* 中止,填写原因 修改状态
|
|
|
*/
|
|
|
- private String suspendTask(CostProjectTask task,CostTaskPageReq req) {
|
|
|
+ private String suspendTask(CostProjectTask task, CostTaskPageReq req) {
|
|
|
|
|
|
// 更新任务状态为中止/恢复
|
|
|
- String status = req.getStatus()==null ? TaskStatusConstant.SUSPENDED.getStatusCode() :TaskStatusConstant.AUDITING.getStatusCode();
|
|
|
+ String status = req.getStatus() == null ? TaskStatusConstant.SUSPENDED.getStatusCode() : TaskStatusConstant.AUDITING.getStatusCode();
|
|
|
task.setStatus(status);
|
|
|
costProjectTaskManager.updateById(task);
|
|
|
|
|
|
// 通知内容组装
|
|
|
- String title = NodeConstant.getNodeValueByKey(task.getCurrentNode())+TaskStatusConstant.getStatusNameByCode(status);
|
|
|
- String content = "["+ NodeConstant.getNodeValueByKey(task.getCurrentNode()) +"]"+AuthenticationUtil.getCurrentUserFullname() + "已" + TaskStatusConstant.getStatusNameByCode(status) + task.getAuditedUnitName() + "的项目(" + task.getProjectName() +")";
|
|
|
+ String title = NodeConstant.getNodeValueByKey(task.getCurrentNode()) + TaskStatusConstant.getStatusNameByCode(status);
|
|
|
+ String content = "[" + NodeConstant.getNodeValueByKey(task.getCurrentNode()) + "]" + AuthenticationUtil.getCurrentUserFullname() + "已" + TaskStatusConstant.getStatusNameByCode(status) + task.getAuditedUnitName() + "的项目(" + task.getProjectName() + ")";
|
|
|
String enterpriseId = task.getAuditedUnitId() == null ? "" : task.getAuditedUnitId();
|
|
|
String noticeSource = "系统";
|
|
|
String sendTarget = task.getCreateBy() == null ? "" : task.getCreateBy();
|
|
|
- costNoticeManager.sendNotice(task.getProjectId(),task.getId(), "1", title, content, enterpriseId, noticeSource, sendTarget);
|
|
|
+ costNoticeManager.sendNotice(task.getProjectId(), task.getId(), "1", title, content, enterpriseId, noticeSource, sendTarget);
|
|
|
|
|
|
return title;
|
|
|
}
|
|
|
@@ -431,10 +478,10 @@ public class CostProjectTaskManagerImpl extends BaseManagerImpl<CostProjectTaskD
|
|
|
childTask.setStatus(TaskStatusConstant.BCCL.getStatusCode());
|
|
|
costProjectTaskManager.updateById(childTask);
|
|
|
// 通知内容组装(针对子任务对应的单位)
|
|
|
- String childContent = "["+ NodeConstant.getNodeValueByKey(task.getCurrentNode()) +"]"+AuthenticationUtil.getCurrentUserFullname() + "要求" + childTask.getAuditedUnitName() + "补充材料,项目(" + task.getProjectName() +")";
|
|
|
+ String childContent = "[" + NodeConstant.getNodeValueByKey(task.getCurrentNode()) + "]" + AuthenticationUtil.getCurrentUserFullname() + "要求" + childTask.getAuditedUnitName() + "补充材料,项目(" + task.getProjectName() + ")";
|
|
|
String childEnterpriseId = childTask.getAuditedUnitId() == null ? "" : childTask.getAuditedUnitId();
|
|
|
String childSendTarget = childTask.getCreateBy() == null ? "" : childTask.getCreateBy();
|
|
|
- costNoticeManager.sendNotice(task.getProjectId(),task.getId(), "1", title, childContent, childEnterpriseId, noticeSource, childSendTarget);
|
|
|
+ costNoticeManager.sendNotice(task.getProjectId(), task.getId(), "1", title, childContent, childEnterpriseId, noticeSource, childSendTarget);
|
|
|
// 收集单位名称
|
|
|
if (StringUtil.isNotEmpty(childTask.getAuditedUnitName())) {
|
|
|
unitNames.add(childTask.getAuditedUnitName());
|
|
|
@@ -447,10 +494,10 @@ public class CostProjectTaskManagerImpl extends BaseManagerImpl<CostProjectTaskD
|
|
|
default:
|
|
|
task.setStatus(TaskStatusConstant.BCCL.getStatusCode());
|
|
|
costProjectTaskManager.updateById(task);
|
|
|
- String content = "["+ NodeConstant.getNodeValueByKey(task.getCurrentNode()) +"]"+AuthenticationUtil.getCurrentUserFullname() + "要求" + task.getAuditedUnitName() + "补充材料,项目(" + task.getProjectName() +")";
|
|
|
+ String content = "[" + NodeConstant.getNodeValueByKey(task.getCurrentNode()) + "]" + AuthenticationUtil.getCurrentUserFullname() + "要求" + task.getAuditedUnitName() + "补充材料,项目(" + task.getProjectName() + ")";
|
|
|
String enterpriseId = task.getAuditedUnitId() == null ? "" : task.getAuditedUnitId();
|
|
|
String sendTarget = task.getCreateBy() == null ? "" : task.getCreateBy();
|
|
|
- costNoticeManager.sendNotice(task.getProjectId(),task.getId(), "1", title, content, enterpriseId, noticeSource, sendTarget);
|
|
|
+ costNoticeManager.sendNotice(task.getProjectId(), task.getId(), "1", title, content, enterpriseId, noticeSource, sendTarget);
|
|
|
return title;
|
|
|
}
|
|
|
}
|
|
|
@@ -458,9 +505,9 @@ public class CostProjectTaskManagerImpl extends BaseManagerImpl<CostProjectTaskD
|
|
|
/**
|
|
|
* 退回上一步,填写原因 修改状态和节点
|
|
|
*/
|
|
|
- private String backPreToSubmit(CostProjectTask task,CostTaskPageReq req) {
|
|
|
+ private String backPreToSubmit(CostProjectTask task, CostTaskPageReq req) {
|
|
|
CostProjectTask nTask = costProjectTaskManager.getById(task.getId());
|
|
|
- if (nTask == null || !nTask.getPid().equals("0") ){
|
|
|
+ if (nTask == null || !nTask.getPid().equals("0")) {
|
|
|
throw new RuntimeException("当前节点无法退回");
|
|
|
}
|
|
|
|
|
|
@@ -505,11 +552,11 @@ public class CostProjectTaskManagerImpl extends BaseManagerImpl<CostProjectTaskD
|
|
|
}
|
|
|
|
|
|
// 通知内容组装
|
|
|
- String title = NodeConstant.getNodeValueByKey(prevNodeStatus)+"退回上一步";
|
|
|
+ String title = NodeConstant.getNodeValueByKey(prevNodeStatus) + "退回上一步";
|
|
|
String enterpriseId = task.getAuditedUnitId() == null ? "" : task.getAuditedUnitId();
|
|
|
String noticeSource = "系统";
|
|
|
String sendTarget = task.getCreateBy() == null ? "" : task.getCreateBy();
|
|
|
- costNoticeManager.sendNotice(task.getProjectId(),task.getId(), "1", title, req.getContent(), enterpriseId, noticeSource, sendTarget);
|
|
|
+ costNoticeManager.sendNotice(task.getProjectId(), task.getId(), "1", title, req.getContent(), enterpriseId, noticeSource, sendTarget);
|
|
|
|
|
|
return title;
|
|
|
}
|
|
|
@@ -517,12 +564,12 @@ public class CostProjectTaskManagerImpl extends BaseManagerImpl<CostProjectTaskD
|
|
|
/**
|
|
|
* 扭转下一步,填写原因 修改状态和节点
|
|
|
*/
|
|
|
- private String toNextSubmit(CostProjectTask task,CostTaskPageReq req) {
|
|
|
+ private String toNextSubmit(CostProjectTask task, CostTaskPageReq req) {
|
|
|
CostProjectTask nTask = costProjectTaskManager.getById(task.getId());
|
|
|
- if (nTask == null || !nTask.getPid().equals("0")){
|
|
|
+ if (nTask == null || !nTask.getPid().equals("0")) {
|
|
|
throw new RuntimeException("当前节点无法扭转");
|
|
|
}
|
|
|
- if (!task.getStatus().equals(TaskStatusConstant.COMPLETED.getStatusCode())){
|
|
|
+ if (!task.getStatus().equals(TaskStatusConstant.COMPLETED.getStatusCode())) {
|
|
|
throw new RuntimeException("请办结任务后,在进行扭转下一步");
|
|
|
}
|
|
|
// 子任务都办结才可以扭转
|
|
|
@@ -532,7 +579,7 @@ public class CostProjectTaskManagerImpl extends BaseManagerImpl<CostProjectTaskD
|
|
|
);
|
|
|
boolean b = children.stream().noneMatch(
|
|
|
child -> child.getStatus().equals(TaskStatusConstant.AUDITING.getStatusCode()));
|
|
|
- if (!b){
|
|
|
+ if (!b) {
|
|
|
throw new RuntimeException("子任务未全部办结,主任务无法扭转");
|
|
|
}
|
|
|
// 将当前任务置为办结
|
|
|
@@ -542,8 +589,8 @@ public class CostProjectTaskManagerImpl extends BaseManagerImpl<CostProjectTaskD
|
|
|
nTask.setIsGd("0");
|
|
|
costProjectTaskManager.updateById(task);
|
|
|
// 如果所有子任务都办结,则将父子任务都扭转
|
|
|
- String status = "";
|
|
|
- switch (nTask.getCurrentNode()){
|
|
|
+ String status = "";
|
|
|
+ switch (nextNodeStatus) {
|
|
|
case "yjfk":
|
|
|
status = TaskStatusConstant.WAIT_FEEDBACK.getStatusCode();
|
|
|
break;
|
|
|
@@ -555,7 +602,7 @@ public class CostProjectTaskManagerImpl extends BaseManagerImpl<CostProjectTaskD
|
|
|
break;
|
|
|
}
|
|
|
for (CostProjectTask child : children) {
|
|
|
- if (!child.getStatus().equals(TaskStatusConstant.SUSPENDED.getStatusCode())){
|
|
|
+ if (!child.getStatus().equals(TaskStatusConstant.SUSPENDED.getStatusCode())) {
|
|
|
child.setStatus(status);
|
|
|
child.setCurrentNode(nextNodeStatus);
|
|
|
costProjectTaskManager.updateById(child);
|
|
|
@@ -563,7 +610,7 @@ public class CostProjectTaskManagerImpl extends BaseManagerImpl<CostProjectTaskD
|
|
|
|
|
|
}
|
|
|
// 通知内容组装
|
|
|
- String title = NodeConstant.getNodeValueByKey(task.getCurrentNode())+"扭转至下一步";
|
|
|
+ String title = NodeConstant.getNodeValueByKey(task.getCurrentNode()) + "扭转至下一步";
|
|
|
String enterpriseId = task.getAuditedUnitId() == null ? "" : task.getAuditedUnitId();
|
|
|
String noticeSource = "系统";
|
|
|
String sendTarget = task.getCreateBy() == null ? "" : task.getCreateBy();
|
|
|
@@ -572,6 +619,21 @@ public class CostProjectTaskManagerImpl extends BaseManagerImpl<CostProjectTaskD
|
|
|
return title;
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public Integer countForReviewTask(CostTaskReviewPageReq req) {
|
|
|
|
|
|
+ LambdaQueryWrapper<CostProjectTask> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ queryWrapper.eq(CostProjectTask::getIsDeleted, "0")
|
|
|
+ .eq(CostProjectTask::getPid, "0")
|
|
|
+ ;
|
|
|
+
|
|
|
+ if (StringUtil.isNotEmpty(req.getCurrentNode())) {
|
|
|
+ queryWrapper.eq(CostProjectTask::getCurrentNode, req.getCurrentNode());
|
|
|
+ } else {
|
|
|
+ queryWrapper.ne(CostProjectTask::getCurrentNode, NodeConstant.guidang.getNodeKey());
|
|
|
+ }
|
|
|
+
|
|
|
+ return costProjectTaskManager.count(queryWrapper);
|
|
|
+ }
|
|
|
|
|
|
}
|