From c3dbe648f601fbe62c8c473e9e5f061d845ab568 Mon Sep 17 00:00:00 2001 From: zhenghuang <236220500@qq.com> Date: Wed, 27 May 2020 11:09:14 +0800 Subject: [PATCH] swagger mysql --- .../impl/PmnActivityInstanceServiceImpl.java | 24 ++++++++++- .../store/controller/PoiStoreController.java | 40 ++++++++++--------- .../ic/store/service/PoiStoreService.java | 22 +++++++++- 3 files changed, 65 insertions(+), 21 deletions(-) diff --git a/src/main/java/com/kiisoo/ic/activity/service/impl/PmnActivityInstanceServiceImpl.java b/src/main/java/com/kiisoo/ic/activity/service/impl/PmnActivityInstanceServiceImpl.java index 8f99de2..1026c77 100644 --- a/src/main/java/com/kiisoo/ic/activity/service/impl/PmnActivityInstanceServiceImpl.java +++ b/src/main/java/com/kiisoo/ic/activity/service/impl/PmnActivityInstanceServiceImpl.java @@ -12,10 +12,17 @@ import com.kiisoo.ic.activity.mapper.PmnActivityInstanceDOMapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.kiisoo.ic.domain.service.PrivilageDomainService; import com.kiisoo.ic.generalize.entity.PrivilageOrganizational; +import com.kiisoo.ic.generalize.entity.PrivilageOrganizationalMember; +import com.kiisoo.ic.generalize.mapper.OrganizationalMemberMapper; import com.kiisoo.ic.generalize.mapper.RetailCompanyMapper; import com.kiisoo.ic.generalize.service.RetailCompanyService; import com.kiisoo.ic.store.entity.PoiStore; import com.kiisoo.ic.store.mapper.PoiStoreDOMapper; +import com.kiisoo.ic.system.entity.PrivilageAccountDO; +import com.kiisoo.ic.system.entity.PrivilageRoleDO; +import com.kiisoo.ic.system.enums.RoleEnum; +import com.kiisoo.ic.system.mapper.PrivilageAccountDOMapper; +import com.kiisoo.ic.system.mapper.PrivilageRoleDOMapper; import org.apache.commons.collections.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.ApplicationContext; @@ -69,6 +76,12 @@ public class PmnActivityInstanceServiceImpl extends ServiceImpl pageVO(Long userId, Date startDate, Date endDate, Long organizationId, Long storeId, Integer status, Integer pageNum, Integer pageSize, Date beginTime, Date endTime) { Map results = new HashMap<>(); List shopIds = new ArrayList<>(); - + if(userId != null) { + PrivilageAccountDO privilageAccountDO = privilageAccountDOMapper.selectOne(Wrappers.lambdaQuery().eq(PrivilageAccountDO::getUserId, userId)); + PrivilageRoleDO roleDO = privilageRoleDOMapper.selectRoleName(privilageAccountDO.getUserId()); + System.out.println(roleDO.getCode()); + System.out.println(RoleEnum.getCodeByName("运营人员").getRoleCode()); + if(roleDO.getCode().equals(RoleEnum.getCodeByName("运营人员").getRoleCode())) { + PrivilageOrganizationalMember organizationalMember = organizationalMemberMapper.selectOne(Wrappers.lambdaQuery().eq(PrivilageOrganizationalMember::getUserId, userId)); + organizationId = organizationalMember.getOrgId(); + } + } // if(userId != null) { // if (storeId != null) { // shopIds.add(storeId); 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 e1e8ca9..e8b60e4 100644 --- a/src/main/java/com/kiisoo/ic/store/controller/PoiStoreController.java +++ b/src/main/java/com/kiisoo/ic/store/controller/PoiStoreController.java @@ -29,31 +29,31 @@ public class PoiStoreController extends BaseController { private PoiStoreService poiStoreService; - /** * 根据用户id,区域id获取店铺 + * * @return */ - @RequestMapping(value = "/user/shop",method = RequestMethod.POST) + @RequestMapping(value = "/user/shop", method = RequestMethod.POST) @ResponseBody - public Map getUserShop(@RequestParam("userId")long userId, @RequestParam(value = "customerIds",required =false)String customerIds){ + public Map getUserShop(@RequestParam("userId") long userId, @RequestParam(value = "customerIds", required = false) String customerIds) { try { List customers = null; - if (StringUtils.isNotBlank(customerIds)){ + if (StringUtils.isNotBlank(customerIds)) { String[] split = customerIds.replace("[", "").replace("]", "").split(","); List strings = Arrays.asList(split); - if (CollectionUtils.isNotEmpty(strings)){ + if (CollectionUtils.isNotEmpty(strings)) { customers = new ArrayList<>(); - for (String customerId:strings){ - if (StringUtils.isNotBlank(customerId)){ + for (String customerId : strings) { + if (StringUtils.isNotBlank(customerId)) { customers.add(Long.parseLong(customerId)); } } } } - return data(poiStoreService.getRegionShop(userId,customers)); - }catch (Exception e){ - log.error("获取用户店铺失败",e); + return data(poiStoreService.getRegionShop(userId, customers)); + } catch (Exception e) { + log.error("获取用户店铺失败", e); return fail(); } @@ -61,32 +61,34 @@ public class PoiStoreController extends BaseController { /** * 根据用户id,区域id获取店铺 + * * @return */ - @RequestMapping(value = "/user/shopDTO",method = RequestMethod.POST) + @RequestMapping(value = "/user/shopDTO", method = RequestMethod.POST) @ResponseBody - public Map getUserShopDTO(@RequestParam("userId")long userId, @RequestParam(value = "customerIds",required =false)String customerIds){ + public Map getUserShopDTO(@RequestParam("userId") long userId, @RequestParam(value = "customerIds", required = false) String customerIds, @RequestParam("scheduleId") long scheduleId) { try { List customers = null; - if (StringUtils.isNotBlank(customerIds)){ + if (StringUtils.isNotBlank(customerIds)) { String[] split = customerIds.replace("[", "").replace("]", "").split(","); List strings = Arrays.asList(split); - if (CollectionUtils.isNotEmpty(strings)){ + if (CollectionUtils.isNotEmpty(strings)) { customers = new ArrayList<>(); - for (String customerId:strings){ - if (StringUtils.isNotBlank(customerId)){ + for (String customerId : strings) { + if (StringUtils.isNotBlank(customerId)) { customers.add(Long.parseLong(customerId)); } } } } - return data(poiStoreService.getRegionShopDTO(userId,customers)); - }catch (Exception e){ - log.error("获取用户店铺失败",e); + return data(poiStoreService.getRegionShopDTO(userId, customers, scheduleId)); + } catch (Exception e) { + log.error("获取用户店铺失败", e); return fail(); } } + /** * 查询所有店铺 * 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 5deca0e..7ec978a 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,12 @@ package com.kiisoo.ic.store.service; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.kiisoo.ic.activity.entity.PmnActivityInstance; +import com.kiisoo.ic.activity.entity.PmnActivityStoreRelation; +import com.kiisoo.ic.activity.entity.PmnPromotionSrc; +import com.kiisoo.ic.activity.service.IPmnActivityInstanceService; +import com.kiisoo.ic.activity.service.IPmnActivityStoreRelationService; +import com.kiisoo.ic.activity.service.IPmnPromotionSrcService; import com.kiisoo.ic.customer.service.CustomerViewService; import com.kiisoo.ic.domain.entity.PrivilageDomainEntityDO; import com.kiisoo.ic.domain.mapper.PrivilageDomainEntityDOMapper; @@ -53,6 +59,10 @@ public class PoiStoreService { private PrivilageOrganizationalDomainMapper privilageOrganizationalDomainMapper; @Autowired private RetailCompanyMapper retailCompanyMapper; + @Autowired + private IPmnActivityInstanceService pmnActivityInstanceService; + @Autowired + private IPmnActivityStoreRelationService storeRelationService; /** * 根据区域id找到店铺集合 * @param regionId @@ -96,17 +106,27 @@ public class PoiStoreService { * 根据区域id找到店铺集合,若没有,则查用户所有店铺 * @param regionId */ - public List getRegionShopDTO(long userId,List customerIds){ + public List getRegionShopDTO(long userId,List customerIds, Long scheduleId){ List poiStores = new ArrayList<>(); //找到店铺集合 if(null != customerIds && customerIds.size()>0){ Set cs = new HashSet<>(); cs.addAll(customerIds); + Set joined = new HashSet<>(); + if(scheduleId != null) { + List instances = pmnActivityInstanceService.list(Wrappers.lambdaQuery().eq(PmnActivityInstance::getScheduleId, scheduleId).select(PmnActivityInstance::getId)); + Set instanceIds = instances.stream().map(PmnActivityInstance::getId).collect(Collectors.toSet()); + List relations = storeRelationService.list(Wrappers.lambdaQuery().in(PmnActivityStoreRelation::getInstanceId, instanceIds).select(PmnActivityStoreRelation::getStoreId)); + joined = relations.stream().map(PmnActivityStoreRelation::getStoreId).collect(Collectors.toSet()); + } Set childs = retailCompanyMapper.selectChildList(cs); List domains = privilageOrganizationalDomainMapper.selectList(Wrappers.lambdaQuery().in(PrivilageOrganizationalDomain::getOrgId, childs).select(PrivilageOrganizationalDomain::getDomainId)); Set domainIds = domains.stream().map(PrivilageOrganizationalDomain::getDomainId).collect(Collectors.toSet()); List entityDOS = privilageDomainEntityDOMapper.selectList(Wrappers.lambdaQuery().in(PrivilageDomainEntityDO::getDomainId, domainIds).eq(PrivilageDomainEntityDO::getType, 3).select(PrivilageDomainEntityDO::getEntityId)); Set shopIds = entityDOS.stream().map(PrivilageDomainEntityDO::getEntityId).collect(Collectors.toSet()); + if(joined.size() > 0) { + shopIds.removeAll(joined); + } if(shopIds.size() > 0){ poiStores = poiStoreDOMapper.selectDTOBatchIds(shopIds); }