From ba5378743aa7afad6957b7aca2bff77d777b2631 Mon Sep 17 00:00:00 2001 From: wangweijia <495720349@qq.com> Date: Thu, 16 Apr 2020 15:39:08 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8B=E6=8B=89=E6=A1=86=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../store/controller/PoiStoreController.java | 4 ++-- .../controller/PoiStoreStaffController.java | 4 ++-- .../ic/store/service/PoiSellerService.java | 15 +++++++++++--- .../ic/store/service/PoiStoreService.java | 20 +++++++++++++------ 4 files changed, 30 insertions(+), 13 deletions(-) diff --git a/src/main/java/com/kiisoo/ic/store/controller/PoiStoreController.java b/src/main/java/com/kiisoo/ic/store/controller/PoiStoreController.java index e419966..ad2d779 100644 --- a/src/main/java/com/kiisoo/ic/store/controller/PoiStoreController.java +++ b/src/main/java/com/kiisoo/ic/store/controller/PoiStoreController.java @@ -29,9 +29,9 @@ public class PoiStoreController extends BaseController { */ @RequestMapping(value = "/user/shop",method = RequestMethod.GET) @ResponseBody - public Map getUserShop(@RequestParam("userId")long userId, Long regionId){ + public Map getUserShop(@RequestParam("userId")long userId, Long regionId, Long companyId){ try { - return data(poiStoreService.getRegionShop(userId,regionId)); + return data(poiStoreService.getRegionShop(userId,regionId,companyId)); }catch (Exception e){ log.error("获取用户店铺失败",e); return fail(); diff --git a/src/main/java/com/kiisoo/ic/store/controller/PoiStoreStaffController.java b/src/main/java/com/kiisoo/ic/store/controller/PoiStoreStaffController.java index 8109275..028215a 100644 --- a/src/main/java/com/kiisoo/ic/store/controller/PoiStoreStaffController.java +++ b/src/main/java/com/kiisoo/ic/store/controller/PoiStoreStaffController.java @@ -29,9 +29,9 @@ public class PoiStoreStaffController extends BaseController { */ @ResponseBody @PostMapping("/user/seller") - public Map getSellerData(@RequestParam("userId")long userId, Long shopId, Long regionId){ + public Map getSellerData(@RequestParam("userId")long userId, Long shopId, Long regionId, Long companyId){ try { - return data(poiSellerService.getAllSeller(regionId, shopId, userId)); + return data(poiSellerService.getAllSeller(regionId, shopId, userId, companyId)); }catch (Exception e){ log.error("查找用户管辖的导购",e); return fail(); 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 182cc00..9a94dfa 100644 --- a/src/main/java/com/kiisoo/ic/store/service/PoiSellerService.java +++ b/src/main/java/com/kiisoo/ic/store/service/PoiSellerService.java @@ -1,6 +1,7 @@ package com.kiisoo.ic.store.service; import com.kiisoo.ic.domain.service.PrivilageDomainService; +import com.kiisoo.ic.generalize.service.RetailCompanyService; import com.kiisoo.ic.store.bean.PoiStoreStaffDTO; import com.kiisoo.ic.store.entity.PoiStore; import com.kiisoo.ic.store.mapper.PoiStoreDOMapper; @@ -26,6 +27,9 @@ public class PoiSellerService { @Autowired private PrivilageDomainService privilageDomainService; + + @Autowired + private RetailCompanyService retailCompanyService; /** * 找到店铺id中所有的导购 * @param shopId 店铺id @@ -38,19 +42,24 @@ public class PoiSellerService { /** * 找到区域或者店铺中所有的导购 */ - public List getAllSeller(Long regionId, Long shopId, long userId){ + public List getAllSeller(Long regionId, Long shopId, long userId, Long companyId){ List shopIds = new ArrayList<>(); //先找到店铺 if(null != shopId){ //有店铺就用店铺 shopIds.add(shopId); }else if(regionId != null){ - //什么都没有就全查 - shopIds = privilageDomainService.listUserDatePermission(userId); //有区域就查区域店铺 + shopIds = privilageDomainService.listUserDatePermission(userId); List stores = poiStoreService.getRegionShop(regionId); List regionShopIds = stores.stream().map(i -> i.getId()).collect(Collectors.toList()); shopIds.retainAll(regionShopIds); + }else if(companyId != null){ + //有公司就查公司店铺 + shopIds = privilageDomainService.listUserDatePermission(userId); + List stores = retailCompanyService.selectShopByCompany(regionId); + List regionShopIds = stores.stream().map(i -> i.getId()).collect(Collectors.toList()); + shopIds.retainAll(regionShopIds); }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 4e00144..eff46b1 100644 --- a/src/main/java/com/kiisoo/ic/store/service/PoiStoreService.java +++ b/src/main/java/com/kiisoo/ic/store/service/PoiStoreService.java @@ -2,6 +2,7 @@ package com.kiisoo.ic.store.service; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.kiisoo.ic.domain.service.PrivilageDomainService; +import com.kiisoo.ic.generalize.service.RetailCompanyService; import com.kiisoo.ic.store.bean.PoiStoreStaffDTO; import com.kiisoo.ic.store.entity.PoiStore; import com.kiisoo.ic.store.entity.PoiStoreStaff; @@ -23,10 +24,10 @@ public class PoiStoreService { private PoiStoreDOMapper poiStoreDOMapper; @Autowired - private PoiStoreStaffDOMapper poiStoreStaffDOMapper; + private PrivilageDomainService privilageDomainService; @Autowired - private PrivilageDomainService privilageDomainService; + private RetailCompanyService retailCompanyService; /** * 根据区域id找到店铺集合 * @param regionId @@ -40,19 +41,26 @@ public class PoiStoreService { * 根据区域id找到店铺集合,若没有,则查用户所有店铺 * @param regionId */ - public List getRegionShop(long userId,Long regionId){ + public List getRegionShop(long userId,Long regionId, Long companyId){ List poiStores = new ArrayList<>(); //找到店铺集合 List shopsIds = privilageDomainService.listUserDatePermission(userId); - if(null == regionId){ - poiStores = poiStoreDOMapper.selectBatchIds(shopsIds); - }else{ + if(null != regionId){ List regionPoiStores = poiStoreDOMapper.selectRegionShop(regionId); for(PoiStore item : regionPoiStores){ if(shopsIds.contains(item.getId())){ poiStores.add(item); } } + }else if(companyId != null){ + List regionPoiStores = retailCompanyService.selectShopByCompany(companyId); + for(PoiStore item : regionPoiStores){ + if(shopsIds.contains(item.getId())){ + poiStores.add(item); + } + } + }else{ + poiStores = poiStoreDOMapper.selectBatchIds(shopsIds); } return poiStores; }