From 9321beefa3909afdef4b7362f33020c89f8acdd2 Mon Sep 17 00:00:00 2001 From: "shuo.wang" Date: Thu, 17 Jul 2025 19:38:11 +0800 Subject: [PATCH] fix --- .../main/resources/mapper/ShopInfoMapper.xml | 1 + .../service/impl/DataHandlerServerImpl.java | 26 ++++++++++++++----- 2 files changed, 20 insertions(+), 7 deletions(-) diff --git a/coolstore-partner-dao/src/main/resources/mapper/ShopInfoMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/ShopInfoMapper.xml index 193eead20..9ec00e836 100644 --- a/coolstore-partner-dao/src/main/resources/mapper/ShopInfoMapper.xml +++ b/coolstore-partner-dao/src/main/resources/mapper/ShopInfoMapper.xml @@ -580,6 +580,7 @@ update xfsg_shop_info set shop_name = #{item.shopName}, province =#{item.province}, city = #{item.city}, district=#{item.district}, detail_address = #{item.detailAddress} where id = #{item.id} + update xfsg_shop_info set manager_region_id = #{item.managerRegionId} where id = #{item.id} diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/DataHandlerServerImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/DataHandlerServerImpl.java index 0dea781f7..13f4a8de0 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/DataHandlerServerImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/DataHandlerServerImpl.java @@ -1175,10 +1175,10 @@ public class DataHandlerServerImpl implements DataHandlerServer { //查询门店-XX大区下面的管理督导 List manageRegionList = regionDao.getSubRegionByParentIdsAndRegionType(storeManageIds, "path"); - Map manageRegionMap = manageRegionList.stream().collect(Collectors.toMap(regionDO -> regionDO.getName(), Function.identity())); + Map> manageRegionMap = manageRegionList.stream().collect(Collectors.groupingBy(RegionDO::getName)); //查询加盟分部下的管理督导 List branchStoreManageList = regionDao.getSubRegionByParentIdsAndRegionType(branchStoreManageIds, "path"); - Map branchStoreManageMap = branchStoreManageList.stream().collect(Collectors.toMap(regionDO -> regionDO.getName(), Function.identity())); + Map> branchStoreManageMap = branchStoreManageList.stream().collect(Collectors.groupingBy(RegionDO::getName)); List isShopIds = isCreateStore.stream().map(IsCreateStoreDTO::getShopId).collect(Collectors.toList()); //未建店 @@ -1198,7 +1198,7 @@ public class DataHandlerServerImpl implements DataHandlerServer { continue; } BigRegionDTO bigRegionDTO = bigRegionDTOMap.get(shopInfoDO.getRegionId()); - RegionDO regionDO; + List regions = new ArrayList<>(); if (bigRegionDTO==null){ log.info("门店所属大区未找到 shopId:{}",shopInfoDO.getId()); ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO(shopInfoDO.getShopCode(), "门店所属大区未找到"); @@ -1207,18 +1207,30 @@ public class DataHandlerServerImpl implements DataHandlerServer { continue; } if (bigRegionDTO.getStoreManageRegionId()!=null){ - regionDO = manageRegionMap.get(name); + regions = manageRegionMap.get(name); }else{ - regionDO= branchStoreManageMap.get(name); + regions= branchStoreManageMap.get(name); } - if (Objects.isNull(regionDO)||!Long.valueOf(regionDO.getParentId()).equals(bigRegionDTO.getStoreManageRegionId())){ + if (CollectionUtils.isEmpty(regions)){ log.info("门店所属管理区域未找到 shopId:{}",shopInfoDO.getId()); ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO(shopInfoDO.getShopCode(), "门店所属管理区域未找到"); errorDTO.setShopName(shopInfoDO.getShopName()); errorList.add(errorDTO); continue; } - shopInfoDO.setManagerRegionId(regionDO.getId()); + for(RegionDO regionDO:regions){ + if (Long.valueOf(regionDO.getParentId()).equals(bigRegionDTO.getStoreManageRegionId())){ + shopInfoDO.setManagerRegionId(regionDO.getId()); + break; + } + } + if (shopInfoDO.getManagerRegionId()==null){ + log.info("门店所属管理区域未找到 shopId:{}",shopInfoDO.getId()); + ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO(shopInfoDO.getShopCode(), "门店所属管理区域未找到"); + errorDTO.setShopName(shopInfoDO.getShopName()); + errorList.add(errorDTO); + continue; + } updateList.add(shopInfoDO); } shopInfoDAO.updateManagerRegionId(updateList);