From db54e19d06546dd67fd2f2198ab9dc162d6e830c Mon Sep 17 00:00:00 2001 From: efren <79289982@qq.com> Date: Mon, 21 Jul 2025 14:21:55 +0800 Subject: [PATCH] =?UTF-8?q?=E7=9C=81=E5=B8=82=E5=8C=BAfeign=E5=B0=81?= =?UTF-8?q?=E8=A3=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/base/client/DictRegionClient.java | 39 ++++++++++ .../ebtp/common/base/entity/DictRegion.java | 53 ++++++++++++++ .../common/base/entity/DictRegionTreeVO.java | 71 +++++++++++++++++++ .../fallback/DictRegionClientFallback.java | 31 ++++++++ 4 files changed, 194 insertions(+) create mode 100644 uboot-common/src/main/java/com/chinaunicom/mall/ebtp/common/base/client/DictRegionClient.java create mode 100644 uboot-common/src/main/java/com/chinaunicom/mall/ebtp/common/base/entity/DictRegion.java create mode 100644 uboot-common/src/main/java/com/chinaunicom/mall/ebtp/common/base/entity/DictRegionTreeVO.java create mode 100644 uboot-common/src/main/java/com/chinaunicom/mall/ebtp/common/base/fallback/DictRegionClientFallback.java diff --git a/uboot-common/src/main/java/com/chinaunicom/mall/ebtp/common/base/client/DictRegionClient.java b/uboot-common/src/main/java/com/chinaunicom/mall/ebtp/common/base/client/DictRegionClient.java new file mode 100644 index 0000000..4805b42 --- /dev/null +++ b/uboot-common/src/main/java/com/chinaunicom/mall/ebtp/common/base/client/DictRegionClient.java @@ -0,0 +1,39 @@ +package com.chinaunicom.mall.ebtp.common.base.client; + +import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse; +import com.chinaunicom.mall.ebtp.common.base.entity.DictRegion; +import com.chinaunicom.mall.ebtp.common.base.entity.DictRegionInternational; +import com.chinaunicom.mall.ebtp.common.base.entity.DictRegionTreeVO; +import com.chinaunicom.mall.ebtp.common.base.fallback.DictRegionClientFallback; +import com.chinaunicom.mall.ebtp.common.base.fallback.DictRegionInternationalClientFallback; +import com.chinaunicom.mall.ebtp.common.constant.ServiceNameConstants; +import io.swagger.annotations.ApiOperation; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestParam; + +import java.util.List; + +@FeignClient( + name = ServiceNameConstants.SYSTEM_SERVICE, + fallback = DictRegionClientFallback.class +) +public interface DictRegionClient { + + // --------------------------省市区信息接口----------------------- + + + @ApiOperation("查询所有数据") + @GetMapping("/all") + BaseResponse> listAll(); + + @ApiOperation("查询数据子节点") + @GetMapping("/getChild") + BaseResponse> getChild(@RequestParam(name = "pId") String pId); + + @ApiOperation("递归查询所有下级数据树形结构") + @GetMapping("/getAllChildrenTree/{id}") + BaseResponse getAllChildrenTree(@PathVariable String id); +} + diff --git a/uboot-common/src/main/java/com/chinaunicom/mall/ebtp/common/base/entity/DictRegion.java b/uboot-common/src/main/java/com/chinaunicom/mall/ebtp/common/base/entity/DictRegion.java new file mode 100644 index 0000000..3f370cd --- /dev/null +++ b/uboot-common/src/main/java/com/chinaunicom/mall/ebtp/common/base/entity/DictRegion.java @@ -0,0 +1,53 @@ +package com.chinaunicom.mall.ebtp.common.base.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.io.Serializable; + +/** + * 全国行政区域实体类 DictRegion + * + * @author daixc + * @date 2020/10/29 + */ +@Data +@Accessors(chain = true) +@ApiModel("全国行政区域实体类") +public class DictRegion implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * id + */ + @ApiModelProperty(value = "id") + private String id; + + /** + * 上级id + */ + @ApiModelProperty(value = "上级id") + private String pId; + + /** + * 名称 + */ + @ApiModelProperty(value = "名称") + private String name; + + /** + * 类型:0-省,1-市,2-县 + */ + @ApiModelProperty(value = "类型:0-省,1-市,2-县") + private String level; + /** + * 缩写 + */ + @ApiModelProperty(value = "缩写") + private String ab; + +} diff --git a/uboot-common/src/main/java/com/chinaunicom/mall/ebtp/common/base/entity/DictRegionTreeVO.java b/uboot-common/src/main/java/com/chinaunicom/mall/ebtp/common/base/entity/DictRegionTreeVO.java new file mode 100644 index 0000000..cda041f --- /dev/null +++ b/uboot-common/src/main/java/com/chinaunicom/mall/ebtp/common/base/entity/DictRegionTreeVO.java @@ -0,0 +1,71 @@ +package com.chinaunicom.mall.ebtp.common.base.entity; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.io.Serializable; +import java.util.List; + +/** + * 全国行政区域树形结构VO + * + * @author daixc + * @date 2020/10/29 + */ +@Data +@Accessors(chain = true) +@ApiModel("全国行政区域树形结构VO") +public class DictRegionTreeVO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * id + */ + @ApiModelProperty(value = "id") + private String id; + + /** + * 上级id + */ + @ApiModelProperty(value = "上级id") + private String pId; + + /** + * 名称 + */ + @ApiModelProperty(value = "名称") + private String name; + + /** + * 类型:0-省,1-市,2-县 + */ + @ApiModelProperty(value = "类型:0-省,1-市,2-县") + private String level; + + /** + * 缩写 + */ + @ApiModelProperty(value = "缩写") + private String ab; + + /** + * 子节点列表 + */ + @ApiModelProperty(value = "子节点列表") + private List children; + + /** + * 是否叶子节点 + */ + @ApiModelProperty(value = "是否叶子节点") + private Boolean isLeaf; + + /** + * 层级深度 + */ + @ApiModelProperty(value = "层级深度") + private Integer depth; +} diff --git a/uboot-common/src/main/java/com/chinaunicom/mall/ebtp/common/base/fallback/DictRegionClientFallback.java b/uboot-common/src/main/java/com/chinaunicom/mall/ebtp/common/base/fallback/DictRegionClientFallback.java new file mode 100644 index 0000000..72416f7 --- /dev/null +++ b/uboot-common/src/main/java/com/chinaunicom/mall/ebtp/common/base/fallback/DictRegionClientFallback.java @@ -0,0 +1,31 @@ +package com.chinaunicom.mall.ebtp.common.base.fallback; + +import com.chinaunicom.mall.ebtp.common.base.client.DictRegionClient; +import com.chinaunicom.mall.ebtp.common.base.client.DictRegionInternationalClient; +import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse; +import com.chinaunicom.mall.ebtp.common.base.entity.DictRegion; +import com.chinaunicom.mall.ebtp.common.base.entity.DictRegionInternational; +import com.chinaunicom.mall.ebtp.common.base.entity.DictRegionTreeVO; +import org.springframework.stereotype.Component; + +import java.util.List; + + +@Component +public class DictRegionClientFallback implements DictRegionClient { + + @Override + public BaseResponse> listAll() { + return null; + } + + @Override + public BaseResponse> getChild(String pId) { + return null; + } + + @Override + public BaseResponse getAllChildrenTree(String id) { + return null; + } +} \ No newline at end of file