xiangpei
2025-02-11 3659ccadb8b4e58dd654c151b95bd91d110b8327
business/src/main/java/com/ycl/service/impl/ProjectInfoServiceImpl.java
@@ -49,6 +49,7 @@
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;
@@ -237,15 +238,17 @@
        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);
@@ -287,6 +290,8 @@
        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());
@@ -393,8 +398,6 @@
                .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;
    }