From 9bb0750757c8067b178536990426e902b3f9e1bb Mon Sep 17 00:00:00 2001 From: kevin jiang Date: Tue, 19 May 2020 17:54:43 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=97=AE=E9=A2=98=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/RetailCompanyService.java | 3 ++- .../ic/store/service/PoiStoreService.java | 23 +++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) 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 da3cff1..2e8c03e 100644 --- a/src/main/java/com/kiisoo/ic/generalize/service/RetailCompanyService.java +++ b/src/main/java/com/kiisoo/ic/generalize/service/RetailCompanyService.java @@ -24,6 +24,7 @@ import org.apache.commons.collections.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.math.BigDecimal; import java.time.LocalDate; import java.time.LocalDateTime; import java.time.temporal.ChronoUnit; @@ -396,7 +397,7 @@ public class RetailCompanyService { organizationalVO.setDelRate(check(new Long(allAge), count)); } - Integer avgStoreCustomer = organizationalVO.getAllCustomer() / stores.size(); + Integer avgStoreCustomer = new BigDecimal(organizationalVO.getAllCustomer()).divide(new BigDecimal(stores.size()), BigDecimal.ROUND_HALF_UP).intValue(); organizationalVO.setAvgStoreCustomer(avgStoreCustomer); list.add(organizationalVO); }); diff --git a/src/main/java/com/kiisoo/ic/store/service/PoiStoreService.java b/src/main/java/com/kiisoo/ic/store/service/PoiStoreService.java index cea7d74..c67b922 100644 --- a/src/main/java/com/kiisoo/ic/store/service/PoiStoreService.java +++ b/src/main/java/com/kiisoo/ic/store/service/PoiStoreService.java @@ -18,6 +18,8 @@ import java.util.HashSet; import java.util.List; import java.util.Set; +import static java.util.stream.Collectors.toList; + /** * 店铺 */ @@ -83,4 +85,25 @@ public class PoiStoreService { List baseShopDOS = poiStoreDOMapper.selectList(null); return baseShopDOS; } + + /** + * 根据区域id找到店铺集合,若没有,则查用户所有店铺 + * @param companyId 零售公司ID + */ + public List getStoreByCompanyId(long userId,Long companyId){ + List poiStores = new ArrayList<>(); + //找到店铺集合 + List shopsIds = privilageDomainService.listUserDatePermission(userId); + if(!companyId.equals(0L)){ + Set shops = customerViewService.getCompanyShop(companyId,userId); + if(shops.size() > 0){ + List regionPoiStores = poiStoreDOMapper.selectBatchIds(shops); + List intersection = regionPoiStores.stream().filter(item -> shops.contains(item.getId())).collect(toList()); + return intersection; + } + }else{ + poiStores = poiStoreDOMapper.selectBatchIds(shopsIds); + } + return poiStores; + } }