From de5ccdf2d94f593c4bafd67f4cdba36ea8d53d06 Mon Sep 17 00:00:00 2001 From: xudawei Date: Mon, 29 Apr 2024 17:56:36 +0800 Subject: [PATCH 1/7] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=AD=97=E5=85=B8?= =?UTF-8?q?=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BannerServiceImpl.java | 1 - dictionary/.gitignore | 33 ++++++++ dictionary/dictionary-api/.gitignore | 33 ++++++++ dictionary/dictionary-api/pom.xml | 42 ++++++++++ .../dictionary/api/DictionaryApi.java | 28 +++++++ .../api/request/QueryByDictTypeReq.java | 37 +++++++++ .../api/request/QueryPageDictReq.java | 40 ++++++++++ .../api/response/QueryByDictTypeResp.java | 39 ++++++++++ .../api/response/QueryDictResp.java | 60 +++++++++++++++ .../src/main/resources/application.properties | 1 + .../api/DictionaryApiApplicationTests.java | 13 ++++ dictionary/dictionary-server/.gitignore | 33 ++++++++ dictionary/dictionary-server/pom.xml | 76 +++++++++++++++++++ .../controller/DictionaryController.java | 39 ++++++++++ .../dictionary/server/domain/Dictionary.java | 62 +++++++++++++++ .../server/mapper/DictionaryDao.java | 15 ++++ .../server/service/DictionaryService.java | 18 +++++ .../service/impl/DictionaryServiceImpl.java | 52 +++++++++++++ .../src/main/resources/application.properties | 1 + .../DictionaryServerApplicationTests.java | 13 ++++ dictionary/pom.xml | 62 +++++++++++++++ nanopart-server/pom.xml | 12 +++ 22 files changed, 709 insertions(+), 1 deletion(-) create mode 100644 dictionary/.gitignore create mode 100644 dictionary/dictionary-api/.gitignore create mode 100644 dictionary/dictionary-api/pom.xml create mode 100644 dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/DictionaryApi.java create mode 100644 dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/request/QueryByDictTypeReq.java create mode 100644 dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/request/QueryPageDictReq.java create mode 100644 dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/response/QueryByDictTypeResp.java create mode 100644 dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/response/QueryDictResp.java create mode 100644 dictionary/dictionary-api/src/main/resources/application.properties create mode 100644 dictionary/dictionary-api/src/test/java/cn/axzo/nanopart/dictionary/api/DictionaryApiApplicationTests.java create mode 100644 dictionary/dictionary-server/.gitignore create mode 100644 dictionary/dictionary-server/pom.xml create mode 100644 dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/controller/DictionaryController.java create mode 100644 dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/domain/Dictionary.java create mode 100644 dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/mapper/DictionaryDao.java create mode 100644 dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/service/DictionaryService.java create mode 100644 dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/service/impl/DictionaryServiceImpl.java create mode 100644 dictionary/dictionary-server/src/main/resources/application.properties create mode 100644 dictionary/dictionary-server/src/test/java/cn/axzo/nanopart/dictionary/server/DictionaryServerApplicationTests.java create mode 100644 dictionary/pom.xml diff --git a/banner/banner-server/src/main/java/cn/axzo/nanopart/server/service/impl/BannerServiceImpl.java b/banner/banner-server/src/main/java/cn/axzo/nanopart/server/service/impl/BannerServiceImpl.java index 2b0b8312..231dfab0 100644 --- a/banner/banner-server/src/main/java/cn/axzo/nanopart/server/service/impl/BannerServiceImpl.java +++ b/banner/banner-server/src/main/java/cn/axzo/nanopart/server/service/impl/BannerServiceImpl.java @@ -56,7 +56,6 @@ public class BannerServiceImpl extends ServiceImpl implements @Override public Page page(PageBannerReq req) { LambdaQueryWrapper pageLambdaQueryWrapper = buildPageLambdaQueryWrapper(req); - Page bannerPage = page(new Page<>(req.getPageNumber(), req.getPageSize()), pageLambdaQueryWrapper); if (Objects.isNull(bannerPage) || bannerPage.getTotal() == 0) { return new Page<>(); diff --git a/dictionary/.gitignore b/dictionary/.gitignore new file mode 100644 index 00000000..549e00a2 --- /dev/null +++ b/dictionary/.gitignore @@ -0,0 +1,33 @@ +HELP.md +target/ +!.mvn/wrapper/maven-wrapper.jar +!**/src/main/**/target/ +!**/src/test/**/target/ + +### STS ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ +!**/src/main/**/build/ +!**/src/test/**/build/ + +### VS Code ### +.vscode/ diff --git a/dictionary/dictionary-api/.gitignore b/dictionary/dictionary-api/.gitignore new file mode 100644 index 00000000..549e00a2 --- /dev/null +++ b/dictionary/dictionary-api/.gitignore @@ -0,0 +1,33 @@ +HELP.md +target/ +!.mvn/wrapper/maven-wrapper.jar +!**/src/main/**/target/ +!**/src/test/**/target/ + +### STS ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ +!**/src/main/**/build/ +!**/src/test/**/build/ + +### VS Code ### +.vscode/ diff --git a/dictionary/dictionary-api/pom.xml b/dictionary/dictionary-api/pom.xml new file mode 100644 index 00000000..cf047bca --- /dev/null +++ b/dictionary/dictionary-api/pom.xml @@ -0,0 +1,42 @@ + + + 4.0.0 + + dictionary + cn.axzo.nanopart + ${revision} + ../pom.xml + + dictionary-api + jar + dictionary-api + + + 2.0.0-SNAPSHOT + 2.0.0-SNAPSHOT + + + + + cn.axzo.framework + axzo-consumer-spring-cloud-starter + + + + com.alibaba + fastjson + + + org.jetbrains + annotations + 13.0 + compile + + + org.projectlombok + lombok + + + + diff --git a/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/DictionaryApi.java b/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/DictionaryApi.java new file mode 100644 index 00000000..94b25ba3 --- /dev/null +++ b/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/DictionaryApi.java @@ -0,0 +1,28 @@ +package cn.axzo.nanopart.dictionary.api; + +import cn.axzo.framework.domain.web.result.ApiPageResult; +import cn.axzo.nanopart.dictionary.api.request.QueryByDictTypeReq; +import cn.axzo.nanopart.dictionary.api.response.QueryByDictTypeResp; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +import javax.validation.Valid; + +/** + * 字典相关 api + * + * @author xudawei + * @version 1.0 + * @date 2024/04/29 + */ +@FeignClient(name = "nanopart", url = "${axzo.service.nanopart:http://nanopart:8080}") +public interface DictionaryApi { + + /** + * 分页查询banner + */ + @PostMapping("/api/dictionary/page") + ApiPageResult queryByType(@RequestBody @Valid QueryByDictTypeReq req); + +} diff --git a/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/request/QueryByDictTypeReq.java b/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/request/QueryByDictTypeReq.java new file mode 100644 index 00000000..20aab97f --- /dev/null +++ b/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/request/QueryByDictTypeReq.java @@ -0,0 +1,37 @@ +package cn.axzo.nanopart.dictionary.api.request; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.Accessors; + +import javax.validation.constraints.NotBlank; + +/** + * @author xudawei + * @date 2024/4/29 + */ +@Data +@Builder +@Accessors(chain = true) +@NoArgsConstructor +@AllArgsConstructor +public class QueryByDictTypeReq { + /** + * 字典类型 + */ + @NotBlank(message = "dictType is blank") + private String dictType; + + /** + * 页码 + */ + private Integer pageNumber; + + /** + * 每页条数 + */ + private Integer pageSize; + +} diff --git a/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/request/QueryPageDictReq.java b/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/request/QueryPageDictReq.java new file mode 100644 index 00000000..85b9b705 --- /dev/null +++ b/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/request/QueryPageDictReq.java @@ -0,0 +1,40 @@ +package cn.axzo.nanopart.dictionary.api.request; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.Accessors; + +/** + * @author xudawei + * @date 2024/4/29 + */ +@Data +@Builder +@Accessors(chain = true) +@NoArgsConstructor +@AllArgsConstructor +public class QueryPageDictReq { + + /** + * 字典类型 + */ + private String dictType; + + /** + * 字典key + */ + private String dictKey; + + /** + * 页码 + */ + private Integer pageNumber; + + /** + * 每页条数 + */ + private Integer pageSize; + +} diff --git a/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/response/QueryByDictTypeResp.java b/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/response/QueryByDictTypeResp.java new file mode 100644 index 00000000..04e6cda9 --- /dev/null +++ b/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/response/QueryByDictTypeResp.java @@ -0,0 +1,39 @@ +package cn.axzo.nanopart.dictionary.api.response; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.Accessors; + +/** + * @author xudawei + * @date 2024/4/29 + */ +@Data +@Builder +@Accessors(chain = true) +@NoArgsConstructor +@AllArgsConstructor +public class QueryByDictTypeResp { + + /** + * 类型 + */ + private String dictType; + + /** + * 字典key + */ + private String dictKey; + + /** + * 值 + */ + private String dictValue; + + /** + * 排序 + */ + private Integer orderBy; +} diff --git a/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/response/QueryDictResp.java b/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/response/QueryDictResp.java new file mode 100644 index 00000000..694e7cd7 --- /dev/null +++ b/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/response/QueryDictResp.java @@ -0,0 +1,60 @@ +package cn.axzo.nanopart.dictionary.api.response; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.Accessors; + +/** + * @author xudawei + * @date 2024/4/29 + */ +@Data +@Builder +@Accessors(chain = true) +@NoArgsConstructor +@AllArgsConstructor +public class QueryDictResp { + + /** + * 主键 + */ + private Long id; + + /** + * 类型 + */ + private String dictType; + + /** + * 字典key + */ + private String dictKey; + + /** + * 值 + */ + private String dictValue; + + /** + * 排序 + */ + private Integer orderBy; + + /** + * 是否删除:0否,1是 + */ + private String isDelete; + + /** + * 创建人 + */ + private String createBy; + + /** + * 更新人 + */ + private String updateBy; + +} diff --git a/dictionary/dictionary-api/src/main/resources/application.properties b/dictionary/dictionary-api/src/main/resources/application.properties new file mode 100644 index 00000000..06a4f580 --- /dev/null +++ b/dictionary/dictionary-api/src/main/resources/application.properties @@ -0,0 +1 @@ +spring.application.name=dictionary-api diff --git a/dictionary/dictionary-api/src/test/java/cn/axzo/nanopart/dictionary/api/DictionaryApiApplicationTests.java b/dictionary/dictionary-api/src/test/java/cn/axzo/nanopart/dictionary/api/DictionaryApiApplicationTests.java new file mode 100644 index 00000000..0a9fc4d4 --- /dev/null +++ b/dictionary/dictionary-api/src/test/java/cn/axzo/nanopart/dictionary/api/DictionaryApiApplicationTests.java @@ -0,0 +1,13 @@ +package cn.axzo.nanopart.dictionary.api; + +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +@SpringBootTest +class DictionaryApiApplicationTests { + + @Test + void contextLoads() { + } + +} diff --git a/dictionary/dictionary-server/.gitignore b/dictionary/dictionary-server/.gitignore new file mode 100644 index 00000000..549e00a2 --- /dev/null +++ b/dictionary/dictionary-server/.gitignore @@ -0,0 +1,33 @@ +HELP.md +target/ +!.mvn/wrapper/maven-wrapper.jar +!**/src/main/**/target/ +!**/src/test/**/target/ + +### STS ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ +!**/src/main/**/build/ +!**/src/test/**/build/ + +### VS Code ### +.vscode/ diff --git a/dictionary/dictionary-server/pom.xml b/dictionary/dictionary-server/pom.xml new file mode 100644 index 00000000..7521c3a5 --- /dev/null +++ b/dictionary/dictionary-server/pom.xml @@ -0,0 +1,76 @@ + + + 4.0.0 + + dictionary + cn.axzo.nanopart + ${revision} + ../pom.xml + + cn.axzo.nanopart + dictionary-server + jar + dictionary-server + + + + cn.axzo.framework + axzo-web-spring-boot-starter + + + cn.axzo.framework + axzo-spring-cloud-starter + + + cn.axzo.framework + axzo-consumer-spring-cloud-starter + + + cn.axzo.framework + axzo-processor-spring-boot-starter + + + + cn.axzo.framework + axzo-mybatisplus-spring-boot-starter + + + + cn.axzo.framework + axzo-swagger-yapi-spring-boot-starter + + + + com.alibaba + druid-spring-boot-starter + + + cn.hutool + hutool-all + + + + cn.axzo.framework + axzo-logger-spring-boot-starter + + + + org.redisson + redisson-spring-boot-starter + + + + cn.axzo.pokonyan + pokonyan + + + + cn.axzo.nanopart + dictionary-api + 2.0.0-SNAPSHOT + + + + + diff --git a/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/controller/DictionaryController.java b/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/controller/DictionaryController.java new file mode 100644 index 00000000..ff804114 --- /dev/null +++ b/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/controller/DictionaryController.java @@ -0,0 +1,39 @@ +package cn.axzo.nanopart.dictionary.server.controller; + +import cn.axzo.framework.domain.web.result.ApiPageResult; +import cn.axzo.nanopart.dictionary.api.DictionaryApi; +import cn.axzo.nanopart.dictionary.api.request.QueryByDictTypeReq; +import cn.axzo.nanopart.dictionary.api.request.QueryPageDictReq; +import cn.axzo.nanopart.dictionary.api.response.QueryByDictTypeResp; +import cn.axzo.nanopart.dictionary.server.domain.Dictionary; +import cn.axzo.nanopart.dictionary.server.service.DictionaryService; +import cn.axzo.pokonyan.dao.converter.PageConverter; +import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.validation.Valid; + +/** + * 字典 + * @author xudawei + * @date 2024/4/29 + */ +@Slf4j +@RestController +@RequiredArgsConstructor +public class DictionaryController implements DictionaryApi { + + @Autowired + private DictionaryService dictionaryService; + + @Override + public ApiPageResult queryByType(@RequestBody @Valid QueryByDictTypeReq req) { + Page page = dictionaryService.page(BeanUtil.copyProperties(req, QueryPageDictReq.class)); + return ApiPageResult.ok(PageConverter.convert(page, record -> BeanUtil.toBean(record, QueryByDictTypeResp.class))); + } +} diff --git a/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/domain/Dictionary.java b/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/domain/Dictionary.java new file mode 100644 index 00000000..8b5ab904 --- /dev/null +++ b/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/domain/Dictionary.java @@ -0,0 +1,62 @@ +package cn.axzo.nanopart.dictionary.server.domain; + +import cn.axzo.pokonyan.config.mybatisplus.BaseEntity; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.experimental.Accessors; + +/** + * 应用版本信息 + * + * @author xudawei + * @date 2024/4/29 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@Accessors(chain = true) +@NoArgsConstructor +@AllArgsConstructor +@TableName(value = "axzo_dictionary", autoResultMap = true) +public class Dictionary extends BaseEntity { + + /** + * 类型 + */ + @TableField(value = "dict_type") + private String dictType; + + /** + * 字典key + */ + @TableField(value = "dict_key") + private String dictKey; + + /** + * 值 + */ + @TableField(value = "dict_value") + private String dictValue; + + /** + * 排序 + */ + @TableField(value = "order_by") + private Integer orderBy; + + /** + * 创建人 + */ + @TableField(value = "create_by") + private Long createBy; + + /** + * 更新人 + */ + @TableField(value = "update_by") + private Long updateBy; + +} diff --git a/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/mapper/DictionaryDao.java b/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/mapper/DictionaryDao.java new file mode 100644 index 00000000..5d24efa0 --- /dev/null +++ b/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/mapper/DictionaryDao.java @@ -0,0 +1,15 @@ +package cn.axzo.nanopart.dictionary.server.mapper; + +import cn.axzo.nanopart.dictionary.server.domain.Dictionary; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +/** + * @author chenwenjian + * @version 1.0 + * @date 2024/4/5 11:02 + */ +@Mapper +public interface DictionaryDao extends BaseMapper { + +} diff --git a/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/service/DictionaryService.java b/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/service/DictionaryService.java new file mode 100644 index 00000000..9f7f0a94 --- /dev/null +++ b/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/service/DictionaryService.java @@ -0,0 +1,18 @@ +package cn.axzo.nanopart.dictionary.server.service; + +import cn.axzo.nanopart.dictionary.api.request.QueryPageDictReq; +import cn.axzo.nanopart.dictionary.server.domain.Dictionary; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; + +/** + * @author xudawei + * @date 2024/4/29 + */ +public interface DictionaryService { + + /** + * 分页查询 + */ + Page page(QueryPageDictReq req); + +} diff --git a/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/service/impl/DictionaryServiceImpl.java b/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/service/impl/DictionaryServiceImpl.java new file mode 100644 index 00000000..c6258309 --- /dev/null +++ b/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/service/impl/DictionaryServiceImpl.java @@ -0,0 +1,52 @@ +package cn.axzo.nanopart.dictionary.server.service.impl; + +import cn.axzo.nanopart.dictionary.api.request.QueryPageDictReq; +import cn.axzo.nanopart.dictionary.server.domain.Dictionary; +import cn.axzo.nanopart.dictionary.server.mapper.DictionaryDao; +import cn.axzo.nanopart.dictionary.server.service.DictionaryService; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +/** + * @author xudawei + * @date 2024/4/29 + */ +@Slf4j +@Service +@RequiredArgsConstructor +public class DictionaryServiceImpl extends ServiceImpl implements DictionaryService { + + /** + * 分页查询 + */ + @Override + public Page page(QueryPageDictReq req) { + LambdaQueryWrapper pageLambdaQueryWrapper = buildPageLambdaQueryWrapper(req); + + Page dictionaryPage = page(new Page<>(req.getPageNumber(), req.getPageSize()), pageLambdaQueryWrapper); + if (Objects.isNull(dictionaryPage) || dictionaryPage.getTotal() == 0) { + return new Page<>(req.getPageNumber(), req.getPageSize(), 0); + } + return dictionaryPage; + } + + /** + * 构建分页查询条件 + */ + private LambdaQueryWrapper buildPageLambdaQueryWrapper(QueryPageDictReq req) { + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper(); + return lambdaQueryWrapper + .like(StringUtils.isNotEmpty(req.getDictType()), Dictionary::getDictType, req.getDictType()) + .eq(Objects.nonNull(req.getDictKey()), Dictionary::getDictKey, req.getDictKey()) + .eq(Dictionary::getIsDelete, 0) + .orderByDesc(Dictionary::getCreateAt); + } + +} diff --git a/dictionary/dictionary-server/src/main/resources/application.properties b/dictionary/dictionary-server/src/main/resources/application.properties new file mode 100644 index 00000000..497cc90f --- /dev/null +++ b/dictionary/dictionary-server/src/main/resources/application.properties @@ -0,0 +1 @@ +spring.application.name=dictionary-server diff --git a/dictionary/dictionary-server/src/test/java/cn/axzo/nanopart/dictionary/server/DictionaryServerApplicationTests.java b/dictionary/dictionary-server/src/test/java/cn/axzo/nanopart/dictionary/server/DictionaryServerApplicationTests.java new file mode 100644 index 00000000..143cc9e6 --- /dev/null +++ b/dictionary/dictionary-server/src/test/java/cn/axzo/nanopart/dictionary/server/DictionaryServerApplicationTests.java @@ -0,0 +1,13 @@ +package cn.axzo.nanopart.dictionary.server; + +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +@SpringBootTest +class DictionaryServerApplicationTests { + + @Test + void contextLoads() { + } + +} diff --git a/dictionary/pom.xml b/dictionary/pom.xml new file mode 100644 index 00000000..1a53b51f --- /dev/null +++ b/dictionary/pom.xml @@ -0,0 +1,62 @@ + + + 4.0.0 + + cn.axzo.nanopart + nanopart + ${revision} + ../pom.xml + + dictionary + dictionary + pom + + + dictionary-api + dictionary-server + + + + + + + + org.springframework.boot + spring-boot-starter + + + + + org.projectlombok + lombok + + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + + cn.axzo.nanopart + banner-api + 2.0.0-SNAPSHOT + + + + + + + + + axzo + axzo repository + https://nexus.axzo.cn/repository/axzo/ + + + + diff --git a/nanopart-server/pom.xml b/nanopart-server/pom.xml index bd73e00f..b9a19c4e 100644 --- a/nanopart-server/pom.xml +++ b/nanopart-server/pom.xml @@ -109,6 +109,18 @@ 2.0.0-SNAPSHOT + + cn.axzo.nanopart + dictionary-server + 1.0.0-SNAPSHOT + + + + cn.axzo.nanopart + dictionary-api + 1.0.0-SNAPSHOT + + cn.axzo.nanopart op-api From 099fdb2feebd56537c05527cdaa3ff22b5311ad3 Mon Sep 17 00:00:00 2001 From: xudawei Date: Mon, 29 Apr 2024 18:02:30 +0800 Subject: [PATCH 2/7] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=AD=97=E5=85=B8?= =?UTF-8?q?=E6=A8=A1=E5=9D=97-pom.xml=E7=89=88=E6=9C=AC=E6=B7=BB=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dictionary/dictionary-server/pom.xml | 2 +- nanopart-server/pom.xml | 4 ++-- pom.xml | 1 + 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/dictionary/dictionary-server/pom.xml b/dictionary/dictionary-server/pom.xml index 7521c3a5..2fad0795 100644 --- a/dictionary/dictionary-server/pom.xml +++ b/dictionary/dictionary-server/pom.xml @@ -68,7 +68,7 @@ cn.axzo.nanopart dictionary-api - 2.0.0-SNAPSHOT + ${revision} diff --git a/nanopart-server/pom.xml b/nanopart-server/pom.xml index b9a19c4e..92d8fba2 100644 --- a/nanopart-server/pom.xml +++ b/nanopart-server/pom.xml @@ -112,13 +112,13 @@ cn.axzo.nanopart dictionary-server - 1.0.0-SNAPSHOT + 2.0.0-SNAPSHOT cn.axzo.nanopart dictionary-api - 1.0.0-SNAPSHOT + 2.0.0-SNAPSHOT diff --git a/pom.xml b/pom.xml index a0d66562..bd2e3eed 100644 --- a/pom.xml +++ b/pom.xml @@ -33,6 +33,7 @@ job op banner + dictionary From 8a9e52baf680d1db5f232b4405c30af91709debf Mon Sep 17 00:00:00 2001 From: xudawei Date: Mon, 6 May 2024 11:00:20 +0800 Subject: [PATCH 3/7] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=AD=97=E5=85=B8?= =?UTF-8?q?=E6=A8=A1=E5=9D=97-=E5=A2=9E=E5=8A=A0=E6=89=B9=E9=87=8F?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dictionary/api/DictionaryApi.java | 11 +++++- .../api/request/QueryByBatchDictTypeReq.java | 30 ++++++++++++++++ .../dictionary/api/request/QueryDictReq.java | 31 +++++++++++++++++ .../response/QueryByBatchDictTypeResp.java | 30 ++++++++++++++++ .../controller/DictionaryController.java | 22 ++++++++++++ .../server/service/DictionaryService.java | 8 +++++ .../service/impl/DictionaryServiceImpl.java | 34 +++++++++++++++---- 7 files changed, 159 insertions(+), 7 deletions(-) create mode 100644 dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/request/QueryByBatchDictTypeReq.java create mode 100644 dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/request/QueryDictReq.java create mode 100644 dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/response/QueryByBatchDictTypeResp.java diff --git a/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/DictionaryApi.java b/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/DictionaryApi.java index 94b25ba3..a70d3cd8 100644 --- a/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/DictionaryApi.java +++ b/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/DictionaryApi.java @@ -1,6 +1,7 @@ package cn.axzo.nanopart.dictionary.api; import cn.axzo.framework.domain.web.result.ApiPageResult; +import cn.axzo.nanopart.dictionary.api.request.QueryByBatchDictTypeReq; import cn.axzo.nanopart.dictionary.api.request.QueryByDictTypeReq; import cn.axzo.nanopart.dictionary.api.response.QueryByDictTypeResp; import org.springframework.cloud.openfeign.FeignClient; @@ -8,6 +9,8 @@ import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import javax.validation.Valid; +import java.util.List; +import java.util.Map; /** * 字典相关 api @@ -20,9 +23,15 @@ import javax.validation.Valid; public interface DictionaryApi { /** - * 分页查询banner + * 分页查询 */ @PostMapping("/api/dictionary/page") ApiPageResult queryByType(@RequestBody @Valid QueryByDictTypeReq req); + /** + * 通过dictType批量查询 + */ + @PostMapping("/api/dictionary/batchQuery") + Map> queryByBatchType(@RequestBody @Valid QueryByBatchDictTypeReq req); + } diff --git a/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/request/QueryByBatchDictTypeReq.java b/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/request/QueryByBatchDictTypeReq.java new file mode 100644 index 00000000..be0c49b0 --- /dev/null +++ b/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/request/QueryByBatchDictTypeReq.java @@ -0,0 +1,30 @@ +package cn.axzo.nanopart.dictionary.api.request; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.Accessors; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotEmpty; +import java.util.List; + +/** + * @author xudawei + * @date 2024/4/29 + */ +@Data +@Builder +@Accessors(chain = true) +@NoArgsConstructor +@AllArgsConstructor +public class QueryByBatchDictTypeReq { + /** + * 字典类型 + */ + @NotEmpty(message = "dictTypeList is blank") + private List dictTypes; + + +} diff --git a/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/request/QueryDictReq.java b/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/request/QueryDictReq.java new file mode 100644 index 00000000..adfd8c87 --- /dev/null +++ b/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/request/QueryDictReq.java @@ -0,0 +1,31 @@ +package cn.axzo.nanopart.dictionary.api.request; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.Accessors; + +import java.util.List; + +/** + * @author xudawei + * @date 2024/5/6 + */ +@Data +@Builder +@Accessors(chain = true) +@NoArgsConstructor +@AllArgsConstructor +public class QueryDictReq { + + /** + * 字典类型集合 + */ + private List dictTypes; + + /** + * 字典key + */ + private String dictKey; +} diff --git a/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/response/QueryByBatchDictTypeResp.java b/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/response/QueryByBatchDictTypeResp.java new file mode 100644 index 00000000..63230bb1 --- /dev/null +++ b/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/response/QueryByBatchDictTypeResp.java @@ -0,0 +1,30 @@ +package cn.axzo.nanopart.dictionary.api.response; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.Accessors; + +import java.util.List; + +/** + * @author xudawei + * @date 2024/4/29 + */ +@Data +@Builder +@Accessors(chain = true) +@NoArgsConstructor +@AllArgsConstructor +public class QueryByBatchDictTypeResp { + + /** + * 类型 + */ + private String dictType; + /** + * 集合 + */ + private List dataList; +} diff --git a/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/controller/DictionaryController.java b/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/controller/DictionaryController.java index ff804114..c6405082 100644 --- a/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/controller/DictionaryController.java +++ b/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/controller/DictionaryController.java @@ -2,7 +2,9 @@ package cn.axzo.nanopart.dictionary.server.controller; import cn.axzo.framework.domain.web.result.ApiPageResult; import cn.axzo.nanopart.dictionary.api.DictionaryApi; +import cn.axzo.nanopart.dictionary.api.request.QueryByBatchDictTypeReq; import cn.axzo.nanopart.dictionary.api.request.QueryByDictTypeReq; +import cn.axzo.nanopart.dictionary.api.request.QueryDictReq; import cn.axzo.nanopart.dictionary.api.request.QueryPageDictReq; import cn.axzo.nanopart.dictionary.api.response.QueryByDictTypeResp; import cn.axzo.nanopart.dictionary.server.domain.Dictionary; @@ -10,6 +12,7 @@ import cn.axzo.nanopart.dictionary.server.service.DictionaryService; import cn.axzo.pokonyan.dao.converter.PageConverter; import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.google.common.collect.Maps; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -17,6 +20,9 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; import javax.validation.Valid; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; /** * 字典 @@ -36,4 +42,20 @@ public class DictionaryController implements DictionaryApi { Page page = dictionaryService.page(BeanUtil.copyProperties(req, QueryPageDictReq.class)); return ApiPageResult.ok(PageConverter.convert(page, record -> BeanUtil.toBean(record, QueryByDictTypeResp.class))); } + + /** + * 通过dictType批量查询 + */ + @Override + public Map> queryByBatchType(@RequestBody @Valid QueryByBatchDictTypeReq req) { + List list = dictionaryService.query(BeanUtil.copyProperties(req, QueryDictReq.class)); + Map> map = list.stream().collect(Collectors.groupingBy(Dictionary::getDictType, Collectors.toList())); + + Map> resultMap = Maps.newHashMap(); + map.forEach((dictType, dictList) -> { + List respList = BeanUtil.copyToList(dictList, QueryByDictTypeResp.class); + resultMap.put(dictType, respList); + }); + return resultMap; + } } diff --git a/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/service/DictionaryService.java b/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/service/DictionaryService.java index 9f7f0a94..3b959b16 100644 --- a/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/service/DictionaryService.java +++ b/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/service/DictionaryService.java @@ -1,15 +1,23 @@ package cn.axzo.nanopart.dictionary.server.service; +import cn.axzo.nanopart.dictionary.api.request.QueryDictReq; import cn.axzo.nanopart.dictionary.api.request.QueryPageDictReq; import cn.axzo.nanopart.dictionary.server.domain.Dictionary; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import java.util.List; + /** * @author xudawei * @date 2024/4/29 */ public interface DictionaryService { + /** + * 列表查询 + */ + List query(QueryDictReq req); + /** * 分页查询 */ diff --git a/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/service/impl/DictionaryServiceImpl.java b/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/service/impl/DictionaryServiceImpl.java index c6258309..c61d9f0e 100644 --- a/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/service/impl/DictionaryServiceImpl.java +++ b/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/service/impl/DictionaryServiceImpl.java @@ -1,5 +1,6 @@ package cn.axzo.nanopart.dictionary.server.service.impl; +import cn.axzo.nanopart.dictionary.api.request.QueryDictReq; import cn.axzo.nanopart.dictionary.api.request.QueryPageDictReq; import cn.axzo.nanopart.dictionary.server.domain.Dictionary; import cn.axzo.nanopart.dictionary.server.mapper.DictionaryDao; @@ -9,9 +10,12 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.compress.utils.Lists; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; +import java.util.List; import java.util.Objects; /** @@ -23,14 +27,31 @@ import java.util.Objects; @RequiredArgsConstructor public class DictionaryServiceImpl extends ServiceImpl implements DictionaryService { + + /** + * 列表查询 + */ + @Override + public List query(QueryDictReq req) { + if (StringUtils.isBlank(req.getDictKey()) && CollectionUtils.isEmpty(req.getDictTypes())) { + return Lists.newArrayList(); + } + LambdaQueryWrapper queryWrapper = buildLambdaQueryWrapper(StringUtils.EMPTY, req.getDictKey(), req.getDictTypes()); + return this.list(queryWrapper); + } + /** * 分页查询 */ @Override public Page page(QueryPageDictReq req) { - LambdaQueryWrapper pageLambdaQueryWrapper = buildPageLambdaQueryWrapper(req); + if (StringUtils.isBlank(req.getDictKey()) && StringUtils.isBlank(req.getDictType())) { + return new Page<>(req.getPageNumber(), req.getPageSize(), 0); + } - Page dictionaryPage = page(new Page<>(req.getPageNumber(), req.getPageSize()), pageLambdaQueryWrapper); + LambdaQueryWrapper pageLambdaQueryWrapper = buildLambdaQueryWrapper(req.getDictType(), req.getDictKey(), Lists.newArrayList()); + + Page dictionaryPage = this.page(new Page<>(req.getPageNumber(), req.getPageSize()), pageLambdaQueryWrapper); if (Objects.isNull(dictionaryPage) || dictionaryPage.getTotal() == 0) { return new Page<>(req.getPageNumber(), req.getPageSize(), 0); } @@ -40,13 +61,14 @@ public class DictionaryServiceImpl extends ServiceImpl buildPageLambdaQueryWrapper(QueryPageDictReq req) { + private LambdaQueryWrapper buildLambdaQueryWrapper(String dictType, String dictKey, List dictTypes) { LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper(); return lambdaQueryWrapper - .like(StringUtils.isNotEmpty(req.getDictType()), Dictionary::getDictType, req.getDictType()) - .eq(Objects.nonNull(req.getDictKey()), Dictionary::getDictKey, req.getDictKey()) + .like(StringUtils.isNotEmpty(dictType), Dictionary::getDictType, dictType) + .in(!CollectionUtils.isEmpty(dictTypes), Dictionary::getDictType, dictTypes) + .eq(StringUtils.isNotEmpty(dictKey), Dictionary::getDictKey, dictKey) .eq(Dictionary::getIsDelete, 0) - .orderByDesc(Dictionary::getCreateAt); + .orderByDesc(Dictionary::getOrderBy); } } From 8833fc5a78255384db9f478dc4c88b3da8f5648c Mon Sep 17 00:00:00 2001 From: xudawei Date: Mon, 6 May 2024 11:51:46 +0800 Subject: [PATCH 4/7] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=AD=97=E5=85=B8?= =?UTF-8?q?=E6=A8=A1=E5=9D=97-=E8=A1=A8=E5=90=8Daxzo=5Fdictionary=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=E6=88=90nanopart=5Fdictionary?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/DictionaryController.java | 20 +++++++++++++++---- .../dictionary/server/domain/Dictionary.java | 4 ++-- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/controller/DictionaryController.java b/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/controller/DictionaryController.java index c6405082..5052fdb2 100644 --- a/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/controller/DictionaryController.java +++ b/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/controller/DictionaryController.java @@ -16,6 +16,7 @@ import com.google.common.collect.Maps; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; @@ -49,13 +50,24 @@ public class DictionaryController implements DictionaryApi { @Override public Map> queryByBatchType(@RequestBody @Valid QueryByBatchDictTypeReq req) { List list = dictionaryService.query(BeanUtil.copyProperties(req, QueryDictReq.class)); + if (CollectionUtils.isEmpty(list)) { + return Maps.newHashMap(); + } Map> map = list.stream().collect(Collectors.groupingBy(Dictionary::getDictType, Collectors.toList())); + return this.buildDictTypeMap(map); + } + /** + * 构建QueryByDictTypeResp集合Map + */ + private Map> buildDictTypeMap(Map> map) { Map> resultMap = Maps.newHashMap(); - map.forEach((dictType, dictList) -> { - List respList = BeanUtil.copyToList(dictList, QueryByDictTypeResp.class); - resultMap.put(dictType, respList); - }); + if (!CollectionUtils.isEmpty(map)) { + map.forEach((dictType, dictList) -> { + List respList = BeanUtil.copyToList(dictList, QueryByDictTypeResp.class); + resultMap.put(dictType, respList); + }); + } return resultMap; } } diff --git a/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/domain/Dictionary.java b/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/domain/Dictionary.java index 8b5ab904..478d5872 100644 --- a/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/domain/Dictionary.java +++ b/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/domain/Dictionary.java @@ -20,7 +20,7 @@ import lombok.experimental.Accessors; @Accessors(chain = true) @NoArgsConstructor @AllArgsConstructor -@TableName(value = "axzo_dictionary", autoResultMap = true) +@TableName(value = "nanopart_dictionary", autoResultMap = true) public class Dictionary extends BaseEntity { /** @@ -42,7 +42,7 @@ public class Dictionary extends BaseEntity { private String dictValue; /** - * 排序 + * 排序:倒序,值越大越靠前 */ @TableField(value = "order_by") private Integer orderBy; From 509f390fd8246a02bbb7f1ab4a60ec56563aba3b Mon Sep 17 00:00:00 2001 From: xudawei Date: Mon, 6 May 2024 14:16:01 +0800 Subject: [PATCH 5/7] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=AD=97=E5=85=B8?= =?UTF-8?q?=E6=A8=A1=E5=9D=97-=E6=9B=B4=E6=94=B9=E6=A0=A1=E9=AA=8Cmessage?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dictionary/api/request/QueryByBatchDictTypeReq.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/request/QueryByBatchDictTypeReq.java b/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/request/QueryByBatchDictTypeReq.java index be0c49b0..f091c1f7 100644 --- a/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/request/QueryByBatchDictTypeReq.java +++ b/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/request/QueryByBatchDictTypeReq.java @@ -23,7 +23,7 @@ public class QueryByBatchDictTypeReq { /** * 字典类型 */ - @NotEmpty(message = "dictTypeList is blank") + @NotEmpty(message = "dictTypes is blank") private List dictTypes; From 7ff1bf1578070a74e7898157fe0f35f9d06720ab Mon Sep 17 00:00:00 2001 From: xudawei Date: Thu, 9 May 2024 14:55:07 +0800 Subject: [PATCH 6/7] =?UTF-8?q?=E6=89=B9=E9=87=8F=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E5=AD=97=E5=85=B8=E8=BF=94=E5=9B=9EApiResult?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/axzo/nanopart/dictionary/api/DictionaryApi.java | 3 ++- .../dictionary/server/controller/DictionaryController.java | 7 ++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/DictionaryApi.java b/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/DictionaryApi.java index a70d3cd8..f5a1a1cf 100644 --- a/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/DictionaryApi.java +++ b/dictionary/dictionary-api/src/main/java/cn/axzo/nanopart/dictionary/api/DictionaryApi.java @@ -1,6 +1,7 @@ package cn.axzo.nanopart.dictionary.api; import cn.axzo.framework.domain.web.result.ApiPageResult; +import cn.axzo.framework.domain.web.result.ApiResult; import cn.axzo.nanopart.dictionary.api.request.QueryByBatchDictTypeReq; import cn.axzo.nanopart.dictionary.api.request.QueryByDictTypeReq; import cn.axzo.nanopart.dictionary.api.response.QueryByDictTypeResp; @@ -32,6 +33,6 @@ public interface DictionaryApi { * 通过dictType批量查询 */ @PostMapping("/api/dictionary/batchQuery") - Map> queryByBatchType(@RequestBody @Valid QueryByBatchDictTypeReq req); + ApiResult>> queryByBatchType(@RequestBody @Valid QueryByBatchDictTypeReq req); } diff --git a/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/controller/DictionaryController.java b/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/controller/DictionaryController.java index 5052fdb2..ec3a38d6 100644 --- a/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/controller/DictionaryController.java +++ b/dictionary/dictionary-server/src/main/java/cn/axzo/nanopart/dictionary/server/controller/DictionaryController.java @@ -1,6 +1,7 @@ package cn.axzo.nanopart.dictionary.server.controller; import cn.axzo.framework.domain.web.result.ApiPageResult; +import cn.axzo.framework.domain.web.result.ApiResult; import cn.axzo.nanopart.dictionary.api.DictionaryApi; import cn.axzo.nanopart.dictionary.api.request.QueryByBatchDictTypeReq; import cn.axzo.nanopart.dictionary.api.request.QueryByDictTypeReq; @@ -48,13 +49,13 @@ public class DictionaryController implements DictionaryApi { * 通过dictType批量查询 */ @Override - public Map> queryByBatchType(@RequestBody @Valid QueryByBatchDictTypeReq req) { + public ApiResult>> queryByBatchType(@RequestBody @Valid QueryByBatchDictTypeReq req) { List list = dictionaryService.query(BeanUtil.copyProperties(req, QueryDictReq.class)); if (CollectionUtils.isEmpty(list)) { - return Maps.newHashMap(); + return ApiResult.ok(); } Map> map = list.stream().collect(Collectors.groupingBy(Dictionary::getDictType, Collectors.toList())); - return this.buildDictTypeMap(map); + return ApiResult.ok(this.buildDictTypeMap(map)); } /** From 07107fe1fe2a56671c637f4c25acec3fcc33ecb4 Mon Sep 17 00:00:00 2001 From: xudawei Date: Wed, 5 Jun 2024 09:34:20 +0800 Subject: [PATCH 7/7] fix-checkstyle --- .../cn/axzo/nanopart/server/service/impl/BannerServiceImpl.java | 1 + 1 file changed, 1 insertion(+) diff --git a/banner/banner-server/src/main/java/cn/axzo/nanopart/server/service/impl/BannerServiceImpl.java b/banner/banner-server/src/main/java/cn/axzo/nanopart/server/service/impl/BannerServiceImpl.java index 231dfab0..2b0b8312 100644 --- a/banner/banner-server/src/main/java/cn/axzo/nanopart/server/service/impl/BannerServiceImpl.java +++ b/banner/banner-server/src/main/java/cn/axzo/nanopart/server/service/impl/BannerServiceImpl.java @@ -56,6 +56,7 @@ public class BannerServiceImpl extends ServiceImpl implements @Override public Page page(PageBannerReq req) { LambdaQueryWrapper pageLambdaQueryWrapper = buildPageLambdaQueryWrapper(req); + Page bannerPage = page(new Page<>(req.getPageNumber(), req.getPageSize()), pageLambdaQueryWrapper); if (Objects.isNull(bannerPage) || bannerPage.getTotal() == 0) { return new Page<>();