| | |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import java.util.*; |
| | | import java.util.concurrent.ExecutorService; |
| | | import java.util.concurrent.Executors; |
| | | import java.util.stream.Collectors; |
| | |
| | | Long gxDeviceId = sgProgressReportDO.getGxDeviceId(); |
| | | Long gxStepId = sgProgressReportDO.getGxStepId(); |
| | | List<SgGxStepDO> list = sgGxStepMapper.selectByGxInfoId(gxDeviceId); |
| | | SgGxStepDO sgGxStepDO = sgGxStepMapper.selectById(gxDeviceId); |
| | | SgGxStepDO sgGxStepDO = sgGxStepMapper.selectById(gxStepId); |
| | | LambdaQueryChainWrapper<SgProgressReportDO> wrapper = new LambdaQueryChainWrapper<>(sgProgressReportMapper) |
| | | .eq(SgProgressReportDO::getGxStepId, gxStepId).eq(SgProgressReportDO::getGxDeviceId,gxDeviceId); |
| | | if ( sgProgressReportMapper.selectOne(wrapper)!=null){ |
| | | throw new ServiceException("此工序已存在审批!"); |
| | | } |
| | | for (SgGxStepDO gxStepDO : list) { |
| | | if (Integer.parseInt(sgGxStepDO.getGxStepNum()) - Integer.parseInt(gxStepDO.getGxStepNum()) == 1) { |
| | | LambdaQueryChainWrapper<SgProgressReportDO> wrapper = new LambdaQueryChainWrapper<>(sgProgressReportMapper).eq(SgProgressReportDO::getGxStepId, gxStepDO.getId()); |
| | | SgProgressReportDO one = sgProgressReportMapper.selectOne(wrapper); |
| | | LambdaQueryChainWrapper<SgProgressReportDO> wrapper1 = new LambdaQueryChainWrapper<>(sgProgressReportMapper).eq(SgProgressReportDO::getGxStepId, gxStepDO.getId()); |
| | | SgProgressReportDO one = sgProgressReportMapper.selectOne(wrapper1); |
| | | if (one != null && one.getStatus() != 3) { |
| | | throw new ServiceException("请先完成" + gxStepDO.getGxStepName() + "的审批!"); |
| | | } |
| | |
| | | } |
| | | SgProjectInfoDO sgProjectInfoDO = sgProjectInfoMapper.selectById(sgProgressReportDO.getProframId()); |
| | | if (sgProjectInfoDO != null && sgProjectInfoDO.getStatus() == 0) { |
| | | sgDeviceDO.setStatus(1); |
| | | sgProjectInfoDO.setStatus(1); |
| | | sgProjectInfoMapper.updateById(sgProjectInfoDO); |
| | | } |
| | | } |
| | |
| | | updateChainWrapper.set(SgProgressReportDO::getStatus,1).set(SgProgressReportDO::getAuditPerson,nextUser.getUserId()).update(); |
| | | } |
| | | }else { |
| | | updateChainWrapper.set(SgProgressReportDO::getStatus,0); |
| | | updateChainWrapper.set(SgProgressReportDO::getStatus,3); |
| | | List<SgReportUserDO> sgReportUserDOS = new LambdaQueryChainWrapper<>(sgReportUserMapper).eq(SgReportUserDO::getReportId, id).eq(SgReportUserDO::getIsHis,0) |
| | | .orderByAsc(SgReportUserDO::getApprovalOrder).list() |
| | | // .stream().distinct() |
| | |
| | | |
| | | } |
| | | int size = sgDeviceGxStepDOs.size(); |
| | | if((size*2)/countStatus==1){ |
| | | if(countStatus!=0&&(size*2)/countStatus==1){ |
| | | //如果设备下全部工序审核完成 |
| | | sgDeviceDO.setStatus(2); |
| | | sgDeviceMapper.updateById(sgDeviceDO); |
| | |
| | | public void updateReport(SgProgressReportDO sgProgressReportDO) { |
| | | sgProgressReportMapper.updateById(sgProgressReportDO); |
| | | } |
| | | |
| | | @Override |
| | | public List<SgProgressReportVO> queryList(ProjectSearchDTO searchDTO) { |
| | | Long userId = AuthUtil.getUserId(); |
| | | searchDTO.setUserId(userId); |
| | | List<SgProgressReportVO> list = sgProgressReportMapper.queryList(searchDTO); |
| | | return list; |
| | | } |
| | | |
| | | @Override |
| | | public Map<String, Long> countList(ProjectSearchDTO searchDTO) { |
| | | Long userId = AuthUtil.getUserId(); |
| | | searchDTO.setUserId(userId); |
| | | Long pending = sgProgressReportMapper.countList(searchDTO); |
| | | Long over = sgProgressReportMapper.countList(searchDTO); |
| | | Map<String, Long> map = new HashMap<>(); |
| | | map.put("pending",pending); |
| | | map.put("over",over); |
| | | return map; |
| | | } |
| | | } |
| | | |
| | | |