mirror of
				https://github.com/continew-org/continew-admin.git
				synced 2025-10-31 00:57:13 +08:00 
			
		
		
		
	chore: continew-starter 2.5.1 => 2.5.2
接口文档显示优化 增强 SQL 注入防御
This commit is contained in:
		| @@ -13,7 +13,7 @@ | ||||
| <img src="https://sonarcloud.io/api/project_badges/measure?project=Charles7c_continew-admin&metric=alert_status" alt="Sonar Status" /> | ||||
| </a> | ||||
| <a href="https://github.com/continew-org/continew-starter" target="_blank"> | ||||
| <img src="https://img.shields.io/badge/ContiNew Starter-2.5.1-%236CB52D.svg" alt="ContiNew Starter" /> | ||||
| <img src="https://img.shields.io/badge/ContiNew Starter-2.5.2-%236CB52D.svg" alt="ContiNew Starter" /> | ||||
| </a> | ||||
| <a href="https://spring.io/projects/spring-boot" target="_blank"> | ||||
| <img src="https://img.shields.io/badge/Spring Boot-3.2.7-%236CB52D.svg?logo=Spring-Boot" alt="Spring Boot" /> | ||||
| @@ -216,7 +216,7 @@ public class DeptController extends BaseController<DeptService, DeptResp, DeptDe | ||||
| | <a href="https://arco.design/vue/docs/start" target="_blank">Arco Design</a> | 2.55.0       | 字节跳动推出的前端 UI 框架,年轻化的色彩和组件设计。         | | ||||
| | <a href="https://www.typescriptlang.org/zh/" target="_blank">TypeScript</a> | 5.0.4        | TypeScript 是微软开发的一个开源的编程语言,通过在 JavaScript 的基础上添加静态类型定义构建而成。 | | ||||
| | <a href="https://cn.vitejs.dev/" target="_blank">Vite</a>    | 5.1.5        | 下一代的前端工具链,为开发提供极速响应。                     | | ||||
| | [ContiNew Starter](https://github.com/continew-org/continew-starter) | 2.5.1        | ContiNew Starter 包含了一系列经过企业实践优化的依赖包(如 MyBatis-Plus、SaToken),可轻松集成到应用中,为开发人员减少手动引入依赖及配置的麻烦,为 Spring Boot Web 项目的灵活快速构建提供支持。 | | ||||
| | [ContiNew Starter](https://github.com/continew-org/continew-starter) | 2.5.2        | ContiNew Starter 包含了一系列经过企业实践优化的依赖包(如 MyBatis-Plus、SaToken),可轻松集成到应用中,为开发人员减少手动引入依赖及配置的麻烦,为 Spring Boot Web 项目的灵活快速构建提供支持。 | | ||||
| | <a href="https://spring.io/projects/spring-boot" target="_blank">Spring Boot</a> | 3.2.7        | 简化 Spring 应用的初始搭建和开发过程,基于“约定优于配置”的理念,使开发人员不再需要定义样板化的配置。(Spring Boot 3.0 开始,要求 Java 17 作为最低版本) | | ||||
| | <a href="https://undertow.io/" target="_blank">Undertow</a>  | 2.3.13.Final | 采用 Java 开发的灵活的高性能 Web 服务器,提供包括阻塞和基于 NIO 的非堵塞机制。 | | ||||
| | <a href="https://sa-token.dev33.cn/" target="_blank">Sa-Token + JWT</a> | 1.38.0       | 轻量级 Java 权限认证框架,让鉴权变得简单、优雅。             | | ||||
|   | ||||
| @@ -19,11 +19,11 @@ package top.continew.admin.system.service.impl; | ||||
| import cn.crane4j.annotation.AutoOperate; | ||||
| import cn.hutool.core.bean.BeanUtil; | ||||
| import cn.hutool.core.collection.CollUtil; | ||||
| import cn.hutool.core.lang.Opt; | ||||
| import cn.hutool.core.text.CharSequenceUtil; | ||||
| import cn.hutool.core.util.StrUtil; | ||||
| import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; | ||||
| import com.baomidou.mybatisplus.core.metadata.IPage; | ||||
| import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | ||||
| import jakarta.servlet.http.HttpServletResponse; | ||||
| import lombok.RequiredArgsConstructor; | ||||
| import lombok.extern.slf4j.Slf4j; | ||||
| @@ -67,7 +67,8 @@ public class LogServiceImpl implements LogService { | ||||
|     @Override | ||||
|     public PageResp<LogResp> page(LogQuery query, PageQuery pageQuery) { | ||||
|         QueryWrapper<LogDO> queryWrapper = this.buildQueryWrapper(query); | ||||
|         IPage<LogResp> page = baseMapper.selectLogPage(pageQuery.toPage(), queryWrapper); | ||||
|         IPage<LogResp> page = baseMapper.selectLogPage(new Page<>(pageQuery.getPage(), pageQuery | ||||
|             .getSize()), queryWrapper); | ||||
|         return PageResp.build(page); | ||||
|     } | ||||
|  | ||||
| @@ -132,12 +133,12 @@ public class LogServiceImpl implements LogService { | ||||
|      * @param sortQuery    排序查询条件 | ||||
|      */ | ||||
|     private void sort(QueryWrapper<LogDO> queryWrapper, SortQuery sortQuery) { | ||||
|         Sort sort = Opt.ofNullable(sortQuery).orElseGet(SortQuery::new).getSort(); | ||||
|         for (Sort.Order order : sort) { | ||||
|             if (null != order) { | ||||
|                 String property = order.getProperty(); | ||||
|                 queryWrapper.orderBy(true, order.isAscending(), CharSequenceUtil.toUnderlineCase(property)); | ||||
|             } | ||||
|         if (sortQuery == null || sortQuery.getSort().isUnsorted()) { | ||||
|             return; | ||||
|         } | ||||
|         for (Sort.Order order : sortQuery.getSort()) { | ||||
|             String property = order.getProperty(); | ||||
|             queryWrapper.orderBy(true, order.isAscending(), CharSequenceUtil.toUnderlineCase(property)); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|   | ||||
| @@ -21,6 +21,7 @@ import cn.hutool.core.bean.BeanUtil; | ||||
| import cn.hutool.core.collection.CollUtil; | ||||
| import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; | ||||
| import com.baomidou.mybatisplus.core.metadata.IPage; | ||||
| import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | ||||
| import lombok.RequiredArgsConstructor; | ||||
| import org.springframework.stereotype.Service; | ||||
| import org.springframework.transaction.annotation.Transactional; | ||||
| @@ -32,7 +33,7 @@ import top.continew.admin.system.model.resp.MessageResp; | ||||
| import top.continew.admin.system.service.MessageService; | ||||
| import top.continew.admin.system.service.MessageUserService; | ||||
| import top.continew.starter.core.util.validate.CheckUtils; | ||||
| import top.continew.starter.data.mybatis.plus.query.QueryWrapperHelper; | ||||
| import top.continew.starter.data.mybatis.plus.util.QueryWrapperHelper; | ||||
| import top.continew.starter.extension.crud.model.query.PageQuery; | ||||
| import top.continew.starter.extension.crud.model.resp.PageResp; | ||||
|  | ||||
| @@ -54,10 +55,11 @@ public class MessageServiceImpl implements MessageService { | ||||
|     @Override | ||||
|     @AutoOperate(type = MessageResp.class, on = "list") | ||||
|     public PageResp<MessageResp> page(MessageQuery query, PageQuery pageQuery) { | ||||
|         QueryWrapper<MessageDO> queryWrapper = QueryWrapperHelper.build(query); | ||||
|         QueryWrapper<MessageDO> queryWrapper = QueryWrapperHelper.build(query, pageQuery.getSort()); | ||||
|         queryWrapper.apply(null != query.getUserId(), "t2.user_id={0}", query.getUserId()) | ||||
|             .apply(null != query.getIsRead(), "t2.is_read={0}", query.getIsRead()); | ||||
|         IPage<MessageResp> page = baseMapper.selectPageByUserId(pageQuery.toPage(), queryWrapper); | ||||
|         IPage<MessageResp> page = baseMapper.selectPageByUserId(new Page<>(pageQuery.getPage(), pageQuery | ||||
|             .getSize()), queryWrapper); | ||||
|         return PageResp.build(page); | ||||
|     } | ||||
|  | ||||
|   | ||||
| @@ -38,7 +38,7 @@ import top.continew.starter.cache.redisson.util.RedisUtils; | ||||
| import top.continew.starter.core.constant.StringConstants; | ||||
| import top.continew.starter.core.util.validate.CheckUtils; | ||||
| import top.continew.starter.core.util.validate.ValidationUtils; | ||||
| import top.continew.starter.data.mybatis.plus.query.QueryWrapperHelper; | ||||
| import top.continew.starter.data.mybatis.plus.util.QueryWrapperHelper; | ||||
|  | ||||
| import java.util.List; | ||||
| import java.util.Map; | ||||
|   | ||||
| @@ -40,6 +40,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; | ||||
| import com.baomidou.mybatisplus.core.metadata.IPage; | ||||
| import com.baomidou.mybatisplus.core.toolkit.Wrappers; | ||||
| import com.baomidou.mybatisplus.core.toolkit.support.SFunction; | ||||
| import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | ||||
| import jakarta.annotation.Resource; | ||||
| import jakarta.servlet.http.HttpServletResponse; | ||||
| import lombok.RequiredArgsConstructor; | ||||
| @@ -116,7 +117,9 @@ public class UserServiceImpl extends BaseServiceImpl<UserMapper, UserDO, UserRes | ||||
|     @Override | ||||
|     public PageResp<UserResp> page(UserQuery query, PageQuery pageQuery) { | ||||
|         QueryWrapper<UserDO> queryWrapper = this.buildQueryWrapper(query); | ||||
|         IPage<UserDetailResp> page = baseMapper.selectUserPage(pageQuery.toPage(), queryWrapper); | ||||
|         super.sort(queryWrapper, pageQuery); | ||||
|         IPage<UserDetailResp> page = baseMapper.selectUserPage(new Page<>(pageQuery.getPage(), pageQuery | ||||
|             .getSize()), queryWrapper); | ||||
|         PageResp<UserResp> pageResp = PageResp.build(page, super.getListClass()); | ||||
|         pageResp.getList().forEach(this::fill); | ||||
|         return pageResp; | ||||
|   | ||||
| @@ -5,5 +5,5 @@ | ||||
|   \____|\___/ |_| |_| \__||_||_| \_| \___|  \_/\_/       /_/   \_\\__,_||_| |_| |_||_||_| |_| | ||||
|  | ||||
|  :: ${project.name}   ::                                               v${project.version} | ||||
|  :: ContiNew Starter ::                                               v2.5.1 | ||||
|  :: ContiNew Starter ::                                               v2.5.2 | ||||
|  :: Spring Boot      ::                                               v${spring-boot.version} | ||||
|   | ||||
		Reference in New Issue
	
	Block a user