From f06b5683af4fed966fbbc5692700ac3d771b3158 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=8F=E7=AB=B9=E7=BA=A2?= Date: Sun, 5 Oct 2025 15:52:40 +0800 Subject: [PATCH 1/2] feat:getPOSToken --- .../store/service/impl/PushServiceImpl.java | 26 +++++++++++++++++++ .../store/service/impl/StoreServiceImpl.java | 5 +++- 2 files changed, 30 insertions(+), 1 deletion(-) diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/PushServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/PushServiceImpl.java index b103eb13b..2cf554459 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/PushServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/PushServiceImpl.java @@ -1,11 +1,17 @@ package com.cool.store.service.impl; import com.alibaba.fastjson.JSONObject; +import com.cool.store.dao.EnterpriseUserDAO; +import com.cool.store.dao.EnterpriseUserRoleDao; +import com.cool.store.dao.StoreDao; import com.cool.store.dto.GetAccessTokenDTO; import com.cool.store.dto.HqtTokenDTO; import com.cool.store.dto.ModifyPasswordDTO; import com.cool.store.dto.XgjOrganizationDTO; +import com.cool.store.entity.EnterpriseUserDO; +import com.cool.store.entity.StoreDO; import com.cool.store.enums.ErrorCodeEnum; +import com.cool.store.enums.UserRoleEnum; import com.cool.store.exception.ServiceException; import com.cool.store.request.ZxjpApiRequest; import com.cool.store.request.xgj.PushFranchiseFeeRequest; @@ -182,8 +188,28 @@ public class PushServiceImpl implements PushService { return executeApiCall(apiUrl, dto, String.class, "", ""); } + @Resource + EnterpriseUserDAO enterpriseUserDAO; + @Resource + EnterpriseUserRoleDao enterpriseUserRoleDao; + @Resource + StoreDao storeDao; + @Override public String getPosToken(GetAccessTokenDTO dto) { + EnterpriseUserDO enterpriseUserDO = enterpriseUserDAO.selectByMobile(dto.getMobile()); + if (enterpriseUserDO != null){ + List userRoleIds = enterpriseUserRoleDao.getUserRoleIds(enterpriseUserDO.getUserId()); + //如果userRoleIds包含督导。大区总。分部负责人任何一个 使用当前门店的手机号 + if (userRoleIds.contains(UserRoleEnum.SUPERVISION.getCode()) || + userRoleIds.contains(UserRoleEnum.HEAD_OF_DIVISION.getCode()) || + userRoleIds.contains(UserRoleEnum.REGION_MANAGER.getCode())) { + StoreDO store = storeDao.getByStoreNum(dto.getShopCode()); + if (store != null&&store.getTelephone()!=null){ + dto.setMobile(store.getTelephone()); + } + } + } String apiUrl = url + "/dzgV1/zxcrm/business_user/generateToken"; return executeApiCall(apiUrl, dto, String.class, username, secret); } diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/StoreServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/StoreServiceImpl.java index c758e6992..fcd765860 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/StoreServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/StoreServiceImpl.java @@ -120,7 +120,10 @@ public class StoreServiceImpl implements StoreService { List userRoleIds = enterpriseUserRoleDao.getUserRoleIds(enterpriseUserDO.getUserId()); //查询职位详情,筛选掉店外职位 List roleIds = sysRoleDao.selectRoleByRoleIds(userRoleIds); - List sysRoleDOS = roleIds.stream().filter(role -> "store_inside".equals(role.getPositionType())||UserRoleEnum.SUPERVISION.getCode().equals(role.getId())).collect(Collectors.toList()); + List sysRoleDOS = roleIds.stream().filter(role -> "store_inside".equals(role.getPositionType()) + ||UserRoleEnum.SUPERVISION.getCode().equals(role.getId()) + ||UserRoleEnum.HEAD_OF_DIVISION.getCode().equals(role.getId()) + ||UserRoleEnum.REGION_MANAGER.getCode().equals(role.getId())).collect(Collectors.toList()); if (CollectionUtils.isNotEmpty(sysRoleDOS)){ //获取用户管辖区域 List userAuthMapping = userAuthMappingService.listUserAuthMappingByUserId(enterpriseUserDO.getUserId()); From 9217f6923762fc3a3e0ef11f846f5a5fe89e3250 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=8F=E7=AB=B9=E7=BA=A2?= Date: Sun, 5 Oct 2025 16:39:56 +0800 Subject: [PATCH 2/2] feat:getPOSToken --- .../src/main/resources/mapper/StoreMapper.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/coolstore-partner-dao/src/main/resources/mapper/StoreMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/StoreMapper.xml index dc43dea8e..acb584487 100644 --- a/coolstore-partner-dao/src/main/resources/mapper/StoreMapper.xml +++ b/coolstore-partner-dao/src/main/resources/mapper/StoreMapper.xml @@ -118,7 +118,7 @@ SELECT store_id as storeId, store_name as shopName, store_num as shopCode, store_address as detailAddress FROM store_${enterpriseId} a - WHERE a.is_delete = 'effective' + WHERE a.is_delete = 'effective' and a.store_status != 'closed' AND a.store_name LIKE CONCAT('%', #{storeName}, '%') @@ -136,7 +136,7 @@ SELECT a.store_id as storeId, a.store_name as shopName, a.store_num as shopCode, a.store_address as detailAddress FROM store_${enterpriseId} a INNER JOIN store_master_signer_info_${enterpriseId} b ON a.store_id = b.store_id - WHERE a.is_delete = 'effective' + WHERE a.is_delete = 'effective' and a.store_status != 'closed' AND a.store_name LIKE CONCAT('%', #{storeName}, '%') @@ -151,7 +151,7 @@ SELECT a.store_id as storeId, a.store_name as shopName, a.store_num as shopCode, a.store_address as detailAddress FROM store_${enterpriseId} a INNER JOIN store_master_signer_info_${enterpriseId} b ON a.store_id = b.store_id - WHERE a.is_delete = 'effective' + WHERE a.is_delete = 'effective' and a.store_status != 'closed' AND a.store_name LIKE CONCAT('%', #{storeName}, '%')