diff --git a/src/main/java/com/kiisoo/ic/generalize/service/RetailCompanyService.java b/src/main/java/com/kiisoo/ic/generalize/service/RetailCompanyService.java index cdf57b7..50abb16 100644 --- a/src/main/java/com/kiisoo/ic/generalize/service/RetailCompanyService.java +++ b/src/main/java/com/kiisoo/ic/generalize/service/RetailCompanyService.java @@ -20,6 +20,7 @@ import com.kiisoo.ic.system.entity.PrivilageRoleDO; import com.kiisoo.ic.system.entity.PrivilageUserDO; import com.kiisoo.ic.system.enums.RoleEnum; import com.kiisoo.ic.system.mapper.PrivilageUserDOMapper; +import org.apache.commons.collections.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -597,56 +598,60 @@ public class RetailCompanyService { List sellerIds = retailCompanyMapper.selectSellerIdsByShop(orgId, shopIds, sellerId); List list = new ArrayList<>(); - //查询所有的用户信息 - List list2 = privilageUserDOMapper.selectListPr(sellerIds); - Map map = list2.stream().collect(Collectors.toMap(PrivilageUserDO::getSellerId, p -> p)); - - //所有的导购客户个数 - List> map1 = opSellerCustomerRelationDOMapper.selectAllCustomer(sellerIds); - Map collect = map1 == null ? new HashMap<>() : map1.stream().collect(Collectors.toMap(m -> Long.parseLong(m.get("user_id").toString()), m1 -> m1.get("count"))); - //所有的导购有效客户个数 - List> map3 = opSellerCustomerRelationDOMapper.selectAllCustomer1(sellerIds); - Map collect1 = map3 == null ? new HashMap<>() : map3.stream().collect(Collectors.toMap(m -> Long.parseLong(m.get("user_id").toString()), m1 -> m1.get("count"))); - - List list1 = poiStoreStaffDOMapper.selectList(null); - Map map2 = list1.stream().collect(Collectors.toMap(PoiStoreStaff::getId, p -> p)); - - sellerIds.forEach(seller -> { - SellerOrganizationalVO sellerOrganizationalVO = new SellerOrganizationalVO(); - long count = 0; - //查询所有的客户 - count = collect.get(seller) == null ? 0 : Long.parseLong(collect.get(seller).toString()); - long countAble = 0; - countAble = collect1.get(seller) == null ? 0 : Long.parseLong(collect1.get(seller).toString()); - - //查询导购信息 - PrivilageUserDO privilageUserDO = map.get(seller); - PoiStoreStaff poiStoreStaff = map2.get(seller); - //计算新客户数据 - newCustomerUser(startTime, endTime, sellerOrganizationalVO, Collections.singletonList(seller)); - //查询导购所属公司门店 - CompanyStoreDO companyStoreDO = poiStoreDOMapper.selectCompanyStore(seller); - sellerOrganizationalVO.setShopName(companyStoreDO == null ? null : companyStoreDO.getShopName()); - sellerOrganizationalVO.setShopCode(companyStoreDO == null ? null : companyStoreDO.getShopCode()); - sellerOrganizationalVO.setSellerCode(poiStoreStaff == null ? null : poiStoreStaff.getStaffCode()); - sellerOrganizationalVO.setCompanyName(companyStoreDO == null ? null : companyStoreDO.getCompanyName()); - sellerOrganizationalVO.setSellerName(privilageUserDO == null ? null : privilageUserDO.getName()); - sellerOrganizationalVO.setAllCustomer((int) count); - sellerOrganizationalVO.setEffectiveCustomer((int) countAble); - list.add(sellerOrganizationalVO); - }); + if (CollectionUtils.isNotEmpty(sellerIds)){ + //查询所有的用户信息 + List list2 = privilageUserDOMapper.selectListPr(sellerIds); + Map map = list2.stream().collect(Collectors.toMap(PrivilageUserDO::getSellerId, p -> p)); + + //所有的导购客户个数 + List> map1 = opSellerCustomerRelationDOMapper.selectAllCustomer(sellerIds); + Map collect = map1 == null ? new HashMap<>() : map1.stream().collect(Collectors.toMap(m -> Long.parseLong(m.get("user_id").toString()), m1 -> m1.get("count"))); + //所有的导购有效客户个数 + List> map3 = opSellerCustomerRelationDOMapper.selectAllCustomer1(sellerIds); + Map collect1 = map3 == null ? new HashMap<>() : map3.stream().collect(Collectors.toMap(m -> Long.parseLong(m.get("user_id").toString()), m1 -> m1.get("count"))); + + List list1 = poiStoreStaffDOMapper.selectList(null); + Map map2 = list1.stream().collect(Collectors.toMap(PoiStoreStaff::getId, p -> p)); + + sellerIds.forEach(seller -> { + SellerOrganizationalVO sellerOrganizationalVO = new SellerOrganizationalVO(); + long count = 0; + //查询所有的客户 + count = collect.get(seller) == null ? 0 : Long.parseLong(collect.get(seller).toString()); + long countAble = 0; + countAble = collect1.get(seller) == null ? 0 : Long.parseLong(collect1.get(seller).toString()); + + //查询导购信息 + PrivilageUserDO privilageUserDO = map.get(seller); + PoiStoreStaff poiStoreStaff = map2.get(seller); + //计算新客户数据 + newCustomerUser(startTime, endTime, sellerOrganizationalVO, Collections.singletonList(seller)); + //查询导购所属公司门店 + CompanyStoreDO companyStoreDO = poiStoreDOMapper.selectCompanyStore(seller); + sellerOrganizationalVO.setShopName(companyStoreDO == null ? null : companyStoreDO.getShopName()); + sellerOrganizationalVO.setShopCode(companyStoreDO == null ? null : companyStoreDO.getShopCode()); + sellerOrganizationalVO.setSellerCode(poiStoreStaff == null ? null : poiStoreStaff.getStaffCode()); + sellerOrganizationalVO.setCompanyName(companyStoreDO == null ? null : companyStoreDO.getCompanyName()); + sellerOrganizationalVO.setSellerName(privilageUserDO == null ? null : privilageUserDO.getName()); + sellerOrganizationalVO.setAllCustomer((int) count); + sellerOrganizationalVO.setEffectiveCustomer((int) countAble); + list.add(sellerOrganizationalVO); + }); - OrganizationVO vo = new OrganizationVO(); - //总条数 - if (sellerIds.size() > 0) { - vo.setDataVOS(list); - Page pageList = (Page) sellerIds; - long totalSize = pageList.getTotal(); - vo.setSizeNum(totalSize); - } else { + OrganizationVO vo = new OrganizationVO(); + //总条数 + if (sellerIds.size() > 0) { + vo.setDataVOS(list); + Page pageList = (Page) sellerIds; + long totalSize = pageList.getTotal(); + vo.setSizeNum(totalSize); + } else { + return new OrganizationVO(); + } + return vo; + }else{ return new OrganizationVO(); } - return vo; } /** diff --git a/src/main/java/com/kiisoo/ic/system/service/impl/PrivilageUserServiceImpl.java b/src/main/java/com/kiisoo/ic/system/service/impl/PrivilageUserServiceImpl.java index 21318c8..fe9c37e 100644 --- a/src/main/java/com/kiisoo/ic/system/service/impl/PrivilageUserServiceImpl.java +++ b/src/main/java/com/kiisoo/ic/system/service/impl/PrivilageUserServiceImpl.java @@ -103,6 +103,7 @@ public class PrivilageUserServiceImpl extends ServiceImpl