From eb0760c36778d07c0d13d917c0db30dfa03aa0fd Mon Sep 17 00:00:00 2001
From: yxm <zhp1521624>
Date: Mon, 15 Jul 2024 11:45:46 +0800
Subject: [PATCH] 项目进度上报逻辑优化及工序配置v0.4
---
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProgressReportServiceImpl.java | 55 +++++++++++++++++++++++++++++++------------------------
1 files changed, 31 insertions(+), 24 deletions(-)
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProgressReportServiceImpl.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProgressReportServiceImpl.java
index 71d560e..d0a31ae 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProgressReportServiceImpl.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProgressReportServiceImpl.java
@@ -443,45 +443,52 @@
if (CollectionUtils.isNotEmpty(sgProgressReportDOS)) {
sgProgressReportDOS.sort((u1, u2) -> u2.getCreateTime().compareTo(u1.getCreateTime()));
SgProgressReportDO firstReport = sgProgressReportDOS.get(0);
-
- if (firstReport.getReportUser().equals(AuthUtil.getUserId()) && firstReport.getStatus().equals(3)) {
sgReportVO.setGxDeviceId(deviceId);
- sgReportVO.setGxStepId(stepId);
+ sgReportVO.setGxStepId(firstReport.getGxStepId());
sgReportVO.setId(firstReport.getId());
sgReportVO.setProframId(firstReport.getProframId());
- return sgReportVO;
- } else {
- sgReportVO.setGxDeviceId(deviceId);
- sgReportVO.setGxStepId(stepId);
- sgReportVO.setId(firstReport.getId());
- sgReportVO.setProframId(firstReport.getProframId());
- return sgReportVO;
- }
} else {
-
-
QueryWrapper<SgProgressReportDO> wrappers = new QueryWrapper<>();
wrappers.eq("gx_device_id", deviceId).ne("status", 4).orderByDesc("create_time");
sgProgressReportDOS = sgProgressReportMapper.selectList(wrappers);
-
+ QueryWrapper<SgGxStepDO> wrapperss = new QueryWrapper<>();
if (CollectionUtils.isNotEmpty(sgProgressReportDOS)) {
sgProgressReportDOS.sort((u1, u2) -> u2.getCreateTime().compareTo(u1.getCreateTime()));
SgProgressReportDO firstReport = sgProgressReportDOS.get(0);
-
- if (firstReport.getReportUser().equals(AuthUtil.getUserId()) && firstReport.getStatus().equals(2)) {
- sgReportVO.setGxDeviceId(deviceId);
- sgReportVO.setGxStepId(stepId);
- sgReportVO.setProframId(firstReport.getProframId());
- } else {
- throw new ServiceException("请完成上一步工序!");
+ SgGxStepDO sgGxStepDO = sgGxStepMapper.selectOne(wrapperss.eq("id", stepId));
+ List<SgGxStepDO> sgGxStepDOS = sgGxStepMapper.selectList(
+ new QueryWrapper<SgGxStepDO>()
+ .lt("id", stepId)
+ .eq("gx_info_id", sgGxStepDO.getGxInfoId())
+ .orderByDesc("gx_step_num"));
+ if (!sgGxStepDOS.isEmpty()) {
+ if (sgGxStepDOS.get(0).getGxStepName().equals(firstReport.getGxStepName())&&firstReport.getStatus().equals(2)) {
+ sgReportVO.setGxDeviceId(deviceId);
+ sgReportVO.setGxStepId(sgGxStepDO.getId());
+ sgReportVO.setProframId(firstReport.getProframId());
+ }else {
+ throw new ServiceException("请完成上一步工序!");
+ }
}
+
+ }else {
+ if (stepId!=null) {
+ SgGxStepDO sg = sgGxStepMapper.selectOne(wrapperss.eq("id", stepId));
+ if (sg.getGxStepNum().equals("01")) {
+ sgReportVO.setGxDeviceId(deviceId);
+ sgReportVO.setGxStepId(sg.getId());
+ sgReportVO.setProframId(sgProgressReportMapper.selectProframId(deviceId));
+ }
+ throw new ServiceException("第一工序未进行审批!");
+ }
+ sgReportVO.setProframId(sgProgressReportMapper.selectProframId(deviceId));
+ sgReportVO.setGxStepId(sgGxStepMapper.queryStepList(deviceId.toString()).get(0).getId());
+ sgReportVO.setGxDeviceId(deviceId);
}
}
- sgReportVO.setGxDeviceId(deviceId);
- sgReportVO.setGxStepId(stepId);
- sgReportVO.setProframId(sgProgressReportMapper.selectProframId(deviceId));
+
return sgReportVO;
}
--
Gitblit v1.9.3