From 6ecbc1b492e91d45757060525292effb837a2959 Mon Sep 17 00:00:00 2001
From: wanggeng <450292408@qq.com>
Date: Wed, 24 Nov 2021 18:44:34 +0800
Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=95=B0=E6=8D=AE=E5=AD=97?=
=?UTF-8?q?=E5=85=B8mongo=E6=A8=A1=E5=9D=97?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
mongo-module-dictionary/pom.xml | 29 ++
.../controller/apis/MongoAreaController.java | 123 ++++++++
.../controller/apis/MongoDataController.java | 123 ++++++++
.../app/apis/MongoAreaAppController.java | 164 ++++++++++
.../app/apis/MongoDataAppController.java | 164 ++++++++++
.../route/MongoAreaRouteController.java | 50 +++
.../route/MongoDataRouteController.java | 42 +++
.../wechat/MongoAreaWechatController.java | 107 +++++++
.../wechat/MongoDataWechatController.java | 115 +++++++
.../enums/MongoDictionaryCollectionEnum.java | 30 ++
.../dictionary/service/IMongoAreaService.java | 91 ++++++
.../dictionary/service/IMongoDataService.java | 75 +++++
.../service/impl/MongoAreaServiceImpl.java | 126 ++++++++
.../service/impl/MongoDataServiceImpl.java | 111 +++++++
.../templates/mongo/area/get-select.html | 288 ++++++++++++++++++
.../templates/mongo/area/list-mongo.html | 121 ++++++++
.../templates/mongo/area/list-tree-mongo.html | 106 +++++++
.../templates/mongo/area/list-tree.html | 114 +++++++
.../resources/templates/mongo/area/list.html | 227 ++++++++++++++
.../templates/mongo/data/list-mongo.html | 111 +++++++
.../templates/mongo/data/list-tree-mongo.html | 106 +++++++
.../templates/mongo/data/list-tree.html | 114 +++++++
.../resources/templates/mongo/data/list.html | 217 +++++++++++++
pom.xml | 10 +
24 files changed, 2764 insertions(+)
create mode 100644 mongo-module-dictionary/pom.xml
create mode 100644 mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/apis/MongoAreaController.java
create mode 100644 mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/apis/MongoDataController.java
create mode 100644 mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/app/apis/MongoAreaAppController.java
create mode 100644 mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/app/apis/MongoDataAppController.java
create mode 100644 mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/route/MongoAreaRouteController.java
create mode 100644 mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/route/MongoDataRouteController.java
create mode 100644 mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/wechat/MongoAreaWechatController.java
create mode 100644 mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/wechat/MongoDataWechatController.java
create mode 100644 mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/enums/MongoDictionaryCollectionEnum.java
create mode 100644 mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/service/IMongoAreaService.java
create mode 100644 mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/service/IMongoDataService.java
create mode 100644 mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/service/impl/MongoAreaServiceImpl.java
create mode 100644 mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/service/impl/MongoDataServiceImpl.java
create mode 100644 mongo-module-dictionary/src/main/resources/templates/mongo/area/get-select.html
create mode 100644 mongo-module-dictionary/src/main/resources/templates/mongo/area/list-mongo.html
create mode 100644 mongo-module-dictionary/src/main/resources/templates/mongo/area/list-tree-mongo.html
create mode 100644 mongo-module-dictionary/src/main/resources/templates/mongo/area/list-tree.html
create mode 100644 mongo-module-dictionary/src/main/resources/templates/mongo/area/list.html
create mode 100644 mongo-module-dictionary/src/main/resources/templates/mongo/data/list-mongo.html
create mode 100644 mongo-module-dictionary/src/main/resources/templates/mongo/data/list-tree-mongo.html
create mode 100644 mongo-module-dictionary/src/main/resources/templates/mongo/data/list-tree.html
create mode 100644 mongo-module-dictionary/src/main/resources/templates/mongo/data/list.html
diff --git a/mongo-module-dictionary/pom.xml b/mongo-module-dictionary/pom.xml
new file mode 100644
index 00000000..596a2311
--- /dev/null
+++ b/mongo-module-dictionary/pom.xml
@@ -0,0 +1,29 @@
+
+
+
+ wg-basic
+ ink.wgink
+ 1.0-SNAPSHOT
+
+ 4.0.0
+
+ mongo-module-dictionary
+ mongo字典
+
+
+
+ org.springframework.data
+ spring-data-mongodb
+ compile
+
+
+
+ ink.wgink
+ module-dictionary
+ 1.0-SNAPSHOT
+
+
+
+
\ No newline at end of file
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
new file mode 100644
index 00000000..1c060358
--- /dev/null
+++ b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/apis/MongoAreaController.java
@@ -0,0 +1,123 @@
+package ink.wgink.mongo.module.dictionary.controller.apis;
+
+import ink.wgink.common.base.DefaultBaseController;
+import ink.wgink.interfaces.consts.ISystemConstant;
+import ink.wgink.module.dictionary.pojo.dtos.AreaDTO;
+import ink.wgink.mongo.module.dictionary.service.IMongoAreaService;
+import ink.wgink.pojo.ListPage;
+import ink.wgink.pojo.dtos.ZTreeDTO;
+import ink.wgink.pojo.result.ErrorResult;
+import ink.wgink.pojo.result.SuccessResult;
+import ink.wgink.pojo.result.SuccessResultList;
+import io.swagger.annotations.*;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * When you feel like quitting. Think about why you started
+ * 当你想要放弃的时候,想想当初你为何开始
+ *
+ * @ClassName: AreaAreaController
+ * @Description: 地区字典
+ * @Author: WangGeng
+ * @Date: 2019/11/18 14:00
+ * @Version: 1.0
+ **/
+@Api(tags = ISystemConstant.API_TAGS_SYSTEM_PREFIX + "地区字典接口")
+@RestController
+@RequestMapping(ISystemConstant.API_PREFIX + "/mongo/area")
+public class MongoAreaController extends DefaultBaseController {
+
+ @Autowired
+ private IMongoAreaService mongoAreaService;
+
+ @ApiOperation(value = "更新mongo", notes = "更新mongo接口")
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @PutMapping("update-mongo")
+ public SuccessResult updateMongo() {
+ mongoAreaService.updateMongo();
+ return new SuccessResult();
+ }
+
+ @ApiOperation(value = "地区字典详情(ID查询)", notes = "地区字典详情(ID查询)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "areaId", value = "地区字典ID", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("get/{areaId}")
+ public AreaDTO get(@PathVariable("areaId") String areaId) {
+ return mongoAreaService.get(areaId);
+ }
+
+ @ApiOperation(value = "地区字典列表(上级ID查询)", notes = "地区字典列表(上级ID查询)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "areaParentId", value = "地区字典上级ID", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("list/parent-id/{areaParentId}")
+ public List listByParentId(@PathVariable("areaParentId") String areaParentId) {
+ return mongoAreaService.listByParentId(areaParentId);
+ }
+
+ @ApiOperation(value = "地区字典全部列表(上级ID查询)", notes = "地区字典全部列表(上级ID查询)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "areaParentId", value = "地区字典上级ID", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("list-all/parent-id/{areaParentId}")
+ public List listAllByParentId(@PathVariable("areaParentId") String areaParentId) {
+ return mongoAreaService.listAllByParentId(areaParentId);
+ }
+
+ @ApiOperation(value = "地区字典分页列表", notes = "地区字典分页列表接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "parentId", value = "上级ID", paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "page", value = "当前页码", paramType = "query", dataType = "int", defaultValue = "1"),
+ @ApiImplicitParam(name = "rows", value = "显示数量", paramType = "query", dataType = "int", defaultValue = "20"),
+ @ApiImplicitParam(name = "keywords", value = "关键字", paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "startTime", value = "开始时间", paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "endTime", value = "结束时间", paramType = "query", dataType = "String")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("listpage")
+ public SuccessResultList> listPage(ListPage page) {
+ Map params = requestParams();
+ String parentId = "0";
+ if (!StringUtils.isBlank(params.get(ISystemConstant.PARAMS_PARENT_ID) == null ? null : params.get(ISystemConstant.PARAMS_PARENT_ID).toString())) {
+ parentId = params.get(ISystemConstant.PARAMS_PARENT_ID).toString();
+ }
+ params.put("areaParentId", parentId);
+ page.setParams(params);
+ return mongoAreaService.listPage(page);
+ }
+
+ @ApiOperation(value = "地区字典zTree列表", notes = "地区字典zTree列表接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "id", value = "父ID", paramType = "query", dataType = "String")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("list-ztree")
+ public List listZTree() {
+ Map params = requestParams();
+ String parentId = "0";
+ if (!StringUtils.isBlank(params.get(ISystemConstant.PARAMS_ID) == null ? null : params.get(ISystemConstant.PARAMS_ID).toString())) {
+ parentId = params.get(ISystemConstant.PARAMS_ID).toString();
+ }
+ return mongoAreaService.listZTree(parentId);
+ }
+
+ @ApiOperation(value = "地区字典列表(通过地区字典编码)", notes = "地区字典列表(通过地区字典编码)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "areaCode", value = "地区字典编码", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("list/code/{areaCode}")
+ public List listByCode(@PathVariable("areaCode") String areaCode) {
+ return mongoAreaService.listByCode(areaCode);
+ }
+
+}
diff --git a/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/apis/MongoDataController.java b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/apis/MongoDataController.java
new file mode 100644
index 00000000..1f15447d
--- /dev/null
+++ b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/apis/MongoDataController.java
@@ -0,0 +1,123 @@
+package ink.wgink.mongo.module.dictionary.controller.apis;
+
+import ink.wgink.common.base.DefaultBaseController;
+import ink.wgink.interfaces.consts.ISystemConstant;
+import ink.wgink.module.dictionary.pojo.dtos.DataDTO;
+import ink.wgink.mongo.module.dictionary.service.IMongoDataService;
+import ink.wgink.pojo.ListPage;
+import ink.wgink.pojo.dtos.ZTreeDTO;
+import ink.wgink.pojo.result.ErrorResult;
+import ink.wgink.pojo.result.SuccessResult;
+import ink.wgink.pojo.result.SuccessResultList;
+import io.swagger.annotations.*;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * When you feel like quitting. Think about why you started
+ * 当你想要放弃的时候,想想当初你为何开始
+ *
+ * @ClassName: DataController
+ * @Description: 字典
+ * @Author: WangGeng
+ * @Date: 2019/11/18 14:00
+ * @Version: 1.0
+ **/
+@Api(tags = ISystemConstant.API_TAGS_SYSTEM_PREFIX + "字典接口")
+@RestController
+@RequestMapping(ISystemConstant.API_PREFIX + "/mongo/data")
+public class MongoDataController extends DefaultBaseController {
+
+ @Autowired
+ private IMongoDataService mongoDataService;
+
+ @ApiOperation(value = "更新mongo", notes = "更新mongo接口")
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @PutMapping("update-mongo")
+ public SuccessResult updateMongo() {
+ mongoDataService.updateMongo();
+ return new SuccessResult();
+ }
+
+ @ApiOperation(value = "字典详情(ID查询)", notes = "字典详情(ID查询)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "Id", value = "字典ID", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("get/{Id}")
+ public DataDTO get(@PathVariable("Id") String Id) {
+ return mongoDataService.get(Id);
+ }
+
+ @ApiOperation(value = "字典列表(上级ID查询)", notes = "字典列表(上级ID查询)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "ParentId", value = "字典上级ID", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("list/parent-id/{dataParentId}")
+ public List listByParentId(@PathVariable("dataParentId") String dataParentId) {
+ return mongoDataService.listByParentId(dataParentId);
+ }
+
+ @ApiOperation(value = "字典全部列表(上级ID查询)", notes = "字典全部列表(上级ID查询)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "ParentId", value = "字典上级ID", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("list-all/parent-id/{dataParentId}")
+ public List listAllByParentId(@PathVariable("dataParentId") String dataParentId) {
+ return mongoDataService.listAllByParentId(dataParentId);
+ }
+
+ @ApiOperation(value = "字典分页列表", notes = "字典分页列表接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "parentId", value = "上级ID", paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "page", value = "当前页码", paramType = "query", dataType = "int", defaultValue = "1"),
+ @ApiImplicitParam(name = "rows", value = "显示数量", paramType = "query", dataType = "int", defaultValue = "20"),
+ @ApiImplicitParam(name = "keywords", value = "关键字", paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "startTime", value = "开始时间", paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "endTime", value = "结束时间", paramType = "query", dataType = "String")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("listpage")
+ public SuccessResultList> listPage(ListPage page) {
+ Map params = requestParams();
+ String parentId = "0";
+ if (!StringUtils.isBlank(params.get(ISystemConstant.PARAMS_PARENT_ID) == null ? null : params.get(ISystemConstant.PARAMS_PARENT_ID).toString())) {
+ parentId = params.get(ISystemConstant.PARAMS_PARENT_ID).toString();
+ }
+ params.put("dataParentId", parentId);
+ page.setParams(params);
+ return mongoDataService.listPage(page);
+ }
+
+ @ApiOperation(value = "字典zTree列表", notes = "字典zTree列表接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "id", value = "父ID", paramType = "query", dataType = "String")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("list-ztree")
+ public List listZTree() {
+ Map params = requestParams();
+ String dataParentId = "0";
+ if (!StringUtils.isBlank(params.get(ISystemConstant.PARAMS_ID) == null ? null : params.get(ISystemConstant.PARAMS_ID).toString())) {
+ dataParentId = params.get(ISystemConstant.PARAMS_ID).toString();
+ }
+ return mongoDataService.listZTree(dataParentId);
+ }
+
+ @ApiOperation(value = "字典列表(通过字典编码)", notes = "字典列表(通过字典编码)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "Code", value = "字典编码", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("list/code/{Code}")
+ public List listByCode(@PathVariable("Code") String Code) {
+ return mongoDataService.listByCode(Code);
+ }
+
+}
diff --git a/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/app/apis/MongoAreaAppController.java b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/app/apis/MongoAreaAppController.java
new file mode 100644
index 00000000..ccefeae3
--- /dev/null
+++ b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/app/apis/MongoAreaAppController.java
@@ -0,0 +1,164 @@
+package ink.wgink.mongo.module.dictionary.controller.app.apis;
+
+import ink.wgink.common.base.DefaultBaseController;
+import ink.wgink.interfaces.consts.ISystemConstant;
+import ink.wgink.module.dictionary.pojo.dtos.AreaDTO;
+import ink.wgink.mongo.module.dictionary.service.IMongoAreaService;
+import ink.wgink.pojo.ListPage;
+import ink.wgink.pojo.dtos.ZTreeDTO;
+import ink.wgink.pojo.result.ErrorResult;
+import ink.wgink.pojo.result.SuccessResultList;
+import io.swagger.annotations.*;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * When you feel like quitting. Think about why you started
+ * 当你想要放弃的时候,想想当初你为何开始
+ *
+ * @ClassName: AreaAreaAppController
+ * @Description: 地区字典
+ * @Author: WangGeng
+ * @Date: 2019/11/18 14:00
+ * @Version: 1.0
+ **/
+@Api(tags = ISystemConstant.API_TAGS_APP_PREFIX + "地区字典管理接口")
+@RestController
+@RequestMapping(ISystemConstant.APP_PREFIX + "/mongo/area")
+public class MongoAreaAppController extends DefaultBaseController {
+
+ @Autowired
+ private IMongoAreaService mongoAreaService;
+
+ @ApiOperation(value = "地区字典详情(ID查询)", notes = "地区字典详情(ID查询)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "token", value = "token", paramType = "header"),
+ @ApiImplicitParam(name = "areaId", value = "地区字典ID", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("get/{areaId}")
+ public AreaDTO get(@RequestHeader("token") String token, @PathVariable("areaId") String areaId) {
+ return getRelease(areaId);
+ }
+
+ @ApiOperation(value = ISystemConstant.API_TAGS_RELEASE_PREFIX + "地区字典详情(ID查询)", notes = ISystemConstant.API_TAGS_RELEASE_PREFIX + "地区字典详情(ID查询)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "areaId", value = "地区字典ID", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("get" + ISystemConstant.RELEASE_SUFFIX + "/{areaId}")
+ public AreaDTO getRelease(@PathVariable("areaId") String areaId) {
+ return mongoAreaService.get(areaId);
+ }
+
+ @ApiOperation(value = "地区字典列表(上级ID查询)", notes = "地区字典列表(上级ID查询)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "token", value = "token", paramType = "header"),
+ @ApiImplicitParam(name = "areaParentId", value = "地区字典上级ID", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("list/parent-id/{areaParentId}")
+ public List listByParentId(@RequestHeader("token") String token, @PathVariable("areaParentId") String areaParentId) {
+ return listByParentIdRelease(areaParentId);
+ }
+
+ @ApiOperation(value = ISystemConstant.API_TAGS_RELEASE_PREFIX + "地区字典列表(上级ID查询)", notes = ISystemConstant.API_TAGS_RELEASE_PREFIX + "地区字典列表(上级ID查询)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "areaParentId", value = "地区字典上级ID", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("list/parent-id-" + ISystemConstant.RELEASE_SUFFIX + "/{areaParentId}")
+ public List listByParentIdRelease(@PathVariable("areaParentId") String areaParentId) {
+ return mongoAreaService.listByParentId(areaParentId);
+ }
+
+ @ApiOperation(value = "地区字典全部列表(上级ID查询)", notes = "地区字典全部列表(上级ID查询)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "token", value = "token", paramType = "header"),
+ @ApiImplicitParam(name = "areaParentId", value = "地区字典上级ID", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("list-all/parent-id/{areaParentId}")
+ public List list(@RequestHeader("token") String token, @PathVariable("areaParentId") String areaParentId) {
+ return listAllByParentIdRelease(areaParentId);
+ }
+
+ @ApiOperation(value = ISystemConstant.API_TAGS_RELEASE_PREFIX + "地区字典全部列表(上级ID查询)", notes = ISystemConstant.API_TAGS_RELEASE_PREFIX + "地区字典全部列表(上级ID查询)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "areaParentId", value = "地区字典上级ID", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("list-all/parent-id-" + ISystemConstant.RELEASE_SUFFIX + "/{areaParentId}")
+ public List listAllByParentIdRelease(@PathVariable("areaParentId") String areaParentId) {
+ return mongoAreaService.listAllByParentId(areaParentId);
+ }
+
+ @ApiOperation(value = "分页地区字典列表", notes = "分页地区字典列表接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "token", value = "token", paramType = "header"),
+ @ApiImplicitParam(name = "parentId", value = "上级ID", paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "page", value = "当前页码", paramType = "query", dataType = "int", defaultValue = "1"),
+ @ApiImplicitParam(name = "rows", value = "显示数量", paramType = "query", dataType = "int", defaultValue = "20"),
+ @ApiImplicitParam(name = "keywords", value = "关键字", paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "startTime", value = "开始时间", paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "endTime", value = "结束时间", paramType = "query", dataType = "String")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("listpage")
+ public SuccessResultList> listPage(@RequestHeader("token") String token, ListPage page) {
+ return listPageRelease(page);
+ }
+
+ @ApiOperation(value = ISystemConstant.API_TAGS_RELEASE_PREFIX + "分页地区字典列表", notes = ISystemConstant.API_TAGS_RELEASE_PREFIX + "分页地区字典列表接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "parentId", value = "上级ID", paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "page", value = "当前页码", paramType = "query", dataType = "int", defaultValue = "1"),
+ @ApiImplicitParam(name = "rows", value = "显示数量", paramType = "query", dataType = "int", defaultValue = "20"),
+ @ApiImplicitParam(name = "keywords", value = "关键字", paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "startTime", value = "开始时间", paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "endTime", value = "结束时间", paramType = "query", dataType = "String")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("listpage" + ISystemConstant.RELEASE_SUFFIX)
+ public SuccessResultList> listPageRelease(ListPage page) {
+ Map params = requestParams();
+ String areaParentId = "0";
+ if (!StringUtils.isBlank(params.get(ISystemConstant.PARAMS_PARENT_ID) == null ? null : params.get(ISystemConstant.PARAMS_PARENT_ID).toString())) {
+ areaParentId = params.get(ISystemConstant.PARAMS_PARENT_ID).toString();
+ }
+ params.put("areaParentId", areaParentId);
+ page.setParams(params);
+ return mongoAreaService.listPage(page);
+ }
+
+ @ApiOperation(value = "zTree列表", notes = "zTree列表接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "token", value = "token", paramType = "header"),
+ @ApiImplicitParam(name = "id", value = "父ID", paramType = "query", dataType = "String")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("list-ztree")
+ public List listZTree(@RequestHeader("token") String token) {
+ return listZTreeRelease();
+ }
+
+ @ApiOperation(value = ISystemConstant.API_TAGS_RELEASE_PREFIX + "zTree列表", notes = ISystemConstant.API_TAGS_RELEASE_PREFIX + "zTree列表接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "id", value = "父ID", paramType = "query", dataType = "String")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("list-ztree-" + ISystemConstant.RELEASE_SUFFIX)
+ public List listZTreeRelease() {
+ Map params = requestParams();
+ String areaParentId = "0";
+ if (!StringUtils.isBlank(params.get(ISystemConstant.PARAMS_ID) == null ? null : params.get(ISystemConstant.PARAMS_ID).toString())) {
+ areaParentId = params.get(ISystemConstant.PARAMS_ID).toString();
+ }
+ return mongoAreaService.listZTree(areaParentId);
+ }
+
+}
diff --git a/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/app/apis/MongoDataAppController.java b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/app/apis/MongoDataAppController.java
new file mode 100644
index 00000000..0c22c840
--- /dev/null
+++ b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/app/apis/MongoDataAppController.java
@@ -0,0 +1,164 @@
+package ink.wgink.mongo.module.dictionary.controller.app.apis;
+
+import ink.wgink.common.base.DefaultBaseController;
+import ink.wgink.interfaces.consts.ISystemConstant;
+import ink.wgink.module.dictionary.pojo.dtos.DataDTO;
+import ink.wgink.mongo.module.dictionary.service.IMongoDataService;
+import ink.wgink.pojo.ListPage;
+import ink.wgink.pojo.dtos.ZTreeDTO;
+import ink.wgink.pojo.result.ErrorResult;
+import ink.wgink.pojo.result.SuccessResultList;
+import io.swagger.annotations.*;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * When you feel like quitting. Think about why you started
+ * 当你想要放弃的时候,想想当初你为何开始
+ *
+ * @ClassName: DictionaryController
+ * @Description: 字典
+ * @Author: WangGeng
+ * @Date: 2019/11/18 14:00
+ * @Version: 1.0
+ **/
+@Api(tags = ISystemConstant.API_TAGS_APP_PREFIX + "字典管理接口")
+@RestController
+@RequestMapping(ISystemConstant.APP_PREFIX + "/mongo/data")
+public class MongoDataAppController extends DefaultBaseController {
+
+ @Autowired
+ private IMongoDataService mongoDataService;
+
+ @ApiOperation(value = "字典详情(ID查询)", notes = "字典详情(ID查询)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "token", value = "token", paramType = "header"),
+ @ApiImplicitParam(name = "dataId", value = "字典ID", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("get/{dataId}")
+ public DataDTO get(@RequestHeader("token") String token, @PathVariable("dataId") String dataId) {
+ return getByIdRelease(dataId);
+ }
+
+ @ApiOperation(value = ISystemConstant.API_TAGS_RELEASE_PREFIX + "字典详情(ID查询)", notes = ISystemConstant.API_TAGS_RELEASE_PREFIX + "字典详情(ID查询)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "dataId", value = "字典ID", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("get/id-" + ISystemConstant.RELEASE_SUFFIX + "/{dataId}")
+ public DataDTO getByIdRelease(@PathVariable("dataId") String dataId) {
+ return mongoDataService.get(dataId);
+ }
+
+ @ApiOperation(value = "字典列表(上级ID查询)", notes = "字典列表(上级ID查询)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "token", value = "token", paramType = "header"),
+ @ApiImplicitParam(name = "dataParentId", value = "字典上级ID", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("list/parent-id/{dataParentId}")
+ public List listByParentId(@RequestHeader("token") String token, @PathVariable("dataParentId") String dataParentId) {
+ return listByParentIdRelease(dataParentId);
+ }
+
+ @ApiOperation(value = ISystemConstant.API_TAGS_RELEASE_PREFIX + "字典列表(上级ID查询)", notes = ISystemConstant.API_TAGS_RELEASE_PREFIX + "字典列表(上级ID查询)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "dataParentId", value = "字典上级ID", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("list/parent-id-" + ISystemConstant.RELEASE_SUFFIX + "/{dataParentId}")
+ public List listByParentIdRelease(@PathVariable("dataParentId") String dataParentId) {
+ return mongoDataService.listByParentId(dataParentId);
+ }
+
+ @ApiOperation(value = "字典全部列表(上级ID查询)", notes = "字典全部列表(上级ID查询)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "token", value = "token", paramType = "header"),
+ @ApiImplicitParam(name = "dataParentId", value = "字典上级ID", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("list-all/parent-id/{dataParentId}")
+ public List listAllByParentId(@RequestHeader("token") String token, @PathVariable("dataParentId") String dataParentId) {
+ return listAllByParentIdRelease(dataParentId);
+ }
+
+ @ApiOperation(value = ISystemConstant.API_TAGS_RELEASE_PREFIX + "字典全部列表(上级ID查询)", notes = ISystemConstant.API_TAGS_RELEASE_PREFIX + "字典全部列表(上级ID查询)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "dataParentId", value = "字典上级ID", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("list-all/parent-id-" + ISystemConstant.RELEASE_SUFFIX + "/{dataParentId}")
+ public List listAllByParentIdRelease(@PathVariable("dataParentId") String dataParentId) {
+ return mongoDataService.listAllByParentId(dataParentId);
+ }
+
+ @ApiOperation(value = "分页字典列表", notes = "分页字典列表接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "token", value = "token", paramType = "header"),
+ @ApiImplicitParam(name = "parentId", value = "上级ID", paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "page", value = "当前页码", paramType = "query", dataType = "int", defaultValue = "1"),
+ @ApiImplicitParam(name = "rows", value = "显示数量", paramType = "query", dataType = "int", defaultValue = "20"),
+ @ApiImplicitParam(name = "keywords", value = "关键字", paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "startTime", value = "开始时间", paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "endTime", value = "结束时间", paramType = "query", dataType = "String")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("listpage")
+ public SuccessResultList> listPage(@RequestHeader("token") String token, ListPage page) {
+ return listPageRelease(page);
+ }
+
+ @ApiOperation(value = ISystemConstant.API_TAGS_RELEASE_PREFIX + "分页字典列表", notes = ISystemConstant.API_TAGS_RELEASE_PREFIX + "分页字典列表接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "parentId", value = "上级ID", paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "page", value = "当前页码", paramType = "query", dataType = "int", defaultValue = "1"),
+ @ApiImplicitParam(name = "rows", value = "显示数量", paramType = "query", dataType = "int", defaultValue = "20"),
+ @ApiImplicitParam(name = "keywords", value = "关键字", paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "startTime", value = "开始时间", paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "endTime", value = "结束时间", paramType = "query", dataType = "String")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("listpage-" + ISystemConstant.RELEASE_SUFFIX)
+ public SuccessResultList> listPageRelease(ListPage page) {
+ Map params = requestParams();
+ String dataParentId = "0";
+ if (!StringUtils.isBlank(params.get(ISystemConstant.PARAMS_PARENT_ID) == null ? null : params.get(ISystemConstant.PARAMS_PARENT_ID).toString())) {
+ dataParentId = params.get(ISystemConstant.PARAMS_PARENT_ID).toString();
+ }
+ params.put("dataParentId", dataParentId);
+ page.setParams(params);
+ return mongoDataService.listPage(page);
+ }
+
+ @ApiOperation(value = "zTree列表", notes = "zTree列表接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "token", value = "token", paramType = "header"),
+ @ApiImplicitParam(name = "id", value = "父ID", paramType = "query", dataType = "String")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("listztree")
+ public List listZTree(@RequestHeader("token") String token) {
+ return listZTreeRelease();
+ }
+
+ @ApiOperation(value = ISystemConstant.API_TAGS_RELEASE_PREFIX + "zTree列表", notes = ISystemConstant.API_TAGS_RELEASE_PREFIX + "zTree列表接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "id", value = "父ID", paramType = "query", dataType = "String")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("list-ztree-" + ISystemConstant.RELEASE_SUFFIX)
+ public List listZTreeRelease() {
+ Map params = requestParams();
+ String dataParentId = "0";
+ if (!StringUtils.isBlank(params.get(ISystemConstant.PARAMS_ID) == null ? null : params.get(ISystemConstant.PARAMS_ID).toString())) {
+ dataParentId = params.get(ISystemConstant.PARAMS_ID).toString();
+ }
+ return mongoDataService.listZTree(dataParentId);
+ }
+
+}
diff --git a/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/route/MongoAreaRouteController.java b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/route/MongoAreaRouteController.java
new file mode 100644
index 00000000..1bf6ae65
--- /dev/null
+++ b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/route/MongoAreaRouteController.java
@@ -0,0 +1,50 @@
+package ink.wgink.mongo.module.dictionary.controller.route;
+
+import ink.wgink.interfaces.consts.ISystemConstant;
+import io.swagger.annotations.Api;
+import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.servlet.ModelAndView;
+
+/**
+ * When you feel like quitting. Think about why you started
+ * 当你想要放弃的时候,想想当初你为何开始
+ *
+ * @ClassName: IDataDictionaryRouteController
+ * @Description: 数据字典
+ * @Author: WangGeng
+ * @Date: 2019/12/6 16:52
+ * @Version: 1.0
+ **/
+@Api(tags = ISystemConstant.ROUTE_TAGS_PREFIX + "地区字典页面接口")
+@Controller
+@RequestMapping(ISystemConstant.ROUTE_PREFIX + "/mongo/area")
+public class MongoAreaRouteController {
+
+ @GetMapping("list-tree")
+ public ModelAndView listTree() {
+ return new ModelAndView("mongo/area/list-tree");
+ }
+
+ @GetMapping("list-tree-mongo")
+ public ModelAndView listTreeMongo() {
+ return new ModelAndView("mongo/area/list-tree-mongo");
+ }
+
+ @GetMapping("list")
+ public ModelAndView list() {
+ return new ModelAndView("mongo/area/list");
+ }
+
+ @GetMapping("list-mongo")
+ public ModelAndView listMongo() {
+ return new ModelAndView("mongo/area/list-mongo");
+ }
+
+ @GetMapping("get-select")
+ public ModelAndView getSelect() {
+ return new ModelAndView("mongo/area/get-select");
+ }
+
+}
diff --git a/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/route/MongoDataRouteController.java b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/route/MongoDataRouteController.java
new file mode 100644
index 00000000..8229b624
--- /dev/null
+++ b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/route/MongoDataRouteController.java
@@ -0,0 +1,42 @@
+package ink.wgink.mongo.module.dictionary.controller.route;
+
+import ink.wgink.interfaces.consts.ISystemConstant;
+import io.swagger.annotations.Api;
+import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.servlet.ModelAndView;
+
+/**
+ * @ClassName: IDataDictionaryRouteController
+ * @Description: 数据字典
+ * @Author: WangGeng
+ * @Date: 2019/12/6 16:52
+ * @Version: 1.0
+ **/
+@Api(tags = ISystemConstant.ROUTE_TAGS_PREFIX + "数据字典页面接口")
+@Controller
+@RequestMapping(ISystemConstant.ROUTE_PREFIX + "/mongo/data")
+public class MongoDataRouteController {
+
+ @GetMapping("list-tree")
+ public ModelAndView listTree() {
+ return new ModelAndView("mongo/data/list-tree");
+ }
+
+ @GetMapping("list-tree-mongo")
+ public ModelAndView listTreeMongo() {
+ return new ModelAndView("mongo/data/list-tree-mongo");
+ }
+
+ @GetMapping("list")
+ public ModelAndView list() {
+ return new ModelAndView("mongo/data/list");
+ }
+
+ @GetMapping("list-mongo")
+ public ModelAndView listMongo() {
+ return new ModelAndView("mongo/data/list-mongo");
+ }
+
+}
diff --git a/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/wechat/MongoAreaWechatController.java b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/wechat/MongoAreaWechatController.java
new file mode 100644
index 00000000..a0b4dfe9
--- /dev/null
+++ b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/wechat/MongoAreaWechatController.java
@@ -0,0 +1,107 @@
+package ink.wgink.mongo.module.dictionary.controller.wechat;
+
+import ink.wgink.common.base.DefaultBaseController;
+import ink.wgink.interfaces.consts.ISystemConstant;
+import ink.wgink.module.dictionary.pojo.dtos.AreaDTO;
+import ink.wgink.mongo.module.dictionary.service.IMongoAreaService;
+import ink.wgink.pojo.ListPage;
+import ink.wgink.pojo.dtos.ZTreeDTO;
+import ink.wgink.pojo.result.ErrorResult;
+import ink.wgink.pojo.result.SuccessResultList;
+import io.swagger.annotations.*;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * When you feel like quitting. Think about why you started
+ * 当你想要放弃的时候,想想当初你为何开始
+ *
+ * @ClassName: AreaAreaWechatController
+ * @Description: 微信数据地区字典
+ * @Author: WangGeng
+ * @Date: 2020/3/8 9:47 上午
+ * @Version: 1.0
+ **/
+@Api(tags = ISystemConstant.API_TAGS_WECHAT_PREFIX + "地区字典管理接口")
+@RestController
+@RequestMapping(ISystemConstant.WECHAT_PREFIX + "/mongo/area")
+public class MongoAreaWechatController extends DefaultBaseController {
+
+ @Autowired
+ private IMongoAreaService mongoAreaService;
+
+ @ApiOperation(value = "地区字典详情(ID查询)", notes = "地区字典详情(ID查询)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "areaId", value = "地区字典ID", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("get/{areaId}")
+ public AreaDTO get(@PathVariable("areaId") String areaId) {
+ return mongoAreaService.get(areaId);
+ }
+
+ @ApiOperation(value = "地区字典列表(上级ID查询)", notes = "地区字典列表(上级ID查询)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "areaParentId", value = "地区字典上级ID", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("list/parent-id/{areaParentId}")
+ public List listByParentId(@PathVariable("areaParentId") String areaParentId) {
+ return mongoAreaService.listByParentId(areaParentId);
+ }
+
+ @ApiOperation(value = "地区字典全部列表(上级ID查询)", notes = "地区字典全部列表(上级ID查询)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "areaParentId", value = "地区字典上级ID", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("list-all/parent-id/{areaParentId}")
+ public List listAllByParentId(@PathVariable("areaParentId") String areaParentId) {
+ return mongoAreaService.listAllByParentId(areaParentId);
+ }
+
+ @ApiOperation(value = "分页地区字典列表", notes = "分页地区字典列表接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "parentId", value = "上级ID", paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "page", value = "当前页码", paramType = "query", dataType = "int", defaultValue = "1"),
+ @ApiImplicitParam(name = "rows", value = "显示数量", paramType = "query", dataType = "int", defaultValue = "20"),
+ @ApiImplicitParam(name = "keywords", value = "关键字", paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "startTime", value = "开始时间", paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "endTime", value = "结束时间", paramType = "query", dataType = "String")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("listpage")
+ public SuccessResultList> listPage(ListPage page) {
+ Map params = requestParams();
+ String areaParentId = "0";
+ if (!StringUtils.isBlank(params.get(ISystemConstant.PARAMS_PARENT_ID) == null ? null : params.get(ISystemConstant.PARAMS_PARENT_ID).toString())) {
+ areaParentId = params.get(ISystemConstant.PARAMS_PARENT_ID).toString();
+ }
+ params.put("areaParentId", areaParentId);
+ page.setParams(params);
+ return mongoAreaService.listPage(page);
+ }
+
+ @ApiOperation(value = "zTree列表", notes = "zTree列表接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "id", value = "父ID", paramType = "query", dataType = "String")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("list-ztree")
+ public List listZTree() {
+ Map params = requestParams();
+ String areaParentId = "0";
+ if (!StringUtils.isBlank(params.get(ISystemConstant.PARAMS_ID) == null ? null : params.get(ISystemConstant.PARAMS_ID).toString())) {
+ areaParentId = params.get(ISystemConstant.PARAMS_ID).toString();
+ }
+ return mongoAreaService.listZTree(areaParentId);
+ }
+
+}
diff --git a/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/wechat/MongoDataWechatController.java b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/wechat/MongoDataWechatController.java
new file mode 100644
index 00000000..0d05c7fb
--- /dev/null
+++ b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/controller/wechat/MongoDataWechatController.java
@@ -0,0 +1,115 @@
+package ink.wgink.mongo.module.dictionary.controller.wechat;
+
+import ink.wgink.annotation.CheckRequestBodyAnnotation;
+import ink.wgink.common.base.DefaultBaseController;
+import ink.wgink.interfaces.consts.ISystemConstant;
+import ink.wgink.module.dictionary.pojo.dtos.DataDTO;
+import ink.wgink.module.dictionary.pojo.vos.AreaVO;
+import ink.wgink.mongo.module.dictionary.service.IMongoDataService;
+import ink.wgink.pojo.ListPage;
+import ink.wgink.pojo.dtos.ZTreeDTO;
+import ink.wgink.pojo.result.ErrorResult;
+import ink.wgink.pojo.result.SuccessResult;
+import ink.wgink.pojo.result.SuccessResultList;
+import io.swagger.annotations.*;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * When you feel like quitting. Think about why you started
+ * 当你想要放弃的时候,想想当初你为何开始
+ *
+ * @ClassName: DataWechatController
+ * @Description: 微信数据字典
+ * @Author: WangGeng
+ * @Date: 2020/3/8 9:47 上午
+ * @Version: 1.0
+ **/
+@Api(tags = ISystemConstant.API_TAGS_WECHAT_PREFIX + "字典管理接口")
+@RestController
+@RequestMapping(ISystemConstant.WECHAT_PREFIX + "/mongo/data")
+public class MongoDataWechatController extends DefaultBaseController {
+
+ @Autowired
+ private IMongoDataService mongoDataService;
+
+ @ApiOperation(value = "更新mongo", notes = "更新mongo接口")
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @PutMapping("update-mongo")
+ public SuccessResult updateMongo() {
+ mongoDataService.updateMongo();
+ return new SuccessResult();
+ }
+
+ @ApiOperation(value = "字典详情(ID查询)", notes = "字典详情(ID查询)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "dataId", value = "字典ID", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("get/{dataId}")
+ public DataDTO get(@PathVariable("dataId") String dataId) {
+ return mongoDataService.get(dataId);
+ }
+
+ @ApiOperation(value = "字典列表(上级ID查询)", notes = "字典列表(上级ID查询)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "dataParentId", value = "字典上级ID", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("list/parent-id/{dataParentId}")
+ public List listByParentId(@PathVariable("dataParentId") String dataParentId) {
+ return mongoDataService.listByParentId(dataParentId);
+ }
+
+ @ApiOperation(value = "字典全部列表(上级ID查询)", notes = "字典全部列表(上级ID查询)接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "dataParentId", value = "字典上级ID", paramType = "path")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("list-all/parent-id/{dataParentId}")
+ public List listAllByParentId(@PathVariable("dataParentId") String dataParentId) {
+ return mongoDataService.listAllByParentId(dataParentId);
+ }
+
+ @ApiOperation(value = "分页字典列表", notes = "分页字典列表接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "parentId", value = "上级ID", paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "page", value = "当前页码", paramType = "query", dataType = "int", defaultValue = "1"),
+ @ApiImplicitParam(name = "rows", value = "显示数量", paramType = "query", dataType = "int", defaultValue = "20"),
+ @ApiImplicitParam(name = "keywords", value = "关键字", paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "startTime", value = "开始时间", paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "endTime", value = "结束时间", paramType = "query", dataType = "String")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("listpage")
+ public SuccessResultList> listPage(ListPage page) {
+ Map params = requestParams();
+ String dataParentId = "0";
+ if (!StringUtils.isBlank(params.get(ISystemConstant.PARAMS_PARENT_ID) == null ? null : params.get(ISystemConstant.PARAMS_PARENT_ID).toString())) {
+ dataParentId = params.get(ISystemConstant.PARAMS_PARENT_ID).toString();
+ }
+ params.put("dataParentId", dataParentId);
+ page.setParams(params);
+ return mongoDataService.listPage(page);
+ }
+
+ @ApiOperation(value = "zTree列表", notes = "zTree列表接口")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "id", value = "父ID", paramType = "query", dataType = "String")
+ })
+ @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
+ @GetMapping("list-ztree")
+ public List listZTree() {
+ Map params = requestParams();
+ String dataParentId = "0";
+ if (!StringUtils.isBlank(params.get(ISystemConstant.PARAMS_ID) == null ? null : params.get(ISystemConstant.PARAMS_ID).toString())) {
+ dataParentId = params.get(ISystemConstant.PARAMS_ID).toString();
+ }
+ return mongoDataService.listZTree(dataParentId);
+ }
+
+}
diff --git a/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/enums/MongoDictionaryCollectionEnum.java b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/enums/MongoDictionaryCollectionEnum.java
new file mode 100644
index 00000000..4ac77603
--- /dev/null
+++ b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/enums/MongoDictionaryCollectionEnum.java
@@ -0,0 +1,30 @@
+package ink.wgink.mongo.module.dictionary.enums;
+
+/**
+ * @ClassName: MongoDictionaryCollectionEnum
+ * @Description:
+ * @Author: wanggeng
+ * @Date: 2021/11/19 10:45 上午
+ * @Version: 1.0
+ */
+public enum MongoDictionaryCollectionEnum {
+
+ DATA("dictionaryData", "数据字典"),
+ AREA("dictionaryArea", "地区字典");
+
+ private String value;
+ private String summary;
+
+ MongoDictionaryCollectionEnum(String value, String summary) {
+ this.value = value;
+ this.summary = summary;
+ }
+
+ public String getValue() {
+ return value == null ? "" : value.trim();
+ }
+
+ public String getSummary() {
+ return summary == null ? "" : summary.trim();
+ }
+}
diff --git a/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/service/IMongoAreaService.java b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/service/IMongoAreaService.java
new file mode 100644
index 00000000..db17bf5c
--- /dev/null
+++ b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/service/IMongoAreaService.java
@@ -0,0 +1,91 @@
+package ink.wgink.mongo.module.dictionary.service;
+
+import ink.wgink.module.dictionary.pojo.dtos.AreaDTO;
+import ink.wgink.pojo.ListPage;
+import ink.wgink.pojo.dtos.ZTreeDTO;
+import ink.wgink.pojo.result.SuccessResultList;
+
+import java.util.List;
+
+/**
+ * When you feel like quitting. Think about why you started
+ * 当你想要放弃的时候,想想当初你为何开始
+ *
+ * @ClassName: IAreaAreaService
+ * @Description: 地区字典
+ * @Author: WangGeng
+ * @Date: 2019/11/18 14:09
+ * @Version: 1.0
+ **/
+public interface IMongoAreaService {
+
+ /**
+ * 更新mongo
+ */
+ void updateMongo();
+
+ /**
+ * 通过ID获取地区字典
+ *
+ * @param areaId
+ * @return
+ */
+ AreaDTO get(String areaId);
+
+ /**
+ * 通过编码获取地区字典详情
+ *
+ * @param areaCode
+ * @return
+ */
+ AreaDTO getByCode(String areaCode);
+
+ /**
+ * 通过上级ID获取地区字典列表
+ *
+ * @param areaParentId
+ * @return
+ */
+ List listByParentId(String areaParentId);
+
+ /**
+ * 通过上级ID获取地区字典全部列表
+ *
+ * @param areaParentId
+ * @return
+ */
+ List listAllByParentId(String areaParentId);
+
+ /**
+ * 分页获取地区字典列表
+ *
+ * @param page
+ * @return
+ */
+ SuccessResultList> listPage(ListPage page);
+
+ /**
+ * zTree列表
+ *
+ * @param areaParentId
+ * @return
+ */
+ List listZTree(String areaParentId);
+
+ /**
+ * 地区字典列表(通过地区字典编码)
+ *
+ * @param areaCode 地区编码
+ * @return
+ */
+ List listByCode(String areaCode);
+
+ /**
+ * 地区字典子列表(不包含本级)
+ *
+ * @param areaCode 地区编码
+ * @return
+ */
+ List listSubByCode(String areaCode);
+
+}
diff --git a/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/service/IMongoDataService.java b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/service/IMongoDataService.java
new file mode 100644
index 00000000..88b085d5
--- /dev/null
+++ b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/service/IMongoDataService.java
@@ -0,0 +1,75 @@
+package ink.wgink.mongo.module.dictionary.service;
+
+import ink.wgink.module.dictionary.pojo.dtos.DataDTO;
+import ink.wgink.pojo.ListPage;
+import ink.wgink.pojo.dtos.ZTreeDTO;
+import ink.wgink.pojo.result.SuccessResultList;
+
+import java.util.List;
+
+/**
+ * When you feel like quitting. Think about why you started
+ * 当你想要放弃的时候,想想当初你为何开始
+ *
+ * @ClassName: IDictionaryService
+ * @Description: 字典
+ * @Author: WangGeng
+ * @Date: 2019/11/18 14:09
+ * @Version: 1.0
+ **/
+public interface IMongoDataService {
+
+ /**
+ * 更新mongo
+ */
+ void updateMongo();
+
+ /**
+ * 通过ID获取字典
+ *
+ * @param dataId
+ * @return
+ */
+ DataDTO get(String dataId);
+
+ /**
+ * 通过上级ID获取字典列表
+ *
+ * @param dataParentId
+ * @return
+ */
+ List listByParentId(String dataParentId);
+
+ /**
+ * 通过上级ID获取字典全部列表
+ *
+ * @param dataParentId
+ * @return
+ */
+ List listAllByParentId(String dataParentId);
+
+ /**
+ * 分页获取字典列表
+ *
+ * @param page
+ * @return
+ */
+ SuccessResultList> listPage(ListPage page);
+
+ /**
+ * zTree列表
+ *
+ * @param dataParentId
+ * @return
+ */
+ List listZTree(String dataParentId);
+
+ /**
+ * 字典列表(通过字典编码)
+ *
+ * @param dataCode
+ * @return
+ */
+ List listByCode(String dataCode);
+
+}
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
new file mode 100644
index 00000000..a56f1a08
--- /dev/null
+++ b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/service/impl/MongoAreaServiceImpl.java
@@ -0,0 +1,126 @@
+package ink.wgink.mongo.module.dictionary.service.impl;
+
+import ink.wgink.common.base.DefaultBaseService;
+import ink.wgink.module.dictionary.pojo.dtos.AreaDTO;
+import ink.wgink.module.dictionary.service.IAreaService;
+import ink.wgink.mongo.module.dictionary.enums.MongoDictionaryCollectionEnum;
+import ink.wgink.mongo.module.dictionary.service.IMongoAreaService;
+import ink.wgink.pojo.ListPage;
+import ink.wgink.pojo.dtos.ZTreeDTO;
+import ink.wgink.pojo.result.SuccessResultList;
+import ink.wgink.util.string.WStringUtil;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Pageable;
+import org.springframework.data.mongodb.core.MongoTemplate;
+import org.springframework.data.mongodb.core.query.Criteria;
+import org.springframework.data.mongodb.core.query.Query;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.regex.Pattern;
+
+/**
+ * @ClassName: AreaServiceImpl
+ * @Description: 字典
+ * @Author: WangGeng
+ * @Date: 2019/11/18 14:09
+ * @Version: 1.0
+ **/
+@Service
+public class MongoAreaServiceImpl extends DefaultBaseService implements IMongoAreaService {
+
+ @Autowired
+ private IAreaService areaService;
+ @Autowired
+ private MongoTemplate mongoTemplate;
+
+ @Override
+ public void updateMongo() {
+ List dataDTOs = areaService.list();
+ mongoTemplate.remove(new Query(), MongoDictionaryCollectionEnum.AREA.getValue());
+ mongoTemplate.insert(dataDTOs, MongoDictionaryCollectionEnum.AREA.getValue());
+ }
+
+ @Override
+ public AreaDTO get(String areaId) {
+ return mongoTemplate.findOne(Query.query(Criteria.where("areaId").is(areaId)), AreaDTO.class, MongoDictionaryCollectionEnum.AREA.getValue());
+ }
+
+ @Override
+ public AreaDTO getByCode(String areaCode) {
+ return mongoTemplate.findOne(Query.query(Criteria.where("areaCode").is(areaCode)), AreaDTO.class, MongoDictionaryCollectionEnum.AREA.getValue());
+ }
+
+ @Override
+ public List listByParentId(String areaParentId) {
+ return mongoTemplate.find(Query.query(Criteria.where("areaParentId").is(areaParentId)), AreaDTO.class, MongoDictionaryCollectionEnum.AREA.getValue());
+ }
+
+ @Override
+ public List listAllByParentId(String areaParentId) {
+ List areaDTOs = listByParentId(areaParentId);
+ listSub(areaDTOs);
+ return areaDTOs;
+ }
+
+ @Override
+ public SuccessResultList> listPage(ListPage page) {
+ Query query = new Query();
+ String keywords = getKeywords(page.getParams());
+ if (!StringUtils.isBlank(keywords)) {
+ Pattern pattern = Pattern.compile("^.*" + keywords + ".*$", Pattern.CASE_INSENSITIVE);
+ query.addCriteria(Criteria.where("areaName").regex(pattern));
+ }
+ long total = mongoTemplate.count(query, MongoDictionaryCollectionEnum.AREA.getValue());
+ query.with(Pageable.ofSize(page.getRows()).withPage(page.getPage() - 1));
+ List dataDTOs = mongoTemplate.find(query, AreaDTO.class, MongoDictionaryCollectionEnum.AREA.getValue());
+ return new SuccessResultList<>(dataDTOs, page.getPage(), total);
+ }
+
+ @Override
+ public List listZTree(String areaParentId) {
+ List areaDTOs = listByParentId(areaParentId);
+ List zTreeDTOs = new ArrayList<>();
+ for (AreaDTO areaDTO : areaDTOs) {
+ ZTreeDTO zTreeDTO = new ZTreeDTO();
+ zTreeDTO.setId(areaDTO.getAreaId());
+ zTreeDTO.setpId(areaDTO.getAreaParentId());
+ zTreeDTO.setName(areaDTO.getAreaName());
+ long subCount = mongoTemplate.count(Query.query(Criteria.where("areaParentId").is(areaDTO.getAreaId())), MongoDictionaryCollectionEnum.AREA.getValue());
+ setZTreeInfo(zTreeDTO, subCount);
+ zTreeDTOs.add(zTreeDTO);
+ }
+ return zTreeDTOs;
+ }
+
+ @Override
+ public List listByCode(String areaCode) {
+ Pattern pattern = Pattern.compile("^" + areaCode + ".*$", Pattern.CASE_INSENSITIVE);
+ return mongoTemplate.find(Query.query(Criteria.where("areaCode").regex(pattern)), AreaDTO.class, MongoDictionaryCollectionEnum.AREA.getValue());
+ }
+
+ @Override
+ public List listSubByCode(String areaCode) {
+ Pattern pattern = Pattern.compile("^" + WStringUtil.cutContinuityRepeatCharDesc(areaCode, '0') + ".*$", 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());
+ }
+
+ /**
+ * 递归查询子组
+ *
+ * @param areaDTOs
+ */
+ private void listSub(List areaDTOs) {
+ for (AreaDTO areaDTO : areaDTOs) {
+ List subAreaDTOs = listByParentId(areaDTO.getAreaId());
+ areaDTO.setSubArea(subAreaDTOs);
+ listSub(subAreaDTOs);
+ }
+ }
+
+}
diff --git a/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/service/impl/MongoDataServiceImpl.java b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/service/impl/MongoDataServiceImpl.java
new file mode 100644
index 00000000..35b0e6fe
--- /dev/null
+++ b/mongo-module-dictionary/src/main/java/ink/wgink/mongo/module/dictionary/service/impl/MongoDataServiceImpl.java
@@ -0,0 +1,111 @@
+package ink.wgink.mongo.module.dictionary.service.impl;
+
+import ink.wgink.common.base.DefaultBaseService;
+import ink.wgink.module.dictionary.pojo.dtos.DataDTO;
+import ink.wgink.module.dictionary.service.IDataService;
+import ink.wgink.mongo.module.dictionary.enums.MongoDictionaryCollectionEnum;
+import ink.wgink.mongo.module.dictionary.service.IMongoDataService;
+import ink.wgink.pojo.ListPage;
+import ink.wgink.pojo.dtos.ZTreeDTO;
+import ink.wgink.pojo.result.SuccessResultList;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Pageable;
+import org.springframework.data.mongodb.core.MongoTemplate;
+import org.springframework.data.mongodb.core.query.Criteria;
+import org.springframework.data.mongodb.core.query.Query;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.regex.Pattern;
+
+/**
+ * @ClassName: DictionaryServiceImpl
+ * @Description: 字典
+ * @Author: WangGeng
+ * @Date: 2019/11/18 14:09
+ * @Version: 1.0
+ **/
+@Service
+public class MongoDataServiceImpl extends DefaultBaseService implements IMongoDataService {
+
+ @Autowired
+ private IDataService dataService;
+ @Autowired
+ private MongoTemplate mongoTemplate;
+
+ @Override
+ public void updateMongo() {
+ List dataDTOs = dataService.list();
+ mongoTemplate.remove(new Query(), MongoDictionaryCollectionEnum.DATA.getValue());
+ mongoTemplate.insert(dataDTOs, MongoDictionaryCollectionEnum.DATA.getValue());
+ }
+
+ @Override
+ public DataDTO get(String dataId) {
+ return mongoTemplate.findOne(Query.query(Criteria.where("dataId").is(dataId)), DataDTO.class, MongoDictionaryCollectionEnum.DATA.getValue());
+ }
+
+ @Override
+ public List listByParentId(String dataParentId) {
+ return mongoTemplate.find(Query.query(Criteria.where("dataParentId").is(dataParentId)), DataDTO.class, MongoDictionaryCollectionEnum.DATA.getValue());
+ }
+
+ @Override
+ public List listAllByParentId(String dataParentId) {
+ List dataDTOs = listByParentId(dataParentId);
+ listSub(dataDTOs);
+ return dataDTOs;
+ }
+
+ @Override
+ public SuccessResultList> listPage(ListPage page) {
+ Query query = new Query(Criteria.where("dataParentId").is(page.getParams().get("dataParentId").toString()));
+ String keywords = getKeywords(page.getParams());
+ if (!StringUtils.isBlank(keywords)) {
+ Pattern pattern = Pattern.compile("^.*" + keywords + ".*$", Pattern.CASE_INSENSITIVE);
+ query.addCriteria(Criteria.where("dataName").regex(pattern));
+ }
+ long total = mongoTemplate.count(query, MongoDictionaryCollectionEnum.DATA.getValue());
+ query.with(Pageable.ofSize(page.getRows()).withPage(page.getPage() - 1));
+ List dataDTOs = mongoTemplate.find(query, DataDTO.class, MongoDictionaryCollectionEnum.DATA.getValue());
+ return new SuccessResultList<>(dataDTOs, page.getPage(), total);
+ }
+
+ @Override
+ public List listZTree(String dataParentId) {
+ List dataDTOs = listByParentId(dataParentId);
+ List zTreeDTOs = new ArrayList<>();
+ for (DataDTO dataDTO : dataDTOs) {
+ ZTreeDTO zTreeDTO = new ZTreeDTO();
+ zTreeDTO.setId(dataDTO.getDataId());
+ zTreeDTO.setpId(dataDTO.getDataParentId());
+ zTreeDTO.setName(dataDTO.getDataName());
+ long subCount = mongoTemplate.count(Query.query(Criteria.where("dataParentId").is(dataDTO.getDataId())), MongoDictionaryCollectionEnum.DATA.getValue());
+ setZTreeInfo(zTreeDTO, subCount);
+ zTreeDTOs.add(zTreeDTO);
+ }
+ return zTreeDTOs;
+ }
+
+ @Override
+ public List listByCode(String dataCode) {
+ Pattern pattern = Pattern.compile("^" + dataCode + ".*$", Pattern.CASE_INSENSITIVE);
+ return mongoTemplate.find(Query.query(Criteria.where("dataCode").regex(pattern)), DataDTO.class, MongoDictionaryCollectionEnum.DATA.getValue());
+ }
+
+ /**
+ * 递归查询子组
+ *
+ * @param dataDTOs
+ */
+ private void listSub(List dataDTOs) {
+ for (DataDTO dataDTO : dataDTOs) {
+ List subDataDTOs = listByParentId(dataDTO.getDataId());
+ dataDTO.setSubData(subDataDTOs);
+ listSub(subDataDTOs);
+ }
+ }
+
+}
\ No newline at end of file
diff --git a/mongo-module-dictionary/src/main/resources/templates/mongo/area/get-select.html b/mongo-module-dictionary/src/main/resources/templates/mongo/area/get-select.html
new file mode 100644
index 00000000..6c9e2b1b
--- /dev/null
+++ b/mongo-module-dictionary/src/main/resources/templates/mongo/area/get-select.html
@@ -0,0 +1,288 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/mongo-module-dictionary/src/main/resources/templates/mongo/area/list-mongo.html b/mongo-module-dictionary/src/main/resources/templates/mongo/area/list-mongo.html
new file mode 100644
index 00000000..d675e4b3
--- /dev/null
+++ b/mongo-module-dictionary/src/main/resources/templates/mongo/area/list-mongo.html
@@ -0,0 +1,121 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/mongo-module-dictionary/src/main/resources/templates/mongo/area/list-tree-mongo.html b/mongo-module-dictionary/src/main/resources/templates/mongo/area/list-tree-mongo.html
new file mode 100644
index 00000000..78b09bff
--- /dev/null
+++ b/mongo-module-dictionary/src/main/resources/templates/mongo/area/list-tree-mongo.html
@@ -0,0 +1,106 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/mongo-module-dictionary/src/main/resources/templates/mongo/area/list-tree.html b/mongo-module-dictionary/src/main/resources/templates/mongo/area/list-tree.html
new file mode 100644
index 00000000..1d20b6a4
--- /dev/null
+++ b/mongo-module-dictionary/src/main/resources/templates/mongo/area/list-tree.html
@@ -0,0 +1,114 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/mongo-module-dictionary/src/main/resources/templates/mongo/area/list.html b/mongo-module-dictionary/src/main/resources/templates/mongo/area/list.html
new file mode 100644
index 00000000..495e7daa
--- /dev/null
+++ b/mongo-module-dictionary/src/main/resources/templates/mongo/area/list.html
@@ -0,0 +1,227 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/mongo-module-dictionary/src/main/resources/templates/mongo/data/list-mongo.html b/mongo-module-dictionary/src/main/resources/templates/mongo/data/list-mongo.html
new file mode 100644
index 00000000..40f870f3
--- /dev/null
+++ b/mongo-module-dictionary/src/main/resources/templates/mongo/data/list-mongo.html
@@ -0,0 +1,111 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/mongo-module-dictionary/src/main/resources/templates/mongo/data/list-tree-mongo.html b/mongo-module-dictionary/src/main/resources/templates/mongo/data/list-tree-mongo.html
new file mode 100644
index 00000000..1adc831c
--- /dev/null
+++ b/mongo-module-dictionary/src/main/resources/templates/mongo/data/list-tree-mongo.html
@@ -0,0 +1,106 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/mongo-module-dictionary/src/main/resources/templates/mongo/data/list-tree.html b/mongo-module-dictionary/src/main/resources/templates/mongo/data/list-tree.html
new file mode 100644
index 00000000..6db08f11
--- /dev/null
+++ b/mongo-module-dictionary/src/main/resources/templates/mongo/data/list-tree.html
@@ -0,0 +1,114 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/mongo-module-dictionary/src/main/resources/templates/mongo/data/list.html b/mongo-module-dictionary/src/main/resources/templates/mongo/data/list.html
new file mode 100644
index 00000000..282674d3
--- /dev/null
+++ b/mongo-module-dictionary/src/main/resources/templates/mongo/data/list.html
@@ -0,0 +1,217 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index bb3376f9..2d5253e0 100644
--- a/pom.xml
+++ b/pom.xml
@@ -40,6 +40,7 @@
module-instant-message
login-oauth2-client
module-oauth2-client
+ mongo-module-dictionary
pom
@@ -90,6 +91,7 @@
6.0.0
1.10
7.0.2
+ 3.2.5
@@ -514,6 +516,14 @@
${minio.version}
+
+
+
+ org.springframework.data
+ spring-data-mongodb
+ ${mongo.version}
+
+