yxm
2024-07-13 350c8c98dd6c435df0f8bb46c513e6e3422a58d4
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProgressReportServiceImpl.java
@@ -443,45 +443,44 @@
      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)) {
            if (firstReport.getStatus().equals(2)) {
               sgReportVO.setGxDeviceId(deviceId);
               sgReportVO.setGxStepId(stepId);
               sgReportVO.setGxStepId(sgGxStepMapper.selectOne(wrapperss.eq("id", stepId)).getId());
               sgReportVO.setProframId(firstReport.getProframId());
            } else {
            }
            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;
   }