From 4ffb211b48fb564b10fdb53a5aeb0e86ab267b46 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=8F=E7=AB=B9=E7=BA=A2?= Date: Mon, 23 Sep 2024 15:28:17 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E6=95=B0=E6=8D=AE=E9=9A=94=E7=A6=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/cool/store/dao/ShopStageInfoDAO.java | 6 +++-- .../store/mapper/ShopStageInfoMapper.java | 2 +- .../mapper/OpeningOperationPlanMapper.xml | 6 +++++ .../resources/mapper/ShopStageInfoMapper.xml | 9 +++++++ .../cool/store/request/PlanListRequest.java | 5 ++++ .../store/service/impl/DeskServiceImpl.java | 24 ++++++++++++++----- .../impl/OpeningOperationPlanImpl.java | 5 ++++ .../webb/PCOpenPreparationController.java | 2 +- 8 files changed, 49 insertions(+), 10 deletions(-) diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/dao/ShopStageInfoDAO.java b/coolstore-partner-dao/src/main/java/com/cool/store/dao/ShopStageInfoDAO.java index 97bf9f3ed..367813188 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/dao/ShopStageInfoDAO.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/dao/ShopStageInfoDAO.java @@ -247,8 +247,10 @@ public class ShopStageInfoDAO { } public List getSpecialShopStageInfo(List shopIds, Integer shopSubStage, - List shopSubStageStatusList,String investmentUserId){ - return shopStageInfoMapper.getSpecialShopStageInfo( shopIds, shopSubStage, shopSubStageStatusList,investmentUserId); + List shopSubStageStatusList, + String investmentUserId, + List authRegionIds){ + return shopStageInfoMapper.getSpecialShopStageInfo( shopIds, shopSubStage, shopSubStageStatusList,investmentUserId,authRegionIds); } /** * @Auther: wangshuo diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/ShopStageInfoMapper.java b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/ShopStageInfoMapper.java index 52ab2d84b..5a857a47d 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/ShopStageInfoMapper.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/ShopStageInfoMapper.java @@ -130,7 +130,7 @@ public interface ShopStageInfoMapper extends Mapper { List getSpecialShopStageInfo(@Param("shopIds") List shopIds, @Param("shopSubStage") Integer shopSubStage, @Param("shopSubStageStatusList") List shopSubStageStatusList, - @Param("investmentUserId") String investmentUserId); + @Param("investmentUserId") String investmentUserId, @Param("authRegionIds") List authRegionIds); List getSubStageList(@Param("shopIds") List shopIds,@Param("shopSubStage") Integer shopSubStage); /** diff --git a/coolstore-partner-dao/src/main/resources/mapper/OpeningOperationPlanMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/OpeningOperationPlanMapper.xml index eee31b154..57f01ca26 100644 --- a/coolstore-partner-dao/src/main/resources/mapper/OpeningOperationPlanMapper.xml +++ b/coolstore-partner-dao/src/main/resources/mapper/OpeningOperationPlanMapper.xml @@ -74,6 +74,12 @@ #{regionId} + + and si.region_id in + + #{regionId} + + diff --git a/coolstore-partner-dao/src/main/resources/mapper/ShopStageInfoMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/ShopStageInfoMapper.xml index 483884e19..c9c5ef15d 100644 --- a/coolstore-partner-dao/src/main/resources/mapper/ShopStageInfoMapper.xml +++ b/coolstore-partner-dao/src/main/resources/mapper/ShopStageInfoMapper.xml @@ -237,6 +237,9 @@ left join xfsg_line_info b on a.line_id = b.id + + left join xfsg_shop_info si on a.shop_id = si.id + and a.shop_id in @@ -256,6 +259,12 @@ and b.investment_manager = #{investmentUserId} + + and si.region_id in + + #{regionId} + + diff --git a/coolstore-partner-model/src/main/java/com/cool/store/request/PlanListRequest.java b/coolstore-partner-model/src/main/java/com/cool/store/request/PlanListRequest.java index 3a4bed8b0..026fbdfee 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/request/PlanListRequest.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/request/PlanListRequest.java @@ -31,4 +31,9 @@ public class PlanListRequest { @ApiModelProperty ("分页大小") private Integer pageSize; + @ApiModelProperty(value = "当前登录用户", hidden = true) + private String curUserId; + @ApiModelProperty(value = "管辖区域",hidden = true) + private List authRegionIds; + } diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/DeskServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/DeskServiceImpl.java index 1013d9852..1fb041700 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/DeskServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/DeskServiceImpl.java @@ -17,6 +17,8 @@ import com.cool.store.mapper.IntentAgreementMapper; import com.cool.store.mapper.TrainingExperienceMapper; import com.cool.store.service.DeskService; import com.cool.store.service.RegionService; +import com.cool.store.service.SysRoleService; +import com.cool.store.service.UserAuthMappingService; import com.cool.store.utils.StringUtil; import com.cool.store.utils.poi.DateUtils; import com.cool.store.utils.poi.constant.Constants; @@ -62,6 +64,10 @@ public class DeskServiceImpl implements DeskService { EnterpriseUserDAO enterpriseUserDAO; @Resource RegionService regionService; + @Resource + SysRoleService sysRoleService; + @Resource + UserAuthMappingService userAuthMappingService; @Override public PageInfo intendPendingList(Integer pageNum, Integer pageSize,String userId) { @@ -333,18 +339,18 @@ public class DeskServiceImpl implements DeskService { @Override public PageInfo payFranchiseFeesPendingList(Integer pageNum, Integer pageSize, LoginUserInfo user) { return commonPendingVOPageInfo(pageNum, pageSize, user, ShopSubStageEnum.SHOP_STAGE_7, - Arrays.asList(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_70.getShopSubStageStatus(),ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_72.getShopSubStageStatus()), Constants.ZERO_INTEGER); + Arrays.asList(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_70.getShopSubStageStatus(),ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_72.getShopSubStageStatus()), Boolean.FALSE); } @Override public PageInfo signingOfFranchiseContractPendingList(Integer pageNum, Integer pageSize, LoginUserInfo user) { - return commonPendingVOPageInfo(pageNum, pageSize, null, ShopSubStageEnum.SHOP_STAGE_8, - Arrays.asList(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_80.getShopSubStageStatus(),ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_85.getShopSubStageStatus()), Constants.ZERO_INTEGER); + return commonPendingVOPageInfo(pageNum, pageSize, user, ShopSubStageEnum.SHOP_STAGE_8, + Arrays.asList(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_80.getShopSubStageStatus(),ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_85.getShopSubStageStatus()), Boolean.TRUE); } @Override public PageInfo openingAndOperationPlanPendingList(Integer pageNum, Integer pageSize, LoginUserInfo user) { - return commonPendingVOPageInfo(pageNum, pageSize, user, ShopSubStageEnum.SHOP_STAGE_14, Arrays.asList(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_140.getShopSubStageStatus()), Constants.ONE_INTEGER); + return commonPendingVOPageInfo(pageNum, pageSize, user, ShopSubStageEnum.SHOP_STAGE_14, Arrays.asList(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_140.getShopSubStageStatus()), Boolean.FALSE); } @Override @@ -362,11 +368,17 @@ public class DeskServiceImpl implements DeskService { * @param subStageStatusList * @return */ - private PageInfo commonPendingVOPageInfo(Integer pageNum, Integer pageSize, LoginUserInfo user,ShopSubStageEnum shopSubStageEnum,List subStageStatusList,Integer type){ + private PageInfo commonPendingVOPageInfo(Integer pageNum, Integer pageSize, LoginUserInfo user,ShopSubStageEnum shopSubStageEnum,List subStageStatusList,Boolean filterFlag){ PageHelper.startPage(pageNum, pageSize); //user.getJobNumber() + List authRegionIds = new ArrayList<>(); + if (filterFlag){ + if (!sysRoleService.checkIsAdmin(user.getUserId())) { + authRegionIds = userAuthMappingService.getAuthRegionIdAndSubRegionIdByUserId(user.getUserId()); + } + } List specialShopStageInfo = shopStageInfoDAO.getSpecialShopStageInfo(null, shopSubStageEnum.getShopSubStage(), - subStageStatusList, user==null?null:user.getUserId()); + subStageStatusList, user==null?null:user.getUserId(),authRegionIds); PageInfo result = new PageInfo<>(specialShopStageInfo); List shopIds = specialShopStageInfo.stream().map(ShopStageInfoDO::getShopId).collect(Collectors.toList()); List lineIds = specialShopStageInfo.stream().map(ShopStageInfoDO::getLineId).collect(Collectors.toList()); diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/OpeningOperationPlanImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/OpeningOperationPlanImpl.java index 696b7ee96..ca9179867 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/OpeningOperationPlanImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/OpeningOperationPlanImpl.java @@ -65,6 +65,8 @@ public class OpeningOperationPlanImpl implements OpeningOperationPlanService { @Resource UserAuthMappingService userAuthMappingService; + @Resource + SysRoleService sysRoleService; @Override @Transactional(rollbackFor = Exception.class) @@ -147,6 +149,9 @@ public class OpeningOperationPlanImpl implements OpeningOperationPlanService { @Override public PageInfo getPlanListPage(PlanListRequest request) { log.info("getPlanListPage request:{}", JSONObject.toJSONString(request)); + if (!sysRoleService.checkIsAdmin(request.getCurUserId())) { + request.setAuthRegionIds(userAuthMappingService.getAuthRegionIdAndSubRegionIdByUserId(request.getCurUserId())); + } PageHelper.startPage(request.getPageNumber(), request.getPageSize()); //不指定时间为3个月数据 去shop_info表查询店铺名字,店铺code,开店负责人id,督导id,区域id,open_plan,提交时间,审核状态 List openPlanShopInfoDTOS = openingOperationPlanDAO.getOpenPlanShopListByCondition(request); diff --git a/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/PCOpenPreparationController.java b/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/PCOpenPreparationController.java index 3fda462f6..c07344095 100644 --- a/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/PCOpenPreparationController.java +++ b/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/PCOpenPreparationController.java @@ -73,7 +73,7 @@ public class PCOpenPreparationController { @PostMapping("/openingOperationPlan/planList") @ApiOperation("查询运营方案列表") public ResponseResult> planList(@RequestBody PlanListRequest request) { - + request.setCurUserId(CurrentUserHolder.getUserId()); return ResponseResult.success(openingOperationPlanService.getPlanListPage(request)); } @PostMapping("/openingOperationPlan/audit")