| | |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.springblade.core.log.exception.ServiceException; |
| | | import org.springblade.core.secure.utils.AuthUtil; |
| | | import org.springblade.core.tool.support.Kv; |
| | | import org.springblade.core.tool.utils.DateUtil; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | |
| | | for (SgReportUserDO sgReportUserDO : list) { |
| | | if (user.get("ID").equals(sgReportUserDO.getUserId())){ |
| | | sgReportUserDO.setUserName(user.get("REAL_NAME").toString()); |
| | | sgReportUserDO.setDeptName(user.get("DEPTNAME").toString()); |
| | | } |
| | | } |
| | | } |
| | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public void approval(ApprovalDTO approvalDTO) { |
| | | Integer isReject = approvalDTO.getIsReject(); |
| | | Long userId = approvalDTO.getUserId(); |
| | | Long id = approvalDTO.getId(); |
| | | List<SgReportUserDO> list = new LambdaQueryChainWrapper<>(sgReportUserMapper).eq(SgReportUserDO::getReportId, id).eq(SgReportUserDO::getIsHis,0) |
| | | .eq(SgReportUserDO::getApprovalStatus, 0).orderByDesc(SgReportUserDO::getApprovalOrder).list(); |
| | | SgReportUserDO sgReportUserDO = list.stream().filter(s -> s.getUserId().equals(approvalDTO.getUserId())).findFirst().get(); |
| | | //审批者 |
| | | SgReportUserDO sgReportUserDO = new SgReportUserDO(); |
| | | if (isReject==0){ |
| | | list.stream().filter(s -> s.getUserId().equals(userId)).findFirst().get(); |
| | | } |
| | | if (isReject==1){ |
| | | sgReportUserDO.setUserId(userId); |
| | | } |
| | | Date date = new Date(); |
| | | LambdaUpdateChainWrapper<SgProgressReportDO> updateChainWrapper = new LambdaUpdateChainWrapper<>(sgProgressReportMapper).eq(SgProgressReportDO::getId, id); |
| | | LambdaUpdateChainWrapper<SgReportUserDO> userUpdate = new LambdaUpdateChainWrapper<>(sgReportUserMapper) |
| | |
| | | // .stream().distinct() |
| | | // .stream().filter(s->s.getApprovalOrder()!=0 && s.getApprovalOrder()<= sgReportUserDO.getApprovalOrder()).collect(Collectors.toList()) |
| | | ; |
| | | userUpdate.set(SgReportUserDO::getApprovalStatus,2).update(); |
| | | userUpdate.set(SgReportUserDO::getApprovalStatus,2).update(); |
| | | for (SgReportUserDO reportUserDO : sgReportUserDOS) { |
| | | if (reportUserDO.getApprovalOrder()<=sgReportUserDO.getApprovalOrder()&&reportUserDO.getApprovalOrder()!=0){ |
| | | //更新为历史数据 |
| | |
| | | @Override |
| | | public Map<String, Long> countListAll(ProjectSearchDTO searchDTO) { |
| | | List<SgProgressReportVO> list = sgProgressReportMapper.queryPageListAll(null, searchDTO); |
| | | List<SgProgressReportVO> pending = list.stream().filter(s -> s.getStatus() == 0).collect(Collectors.toList()); |
| | | List<SgProgressReportVO> over = list.stream().filter(s -> s.getStatus() == 1||s.getStatus()==2).collect(Collectors.toList()); |
| | | List<SgProgressReportVO> reject = list.stream().filter(s -> s.getStatus() == 3).collect(Collectors.toList()); |
| | | Map<String, Long> map = new HashMap<>(); |
| | | map.put("pending", (long) pending.size()); |
| | | map.put("over", (long) over.size()); |
| | | map.put("reject", (long) reject.size()); |
| | | getStatusCountByList(list, map); |
| | | return map; |
| | | } |
| | | |
| | |
| | | public Map<String, Long> statusCount(ProjectSearchDTO searchDTO) { |
| | | List<SgProgressReportVO> list = sgProgressReportMapper.statusCount(searchDTO); |
| | | Map<String, Long> map = new HashMap<>(); |
| | | getStatusCountByList(list, map); |
| | | return map; |
| | | } |
| | | |
| | | private void getStatusCountByList(List<SgProgressReportVO> list, Map<String, Long> map) { |
| | | List<SgProgressReportVO> pending = list.stream().filter(s -> s.getStatus() == 0).collect(Collectors.toList()); |
| | | List<SgProgressReportVO> progress = list.stream().filter(s -> s.getStatus() == 1).collect(Collectors.toList()); |
| | | List<SgProgressReportVO> over = list.stream().filter(s -> s.getStatus() == 2).collect(Collectors.toList()); |
| | |
| | | map.put("over", (long) over.size()); |
| | | map.put("reject", (long) reject.size()); |
| | | map.put("draft", (long) draft.size()); |
| | | return map; |
| | | } |
| | | |
| | | @Override |