From 8b6f1bdbf119743de04ea33b0edfe4823e5be7ec Mon Sep 17 00:00:00 2001 From: WenG <450292408@qq.com> Date: Tue, 14 Dec 2021 00:15:50 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=84=E7=90=86mongo=E5=9C=B0=E5=8C=BA?= =?UTF-8?q?=E4=B8=8B=E7=BA=A7=E6=9F=A5=E8=AF=A2=E6=AD=A3=E5=88=99=E5=AF=BC?= =?UTF-8?q?=E8=87=B4=E7=9A=84=E6=8A=A5=E9=94=99=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/apis/MongoAreaController.java | 10 ++++++++++ .../dictionary/service/impl/MongoAreaServiceImpl.java | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/apis/MongoAreaController.java b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/apis/MongoAreaController.java index 1c060358..9bc8b11c 100644 --- a/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/apis/MongoAreaController.java +++ b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/apis/MongoAreaController.java @@ -120,4 +120,14 @@ public class MongoAreaController extends DefaultBaseController { return mongoAreaService.listByCode(areaCode); } + @ApiOperation(value = "地区字典列表(通过地区字典编码)", notes = "地区字典列表(通过地区字典编码)接口") + @ApiImplicitParams({ + @ApiImplicitParam(name = "areaCode", value = "地区字典编码", paramType = "path") + }) + @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)}) + @GetMapping("list-sub/code/{areaCode}") + public List listSubByCode(@PathVariable("areaCode") String areaCode) { + return mongoAreaService.listSubByCode(areaCode); + } + } diff --git a/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/service/impl/MongoAreaServiceImpl.java b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/service/impl/MongoAreaServiceImpl.java index 6f74f79c..a5dffa2e 100644 --- a/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/service/impl/MongoAreaServiceImpl.java +++ b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/service/impl/MongoAreaServiceImpl.java @@ -103,10 +103,10 @@ public class MongoAreaServiceImpl extends DefaultBaseService implements IMongoAr @Override public List listSubByCode(String areaCode) { - Pattern pattern = Pattern.compile("^" + WStringUtil.cutContinuityRepeatCharDesc(areaCode, '0') + ".*$", Pattern.CASE_INSENSITIVE); + String baseAreaCode = WStringUtil.cutContinuityRepeatCharDesc(areaCode, '0'); + Pattern pattern = Pattern.compile("^" + baseAreaCode + "((?!" + areaCode.replace(baseAreaCode, "") + ").)*$", Pattern.CASE_INSENSITIVE); Query query = new Query(); query.addCriteria(Criteria.where("areaCode").regex(pattern)); - query.addCriteria(Criteria.where("areaCode").ne(areaCode)); return mongoTemplate.find(query, AreaDTO.class, MongoDictionaryCollectionEnum.AREA.getValue()); }