From adafa57e5511069a953f36287a91ad86442d6479 Mon Sep 17 00:00:00 2001 From: wangweijia <495720349@qq.com> Date: Fri, 24 Apr 2020 14:49:25 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BA=97=E9=93=BA=E5=AF=B9=E5=BA=94=E7=9A=84?= =?UTF-8?q?=E6=8E=A8=E5=B9=BF=E7=94=A8=E6=88=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../kiisoo/ic/customer/CustomerService.java | 9 +++---- .../customer/service/CustomerViewService.java | 2 +- .../service/RetailCompanyService.java | 10 ++++++++ .../ic/store/mapper/PoiStoreDOMapper.java | 2 ++ .../ic/store/service/PoiSellerService.java | 9 ++++--- .../ic/store/service/PoiStoreService.java | 24 ++++++++++++------- src/main/resources/application-dev.yml | 2 +- .../resources/mapper/PoiStoreDOMapper.xml | 17 +++++++++++++ 8 files changed, 56 insertions(+), 19 deletions(-) diff --git a/src/main/java/com/kiisoo/ic/customer/CustomerService.java b/src/main/java/com/kiisoo/ic/customer/CustomerService.java index 6a77098..23a40be 100644 --- a/src/main/java/com/kiisoo/ic/customer/CustomerService.java +++ b/src/main/java/com/kiisoo/ic/customer/CustomerService.java @@ -17,6 +17,7 @@ import com.kiisoo.ic.customer.entity.OpVip; import com.kiisoo.ic.customer.mapper.OpCustomerDOMapper; import com.kiisoo.ic.customer.mapper.OpSellerCustomerRelationDOMapper; import com.kiisoo.ic.customer.mapper.OpVipDOMapper; +import com.kiisoo.ic.customer.service.CustomerViewService; import com.kiisoo.ic.domain.service.PrivilageDomainService; import com.kiisoo.ic.generalize.service.RetailCompanyService; import com.kiisoo.ic.store.entity.PoiStore; @@ -73,6 +74,8 @@ public class CustomerService { @Autowired private RetailCompanyService retailCompanyService; + @Autowired + private CustomerViewService customerViewService; /** * token @@ -372,10 +375,8 @@ public class CustomerService { shopIds.retainAll(userAllShops); }else if(companyId != null){ //如果有公司则查公司店铺 - List shops = retailCompanyService.selectShopByCompany(companyId); - shopIds = shops.stream().map(p -> p.getId()).collect(Collectors.toSet()); - List userAllShops = privilageDomainService.listUserDatePermission(userId); - shopIds.retainAll(userAllShops); + Set sp = customerViewService.getCompanyShop(companyId, userId); + shopIds.addAll(sp); }else{ //查询用户权限店铺 shopIds = new HashSet<>(privilageDomainService.listUserDatePermission(userId)); diff --git a/src/main/java/com/kiisoo/ic/customer/service/CustomerViewService.java b/src/main/java/com/kiisoo/ic/customer/service/CustomerViewService.java index 47b21f7..0260014 100644 --- a/src/main/java/com/kiisoo/ic/customer/service/CustomerViewService.java +++ b/src/main/java/com/kiisoo/ic/customer/service/CustomerViewService.java @@ -398,7 +398,7 @@ public class CustomerViewService { //找到公司店铺 List shops = new ArrayList<>(); minCompany.forEach(item -> { - shops.addAll(retailCompanyService.selectShopByCompany(item)); + shops.addAll(retailCompanyService.selectCustomerShopByCompany(item)); }); //公司店铺和权限做交集 Set shopIds = shops.stream().map(p -> p.getId()).collect(Collectors.toSet()); 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 3c80558..d0641d5 100644 --- a/src/main/java/com/kiisoo/ic/generalize/service/RetailCompanyService.java +++ b/src/main/java/com/kiisoo/ic/generalize/service/RetailCompanyService.java @@ -201,6 +201,16 @@ public class RetailCompanyService { return poiStoreDOMapper.selectShopByCustomerIds(new ArrayList<>(customerIds)); } + + /** + * 查询客户公司下的店铺 + * @param orgId 零售公司id + * @return 门店信息 + */ + public List selectCustomerShopByCompany(Long orgId){ + return poiStoreDOMapper.selectCustomerShopByCompany(orgId); + } + /** * 查询零售公司下的店铺 * @param shopId 零售公司id diff --git a/src/main/java/com/kiisoo/ic/store/mapper/PoiStoreDOMapper.java b/src/main/java/com/kiisoo/ic/store/mapper/PoiStoreDOMapper.java index d546ec3..f446b58 100644 --- a/src/main/java/com/kiisoo/ic/store/mapper/PoiStoreDOMapper.java +++ b/src/main/java/com/kiisoo/ic/store/mapper/PoiStoreDOMapper.java @@ -37,6 +37,8 @@ public interface PoiStoreDOMapper extends BaseMapper { List selectShopByCompany(Long orgId); + List selectCustomerShopByCompany(Long orgId); + List selectSellerByShop(Long shopId); String selectStoreQrCode(@Param("shopId")Long shopId); diff --git a/src/main/java/com/kiisoo/ic/store/service/PoiSellerService.java b/src/main/java/com/kiisoo/ic/store/service/PoiSellerService.java index d90d975..26ed73e 100644 --- a/src/main/java/com/kiisoo/ic/store/service/PoiSellerService.java +++ b/src/main/java/com/kiisoo/ic/store/service/PoiSellerService.java @@ -1,5 +1,6 @@ package com.kiisoo.ic.store.service; +import com.kiisoo.ic.customer.service.CustomerViewService; import com.kiisoo.ic.domain.service.PrivilageDomainService; import com.kiisoo.ic.generalize.service.RetailCompanyService; import com.kiisoo.ic.store.bean.PoiStoreStaffDTO; @@ -11,6 +12,7 @@ import org.springframework.stereotype.Service; import java.util.ArrayList; import java.util.List; +import java.util.Set; import java.util.stream.Collectors; /** @@ -29,7 +31,7 @@ public class PoiSellerService { private PrivilageDomainService privilageDomainService; @Autowired - private RetailCompanyService retailCompanyService; + private CustomerViewService customerViewService; /** * 找到店铺id中所有的导购 * @param shopId 店铺id @@ -56,10 +58,7 @@ public class PoiSellerService { shopIds.retainAll(regionShopIds); }else if(companyId != null){ //有公司就查公司店铺 - shopIds = privilageDomainService.listUserDatePermission(userId); - List stores = retailCompanyService.selectShopByCompany(companyId); - List regionShopIds = stores.stream().map(i -> i.getId()).collect(Collectors.toList()); - shopIds.retainAll(regionShopIds); + shopIds.addAll(customerViewService.getCompanyShop(companyId,userId)); }else{ //什么都没有就全查 shopIds = privilageDomainService.listUserDatePermission(userId); 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 20d5a83..1eeba81 100644 --- a/src/main/java/com/kiisoo/ic/store/service/PoiStoreService.java +++ b/src/main/java/com/kiisoo/ic/store/service/PoiStoreService.java @@ -1,6 +1,7 @@ package com.kiisoo.ic.store.service; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.kiisoo.ic.customer.service.CustomerViewService; import com.kiisoo.ic.domain.service.PrivilageDomainService; import com.kiisoo.ic.generalize.service.RetailCompanyService; import com.kiisoo.ic.store.bean.PoiStoreStaffDTO; @@ -13,6 +14,7 @@ import org.springframework.stereotype.Service; import java.util.ArrayList; import java.util.List; +import java.util.Set; /** * 店铺 @@ -28,6 +30,9 @@ public class PoiStoreService { @Autowired private RetailCompanyService retailCompanyService; + + @Autowired + private CustomerViewService customerViewService; /** * 根据区域id找到店铺集合 * @param regionId @@ -41,22 +46,25 @@ public class PoiStoreService { * 根据区域id找到店铺集合,若没有,则查用户所有店铺 * @param regionId */ - public List getRegionShop(long userId,Long bigRegionId, Long companyId){ + public List getRegionShop(long userId,Long regionId, Long companyId){ List poiStores = new ArrayList<>(); //找到店铺集合 List shopsIds = privilageDomainService.listUserDatePermission(userId); - if(companyId != null){ - List regionPoiStores = retailCompanyService.selectShopByCompany(companyId); + if(null != regionId){ + List regionPoiStores = poiStoreDOMapper.selectRegionShop(regionId); for(PoiStore item : regionPoiStores){ if(shopsIds.contains(item.getId())){ poiStores.add(item); } } - }else if(null != bigRegionId){ - List regionPoiStores = retailCompanyService.selectShopByBigRegion(bigRegionId); - for(PoiStore item : regionPoiStores){ - if(shopsIds.contains(item.getId())){ - poiStores.add(item); + }else if(companyId != null){ + Set shops = customerViewService.getCompanyShop(companyId,userId); + if(shops.size() > 0){ + List regionPoiStores = poiStoreDOMapper.selectBatchIds(shops); + for(PoiStore item : regionPoiStores){ + if(shopsIds.contains(item.getId())){ + poiStores.add(item); + } } } }else{ diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml index f7fd93a..d5fc41d 100644 --- a/src/main/resources/application-dev.yml +++ b/src/main/resources/application-dev.yml @@ -8,7 +8,7 @@ mybatis: spring: datasource: - url: jdbc:mysql://192.168.0.215:3306/ic?characterEncoding=utf8&allowMultiQueries=true&autoReconnect=true + url: jdbc:mysql://192.168.0.215:3306/ic1?characterEncoding=utf8&allowMultiQueries=true&autoReconnect=true username: p2p password: p2p driver-class-name: com.mysql.jdbc.Driver diff --git a/src/main/resources/mapper/PoiStoreDOMapper.xml b/src/main/resources/mapper/PoiStoreDOMapper.xml index 01f54ce..a21103e 100644 --- a/src/main/resources/mapper/PoiStoreDOMapper.xml +++ b/src/main/resources/mapper/PoiStoreDOMapper.xml @@ -45,6 +45,23 @@ and t2.entity_id = t3.id and t2.type = 3 + + + +