| | |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | import org.springframework.util.Assert; |
| | | import org.springframework.util.CollectionUtils; |
| | | import org.springframework.web.multipart.MultipartFile; |
| | | |
| | | import javax.servlet.ServletOutputStream; |
| | |
| | | Long userId = SecurityUtils.getUserId(); |
| | | String ancestors = sysDeptMapper.selectAncestors(userId); |
| | | String[] ancestorArr = ancestors.split(","); |
| | | // for (String ancestor : ancestorArr) { |
| | | // if ("101".equals(ancestor)) { // 业主 |
| | | // query.setCreateBy(userId); |
| | | // query.setRole(0); |
| | | // } else if ("102".equals(ancestor)) { // 审批 |
| | | // query.setUsedStatus(1); |
| | | // query.setRole(1); |
| | | // } |
| | | // } |
| | | List<String> ancestorList = Arrays.stream(ancestorArr).collect(Collectors.toList()); |
| | | ancestorList.add(SecurityUtils.getDeptId()+""); |
| | | if(!CollectionUtils.isEmpty(ancestorList) && ancestorList.contains("101")){ |
| | | query.setProjectOwnerUnit(SecurityUtils.getDeptId()); |
| | | //业主 |
| | | query.setRole(0); |
| | | }else if(!CollectionUtils.isEmpty(ancestorList) && ancestorList.contains("102")){ |
| | | query.setCompetentDepartment(SecurityUtils.getDeptId()); |
| | | //审批 对应主管部门 |
| | | query.setRole(1); |
| | | } |
| | | |
| | | IPage<ProjectInfoVO> page = PageUtil.getPage(query, ProjectInfoVO.class); |
| | | baseMapper.getPage(query, page); |
| | |
| | | ProjectInfo entity = baseMapper.getById(id); |
| | | Assert.notNull(entity, "记录不存在"); |
| | | ProjectInfoVO vo = ProjectInfoVO.getVoByEntity(entity, null); |
| | | List<Long> departmentList = vo.getCompetentDepartmentList(); |
| | | vo.setAuditRole(SecurityUtils.isAdmin(SecurityUtils.getUserId()) || (!CollectionUtils.isEmpty(departmentList) && departmentList.contains(SecurityUtils.getDeptId()))); |
| | | QueryWrapper<File> fileQueryWrapper = new QueryWrapper<>(); |
| | | fileQueryWrapper.eq("type", FileTypeEnum.PROJECT_INFO.getType()); |
| | | fileQueryWrapper.eq("bus_id", vo.getId()); |
| | |
| | | indexCountVO.setProPhaseCountVO(proPhaseCountVO); |
| | | |
| | | List<IndexImpTypeCountVO> impTypeCountVO = new ArrayList<>(); |
| | | impTypeCountVO.add(new IndexImpTypeCountVO("一般项目", province.size(), province.stream(). |
| | | impTypeCountVO.add(new IndexImpTypeCountVO("一般项目", normal.size(), normal.stream(). |
| | | filter(item -> !StringUtils.isEmpty(item.getTotalInvestment())) |
| | | .map(item -> new BigDecimal(item.getTotalInvestment()).setScale(2, RoundingMode.HALF_UP)) |
| | | .reduce(BigDecimal.ZERO, BigDecimal::add).divide(new BigDecimal("100000000"), 2, RoundingMode.HALF_UP).toString(), "普")); |
| | | |
| | | impTypeCountVO.add(new IndexImpTypeCountVO("县重点项目", city.size(), city.stream(). |
| | | impTypeCountVO.add(new IndexImpTypeCountVO("县重点项目", county.size(), county.stream(). |
| | | filter(item -> !StringUtils.isEmpty(item.getTotalInvestment())) |
| | | .map(item -> new BigDecimal(item.getTotalInvestment()).setScale(2, RoundingMode.HALF_UP)) |
| | | .reduce(BigDecimal.ZERO, BigDecimal::add).divide(new BigDecimal("100000000"), 2, RoundingMode.HALF_UP).toString(), "县")); |
| | | |
| | | impTypeCountVO.add(new IndexImpTypeCountVO("市重点项目", county.size(), county.stream(). |
| | | impTypeCountVO.add(new IndexImpTypeCountVO("市重点项目", city.size(), city.stream(). |
| | | filter(item -> !StringUtils.isEmpty(item.getTotalInvestment())) |
| | | .map(item -> new BigDecimal(item.getTotalInvestment()).setScale(2, RoundingMode.HALF_UP)) |
| | | .reduce(BigDecimal.ZERO, BigDecimal::add).divide(new BigDecimal("100000000"), 2, RoundingMode.HALF_UP).toString(), "市")); |
| | | |
| | | impTypeCountVO.add(new IndexImpTypeCountVO("省重点项目", normal.size(), normal.stream(). |
| | | impTypeCountVO.add(new IndexImpTypeCountVO("省重点项目", province.size(), province.stream(). |
| | | filter(item -> !StringUtils.isEmpty(item.getTotalInvestment())) |
| | | .map(item -> new BigDecimal(item.getTotalInvestment()).setScale(2, RoundingMode.HALF_UP)) |
| | | .reduce(BigDecimal.ZERO, BigDecimal::add).divide(new BigDecimal("100000000"), 2, RoundingMode.HALF_UP).toString(), "省")); |
| | | indexCountVO.setImpTypeCountVO(impTypeCountVO); |
| | | |
| | | |
| | | return indexCountVO; |
| | | } |
| | | |