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] 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());