From b4b5ad4ec4ee8f64540644be38312e68e1483f10 Mon Sep 17 00:00:00 2001 From: wangxiaopeng <807933401@qq.com> Date: Fri, 29 Mar 2024 11:41:02 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A0=B9=E6=8D=AE=E4=B8=89=E6=96=B9=E5=8C=BA?= =?UTF-8?q?=E5=9F=9F=E7=B1=BB=E5=9E=8B=E8=8E=B7=E5=8F=96=E5=8C=BA=E5=9F=9F?= =?UTF-8?q?=E5=88=97=E8=A1=A8=200-=E6=A0=B9=201=3D=E5=A4=A7=E5=8C=BA=202?= =?UTF-8?q?=3D=E6=88=98=E5=8C=BA=203=3D=E5=B0=8F=E5=8C=BA=EF=BC=88?= =?UTF-8?q?=E7=9D=A3=E5=AF=BC=E5=8C=BA=204=3D=E9=97=A8=E5=BA=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/cool/store/dao/RegionDao.java | 10 +++-- .../com/cool/store/mapper/RegionMapper.java | 3 ++ .../main/resources/mapper/RegionMapper.xml | 16 +++++++- .../java/com/cool/store/entity/RegionDO.java | 2 + .../com/cool/store/service/RegionService.java | 5 +++ .../store/service/impl/RegionServiceImpl.java | 10 +++++ .../controller/webb/RegionController.java | 38 +++++++++++++++++++ 7 files changed, 80 insertions(+), 4 deletions(-) create mode 100644 coolstore-partner-web/src/main/java/com/cool/store/controller/webb/RegionController.java diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/dao/RegionDao.java b/coolstore-partner-dao/src/main/java/com/cool/store/dao/RegionDao.java index 069b8cc4f..a5ab6ede9 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/dao/RegionDao.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/dao/RegionDao.java @@ -1,6 +1,5 @@ package com.cool.store.dao; -import com.alibaba.fastjson.JSONObject; import com.cool.store.dto.RegionNode; import com.cool.store.entity.RegionDO; import com.cool.store.mapper.RegionMapper; @@ -8,11 +7,13 @@ import com.google.common.collect.Lists; import com.google.common.collect.Maps; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.ListUtils; -import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Repository; import javax.annotation.Resource; -import java.util.*; +import java.util.Collections; +import java.util.List; +import java.util.Map; +import java.util.Objects; import java.util.stream.Collectors; /** @@ -172,5 +173,8 @@ public class RegionDao { return regionMapper.getRegionByParentIds(regionIdList); } + public List listByThirdRegionType(Long parentId, String thirdRegionType) { + return regionMapper.listByThirdRegionType(parentId, thirdRegionType); + } } diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/RegionMapper.java b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/RegionMapper.java index ea7ff8b24..8b85f836e 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/RegionMapper.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/RegionMapper.java @@ -94,4 +94,7 @@ public interface RegionMapper { List getRegionByParentIds(@Param("regionIdList") List regionIdList); + List listByThirdRegionType(@Param("parentId")Long parentId, @Param("thirdRegionType")String thirdRegionType); + + } diff --git a/coolstore-partner-dao/src/main/resources/mapper/RegionMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/RegionMapper.xml index a89d96481..99e986823 100644 --- a/coolstore-partner-dao/src/main/resources/mapper/RegionMapper.xml +++ b/coolstore-partner-dao/src/main/resources/mapper/RegionMapper.xml @@ -17,7 +17,8 @@ region_type as regionType, region_path as regionPath, deleted as deleted, - third_dept_id as thirdDeptId + third_dept_id as thirdDeptId, + third_region_type as thirdRegionType + + + \ No newline at end of file diff --git a/coolstore-partner-model/src/main/java/com/cool/store/entity/RegionDO.java b/coolstore-partner-model/src/main/java/com/cool/store/entity/RegionDO.java index 8ee50368d..43e016ebd 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/entity/RegionDO.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/entity/RegionDO.java @@ -150,6 +150,8 @@ public class RegionDO { */ private Boolean isExternalNode; + private String thirdRegionType; + public RegionDO(Long id, String name, String parentId, String groupId, Long createTime, String createName) { this.id = id; this.name = name; diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/RegionService.java b/coolstore-partner-service/src/main/java/com/cool/store/service/RegionService.java index 065daba3e..6ef6c3a1c 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/RegionService.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/RegionService.java @@ -1,7 +1,10 @@ package com.cool.store.service; +import com.cool.store.entity.RegionDO; import com.cool.store.vo.RegionPathNameVO; +import java.util.List; + public interface RegionService { RegionPathNameVO getAllRegionName(Long regionId); @@ -13,4 +16,6 @@ public interface RegionService { */ Long getBigRegionIdByAreaId(Long wantShopAreaId); + List listByThirdRegionType(Long parentId, String thirdRegionType); + } diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/RegionServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/RegionServiceImpl.java index 4271ba9b0..a2c7b8c4d 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/RegionServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/RegionServiceImpl.java @@ -24,6 +24,8 @@ import javax.annotation.Resource; import java.util.*; import java.util.stream.Collectors; +import static com.cool.store.enums.ErrorCodeEnum.PARAMS_VALIDATE_ERROR; + /** * @ClassName RegionServiceImpl * @Description 区域服务 @@ -114,4 +116,12 @@ public class RegionServiceImpl implements RegionService { } return 0L; } + + @Override + public List listByThirdRegionType(Long parentId, String thirdRegionType) { + if(Objects.isNull(parentId) && StringUtils.isBlank(thirdRegionType)){ + throw new ServiceException(PARAMS_VALIDATE_ERROR); + } + return regionDao.listByThirdRegionType(parentId, thirdRegionType); + } } diff --git a/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/RegionController.java b/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/RegionController.java new file mode 100644 index 000000000..3e91e4af8 --- /dev/null +++ b/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/RegionController.java @@ -0,0 +1,38 @@ +package com.cool.store.controller.webb; + +import com.cool.store.entity.RegionDO; +import com.cool.store.response.ResponseResult; +import com.cool.store.service.RegionService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +/** + * @ClassName RegionController + * @Description 区域 + */ +@RestController +@RequestMapping("/pc/region") +@Api(tags = "区域信息") +@Slf4j +public class RegionController { + + @Autowired + private RegionService regionService; + + @ApiOperation("根据三方区域类型获取区域列表 0-根 1=大区 2=战区 3=小区(督导区 4=门店") + @GetMapping("/listByThirdRegionType") + public ResponseResult> listByThirdRegionType(@RequestParam(value = "parentId", required = false) Long parentId, + @RequestParam(value = "thirdRegionType", required = false) String thirdRegionType) { + return ResponseResult.success(regionService.listByThirdRegionType(parentId, thirdRegionType)); + } + + +}