xuhy
2 天以前 bf74fbaa6732c5a192555a856de585ac9f70f3aa
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TCrmBranchServiceImpl.java
@@ -48,21 +48,23 @@
    @Override
    public PageInfo<TCrmBranchVO> pageList(TCrmBranchQuery query) {
        PageInfo<TCrmBranchVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
        List<TCrmBranchArea> crmBranchAreas = new ArrayList<>();
        if(StringUtils.isNotEmpty(query.getCityCode())){
            crmBranchAreas = crmBranchAreaService.list(Wrappers.lambdaQuery(TCrmBranchArea.class)
                    .eq(TCrmBranchArea::getCityCode, query.getCityCode()));
        }
        if(!StringUtils.isNotEmpty(query.getCityCode()) && StringUtils.isNotEmpty(query.getProvinceCode())){
        if(StringUtils.isNotEmpty(query.getProvinceCode())){
            crmBranchAreas = crmBranchAreaService.list(Wrappers.lambdaQuery(TCrmBranchArea.class)
                    .eq(TCrmBranchArea::getProvinceCode, query.getProvinceCode()));
        }
        if(!CollectionUtils.isEmpty(crmBranchAreas)){
            List<String> branchIds = crmBranchAreas.stream().map(TCrmBranchArea::getBranchId).collect(Collectors.toList());
            query.setBranchIds(branchIds);
        }else {
            return pageInfo;
        }
        PageInfo<TCrmBranchVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
        List<TCrmBranchVO> list = this.baseMapper.pageList(query,pageInfo);
        if(CollectionUtils.isEmpty(list)){
            return pageInfo;
@@ -90,9 +92,21 @@
        if(Objects.nonNull(sysUser)){
            return R.fail(dto.getPhone()+"-账号已存在");
        }
        List<TCrmBranchArea> branchAreas = dto.getBranchAreas();
        // 判断是否已存在这些区域
        if(!CollectionUtils.isEmpty(branchAreas)){
            List<String> branchAreaCityCodes = branchAreas.stream().map(TCrmBranchArea::getCityCode).collect(Collectors.toList());
            if(!CollectionUtils.isEmpty(branchAreaCityCodes)){
                long count = crmBranchAreaService.count(Wrappers.lambdaQuery(TCrmBranchArea.class).in(TCrmBranchArea::getCityCode, branchAreaCityCodes));
                if(count > 0){
                    return R.fail("区域已存在");
                }
            }
        }
        this.save(dto);
        // 添加区域
        List<TCrmBranchArea> branchAreas = dto.getBranchAreas();
        branchAreas.forEach(t -> t.setBranchId(dto.getId()));
        crmBranchAreaService.saveBatch(branchAreas);
        // 添加职位薪资
@@ -137,11 +151,20 @@
            return R.fail(dto.getPhone()+"-账号已存在");
        }
        SysUser user = sysUserService.selectUserById(dto.getUserId());
        List<TCrmBranchArea> branchAreas = dto.getBranchAreas();
        // 判断是否已存在这些区域
        if(!CollectionUtils.isEmpty(branchAreas)){
            List<String> branchAreaCityCodes = branchAreas.stream().map(TCrmBranchArea::getCityCode).collect(Collectors.toList());
            long count = crmBranchAreaService.count(Wrappers.lambdaQuery(TCrmBranchArea.class).in(TCrmBranchArea::getCityCode, branchAreaCityCodes)
                    .ne(TCrmBranchArea::getBranchId, dto.getId()));
            if(count > 0){
                return R.fail("区域存在重复");
            }
        }
        this.updateById(dto);
        // 删除区域
        crmBranchAreaService.remove(Wrappers.lambdaQuery(TCrmBranchArea.class).eq(TCrmBranchArea::getBranchId, dto.getId()));
        // 添加区域
        List<TCrmBranchArea> branchAreas = dto.getBranchAreas();
        branchAreas.forEach(t -> t.setBranchId(dto.getId()));
        crmBranchAreaService.saveBatch(branchAreas);
        // 删除职位薪资