From 9f5a03edcdae580a447f6788ed313bfb9f79ec5b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90li?= <15040126243@163.com> Date: Thu, 13 May 2021 21:22:51 +0800 Subject: [PATCH 01/15] =?UTF-8?q?add=20=E5=A2=9E=E5=8A=A0=E5=88=86?= =?UTF-8?q?=E9=A1=B5=E5=B7=A5=E5=85=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ruoyi/common/core/page/PagePlus.java | 128 ++++++++++++++++++ .../ruoyi/common/core/page/TableDataInfo.java | 5 +- .../com/ruoyi/common/utils/PageUtils.java | 101 ++++++++++++++ 3 files changed, 232 insertions(+), 2 deletions(-) create mode 100644 ruoyi-common/src/main/java/com/ruoyi/common/core/page/PagePlus.java create mode 100644 ruoyi-common/src/main/java/com/ruoyi/common/utils/PageUtils.java diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/page/PagePlus.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/page/PagePlus.java new file mode 100644 index 00000000..7200fc51 --- /dev/null +++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/page/PagePlus.java @@ -0,0 +1,128 @@ +package com.ruoyi.common.core.page; + +import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.metadata.OrderItem; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.List; +import java.util.stream.Collectors; + +@Data +@Accessors(chain = true) +public class PagePlus implements IPage { + + protected List records; + protected List recordsVo; + protected long total; + protected long size; + protected long current; + protected List orders; + protected boolean optimizeCountSql; + protected boolean isSearchCount; + protected boolean hitCount; + protected String countId; + protected Long maxLimit; + + public PagePlus() { + this.records = Collections.emptyList(); + this.recordsVo = Collections.emptyList(); + this.total = 0L; + this.size = 10L; + this.current = 1L; + this.orders = new ArrayList(); + this.optimizeCountSql = true; + this.isSearchCount = true; + this.hitCount = false; + } + + public PagePlus(long current, long size) { + this(current, size, 0L); + } + + public PagePlus(long current, long size, long total) { + this(current, size, total, true); + } + + public PagePlus(long current, long size, boolean isSearchCount) { + this(current, size, 0L, isSearchCount); + } + + public PagePlus(long current, long size, long total, boolean isSearchCount) { + this.records = Collections.emptyList(); + this.total = 0L; + this.size = 10L; + this.current = 1L; + this.orders = new ArrayList(); + this.optimizeCountSql = true; + this.isSearchCount = true; + this.hitCount = false; + if (current > 1L) { + this.current = current; + } + + this.size = size; + this.total = total; + this.isSearchCount = isSearchCount; + } + + public boolean hasPrevious() { + return this.current > 1L; + } + + public boolean hasNext() { + return this.current < this.getPages(); + } + + public void recordsToVo(Class kClass) { + this.recordsVo = this.records.stream() + .map(any -> BeanUtil.toBean(any, kClass)) + .collect(Collectors.toList()); + } + + @Override + public String countId() { + return this.getCountId(); + } + + @Override + public Long maxLimit() { + return this.getMaxLimit(); + } + + public PagePlus addOrder(OrderItem... items) { + this.orders.addAll(Arrays.asList(items)); + return this; + } + + public PagePlus addOrder(List items) { + this.orders.addAll(items); + return this; + } + + @Override + public List orders() { + return this.getOrders(); + } + + @Override + public boolean optimizeCountSql() { + return this.optimizeCountSql; + } + + @Override + public boolean isSearchCount() { + return this.total < 0L ? false : this.isSearchCount; + } + + public PagePlus setSearchCount(boolean isSearchCount) { + this.isSearchCount = isSearchCount; + return this; + } + +} + diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/page/TableDataInfo.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/page/TableDataInfo.java index 72c284f1..4e71fc15 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/core/page/TableDataInfo.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/page/TableDataInfo.java @@ -1,6 +1,7 @@ package com.ruoyi.common.core.page; -import lombok.*; +import lombok.Data; +import lombok.NoArgsConstructor; import lombok.experimental.Accessors; import java.io.Serializable; @@ -37,7 +38,7 @@ public class TableDataInfo implements Serializable * @param list 列表数据 * @param total 总记录数 */ - public TableDataInfo(List list, int total) + public TableDataInfo(List list, long total) { this.rows = list; this.total = total; diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/PageUtils.java b/ruoyi-common/src/main/java/com/ruoyi/common/utils/PageUtils.java new file mode 100644 index 00000000..e484f6dd --- /dev/null +++ b/ruoyi-common/src/main/java/com/ruoyi/common/utils/PageUtils.java @@ -0,0 +1,101 @@ +package com.ruoyi.common.utils; + +import cn.hutool.core.util.StrUtil; +import cn.hutool.http.HttpStatus; +import com.baomidou.mybatisplus.core.metadata.OrderItem; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ruoyi.common.core.page.PagePlus; +import com.ruoyi.common.core.page.TableDataInfo; +import com.ruoyi.common.utils.sql.SqlUtil; + +import java.util.List; + +/** + * 分页工具 + * + * @author Lion Li + */ +public class PageUtils { + + /** + * 当前记录起始索引 + */ + public static final String PAGE_NUM = "pageNum"; + + /** + * 每页显示记录数 + */ + public static final String PAGE_SIZE = "pageSize"; + + /** + * 排序列 + */ + public static final String ORDER_BY_COLUMN = "orderByColumn"; + + /** + * 排序的方向 "desc" 或者 "asc". + */ + public static final String IS_ASC = "isAsc"; + + public static PagePlus buildPagePlus() { + Integer pageNum = ServletUtils.getParameterToInt(PAGE_NUM); + Integer pageSize = ServletUtils.getParameterToInt(PAGE_SIZE); + String orderByColumn = ServletUtils.getParameter(ORDER_BY_COLUMN); + String isAsc = ServletUtils.getParameter(IS_ASC); + PagePlus page = new PagePlus<>(pageNum, pageSize); + if (StrUtil.isNotBlank(orderByColumn)) { + String orderBy = SqlUtil.escapeOrderBySql(orderByColumn); + if ("asc".equals(isAsc)) { + page.addOrder(OrderItem.asc(orderBy)); + } else if ("desc".equals(isAsc)) { + page.addOrder(OrderItem.desc(orderBy)); + } + } + return page; + } + + public static Page buildPage() { + Integer pageNum = ServletUtils.getParameterToInt(PAGE_NUM); + Integer pageSize = ServletUtils.getParameterToInt(PAGE_SIZE); + String orderByColumn = ServletUtils.getParameter(ORDER_BY_COLUMN); + String isAsc = ServletUtils.getParameter(IS_ASC); + Page page = new Page<>(pageNum, pageSize); + if (StrUtil.isNotBlank(orderByColumn)) { + String orderBy = SqlUtil.escapeOrderBySql(orderByColumn); + if ("asc".equals(isAsc)) { + page.addOrder(OrderItem.asc(orderBy)); + } else if ("desc".equals(isAsc)) { + page.addOrder(OrderItem.desc(orderBy)); + } + } + return page; + } + + public static TableDataInfo buildDataInfo(PagePlus page) { + TableDataInfo rspData = new TableDataInfo<>(); + rspData.setCode(HttpStatus.HTTP_OK); + rspData.setMsg("查询成功"); + rspData.setRows(page.getRecordsVo()); + rspData.setTotal(page.getTotal()); + return rspData; + } + + public static TableDataInfo buildDataInfo(Page page) { + TableDataInfo rspData = new TableDataInfo<>(); + rspData.setCode(HttpStatus.HTTP_OK); + rspData.setMsg("查询成功"); + rspData.setRows(page.getRecords()); + rspData.setTotal(page.getTotal()); + return rspData; + } + + public static TableDataInfo buildDataInfo(List list) { + TableDataInfo rspData = new TableDataInfo<>(); + rspData.setCode(HttpStatus.HTTP_OK); + rspData.setMsg("查询成功"); + rspData.setRows(list); + rspData.setTotal(list.size()); + return rspData; + } + +} From 20e82d708b27765b77e8da54198d8dade8f54928 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90li?= <15040126243@163.com> Date: Thu, 13 May 2021 21:23:50 +0800 Subject: [PATCH 02/15] =?UTF-8?q?remove=20=E7=A7=BB=E9=99=A4=20pagehelper?= =?UTF-8?q?=20=E5=88=86=E9=A1=B5=E5=B7=A5=E5=85=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 14 ------ ruoyi-common/pom.xml | 6 --- .../core/controller/BaseController.java | 38 -------------- .../ruoyi/common/core/page/PageDomain.java | 39 --------------- .../ruoyi/common/core/page/TableSupport.java | 49 ------------------- 5 files changed, 146 deletions(-) delete mode 100644 ruoyi-common/src/main/java/com/ruoyi/common/core/page/PageDomain.java delete mode 100644 ruoyi-common/src/main/java/com/ruoyi/common/core/page/TableSupport.java diff --git a/pom.xml b/pom.xml index 4b35d5d3..e5d7eb37 100644 --- a/pom.xml +++ b/pom.xml @@ -20,7 +20,6 @@ 3.1.1 1.2.4 2.0.8 - 1.3.0 1.2.75 5.6.0 5.7.0 @@ -54,19 +53,6 @@ ${druid.version} - - - com.github.pagehelper - pagehelper-spring-boot-starter - ${pagehelper.boot.version} - - - org.mybatis - mybatis - - - - com.github.oshi diff --git a/ruoyi-common/pom.xml b/ruoyi-common/pom.xml index 19f00745..a18e8013 100644 --- a/ruoyi-common/pom.xml +++ b/ruoyi-common/pom.xml @@ -35,12 +35,6 @@ spring-boot-starter-security - - - com.github.pagehelper - pagehelper-spring-boot-starter - - javax.validation diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/controller/BaseController.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/controller/BaseController.java index 516d1023..9b379217 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/core/controller/BaseController.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/controller/BaseController.java @@ -1,16 +1,8 @@ package com.ruoyi.common.core.controller; -import cn.hutool.core.lang.Validator; import cn.hutool.core.util.StrUtil; -import cn.hutool.http.HttpStatus; -import com.github.pagehelper.PageHelper; -import com.github.pagehelper.PageInfo; import com.ruoyi.common.core.domain.AjaxResult; -import com.ruoyi.common.core.page.PageDomain; -import com.ruoyi.common.core.page.TableDataInfo; -import com.ruoyi.common.core.page.TableSupport; import com.ruoyi.common.utils.DateUtils; -import com.ruoyi.common.utils.sql.SqlUtil; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.bind.WebDataBinder; @@ -18,7 +10,6 @@ import org.springframework.web.bind.annotation.InitBinder; import java.beans.PropertyEditorSupport; import java.util.Date; -import java.util.List; /** * web层通用数据处理 @@ -46,35 +37,6 @@ public class BaseController }); } - /** - * 设置请求分页数据 - */ - protected void startPage() - { - PageDomain pageDomain = TableSupport.buildPageRequest(); - Integer pageNum = pageDomain.getPageNum(); - Integer pageSize = pageDomain.getPageSize(); - if (Validator.isNotNull(pageNum) && Validator.isNotNull(pageSize)) - { - String orderBy = SqlUtil.escapeOrderBySql(pageDomain.getOrderBy()); - PageHelper.startPage(pageNum, pageSize, orderBy); - } - } - - /** - * 响应请求分页数据 - */ - @SuppressWarnings({ "rawtypes", "unchecked" }) - protected TableDataInfo getDataTable(List list) - { - TableDataInfo rspData = new TableDataInfo(); - rspData.setCode(HttpStatus.HTTP_OK); - rspData.setMsg("查询成功"); - rspData.setRows(list); - rspData.setTotal(new PageInfo(list).getTotal()); - return rspData; - } - /** * 响应返回结果 * diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/page/PageDomain.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/page/PageDomain.java deleted file mode 100644 index 2fc6b875..00000000 --- a/ruoyi-common/src/main/java/com/ruoyi/common/core/page/PageDomain.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.ruoyi.common.core.page; - -import cn.hutool.core.util.StrUtil; -import lombok.*; -import lombok.experimental.Accessors; - -/** - * 分页数据 - * - * @author ruoyi - */ - -@Data -@NoArgsConstructor -@Accessors(chain = true) -public class PageDomain -{ - /** 当前记录起始索引 */ - private Integer pageNum; - - /** 每页显示记录数 */ - private Integer pageSize; - - /** 排序列 */ - private String orderByColumn; - - /** 排序的方向desc或者asc */ - private String isAsc = "asc"; - - public String getOrderBy() - { - if (StrUtil.isEmpty(orderByColumn)) - { - return ""; - } - return StrUtil.toUnderlineCase(orderByColumn) + " " + isAsc; - } - -} diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/page/TableSupport.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/page/TableSupport.java deleted file mode 100644 index 14eb1e11..00000000 --- a/ruoyi-common/src/main/java/com/ruoyi/common/core/page/TableSupport.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.ruoyi.common.core.page; - -import com.ruoyi.common.utils.ServletUtils; - -/** - * 表格数据处理 - * - * @author ruoyi - */ -public class TableSupport -{ - /** - * 当前记录起始索引 - */ - public static final String PAGE_NUM = "pageNum"; - - /** - * 每页显示记录数 - */ - public static final String PAGE_SIZE = "pageSize"; - - /** - * 排序列 - */ - public static final String ORDER_BY_COLUMN = "orderByColumn"; - - /** - * 排序的方向 "desc" 或者 "asc". - */ - public static final String IS_ASC = "isAsc"; - - /** - * 封装分页对象 - */ - public static PageDomain getPageDomain() - { - PageDomain pageDomain = new PageDomain(); - pageDomain.setPageNum(ServletUtils.getParameterToInt(PAGE_NUM)); - pageDomain.setPageSize(ServletUtils.getParameterToInt(PAGE_SIZE)); - pageDomain.setOrderByColumn(ServletUtils.getParameter(ORDER_BY_COLUMN)); - pageDomain.setIsAsc(ServletUtils.getParameter(IS_ASC)); - return pageDomain; - } - - public static PageDomain buildPageRequest() - { - return getPageDomain(); - } -} From b0417338ccc0c4381a65dc0a709e7473564bd589 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90li?= <15040126243@163.com> Date: Thu, 13 May 2021 21:24:47 +0800 Subject: [PATCH 03/15] =?UTF-8?q?add=20=E5=A2=9E=E5=8A=A0=E5=8D=87?= =?UTF-8?q?=E7=BA=A7=E7=89=88=E9=80=9A=E7=94=A8Service=20IServicePlus?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ruoyi/common/core/page/IServicePlus.java | 126 ++++++++++++++++++ 1 file changed, 126 insertions(+) create mode 100644 ruoyi-common/src/main/java/com/ruoyi/common/core/page/IServicePlus.java diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/page/IServicePlus.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/page/IServicePlus.java new file mode 100644 index 00000000..864a38e8 --- /dev/null +++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/page/IServicePlus.java @@ -0,0 +1,126 @@ +package com.ruoyi.common.core.page; + +import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.io.Serializable; +import java.util.Collection; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +/** + * 自定义 Service 接口, 实现 数据库实体与 vo 对象转换返回 + * + * @author Lion Li + * @since 2021-05-13 + */ +public interface IServicePlus extends IService { + + /** + * 根据 ID 查询 + * + * @param kClass vo类型 + * @param id 主键ID + */ + default K getVoById(Serializable id, Class kClass) { + T t = getBaseMapper().selectById(id); + return BeanUtil.toBean(t, kClass); + } + + /** + * 查询(根据ID 批量查询) + * + * @param kClass vo类型 + * @param idList 主键ID列表 + */ + default List listVoByIds(Collection idList, Class kClass) { + List list = getBaseMapper().selectBatchIds(idList); + if (list == null) { + return null; + } + return list.stream() + .map(any -> BeanUtil.toBean(any, kClass)) + .collect(Collectors.toList()); + } + + /** + * 查询(根据 columnMap 条件) + * + * @param kClass vo类型 + * @param columnMap 表字段 map 对象 + */ + default List listVoByMap(Map columnMap, Class kClass) { + List list = getBaseMapper().selectByMap(columnMap); + if (list == null) { + return null; + } + return list.stream() + .map(any -> BeanUtil.toBean(any, kClass)) + .collect(Collectors.toList()); + } + + /** + * 根据 Wrapper,查询一条记录
+ *

结果集,如果是多个会抛出异常,随机取一条加上限制条件 wrapper.last("LIMIT 1")

+ * + * @param kClass vo类型 + * @param queryWrapper 实体对象封装操作类 {@link com.baomidou.mybatisplus.core.conditions.query.QueryWrapper} + */ + default K getVoOne(Wrapper queryWrapper, Class kClass) { + return BeanUtil.toBean(getOne(queryWrapper, true), kClass); + } + + /** + * 查询列表 + * + * @param kClass vo类型 + * @param queryWrapper 实体对象封装操作类 {@link com.baomidou.mybatisplus.core.conditions.query.QueryWrapper} + */ + default List listVo(Wrapper queryWrapper, Class kClass) { + List list = getBaseMapper().selectList(queryWrapper); + if (list == null) { + return null; + } + return list.stream() + .map(any -> BeanUtil.toBean(any, kClass)) + .collect(Collectors.toList()); + } + + /** + * 查询所有 + * + * @param kClass vo类型 + * @see Wrappers#emptyWrapper() + */ + default List listVo(Class kClass) { + return listVo(Wrappers.emptyWrapper(), kClass); + } + + /** + * 翻页查询 + * + * @param page 翻页对象 + * @param queryWrapper 实体对象封装操作类 + * @param kClass vo类型 + */ + default PagePlus pageVo(PagePlus page, Wrapper queryWrapper, Class kClass) { + PagePlus e = getBaseMapper().selectPage(page, queryWrapper); + page.recordsToVo(kClass); + return page; + } + + /** + * 无条件翻页查询 + * + * @param page 翻页对象 + * @param kClass vo类型 + */ + default PagePlus pageVo(PagePlus page, Class kClass) { + return pageVo(page, Wrappers.emptyWrapper(), kClass); + } + +} + From f01bb5966a55bd35754476c11d9c8afa6bc7f659 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90li?= <15040126243@163.com> Date: Thu, 13 May 2021 21:25:51 +0800 Subject: [PATCH 04/15] =?UTF-8?q?update=20=E4=BD=BF=E7=94=A8=20MP=20?= =?UTF-8?q?=E5=88=86=E9=A1=B5=E5=B7=A5=E5=85=B7=20=E9=87=8D=E6=9E=84?= =?UTF-8?q?=E4=B8=9A=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../monitor/SysLogininforController.java | 17 +++----- .../monitor/SysOperlogController.java | 17 +++----- .../monitor/SysUserOnlineController.java | 3 +- .../system/SysConfigController.java | 22 ++++------ .../system/SysDictDataController.java | 4 +- .../system/SysDictTypeController.java | 22 ++++------ .../system/SysNoticeController.java | 4 +- .../controller/system/SysPostController.java | 4 +- .../controller/system/SysRoleController.java | 4 +- .../controller/system/SysUserController.java | 4 +- .../generator/controller/GenController.java | 38 +++++++---------- .../generator/mapper/GenTableMapper.java | 7 ++++ .../service/GenTableServiceImpl.java | 12 ++++++ .../service/IGenTableColumnService.java | 4 +- .../generator/service/IGenTableService.java | 12 +++++- .../mapper/generator/GenTableMapper.xml | 42 ++++++++++++++++++- .../quartz/controller/SysJobController.java | 22 ++++------ .../controller/SysJobLogController.java | 17 +++----- .../quartz/service/ISysJobLogService.java | 9 +++- .../ruoyi/quartz/service/ISysJobService.java | 7 +++- .../service/impl/SysJobLogServiceImpl.java | 19 +++++++++ .../service/impl/SysJobServiceImpl.java | 12 ++++++ .../ruoyi/system/mapper/SysRoleMapper.java | 4 ++ .../ruoyi/system/mapper/SysUserMapper.java | 5 +++ .../system/service/ISysConfigService.java | 9 +++- .../ruoyi/system/service/ISysDeptService.java | 4 +- .../system/service/ISysDictDataService.java | 9 +++- .../system/service/ISysDictTypeService.java | 9 +++- .../system/service/ISysLogininforService.java | 9 +++- .../ruoyi/system/service/ISysMenuService.java | 4 +- .../system/service/ISysNoticeService.java | 9 +++- .../system/service/ISysOperLogService.java | 8 +++- .../ruoyi/system/service/ISysPostService.java | 9 +++- .../ruoyi/system/service/ISysRoleService.java | 9 +++- .../ruoyi/system/service/ISysUserService.java | 9 +++- .../service/impl/SysConfigServiceImpl.java | 38 ++++++++++++----- .../service/impl/SysDictDataServiceImpl.java | 15 ++++++- .../service/impl/SysDictTypeServiceImpl.java | 18 ++++++++ .../impl/SysLogininforServiceImpl.java | 19 +++++++++ .../service/impl/SysNoticeServiceImpl.java | 11 +++++ .../service/impl/SysOperLogServiceImpl.java | 27 ++++++++++++ .../service/impl/SysPostServiceImpl.java | 11 +++++ .../service/impl/SysRoleServiceImpl.java | 9 +++- .../service/impl/SysUserServiceImpl.java | 8 ++++ .../resources/mapper/system/SysRoleMapper.xml | 23 ++++++++++ .../resources/mapper/system/SysUserMapper.xml | 29 +++++++++++++ 46 files changed, 445 insertions(+), 162 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/monitor/SysLogininforController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/monitor/SysLogininforController.java index 339f2428..2bb0b135 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/monitor/SysLogininforController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/monitor/SysLogininforController.java @@ -1,13 +1,5 @@ package com.ruoyi.web.controller.monitor; -import java.util.List; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.DeleteMapping; -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 com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; @@ -16,6 +8,11 @@ import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.system.domain.SysLogininfor; import com.ruoyi.system.service.ISysLogininforService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import java.util.List; /** * 系统访问记录 @@ -33,9 +30,7 @@ public class SysLogininforController extends BaseController @GetMapping("/list") public TableDataInfo list(SysLogininfor logininfor) { - startPage(); - List list = logininforService.selectLogininforList(logininfor); - return getDataTable(list); + return logininforService.selectPageLogininforList(logininfor); } @Log(title = "登录日志", businessType = BusinessType.EXPORT) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/monitor/SysOperlogController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/monitor/SysOperlogController.java index 1d7eb020..97f99206 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/monitor/SysOperlogController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/monitor/SysOperlogController.java @@ -1,13 +1,5 @@ package com.ruoyi.web.controller.monitor; -import java.util.List; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.DeleteMapping; -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 com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; @@ -16,6 +8,11 @@ import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.system.domain.SysOperLog; import com.ruoyi.system.service.ISysOperLogService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import java.util.List; /** * 操作日志记录 @@ -33,9 +30,7 @@ public class SysOperlogController extends BaseController @GetMapping("/list") public TableDataInfo list(SysOperLog operLog) { - startPage(); - List list = operLogService.selectOperLogList(operLog); - return getDataTable(list); + return operLogService.selectPageOperLogList(operLog); } @Log(title = "操作日志", businessType = BusinessType.EXPORT) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/monitor/SysUserOnlineController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/monitor/SysUserOnlineController.java index 8c06d012..fe630a99 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/monitor/SysUserOnlineController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/monitor/SysUserOnlineController.java @@ -10,6 +10,7 @@ import com.ruoyi.common.core.domain.model.LoginUser; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.core.redis.RedisCache; import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.common.utils.PageUtils; import com.ruoyi.system.domain.SysUserOnline; import com.ruoyi.system.service.ISysUserOnlineService; import org.springframework.beans.factory.annotation.Autowired; @@ -73,7 +74,7 @@ public class SysUserOnlineController extends BaseController } Collections.reverse(userOnlineList); userOnlineList.removeAll(Collections.singleton(null)); - return getDataTable(userOnlineList); + return PageUtils.buildDataInfo(userOnlineList); } /** diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysConfigController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysConfigController.java index fb39a336..d26de0ad 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysConfigController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysConfigController.java @@ -1,17 +1,5 @@ package com.ruoyi.web.controller.system; -import java.util.List; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.annotation.RepeatSubmit; import com.ruoyi.common.constant.UserConstants; @@ -23,6 +11,12 @@ import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.system.domain.SysConfig; import com.ruoyi.system.service.ISysConfigService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.List; /** * 参数配置 信息操作处理 @@ -43,9 +37,7 @@ public class SysConfigController extends BaseController @GetMapping("/list") public TableDataInfo list(SysConfig config) { - startPage(); - List list = configService.selectConfigList(config); - return getDataTable(list); + return configService.selectPageConfigList(config); } @Log(title = "参数管理", businessType = BusinessType.EXPORT) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDictDataController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDictDataController.java index 7fbd05cc..157030fb 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDictDataController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDictDataController.java @@ -38,9 +38,7 @@ public class SysDictDataController extends BaseController @GetMapping("/list") public TableDataInfo list(SysDictData dictData) { - startPage(); - List list = dictDataService.selectDictDataList(dictData); - return getDataTable(list); + return dictDataService.selectPageDictDataList(dictData); } @Log(title = "字典数据", businessType = BusinessType.EXPORT) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDictTypeController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDictTypeController.java index a4e0b2b1..306b6f2b 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDictTypeController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDictTypeController.java @@ -1,17 +1,5 @@ package com.ruoyi.web.controller.system; -import java.util.List; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.constant.UserConstants; import com.ruoyi.common.core.controller.BaseController; @@ -22,6 +10,12 @@ import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.system.service.ISysDictTypeService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.List; /** * 数据字典信息 @@ -39,9 +33,7 @@ public class SysDictTypeController extends BaseController @GetMapping("/list") public TableDataInfo list(SysDictType dictType) { - startPage(); - List list = dictTypeService.selectDictTypeList(dictType); - return getDataTable(list); + return dictTypeService.selectPageDictTypeList(dictType); } @Log(title = "字典类型", businessType = BusinessType.EXPORT) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysNoticeController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysNoticeController.java index 224e594d..48d1e088 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysNoticeController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysNoticeController.java @@ -40,9 +40,7 @@ public class SysNoticeController extends BaseController @GetMapping("/list") public TableDataInfo list(SysNotice notice) { - startPage(); - List list = noticeService.selectNoticeList(notice); - return getDataTable(list); + return noticeService.selectPageNoticeList(notice); } /** diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysPostController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysPostController.java index 0c73ea8d..b63c155e 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysPostController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysPostController.java @@ -42,9 +42,7 @@ public class SysPostController extends BaseController @GetMapping("/list") public TableDataInfo list(SysPost post) { - startPage(); - List list = postService.selectPostList(post); - return getDataTable(list); + return postService.selectPagePostList(post); } @Log(title = "岗位管理", businessType = BusinessType.EXPORT) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysRoleController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysRoleController.java index 4d0d1653..70e640e8 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysRoleController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysRoleController.java @@ -48,9 +48,7 @@ public class SysRoleController extends BaseController @GetMapping("/list") public TableDataInfo list(SysRole role) { - startPage(); - List list = roleService.selectRoleList(role); - return getDataTable(list); + return roleService.selectPageRoleList(role); } @Log(title = "角色管理", businessType = BusinessType.EXPORT) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java index 6a884849..7e743999 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java @@ -54,9 +54,7 @@ public class SysUserController extends BaseController @GetMapping("/list") public TableDataInfo list(SysUser user) { - startPage(); - List list = userService.selectUserList(user); - return getDataTable(list); + return userService.selectPageUserList(user); } @Log(title = "用户管理", businessType = BusinessType.EXPORT) diff --git a/ruoyi-generator/src/main/java/com/ruoyi/generator/controller/GenController.java b/ruoyi-generator/src/main/java/com/ruoyi/generator/controller/GenController.java index 72fea3be..53438343 100644 --- a/ruoyi-generator/src/main/java/com/ruoyi/generator/controller/GenController.java +++ b/ruoyi-generator/src/main/java/com/ruoyi/generator/controller/GenController.java @@ -1,32 +1,26 @@ package com.ruoyi.generator.controller; -import java.io.IOException; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.servlet.http.HttpServletResponse; -import org.apache.commons.io.IOUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import cn.hutool.core.convert.Convert; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.page.TableDataInfo; -import cn.hutool.core.convert.Convert; import com.ruoyi.common.enums.BusinessType; import com.ruoyi.generator.domain.GenTable; import com.ruoyi.generator.domain.GenTableColumn; import com.ruoyi.generator.service.IGenTableColumnService; import com.ruoyi.generator.service.IGenTableService; +import org.apache.commons.io.IOUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * 代码生成 操作处理 @@ -50,9 +44,7 @@ public class GenController extends BaseController @GetMapping("/list") public TableDataInfo genList(GenTable genTable) { - startPage(); - List list = genTableService.selectGenTableList(genTable); - return getDataTable(list); + return genTableService.selectPageGenTableList(genTable); } /** @@ -79,9 +71,7 @@ public class GenController extends BaseController @GetMapping("/db/list") public TableDataInfo dataList(GenTable genTable) { - startPage(); - List list = genTableService.selectDbTableList(genTable); - return getDataTable(list); + return genTableService.selectPageDbTableList(genTable); } /** diff --git a/ruoyi-generator/src/main/java/com/ruoyi/generator/mapper/GenTableMapper.java b/ruoyi-generator/src/main/java/com/ruoyi/generator/mapper/GenTableMapper.java index 894f689d..50f98c5d 100644 --- a/ruoyi-generator/src/main/java/com/ruoyi/generator/mapper/GenTableMapper.java +++ b/ruoyi-generator/src/main/java/com/ruoyi/generator/mapper/GenTableMapper.java @@ -1,6 +1,7 @@ package com.ruoyi.generator.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.generator.domain.GenTable; import java.util.List; @@ -11,6 +12,12 @@ import java.util.List; * @author ruoyi */ public interface GenTableMapper extends BaseMapper { + + + Page selectPageGenTableList(Page page, GenTable genTable); + + Page selectPageDbTableList(Page page, GenTable genTable); + /** * 查询业务列表 * diff --git a/ruoyi-generator/src/main/java/com/ruoyi/generator/service/GenTableServiceImpl.java b/ruoyi-generator/src/main/java/com/ruoyi/generator/service/GenTableServiceImpl.java index 7fc96e26..e71e8896 100644 --- a/ruoyi-generator/src/main/java/com/ruoyi/generator/service/GenTableServiceImpl.java +++ b/ruoyi-generator/src/main/java/com/ruoyi/generator/service/GenTableServiceImpl.java @@ -10,7 +10,9 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.common.constant.Constants; import com.ruoyi.common.constant.GenConstants; +import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.exception.CustomException; +import com.ruoyi.common.utils.PageUtils; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.file.FileUtils; import com.ruoyi.generator.domain.GenTable; @@ -66,6 +68,16 @@ public class GenTableServiceImpl extends ServiceImpl i return genTable; } + @Override + public TableDataInfo selectPageGenTableList(GenTable genTable) { + return PageUtils.buildDataInfo(baseMapper.selectPageGenTableList(PageUtils.buildPage(), genTable)); + } + + @Override + public TableDataInfo selectPageDbTableList(GenTable genTable) { + return PageUtils.buildDataInfo(baseMapper.selectPageDbTableList(PageUtils.buildPage(), genTable)); + } + /** * 查询业务列表 * diff --git a/ruoyi-generator/src/main/java/com/ruoyi/generator/service/IGenTableColumnService.java b/ruoyi-generator/src/main/java/com/ruoyi/generator/service/IGenTableColumnService.java index e0111e5d..22946f25 100644 --- a/ruoyi-generator/src/main/java/com/ruoyi/generator/service/IGenTableColumnService.java +++ b/ruoyi-generator/src/main/java/com/ruoyi/generator/service/IGenTableColumnService.java @@ -1,6 +1,6 @@ package com.ruoyi.generator.service; -import com.baomidou.mybatisplus.extension.service.IService; +import com.ruoyi.common.core.page.IServicePlus; import com.ruoyi.generator.domain.GenTableColumn; import java.util.List; @@ -10,7 +10,7 @@ import java.util.List; * * @author ruoyi */ -public interface IGenTableColumnService extends IService { +public interface IGenTableColumnService extends IServicePlus { /** * 查询业务字段列表 * diff --git a/ruoyi-generator/src/main/java/com/ruoyi/generator/service/IGenTableService.java b/ruoyi-generator/src/main/java/com/ruoyi/generator/service/IGenTableService.java index c6642bad..cbfeae4a 100644 --- a/ruoyi-generator/src/main/java/com/ruoyi/generator/service/IGenTableService.java +++ b/ruoyi-generator/src/main/java/com/ruoyi/generator/service/IGenTableService.java @@ -1,6 +1,7 @@ package com.ruoyi.generator.service; -import com.baomidou.mybatisplus.extension.service.IService; +import com.ruoyi.common.core.page.IServicePlus; +import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.generator.domain.GenTable; import java.util.List; @@ -11,7 +12,14 @@ import java.util.Map; * * @author ruoyi */ -public interface IGenTableService extends IService { +public interface IGenTableService extends IServicePlus { + + + TableDataInfo selectPageGenTableList(GenTable genTable); + + + TableDataInfo selectPageDbTableList(GenTable genTable); + /** * 查询业务列表 * diff --git a/ruoyi-generator/src/main/resources/mapper/generator/GenTableMapper.xml b/ruoyi-generator/src/main/resources/mapper/generator/GenTableMapper.xml index 4054dd03..88b6bfe2 100644 --- a/ruoyi-generator/src/main/resources/mapper/generator/GenTableMapper.xml +++ b/ruoyi-generator/src/main/resources/mapper/generator/GenTableMapper.xml @@ -56,8 +56,46 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select table_id, table_name, table_comment, sub_table_name, sub_table_fk_name, class_name, tpl_category, package_name, module_name, business_name, function_name, function_author, gen_type, gen_path, options, create_by, create_time, update_by, update_time, remark from gen_table - - + + + + AND lower(table_name) like lower(concat('%', #{tableName}, '%')) + + + AND lower(table_comment) like lower(concat('%', #{tableComment}, '%')) + + + AND date_format(create_time,'%y%m%d') >= date_format(#{params.beginTime},'%y%m%d') + + + AND date_format(create_time,'%y%m%d') <= date_format(#{params.endTime},'%y%m%d') + + + + + + + + + + where r.del_flag = '0' + + AND r.role_name like concat('%', #{role.roleName}, '%') + + + AND r.status = #{role.status} + + + AND r.role_key like concat('%', #{role.roleKey}, '%') + + + and date_format(r.create_time,'%y%m%d') >= date_format(#{role.params.beginTime},'%y%m%d') + + + and date_format(r.create_time,'%y%m%d') <= date_format(#{role.params.endTime},'%y%m%d') + + + ${role.params.dataScope} + order by r.role_sort + + + select u.user_id, u.dept_id, u.nick_name, u.user_name, u.email, u.avatar, u.phonenumber, u.password, u.sex, + u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, d.dept_name, d.leader from + sys_user u + left join sys_dept d on u.dept_id = d.dept_id + where u.del_flag = '0' + + AND u.user_name like concat('%', #{user.userName}, '%') + + + AND u.status = #{user.status} + + + AND u.phonenumber like concat('%', #{user.phonenumber}, '%') + + + AND date_format(u.create_time,'%y%m%d') >= date_format(#{user.params.beginTime},'%y%m%d') + + + AND date_format(u.create_time,'%y%m%d') <= date_format(#{user.params.endTime},'%y%m%d') + + + AND (u.dept_id = #{user.deptId} OR u.dept_id IN ( SELECT t.dept_id FROM sys_dept t WHERE find_in_set(#{user.deptId}, + ancestors) )) + + + ${user.params.dataScope} + + - - AND lower(table_name) like lower(concat('%', #{tableName}, '%')) + + AND lower(table_name) like lower(concat('%', #{genTable.tableName}, '%')) - - AND lower(table_comment) like lower(concat('%', #{tableComment}, '%')) + + AND lower(table_comment) like lower(concat('%', #{genTable.tableComment}, '%')) - - AND date_format(create_time,'%y%m%d') >= date_format(#{params.beginTime},'%y%m%d') + + AND date_format(create_time,'%y%m%d') >= date_format(#{genTable.params.beginTime},'%y%m%d') - - AND date_format(create_time,'%y%m%d') <= date_format(#{params.endTime},'%y%m%d') + + AND date_format(create_time,'%y%m%d') <= date_format(#{genTable.params.endTime},'%y%m%d') @@ -80,17 +80,17 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" where table_schema = (select database()) AND table_name NOT LIKE 'qrtz_%' AND table_name NOT LIKE 'gen_%' AND table_name NOT IN (select table_name from gen_table) - - AND lower(table_name) like lower(concat('%', #{tableName}, '%')) + + AND lower(table_name) like lower(concat('%', #{genTable.tableName}, '%')) - - AND lower(table_comment) like lower(concat('%', #{tableComment}, '%')) + + AND lower(table_comment) like lower(concat('%', #{genTable.tableComment}, '%')) - - AND date_format(create_time,'%y%m%d') >= date_format(#{params.beginTime},'%y%m%d') + + AND date_format(create_time,'%y%m%d') >= date_format(#{genTable.params.beginTime},'%y%m%d') - - AND date_format(create_time,'%y%m%d') <= date_format(#{params.endTime},'%y%m%d') + + AND date_format(create_time,'%y%m%d') <= date_format(#{genTable.params.endTime},'%y%m%d') diff --git a/ruoyi-generator/src/main/resources/vm/java/controller.java.vm b/ruoyi-generator/src/main/resources/vm/java/controller.java.vm index 412a82f9..1600dbd7 100644 --- a/ruoyi-generator/src/main/resources/vm/java/controller.java.vm +++ b/ruoyi-generator/src/main/resources/vm/java/controller.java.vm @@ -56,7 +56,7 @@ public class ${ClassName}Controller extends BaseController { return i${ClassName}Service.queryPageList(bo); } #elseif($table.tree) - public AjaxResult<${ClassName}Vo> list(${ClassName}QueryBo bo) { + public AjaxResult> list(${ClassName}QueryBo bo) { List<${ClassName}Vo> list = i${ClassName}Service.queryList(bo); return AjaxResult.success(list); } diff --git a/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm b/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm index b6485c7b..c727ce6e 100644 --- a/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm +++ b/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm @@ -2,7 +2,11 @@ package ${packageName}.service.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.util.StrUtil; +#if($table.crud || $table.sub) import com.ruoyi.common.utils.PageUtils; +import com.ruoyi.common.core.page.PagePlus; +import com.ruoyi.common.core.page.TableDataInfo; +#end import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; @@ -17,6 +21,7 @@ import ${packageName}.service.I${ClassName}Service; import java.util.List; import java.util.Map; +import java.util.Collection; /** * ${functionName}Service业务层处理 @@ -29,12 +34,23 @@ public class ${ClassName}ServiceImpl extends ServiceImpl<${ClassName}Mapper, ${C @Override public ${ClassName}Vo queryById(${pkColumn.javaType} ${pkColumn.javaField}){ - ${ClassName} db = this.baseMapper.selectById(${pkColumn.javaField}); - return BeanUtil.toBean(db, ${ClassName}Vo.class); + return getVoById(${pkColumn.javaField}, ${ClassName}Vo.class); } +#if($table.crud || $table.sub) + @Override + public TableDataInfo<${ClassName}Vo> queryPageList(${ClassName}QueryBo bo) { + PagePlus<${ClassName}, ${ClassName}Vo> result = pageVo(PageUtils.buildPagePlus(), buildQueryWrapper(bo), ${ClassName}Vo.class); + return PageUtils.buildDataInfo(result); + } +#end + @Override public List<${ClassName}Vo> queryList(${ClassName}QueryBo bo) { + return listVo(buildQueryWrapper(bo), ${ClassName}Vo.class); + } + + private LambdaQueryWrapper<${ClassName}> buildQueryWrapper(${ClassName}QueryBo bo) { Map params = bo.getParams(); LambdaQueryWrapper<${ClassName}> lqw = Wrappers.lambdaQuery(); #foreach($column in $columns) @@ -58,21 +74,21 @@ public class ${ClassName}ServiceImpl extends ServiceImpl<${ClassName}Mapper, ${C #end #end #end - return PageUtils.buildDataInfo(page(PageUtils.buildPagePlus(), lqw)); + return lqw; } @Override public Boolean insertByAddBo(${ClassName}AddBo bo) { ${ClassName} add = BeanUtil.toBean(bo, ${ClassName}.class); validEntityBeforeSave(add); - return this.save(add); + return save(add); } @Override public Boolean updateByEditBo(${ClassName}EditBo bo) { ${ClassName} update = BeanUtil.toBean(bo, ${ClassName}.class); validEntityBeforeSave(update); - return this.updateById(update); + return updateById(update); } /** @@ -89,6 +105,6 @@ public class ${ClassName}ServiceImpl extends ServiceImpl<${ClassName}Mapper, ${C if(isValid){ //TODO 做一些业务上的校验,判断是否需要校验 } - return this.removeByIds(ids); + return removeByIds(ids); } } From 51efddcfb0d9a759ef0584ba560493f979867551 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90li?= <15040126243@163.com> Date: Fri, 14 May 2021 11:19:50 +0800 Subject: [PATCH 10/15] =?UTF-8?q?update=20=E9=87=8D=E5=86=99=E6=96=87?= =?UTF-8?q?=E6=A1=A3=E4=BB=8B=E7=BB=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 55 +++++++++++++++++++++++++++++++++++-------------------- 1 file changed, 35 insertions(+), 20 deletions(-) diff --git a/README.md b/README.md index f93fa975..66151c3e 100644 --- a/README.md +++ b/README.md @@ -1,35 +1,50 @@ +## 平台简介 + +基于 RuoYi-Vue 集成 Mybatis-Plus Lombok Hutool 等便捷开发工具 适配重写相关业务 便于开发 定期与 RuoYi-Vue 同步 +* 前端开发框架 Vue、Element UI +* 后端开发框架 Spring Boot、Redis +* 容器框架 Undertow 基于 Netty 的高性能容器 +* 权限认证框架 Spring Security、Jwt,支持多终端认证系统 +* 关系数据库 MySQL 适配 8.X +* 缓存数据库 Redis 适配 6.X +* 数据库开发框架 Mybatis-Plus 快速 CRUD 增加开发效率 插件化支持各类需求 +* 网络框架 Feign、OkHttp3 接口化管理 HTTP 请求 +* 工具类框架 Hutool、Lombok 减少代码冗余 增加安全性 +* 监控框架 spring-boot-admin 全方位服务监控 +* 校验框架 validation 增强接口安全性 严谨性 +* 文档框架 knife4j 美化接口文档 +* 代码生成器可以一键生成前后端代码 + ## 修改RuoYi功能 -* ORM框架 使用 Mybatis-Plus 简化CRUD (目前支持单表生成与树表 不支持主子表) +### 依赖改动 + +* ORM框架 使用 Mybatis-Plus 3.4.2 简化CRUD (不支持主子表) * Bean简化 使用 Lombok 简化 get set toString 等等 * 容器改动 Tomcat 改为 并发性能更好的 undertow -* 所有原生功能使用 Mybatis-Plus 与 Lombok 重写 -* 代码生成模板 改为适配 Mybatis-Plus 的代码 -* 代码生成模板 拆分出Vo,QueryBo,AddBo,EditBo等领域对象 -* 项目修改为 maven多环境配置 -* 项目配置修改为 application.yml 统一管理 -* swagger 修改为 knife4j +* 分页移除 pagehelper 改为 Mybatis-Plus 分页 +* 升级 swagger 为 knife4j * 集成 Hutool 5.X 并重写RuoYi部分功能 * 集成 Feign 接口化管理 Http 请求(如三方请求 支付,短信,推送等) * 集成 spring-boot-admin 全方位监控 -* 升级MybatisPlus 3.4.2 -* 增加demo模块示例(给不会增加模块的小伙伴做参考) -* 同步升级 3.4.0 +* 增加 demo 模块示例(给不会增加模块的小伙伴做参考) + +### 代码改动 + +* 所有原生功能使用 Mybatis-Plus 与 Lombok 重写 +* 代码生成模板 改为适配 Mybatis-Plus 的代码 +* 代码生成模板 拆分出 Vo,QueryBo,AddBo,EditBo 等领域对象 +* 增加 IServicePlus 与 BaseMapperPlus 可自定义通用方法 +* 项目修改为 maven多环境配置 +* 项目配置修改为 application.yml 统一管理 + +### 其他 +* 同步升级 RuoYi-Vue 3.4.0 * 单模块 fast 分支 [RuoYi-Vue-Plus-fast](https://gitee.com/JavaLionLi/RuoYi-Vue-Plus/tree/fast/) ## 关注作者(扫码请备注: "加群") ![](https://images.gitee.com/uploads/images/2021/0508/235345_5503356a_1766278.jpeg) -## 平台简介 - -若依是一套全部开源的快速开发平台,毫无保留给个人及企业免费使用。 - -* 前端采用Vue、Element UI。 -* 后端采用Spring Boot、Spring Security、Redis & Jwt。 -* 权限认证使用Jwt,支持多终端认证系统。 -* 支持加载动态权限菜单,多方式轻松权限控制。 -* 高效率开发,使用代码生成器可以一键生成前后端代码。 - ## 重点注意事项 若依文档对事务注解的描述 [关于事务](https://doc.ruoyi.vip/ruoyi/document/htsc.html#%E4%BA%8B%E5%8A%A1%E7%AE%A1%E7%90%86) 以下对多数据源事务做补充: From 6067cb17977c0a90099f5ae3dad403a9a1f16dd6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90li?= <15040126243@163.com> Date: Fri, 14 May 2021 13:01:18 +0800 Subject: [PATCH 11/15] =?UTF-8?q?add=20=E5=A2=9E=E5=8A=A0=E5=A2=9E?= =?UTF-8?q?=E5=BC=BAMapper=20=E9=87=8D=E5=86=99=E4=B8=9A=E5=8A=A1=E9=80=82?= =?UTF-8?q?=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/core/page/BaseMapperPlus.java | 12 +++++++ .../mapper/GenTableColumnMapper.java | 4 +-- .../generator/mapper/GenTableMapper.java | 4 +-- .../src/main/resources/vm/java/mapper.java.vm | 4 +-- .../ruoyi/quartz/mapper/SysJobLogMapper.java | 4 +-- .../com/ruoyi/quartz/mapper/SysJobMapper.java | 4 +-- .../ruoyi/system/mapper/SysConfigMapper.java | 4 +-- .../ruoyi/system/mapper/SysDeptMapper.java | 4 +-- .../system/mapper/SysDictDataMapper.java | 4 +-- .../system/mapper/SysDictTypeMapper.java | 4 +-- .../system/mapper/SysLogininforMapper.java | 4 +-- .../ruoyi/system/mapper/SysMenuMapper.java | 4 +-- .../ruoyi/system/mapper/SysNoticeMapper.java | 4 +-- .../ruoyi/system/mapper/SysOperLogMapper.java | 4 +-- .../ruoyi/system/mapper/SysPostMapper.java | 4 +-- .../system/mapper/SysRoleDeptMapper.java | 4 +-- .../ruoyi/system/mapper/SysRoleMapper.java | 4 +-- .../system/mapper/SysRoleMenuMapper.java | 4 +-- .../ruoyi/system/mapper/SysUserMapper.java | 4 +-- .../system/mapper/SysUserPostMapper.java | 4 +-- .../system/mapper/SysUserRoleMapper.java | 4 +-- ruoyi-ui/src/views/index.vue | 34 +++++++++++++++++-- 22 files changed, 84 insertions(+), 42 deletions(-) create mode 100644 ruoyi-common/src/main/java/com/ruoyi/common/core/page/BaseMapperPlus.java diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/page/BaseMapperPlus.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/page/BaseMapperPlus.java new file mode 100644 index 00000000..ebba1b7a --- /dev/null +++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/page/BaseMapperPlus.java @@ -0,0 +1,12 @@ +package com.ruoyi.common.core.page; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * 自定义 Mapper 接口, 实现 自定义扩展 + * + * @author Lion Li + * @since 2021-05-13 + */ +public interface BaseMapperPlus extends BaseMapper { +} diff --git a/ruoyi-generator/src/main/java/com/ruoyi/generator/mapper/GenTableColumnMapper.java b/ruoyi-generator/src/main/java/com/ruoyi/generator/mapper/GenTableColumnMapper.java index d3e7e5e0..5a2691a9 100644 --- a/ruoyi-generator/src/main/java/com/ruoyi/generator/mapper/GenTableColumnMapper.java +++ b/ruoyi-generator/src/main/java/com/ruoyi/generator/mapper/GenTableColumnMapper.java @@ -1,6 +1,6 @@ package com.ruoyi.generator.mapper; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.common.core.page.BaseMapperPlus; import com.ruoyi.generator.domain.GenTableColumn; import java.util.List; @@ -10,7 +10,7 @@ import java.util.List; * * @author ruoyi */ -public interface GenTableColumnMapper extends BaseMapper { +public interface GenTableColumnMapper extends BaseMapperPlus { /** * 根据表名称查询列信息 * diff --git a/ruoyi-generator/src/main/java/com/ruoyi/generator/mapper/GenTableMapper.java b/ruoyi-generator/src/main/java/com/ruoyi/generator/mapper/GenTableMapper.java index 28a5489d..85da309f 100644 --- a/ruoyi-generator/src/main/java/com/ruoyi/generator/mapper/GenTableMapper.java +++ b/ruoyi-generator/src/main/java/com/ruoyi/generator/mapper/GenTableMapper.java @@ -1,7 +1,7 @@ package com.ruoyi.generator.mapper; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ruoyi.common.core.page.BaseMapperPlus; import com.ruoyi.generator.domain.GenTable; import org.apache.ibatis.annotations.Param; @@ -12,7 +12,7 @@ import java.util.List; * * @author ruoyi */ -public interface GenTableMapper extends BaseMapper { +public interface GenTableMapper extends BaseMapperPlus { Page selectPageGenTableList(@Param("page") Page page, @Param("genTable") GenTable genTable); diff --git a/ruoyi-generator/src/main/resources/vm/java/mapper.java.vm b/ruoyi-generator/src/main/resources/vm/java/mapper.java.vm index bba2b15f..60084189 100644 --- a/ruoyi-generator/src/main/resources/vm/java/mapper.java.vm +++ b/ruoyi-generator/src/main/resources/vm/java/mapper.java.vm @@ -1,7 +1,7 @@ package ${packageName}.mapper; import ${packageName}.domain.${ClassName}; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.common.core.page.BaseMapperPlus; /** * ${functionName}Mapper接口 @@ -9,6 +9,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; * @author ${author} * @date ${datetime} */ -public interface ${ClassName}Mapper extends BaseMapper<${ClassName}> { +public interface ${ClassName}Mapper extends BaseMapperPlus<${ClassName}> { } diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/mapper/SysJobLogMapper.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/mapper/SysJobLogMapper.java index b6ae67b1..03d45015 100644 --- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/mapper/SysJobLogMapper.java +++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/mapper/SysJobLogMapper.java @@ -1,6 +1,6 @@ package com.ruoyi.quartz.mapper; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.common.core.page.BaseMapperPlus; import com.ruoyi.quartz.domain.SysJobLog; /** @@ -8,6 +8,6 @@ import com.ruoyi.quartz.domain.SysJobLog; * * @author ruoyi */ -public interface SysJobLogMapper extends BaseMapper { +public interface SysJobLogMapper extends BaseMapperPlus { } diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/mapper/SysJobMapper.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/mapper/SysJobMapper.java index 1f814b03..8e73f0a7 100644 --- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/mapper/SysJobMapper.java +++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/mapper/SysJobMapper.java @@ -1,6 +1,6 @@ package com.ruoyi.quartz.mapper; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.common.core.page.BaseMapperPlus; import com.ruoyi.quartz.domain.SysJob; /** @@ -8,6 +8,6 @@ import com.ruoyi.quartz.domain.SysJob; * * @author ruoyi */ -public interface SysJobMapper extends BaseMapper { +public interface SysJobMapper extends BaseMapperPlus { } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysConfigMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysConfigMapper.java index f7c0b4cb..fb3f0689 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysConfigMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysConfigMapper.java @@ -1,6 +1,6 @@ package com.ruoyi.system.mapper; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.common.core.page.BaseMapperPlus; import com.ruoyi.system.domain.SysConfig; /** @@ -8,6 +8,6 @@ import com.ruoyi.system.domain.SysConfig; * * @author ruoyi */ -public interface SysConfigMapper extends BaseMapper { +public interface SysConfigMapper extends BaseMapperPlus { } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDeptMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDeptMapper.java index b59afae0..12824e75 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDeptMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDeptMapper.java @@ -1,7 +1,7 @@ package com.ruoyi.system.mapper; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.ruoyi.common.core.domain.entity.SysDept; +import com.ruoyi.common.core.page.BaseMapperPlus; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -11,7 +11,7 @@ import java.util.List; * * @author ruoyi */ -public interface SysDeptMapper extends BaseMapper { +public interface SysDeptMapper extends BaseMapperPlus { /** * 查询部门管理数据 diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDictDataMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDictDataMapper.java index 8da79ca0..7f09d7c7 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDictDataMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDictDataMapper.java @@ -1,13 +1,13 @@ package com.ruoyi.system.mapper; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.ruoyi.common.core.domain.entity.SysDictData; +import com.ruoyi.common.core.page.BaseMapperPlus; /** * 字典表 数据层 * * @author ruoyi */ -public interface SysDictDataMapper extends BaseMapper { +public interface SysDictDataMapper extends BaseMapperPlus { } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDictTypeMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDictTypeMapper.java index 0c81ddd5..911386d5 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDictTypeMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDictTypeMapper.java @@ -1,13 +1,13 @@ package com.ruoyi.system.mapper; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.ruoyi.common.core.domain.entity.SysDictType; +import com.ruoyi.common.core.page.BaseMapperPlus; /** * 字典表 数据层 * * @author ruoyi */ -public interface SysDictTypeMapper extends BaseMapper { +public interface SysDictTypeMapper extends BaseMapperPlus { } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysLogininforMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysLogininforMapper.java index 8658318b..bf37f9b9 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysLogininforMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysLogininforMapper.java @@ -1,6 +1,6 @@ package com.ruoyi.system.mapper; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.common.core.page.BaseMapperPlus; import com.ruoyi.system.domain.SysLogininfor; /** @@ -8,6 +8,6 @@ import com.ruoyi.system.domain.SysLogininfor; * * @author ruoyi */ -public interface SysLogininforMapper extends BaseMapper { +public interface SysLogininforMapper extends BaseMapperPlus { } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysMenuMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysMenuMapper.java index aa3055ed..6a8e7293 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysMenuMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysMenuMapper.java @@ -1,7 +1,7 @@ package com.ruoyi.system.mapper; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.ruoyi.common.core.domain.entity.SysMenu; +import com.ruoyi.common.core.page.BaseMapperPlus; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -11,7 +11,7 @@ import java.util.List; * * @author ruoyi */ -public interface SysMenuMapper extends BaseMapper { +public interface SysMenuMapper extends BaseMapperPlus { /** * 根据用户所有权限 diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysNoticeMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysNoticeMapper.java index 9fe7165e..00611702 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysNoticeMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysNoticeMapper.java @@ -1,6 +1,6 @@ package com.ruoyi.system.mapper; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.common.core.page.BaseMapperPlus; import com.ruoyi.system.domain.SysNotice; /** @@ -8,6 +8,6 @@ import com.ruoyi.system.domain.SysNotice; * * @author ruoyi */ -public interface SysNoticeMapper extends BaseMapper { +public interface SysNoticeMapper extends BaseMapperPlus { } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysOperLogMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysOperLogMapper.java index d2bae7de..3f382561 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysOperLogMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysOperLogMapper.java @@ -1,6 +1,6 @@ package com.ruoyi.system.mapper; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.common.core.page.BaseMapperPlus; import com.ruoyi.system.domain.SysOperLog; /** @@ -8,6 +8,6 @@ import com.ruoyi.system.domain.SysOperLog; * * @author ruoyi */ -public interface SysOperLogMapper extends BaseMapper { +public interface SysOperLogMapper extends BaseMapperPlus { } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysPostMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysPostMapper.java index d15facd7..1eef04fa 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysPostMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysPostMapper.java @@ -1,6 +1,6 @@ package com.ruoyi.system.mapper; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.common.core.page.BaseMapperPlus; import com.ruoyi.system.domain.SysPost; import java.util.List; @@ -10,7 +10,7 @@ import java.util.List; * * @author ruoyi */ -public interface SysPostMapper extends BaseMapper { +public interface SysPostMapper extends BaseMapperPlus { /** * 根据用户ID获取岗位选择框列表 diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleDeptMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleDeptMapper.java index c609a5ad..6121490c 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleDeptMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleDeptMapper.java @@ -1,6 +1,6 @@ package com.ruoyi.system.mapper; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.common.core.page.BaseMapperPlus; import com.ruoyi.system.domain.SysRoleDept; /** @@ -8,6 +8,6 @@ import com.ruoyi.system.domain.SysRoleDept; * * @author ruoyi */ -public interface SysRoleDeptMapper extends BaseMapper { +public interface SysRoleDeptMapper extends BaseMapperPlus { } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMapper.java index 7e99fa35..e0792c7c 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMapper.java @@ -1,8 +1,8 @@ package com.ruoyi.system.mapper; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.common.core.domain.entity.SysRole; +import com.ruoyi.common.core.page.BaseMapperPlus; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -12,7 +12,7 @@ import java.util.List; * * @author ruoyi */ -public interface SysRoleMapper extends BaseMapper { +public interface SysRoleMapper extends BaseMapperPlus { Page selectPageRoleList(@Param("page") Page page, @Param("role") SysRole role); diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMenuMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMenuMapper.java index 6bc21a33..fa8c5a34 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMenuMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMenuMapper.java @@ -1,6 +1,6 @@ package com.ruoyi.system.mapper; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.common.core.page.BaseMapperPlus; import com.ruoyi.system.domain.SysRoleMenu; /** @@ -8,6 +8,6 @@ import com.ruoyi.system.domain.SysRoleMenu; * * @author ruoyi */ -public interface SysRoleMenuMapper extends BaseMapper { +public interface SysRoleMenuMapper extends BaseMapperPlus { } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java index 8fe5b74c..a3fcfdbe 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java @@ -1,8 +1,8 @@ package com.ruoyi.system.mapper; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.common.core.domain.entity.SysUser; +import com.ruoyi.common.core.page.BaseMapperPlus; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -12,7 +12,7 @@ import java.util.List; * * @author ruoyi */ -public interface SysUserMapper extends BaseMapper { +public interface SysUserMapper extends BaseMapperPlus { Page selectPageUserList(@Param("page") Page page, @Param("user") SysUser user); diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserPostMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserPostMapper.java index b56beaaa..c17dfd5f 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserPostMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserPostMapper.java @@ -1,6 +1,6 @@ package com.ruoyi.system.mapper; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.common.core.page.BaseMapperPlus; import com.ruoyi.system.domain.SysUserPost; /** @@ -8,6 +8,6 @@ import com.ruoyi.system.domain.SysUserPost; * * @author ruoyi */ -public interface SysUserPostMapper extends BaseMapper { +public interface SysUserPostMapper extends BaseMapperPlus { } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserRoleMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserRoleMapper.java index 4bd3bca8..ddebd389 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserRoleMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserRoleMapper.java @@ -1,6 +1,6 @@ package com.ruoyi.system.mapper; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.common.core.page.BaseMapperPlus; import com.ruoyi.system.domain.SysUserRole; /** @@ -8,6 +8,6 @@ import com.ruoyi.system.domain.SysUserRole; * * @author ruoyi */ -public interface SysUserRoleMapper extends BaseMapper { +public interface SysUserRoleMapper extends BaseMapperPlus { } diff --git a/ruoyi-ui/src/views/index.vue b/ruoyi-ui/src/views/index.vue index 520e0680..24bc8b24 100644 --- a/ruoyi-ui/src/views/index.vue +++ b/ruoyi-ui/src/views/index.vue @@ -4,7 +4,20 @@

RuoYi-Vue-Plus后台管理框架

- 基于RuoYi-Vue集成 Lombok+Mybatis-Plus+Undertow+knife4j+Hutool+Feign 重写所有原生业务 定期与RuoYi-Vue同步 + 基于 RuoYi-Vue 集成 Mybatis-Plus Lombok Hutool 等便捷开发工具 适配重写相关业务 便于开发 定期与 RuoYi-Vue 同步 + * 前端开发框架 Vue、Element UI + * 后端开发框架 Spring Boot、Redis + * 容器框架 Undertow 基于 Netty 的高性能容器 + * 权限认证框架 Spring Security、Jwt,支持多终端认证系统 + * 关系数据库 MySQL 适配 8.X + * 缓存数据库 Redis 适配 6.X + * 数据库开发框架 Mybatis-Plus 快速 CRUD 增加开发效率 插件化支持各类需求 + * 网络框架 Feign、OkHttp3 接口化管理 HTTP 请求 + * 工具类框架 Hutool、Lombok 减少代码冗余 增加安全性 + * 监控框架 spring-boot-admin 全方位服务监控 + * 校验框架 validation 增强接口安全性 严谨性 + * 文档框架 knife4j 美化接口文档 + * 代码生成器可以一键生成前后端代码

当前版本: v{{ version }} @@ -66,6 +79,23 @@ 更新日志 + +

    +
  1. update 更新整合打包文档 重新排版
  2. +
  3. fix vue与boot整合打包与admin页面路由冲突
  4. +
+ + +
    +
  1. update 更新banner
  2. +
  3. update 配置转移到 yml 文件 统一管理
  4. +
  5. update 上传媒体类型添加视频格式
  6. +
  7. update 树级结构更新子节点使用replaceFirst
  8. +
  9. update 删除操作日志记录日志
  10. +
  11. fix 修正导入表权限标识
  12. +
  13. fix 文件上传时报错
  14. +
+
  1. RuoYi-Vue-Plus 后台管理系统正式发布
  2. @@ -96,7 +126,7 @@ export default { data() { return { // 版本号 - version: "1.0.0", + version: "1.0.2", }; }, methods: { From d2c745d3fdce8a45c8403bbf0301d58fe05b3b35 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90li?= <15040126243@163.com> Date: Fri, 14 May 2021 15:12:40 +0800 Subject: [PATCH 12/15] =?UTF-8?q?add=20=E4=BB=A3=E7=A0=81=E7=94=9F?= =?UTF-8?q?=E6=88=90=E5=99=A8=20=E5=A2=9E=E5=8A=A0=E6=A0=A1=E9=AA=8C?= =?UTF-8?q?=E6=B3=A8=E8=A7=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 7 +++-- .../src/main/resources/vm/java/addBo.java.vm | 6 +++++ .../main/resources/vm/java/controller.java.vm | 27 +++++++++---------- .../src/main/resources/vm/java/editBo.java.vm | 6 +++++ .../main/resources/vm/java/queryBo.java.vm | 9 +++++-- ruoyi-ui/src/views/index.vue | 27 ++++++++++--------- 6 files changed, 50 insertions(+), 32 deletions(-) diff --git a/README.md b/README.md index 66151c3e..277f48de 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ * 监控框架 spring-boot-admin 全方位服务监控 * 校验框架 validation 增强接口安全性 严谨性 * 文档框架 knife4j 美化接口文档 -* 代码生成器可以一键生成前后端代码 +* 代码生成器 一键生成前后端代码 ## 修改RuoYi功能 @@ -32,17 +32,20 @@ ### 代码改动 * 所有原生功能使用 Mybatis-Plus 与 Lombok 重写 +* 增加 IServicePlus 与 BaseMapperPlus 可自定义通用方法 * 代码生成模板 改为适配 Mybatis-Plus 的代码 * 代码生成模板 拆分出 Vo,QueryBo,AddBo,EditBo 等领域对象 -* 增加 IServicePlus 与 BaseMapperPlus 可自定义通用方法 +* 代码生成模板 增加 文档注解 与 校验注解 简化通用操作 * 项目修改为 maven多环境配置 * 项目配置修改为 application.yml 统一管理 ### 其他 + * 同步升级 RuoYi-Vue 3.4.0 * 单模块 fast 分支 [RuoYi-Vue-Plus-fast](https://gitee.com/JavaLionLi/RuoYi-Vue-Plus/tree/fast/) ## 关注作者(扫码请备注: "加群") + ![](https://images.gitee.com/uploads/images/2021/0508/235345_5503356a_1766278.jpeg) ## 重点注意事项 diff --git a/ruoyi-generator/src/main/resources/vm/java/addBo.java.vm b/ruoyi-generator/src/main/resources/vm/java/addBo.java.vm index ad5e2e77..41fa0e95 100644 --- a/ruoyi-generator/src/main/resources/vm/java/addBo.java.vm +++ b/ruoyi-generator/src/main/resources/vm/java/addBo.java.vm @@ -5,6 +5,7 @@ import io.swagger.annotations.ApiModelProperty; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import java.util.Date; +import javax.validation.constraints.*; #foreach ($import in $importList) @@ -27,6 +28,11 @@ public class ${ClassName}AddBo { @ApiModelProperty("$column.columnComment") #if($column.javaType == 'Date') @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") +#end +#if($column.javaType == 'String') + @NotBlank(message = "$column.columnComment不能为空") +#else + @NotNull(message = "$column.columnComment不能为空") #end private $column.javaType $column.javaField; #end diff --git a/ruoyi-generator/src/main/resources/vm/java/controller.java.vm b/ruoyi-generator/src/main/resources/vm/java/controller.java.vm index 1600dbd7..b40b497a 100644 --- a/ruoyi-generator/src/main/resources/vm/java/controller.java.vm +++ b/ruoyi-generator/src/main/resources/vm/java/controller.java.vm @@ -4,16 +4,11 @@ import java.util.List; import java.util.Arrays; import lombok.RequiredArgsConstructor; +import javax.validation.constraints.*; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; @@ -52,11 +47,11 @@ public class ${ClassName}Controller extends BaseController { @PreAuthorize("@ss.hasPermi('${permissionPrefix}:list')") @GetMapping("/list") #if($table.crud || $table.sub) - public TableDataInfo<${ClassName}Vo> list(${ClassName}QueryBo bo) { + public TableDataInfo<${ClassName}Vo> list(@Validated ${ClassName}QueryBo bo) { return i${ClassName}Service.queryPageList(bo); } #elseif($table.tree) - public AjaxResult> list(${ClassName}QueryBo bo) { + public AjaxResult> list(@Validated ${ClassName}QueryBo bo) { List<${ClassName}Vo> list = i${ClassName}Service.queryList(bo); return AjaxResult.success(list); } @@ -69,7 +64,7 @@ public class ${ClassName}Controller extends BaseController { @PreAuthorize("@ss.hasPermi('${permissionPrefix}:export')") @Log(title = "${functionName}", businessType = BusinessType.EXPORT) @GetMapping("/export") - public AjaxResult<${ClassName}Vo> export(${ClassName}QueryBo bo) { + public AjaxResult<${ClassName}Vo> export(@Validated ${ClassName}QueryBo bo) { List<${ClassName}Vo> list = i${ClassName}Service.queryList(bo); ExcelUtil<${ClassName}Vo> util = new ExcelUtil<${ClassName}Vo>(${ClassName}Vo.class); return util.exportExcel(list, "${functionName}"); @@ -81,7 +76,8 @@ public class ${ClassName}Controller extends BaseController { @ApiOperation("获取${functionName}详细信息") @PreAuthorize("@ss.hasPermi('${permissionPrefix}:query')") @GetMapping("/{${pkColumn.javaField}}") - public AjaxResult<${ClassName}Vo> getInfo(@PathVariable("${pkColumn.javaField}" ) ${pkColumn.javaType} ${pkColumn.javaField}) { + public AjaxResult<${ClassName}Vo> getInfo(@NotNull(message = "主键不能为空") + @PathVariable("${pkColumn.javaField}") ${pkColumn.javaType} ${pkColumn.javaField}) { return AjaxResult.success(i${ClassName}Service.queryById(${pkColumn.javaField})); } @@ -92,7 +88,7 @@ public class ${ClassName}Controller extends BaseController { @PreAuthorize("@ss.hasPermi('${permissionPrefix}:add')") @Log(title = "${functionName}", businessType = BusinessType.INSERT) @PostMapping() - public AjaxResult add(@RequestBody ${ClassName}AddBo bo) { + public AjaxResult add(@Validated @RequestBody ${ClassName}AddBo bo) { return toAjax(i${ClassName}Service.insertByAddBo(bo) ? 1 : 0); } @@ -103,7 +99,7 @@ public class ${ClassName}Controller extends BaseController { @PreAuthorize("@ss.hasPermi('${permissionPrefix}:edit')") @Log(title = "${functionName}", businessType = BusinessType.UPDATE) @PutMapping() - public AjaxResult edit(@RequestBody ${ClassName}EditBo bo) { + public AjaxResult edit(@Validated @RequestBody ${ClassName}EditBo bo) { return toAjax(i${ClassName}Service.updateByEditBo(bo) ? 1 : 0); } @@ -114,7 +110,8 @@ public class ${ClassName}Controller extends BaseController { @PreAuthorize("@ss.hasPermi('${permissionPrefix}:remove')") @Log(title = "${functionName}" , businessType = BusinessType.DELETE) @DeleteMapping("/{${pkColumn.javaField}s}") - public AjaxResult remove(@PathVariable ${pkColumn.javaType}[] ${pkColumn.javaField}s) { + public AjaxResult remove(@NotEmpty(message = "主键不能为空") + @PathVariable ${pkColumn.javaType}[] ${pkColumn.javaField}s) { return toAjax(i${ClassName}Service.deleteWithValidByIds(Arrays.asList(${pkColumn.javaField}s), true) ? 1 : 0); } } diff --git a/ruoyi-generator/src/main/resources/vm/java/editBo.java.vm b/ruoyi-generator/src/main/resources/vm/java/editBo.java.vm index 8fa0c25e..3f3d9885 100644 --- a/ruoyi-generator/src/main/resources/vm/java/editBo.java.vm +++ b/ruoyi-generator/src/main/resources/vm/java/editBo.java.vm @@ -5,6 +5,7 @@ import io.swagger.annotations.ApiModelProperty; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import java.util.Date; +import javax.validation.constraints.*; #foreach ($import in $importList) import ${import}; @@ -27,6 +28,11 @@ public class ${ClassName}EditBo { @ApiModelProperty("$column.columnComment") #if($column.javaType == 'Date') @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") +#end +#if($column.javaType == 'String') + @NotBlank(message = "$column.columnComment不能为空") +#else + @NotNull(message = "$column.columnComment不能为空") #end private $column.javaType $column.javaField; #end diff --git a/ruoyi-generator/src/main/resources/vm/java/queryBo.java.vm b/ruoyi-generator/src/main/resources/vm/java/queryBo.java.vm index b641ac3b..89550fef 100644 --- a/ruoyi-generator/src/main/resources/vm/java/queryBo.java.vm +++ b/ruoyi-generator/src/main/resources/vm/java/queryBo.java.vm @@ -6,8 +6,7 @@ import lombok.Data; import lombok.EqualsAndHashCode; import java.util.Date; -import java.util.Map; -import java.util.HashMap; +import javax.validation.constraints.*; #foreach ($import in $importList) import ${import}; @@ -29,6 +28,7 @@ import com.ruoyi.common.core.domain.TreeEntity; #elseif($table.tree) #set($Entity="TreeEntity") #end + @Data @EqualsAndHashCode(callSuper = true) @ApiModel("${functionName}分页查询对象") @@ -55,6 +55,11 @@ public class ${ClassName}QueryBo extends ${Entity} { @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") #end @ApiModelProperty("$column.columnComment") +#if($column.javaType == 'String') + @NotBlank(message = "$column.columnComment不能为空") +#else + @NotNull(message = "$column.columnComment不能为空") +#end private $column.javaType $column.javaField; #end #end diff --git a/ruoyi-ui/src/views/index.vue b/ruoyi-ui/src/views/index.vue index 24bc8b24..5582f021 100644 --- a/ruoyi-ui/src/views/index.vue +++ b/ruoyi-ui/src/views/index.vue @@ -5,19 +5,20 @@

    RuoYi-Vue-Plus后台管理框架

    基于 RuoYi-Vue 集成 Mybatis-Plus Lombok Hutool 等便捷开发工具 适配重写相关业务 便于开发 定期与 RuoYi-Vue 同步 - * 前端开发框架 Vue、Element UI - * 后端开发框架 Spring Boot、Redis - * 容器框架 Undertow 基于 Netty 的高性能容器 - * 权限认证框架 Spring Security、Jwt,支持多终端认证系统 - * 关系数据库 MySQL 适配 8.X - * 缓存数据库 Redis 适配 6.X - * 数据库开发框架 Mybatis-Plus 快速 CRUD 增加开发效率 插件化支持各类需求 - * 网络框架 Feign、OkHttp3 接口化管理 HTTP 请求 - * 工具类框架 Hutool、Lombok 减少代码冗余 增加安全性 - * 监控框架 spring-boot-admin 全方位服务监控 - * 校验框架 validation 增强接口安全性 严谨性 - * 文档框架 knife4j 美化接口文档 - * 代码生成器可以一键生成前后端代码 +
    + * 前端开发框架 Vue、Element UI
    + * 后端开发框架 Spring Boot、Redis
    + * 容器框架 Undertow 基于 Netty 的高性能容器
    + * 权限认证框架 Spring Security、Jwt,支持多终端认证系统
    + * 关系数据库 MySQL 适配 8.X
    + * 缓存数据库 Redis 适配 6.X
    + * 数据库开发框架 Mybatis-Plus 快速 CRUD 增加开发效率 插件化支持各类需求
    + * 网络框架 Feign、OkHttp3 接口化管理 HTTP 请求
    + * 工具类框架 Hutool、Lombok 减少代码冗余 增加安全性
    + * 监控框架 spring-boot-admin 全方位服务监控
    + * 校验框架 validation 增强接口安全性 严谨性
    + * 文档框架 knife4j 美化接口文档
    + * 代码生成器 一键生成前后端代码

    当前版本: v{{ version }} From dab99405c59a04b15e4401415c80a1981c2f22b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90li?= <15040126243@163.com> Date: Fri, 14 May 2021 16:58:09 +0800 Subject: [PATCH 13/15] =?UTF-8?q?update=20springboot=20=E5=8D=87=E7=BA=A7?= =?UTF-8?q?=202.3.10=20=E4=BE=9D=E8=B5=96=E5=85=A8=E9=9D=A2=E5=8D=87?= =?UTF-8?q?=E7=BA=A7=E9=80=82=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 3 +- .../src/main/resources/application-dev.yml | 152 +++++++++--------- .../src/main/resources/application-prod.yml | 152 +++++++++--------- .../src/main/resources/application.yml | 140 +++++++++------- ruoyi-framework/pom.xml | 6 + .../main/resources/vm/java/queryBo.java.vm | 6 - ruoyi-quartz/pom.xml | 4 +- .../ruoyi/quartz/config/ScheduleConfig.java | 50 +----- 8 files changed, 250 insertions(+), 263 deletions(-) diff --git a/pom.xml b/pom.xml index e5d7eb37..c67e0669 100644 --- a/pom.xml +++ b/pom.xml @@ -14,6 +14,7 @@ 1.0.2 + 2.3.10.RELEASE UTF-8 UTF-8 1.8 @@ -41,7 +42,7 @@ org.springframework.boot spring-boot-dependencies - 2.2.13.RELEASE + ${spring-boot.version} pom import diff --git a/ruoyi-admin/src/main/resources/application-dev.yml b/ruoyi-admin/src/main/resources/application-dev.yml index 65f88053..e16a18d9 100644 --- a/ruoyi-admin/src/main/resources/application-dev.yml +++ b/ruoyi-admin/src/main/resources/application-dev.yml @@ -1,79 +1,79 @@ # 数据源配置 spring: - datasource: - type: com.alibaba.druid.pool.DruidDataSource - driverClassName: com.mysql.cj.jdbc.Driver - druid: - # 主库数据源 - master: - url: jdbc:mysql://192.168.0.222:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true - username: root - password: root - # 从库数据源 - slave: - # 从数据源开关/默认关闭 - enabled: false - url: - username: - password: - # 初始连接数 - initialSize: 5 - # 最小连接池数量 - minIdle: 10 - # 最大连接池数量 - maxActive: 20 - # 配置获取连接等待超时的时间 - maxWait: 60000 - # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 - timeBetweenEvictionRunsMillis: 60000 - # 配置一个连接在池中最小生存的时间,单位是毫秒 - minEvictableIdleTimeMillis: 300000 - # 配置一个连接在池中最大生存的时间,单位是毫秒 - maxEvictableIdleTimeMillis: 900000 - # 配置检测连接是否有效 - validationQuery: SELECT 1 FROM DUAL - testWhileIdle: true - testOnBorrow: false - testOnReturn: false - webStatFilter: - enabled: true - statViewServlet: - enabled: true - # 设置白名单,不填则允许所有访问 - allow: - url-pattern: /druid/* - # 控制台管理用户名和密码 - login-username: ruoyi - login-password: 123456 - filter: - stat: - enabled: true - # 慢SQL记录 - log-slow-sql: true - slow-sql-millis: 1000 - merge-sql: true - wall: - config: - multi-statement-allow: true - # redis 配置 - redis: - # 地址 - host: 192.168.0.222 - # 端口,默认为6379 - port: 6379 - # 数据库索引 - database: 0 - # 密码 + datasource: + type: com.alibaba.druid.pool.DruidDataSource + driverClassName: com.mysql.cj.jdbc.Driver + druid: + # 主库数据源 + master: + url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true + username: root + password: root + # 从库数据源 + slave: + # 从数据源开关/默认关闭 + enabled: false + url: + username: password: - # 连接超时时间 - timeout: 10s - lettuce: - pool: - # 连接池中的最小空闲连接 - min-idle: 0 - # 连接池中的最大空闲连接 - max-idle: 8 - # 连接池的最大数据库连接数 - max-active: 8 - # #连接池最大阻塞等待时间(使用负值表示没有限制) - max-wait: -1ms \ No newline at end of file + # 初始连接数 + initialSize: 5 + # 最小连接池数量 + minIdle: 10 + # 最大连接池数量 + maxActive: 20 + # 配置获取连接等待超时的时间 + maxWait: 60000 + # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 + timeBetweenEvictionRunsMillis: 60000 + # 配置一个连接在池中最小生存的时间,单位是毫秒 + minEvictableIdleTimeMillis: 300000 + # 配置一个连接在池中最大生存的时间,单位是毫秒 + maxEvictableIdleTimeMillis: 900000 + # 配置检测连接是否有效 + validationQuery: SELECT 1 FROM DUAL + testWhileIdle: true + testOnBorrow: false + testOnReturn: false + webStatFilter: + enabled: true + statViewServlet: + enabled: true + # 设置白名单,不填则允许所有访问 + allow: + url-pattern: /druid/* + # 控制台管理用户名和密码 + login-username: ruoyi + login-password: 123456 + filter: + stat: + enabled: true + # 慢SQL记录 + log-slow-sql: true + slow-sql-millis: 1000 + merge-sql: true + wall: + config: + multi-statement-allow: true + # redis 配置 + redis: + # 地址 + host: localhost + # 端口,默认为6379 + port: 6379 + # 数据库索引 + database: 0 + # 密码 + password: + # 连接超时时间 + timeout: 10s + lettuce: + pool: + # 连接池中的最小空闲连接 + min-idle: 0 + # 连接池中的最大空闲连接 + max-idle: 8 + # 连接池的最大数据库连接数 + max-active: 8 + # #连接池最大阻塞等待时间(使用负值表示没有限制) + max-wait: -1ms \ No newline at end of file diff --git a/ruoyi-admin/src/main/resources/application-prod.yml b/ruoyi-admin/src/main/resources/application-prod.yml index 8f81bbd4..fbd01b33 100644 --- a/ruoyi-admin/src/main/resources/application-prod.yml +++ b/ruoyi-admin/src/main/resources/application-prod.yml @@ -1,79 +1,79 @@ # 数据源配置 spring: - datasource: - type: com.alibaba.druid.pool.DruidDataSource - driverClassName: com.mysql.cj.jdbc.Driver - druid: - # 主库数据源 - master: - url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true - username: root - password: root - # 从库数据源 - slave: - # 从数据源开关/默认关闭 - enabled: false - url: - username: - password: - # 初始连接数 - initialSize: 5 - # 最小连接池数量 - minIdle: 10 - # 最大连接池数量 - maxActive: 20 - # 配置获取连接等待超时的时间 - maxWait: 60000 - # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 - timeBetweenEvictionRunsMillis: 60000 - # 配置一个连接在池中最小生存的时间,单位是毫秒 - minEvictableIdleTimeMillis: 300000 - # 配置一个连接在池中最大生存的时间,单位是毫秒 - maxEvictableIdleTimeMillis: 900000 - # 配置检测连接是否有效 - validationQuery: SELECT 1 FROM DUAL - testWhileIdle: true - testOnBorrow: false - testOnReturn: false - webStatFilter: - enabled: true - statViewServlet: - enabled: true - # 设置白名单,不填则允许所有访问 - allow: - url-pattern: /druid/* - # 控制台管理用户名和密码 - login-username: ruoyi - login-password: 123456 - filter: - stat: - enabled: true - # 慢SQL记录 - log-slow-sql: true - slow-sql-millis: 1000 - merge-sql: true - wall: - config: - multi-statement-allow: true - # redis 配置 - redis: - # 地址 - host: 192.168.0.222 - # 端口,默认为6379 - port: 6379 - # 数据库索引 - database: 0 - # 密码 + datasource: + type: com.alibaba.druid.pool.DruidDataSource + driverClassName: com.mysql.cj.jdbc.Driver + druid: + # 主库数据源 + master: + url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true + username: root + password: root + # 从库数据源 + slave: + # 从数据源开关/默认关闭 + enabled: false + url: + username: password: - # 连接超时时间 - timeout: 10s - lettuce: - pool: - # 连接池中的最小空闲连接 - min-idle: 0 - # 连接池中的最大空闲连接 - max-idle: 8 - # 连接池的最大数据库连接数 - max-active: 8 - # #连接池最大阻塞等待时间(使用负值表示没有限制) - max-wait: -1ms \ No newline at end of file + # 初始连接数 + initialSize: 5 + # 最小连接池数量 + minIdle: 10 + # 最大连接池数量 + maxActive: 20 + # 配置获取连接等待超时的时间 + maxWait: 60000 + # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 + timeBetweenEvictionRunsMillis: 60000 + # 配置一个连接在池中最小生存的时间,单位是毫秒 + minEvictableIdleTimeMillis: 300000 + # 配置一个连接在池中最大生存的时间,单位是毫秒 + maxEvictableIdleTimeMillis: 900000 + # 配置检测连接是否有效 + validationQuery: SELECT 1 FROM DUAL + testWhileIdle: true + testOnBorrow: false + testOnReturn: false + webStatFilter: + enabled: true + statViewServlet: + enabled: true + # 设置白名单,不填则允许所有访问 + allow: + url-pattern: /druid/* + # 控制台管理用户名和密码 + login-username: ruoyi + login-password: 123456 + filter: + stat: + enabled: true + # 慢SQL记录 + log-slow-sql: true + slow-sql-millis: 1000 + merge-sql: true + wall: + config: + multi-statement-allow: true + # redis 配置 + redis: + # 地址 + host: 192.168.0.222 + # 端口,默认为6379 + port: 6379 + # 数据库索引 + database: 0 + # 密码 + password: + # 连接超时时间 + timeout: 10s + lettuce: + pool: + # 连接池中的最小空闲连接 + min-idle: 0 + # 连接池中的最大空闲连接 + max-idle: 8 + # 连接池的最大数据库连接数 + max-active: 8 + # #连接池最大阻塞等待时间(使用负值表示没有限制) + max-wait: -1ms \ No newline at end of file diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index 6ab30306..a142ec6c 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -26,7 +26,7 @@ captcha: # 开发环境配置 server: # 服务器的HTTP端口,默认为8080 - port: 8080 + port: 8081 servlet: # 应用的访问路径 context-path: / @@ -37,12 +37,13 @@ server: # 以下的配置会影响buffer,这些buffer会用于服务器连接的IO操作,有点类似netty的池化内存管理 # 每块buffer的空间大小,越小的空间被利用越充分 buffer-size: 512 - # 设置IO线程数, 它主要执行非阻塞的任务,它们会负责多个连接, 默认设置每个CPU核心一个线程 - io-threads: 8 - # 阻塞任务线程池, 当执行类似servlet请求阻塞操作, undertow会从这个线程池中取得线程,它的值设置取决于系统的负载 - worker-threads: 256 # 是否分配的直接内存 direct-buffers: true + threads: + # 设置IO线程数, 它主要执行非阻塞的任务,它们会负责多个连接, 默认设置每个CPU核心一个线程 + io: 8 + # 阻塞任务线程池, 当执行类似servlet请求阻塞操作, undertow会从这个线程池中取得线程,它的值设置取决于系统的负载 + worker: 256 # # tomcat 配置 # tomcat: # # tomcat的URI编码 @@ -65,15 +66,15 @@ spring: messages: # 国际化资源文件路径 basename: i18n/messages - profiles: + profiles: active: @profiles.active@ # 文件上传 servlet: - multipart: - # 单个文件大小 - max-file-size: 10MB - # 设置总上传的文件大小 - max-request-size: 20MB + multipart: + # 单个文件大小 + max-file-size: 10MB + # 设置总上传的文件大小 + max-request-size: 20MB # 服务模块 devtools: restart: @@ -83,44 +84,17 @@ spring: thymeleaf: # 将系统模板放置到最前面 否则会与 springboot-admin 页面冲突 template-resolver-order: 1 - application: - name: ruoyi-vue-plus - boot: - admin: - # Spring Boot Admin Client 客户端的相关配置 - client: - # 设置 Spring Boot Admin Server 地址 - url: http://localhost:${server.port}${spring.boot.admin.context-path} - instance: - prefer-ip: true # 注册实例时,优先使用 IP -# username: ruoyi -# password: 123456 - # Spring Boot Admin Server 服务端的相关配置 - context-path: /admin # 配置 Spring - -# Actuator 监控端点的配置项 -management: - endpoints: - web: - # Actuator 提供的 API 接口的根目录。默认为 /actuator - base-path: /actuator - exposure: - # 需要开放的端点。默认值只打开 health 和 info 两个端点。通过设置 * ,可以开放所有端点。 - include: '*' - endpoint: - logfile: - external-file: ./logs/sys-console.log # token配置 token: - # 令牌自定义标识 - header: Authorization - # 令牌密钥 - secret: abcdefghijklmnopqrstuvwxyz - # 令牌有效期(默认30分钟) - expireTime: 30 - -# MyBatis配置 + # 令牌自定义标识 + header: Authorization + # 令牌密钥 + secret: abcdefghijklmnopqrstuvwxyz + # 令牌有效期(默认30分钟) + expireTime: 30 + +# MyBatisPlus配置 # https://baomidou.com/config/ mybatis-plus: mapperPackage: com.ruoyi.**.mapper @@ -209,13 +183,6 @@ mybatis-plus: # 字段验证策略之 select,在 select 的时候的字段验证策略既 wrapper 根据内部 entity 生成的 where 条件 selectStrategy: NOT_EMPTY -# PageHelper分页插件 -pagehelper: - helperDialect: mysql - reasonable: true - supportMethodsArguments: true - params: count=countSql - # Swagger配置 swagger: # 是否开启swagger @@ -230,7 +197,7 @@ swagger: version: '版本号: ${ruoyi-vue-plus.version}' # 防止XSS攻击 -xss: +xss: # 过滤开关 enabled: true # 排除链接(多个用逗号分隔) @@ -238,6 +205,7 @@ xss: # 匹配链接 urlPatterns: /system/*,/monitor/*,/tool/* +# 全局线程池相关配置 threadPoolConfig: # 是否开启线程池 enabled: false @@ -256,6 +224,7 @@ threadPoolConfig: # AbortPolicy 中止 rejectedExecutionHandler: CallerRunsPolicy +# feign 相关配置 feign: package: com.ruoyi.**.feign # 开启压缩 @@ -267,4 +236,65 @@ feign: okhttp: enabled: true hystrix: - enabled: true \ No newline at end of file + enabled: true + +--- # 定时任务配置 +spring: + quartz: + scheduler-name: RuoyiScheduler + startup-delay: 1s + overwrite-existing-jobs: true + auto-startup: true + job-store-type: jdbc + properties: + org: + quartz: + # Scheduler 相关配置 + scheduler: + instanceName: RuoyiScheduler + instanceId: AUTO + # 线程池相关配置 + threadPool: + class: org.quartz.simpl.SimpleThreadPool + threadCount: 20 + threadPriority: 5 + # JobStore 集群配置 + jobStore: + class: org.quartz.impl.jdbcjobstore.JobStoreTX + isClustered: true + clusterCheckinInterval: 15000 + txIsolationLevelSerializable: true + misfireThreshold: 60000 + tablePrefix: QRTZ_ + # sqlserver 启用 + # selectWithLockSQL: SELECT * FROM {0}LOCKS UPDLOCK WHERE LOCK_NAME = ? + +--- # 监控配置 +spring: + application: + name: ruoyi-vue-plus + boot: + admin: + # Spring Boot Admin Client 客户端的相关配置 + client: + # 设置 Spring Boot Admin Server 地址 + url: http://localhost:${server.port}${spring.boot.admin.context-path} + instance: + prefer-ip: true # 注册实例时,优先使用 IP + # username: ruoyi + # password: 123456 + # Spring Boot Admin Server 服务端的相关配置 + context-path: /admin # 配置 Spring + +# Actuator 监控端点的配置项 +management: + endpoints: + web: + # Actuator 提供的 API 接口的根目录。默认为 /actuator + base-path: /actuator + exposure: + # 需要开放的端点。默认值只打开 health 和 info 两个端点。通过设置 * ,可以开放所有端点。 + include: '*' + endpoint: + logfile: + external-file: ./logs/sys-console.log \ No newline at end of file diff --git a/ruoyi-framework/pom.xml b/ruoyi-framework/pom.xml index a138044a..e51b27f6 100644 --- a/ruoyi-framework/pom.xml +++ b/ruoyi-framework/pom.xml @@ -49,6 +49,12 @@ spring-boot-starter-aop + + + org.springframework.boot + spring-boot-starter-validation + + com.alibaba diff --git a/ruoyi-generator/src/main/resources/vm/java/queryBo.java.vm b/ruoyi-generator/src/main/resources/vm/java/queryBo.java.vm index 89550fef..c7be0899 100644 --- a/ruoyi-generator/src/main/resources/vm/java/queryBo.java.vm +++ b/ruoyi-generator/src/main/resources/vm/java/queryBo.java.vm @@ -6,7 +6,6 @@ import lombok.Data; import lombok.EqualsAndHashCode; import java.util.Date; -import javax.validation.constraints.*; #foreach ($import in $importList) import ${import}; @@ -55,11 +54,6 @@ public class ${ClassName}QueryBo extends ${Entity} { @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") #end @ApiModelProperty("$column.columnComment") -#if($column.javaType == 'String') - @NotBlank(message = "$column.columnComment不能为空") -#else - @NotNull(message = "$column.columnComment不能为空") -#end private $column.javaType $column.javaField; #end #end diff --git a/ruoyi-quartz/pom.xml b/ruoyi-quartz/pom.xml index f29cea7d..0a23e04c 100644 --- a/ruoyi-quartz/pom.xml +++ b/ruoyi-quartz/pom.xml @@ -19,8 +19,8 @@ - org.quartz-scheduler - quartz + org.springframework.boot + spring-boot-starter-quartz com.mchange diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/config/ScheduleConfig.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/config/ScheduleConfig.java index e466ed05..c6b83846 100644 --- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/config/ScheduleConfig.java +++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/config/ScheduleConfig.java @@ -1,57 +1,13 @@ package com.ruoyi.quartz.config; -import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.scheduling.quartz.SchedulerFactoryBean; -import javax.sql.DataSource; -import java.util.Properties; /** * 定时任务配置 - * - * @author ruoyi + * + * @author Lion Li */ @Configuration -public class ScheduleConfig -{ - @Bean - public SchedulerFactoryBean schedulerFactoryBean(DataSource dataSource) - { - SchedulerFactoryBean factory = new SchedulerFactoryBean(); - factory.setDataSource(dataSource); +public class ScheduleConfig { - // quartz参数 - Properties prop = new Properties(); - prop.put("org.quartz.scheduler.instanceName", "RuoyiScheduler"); - prop.put("org.quartz.scheduler.instanceId", "AUTO"); - // 线程池配置 - prop.put("org.quartz.threadPool.class", "org.quartz.simpl.SimpleThreadPool"); - prop.put("org.quartz.threadPool.threadCount", "20"); - prop.put("org.quartz.threadPool.threadPriority", "5"); - // JobStore配置 - prop.put("org.quartz.jobStore.class", "org.quartz.impl.jdbcjobstore.JobStoreTX"); - // 集群配置 - prop.put("org.quartz.jobStore.isClustered", "true"); - prop.put("org.quartz.jobStore.clusterCheckinInterval", "15000"); - prop.put("org.quartz.jobStore.maxMisfiresToHandleAtATime", "1"); - prop.put("org.quartz.jobStore.txIsolationLevelSerializable", "true"); - - // sqlserver 启用 - // prop.put("org.quartz.jobStore.selectWithLockSQL", "SELECT * FROM {0}LOCKS UPDLOCK WHERE LOCK_NAME = ?"); - prop.put("org.quartz.jobStore.misfireThreshold", "12000"); - prop.put("org.quartz.jobStore.tablePrefix", "QRTZ_"); - factory.setQuartzProperties(prop); - - factory.setSchedulerName("RuoyiScheduler"); - // 延时启动 - factory.setStartupDelay(1); - factory.setApplicationContextSchedulerContextKey("applicationContextKey"); - // 可选,QuartzScheduler - // 启动时更新己存在的Job,这样就不用每次修改targetObject后删除qrtz_job_details表对应记录了 - factory.setOverwriteExistingJobs(true); - // 设置自动启动,默认为true - factory.setAutoStartup(true); - - return factory; - } } From 869e975ed1a4aeaa623b339f4d44511b6bbe8c12 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90li?= <15040126243@163.com> Date: Fri, 14 May 2021 17:03:19 +0800 Subject: [PATCH 14/15] =?UTF-8?q?update=20springboot=20=E5=8D=87=E7=BA=A7?= =?UTF-8?q?=202.3.10=20=E4=BE=9D=E8=B5=96=E5=85=A8=E9=9D=A2=E5=8D=87?= =?UTF-8?q?=E7=BA=A7=E9=80=82=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-admin/src/main/resources/application.yml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index a142ec6c..f665f832 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -1,3 +1,8 @@ +--- # 本地环境配置 +spring: + profiles: + active: local +--- # 项目相关配置 ruoyi: # 名称 @@ -26,7 +31,7 @@ captcha: # 开发环境配置 server: # 服务器的HTTP端口,默认为8080 - port: 8081 + port: 8080 servlet: # 应用的访问路径 context-path: / From e071b4315a75f25ed55adde076fb74157d5e7505 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90li?= <15040126243@163.com> Date: Fri, 14 May 2021 21:07:20 +0800 Subject: [PATCH 15/15] =?UTF-8?q?=E6=AD=A3=E5=BC=8F=E5=8F=91=E5=B8=83=20v2?= =?UTF-8?q?.0.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- ruoyi-admin/src/main/resources/application.yml | 5 ----- ruoyi-ui/package.json | 2 +- ruoyi-ui/src/views/index.vue | 15 ++++++++++++++- 4 files changed, 16 insertions(+), 8 deletions(-) diff --git a/pom.xml b/pom.xml index c67e0669..3e1b8d6d 100644 --- a/pom.xml +++ b/pom.xml @@ -13,7 +13,7 @@ RuoYi-Vue-Plus后台管理系统 - 1.0.2 + 2.0.0 2.3.10.RELEASE UTF-8 UTF-8 diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index f665f832..4f6d8766 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -1,8 +1,3 @@ ---- # 本地环境配置 -spring: - profiles: - active: local ---- # 项目相关配置 ruoyi: # 名称 diff --git a/ruoyi-ui/package.json b/ruoyi-ui/package.json index c48cb3b5..313d7211 100644 --- a/ruoyi-ui/package.json +++ b/ruoyi-ui/package.json @@ -1,6 +1,6 @@ { "name": "ruoyi-vue-plus", - "version": "1.0.2", + "version": "2.0.0", "description": "RuoYi-Vue-Plus后台管理系统", "author": "LionLi", "license": "MIT", diff --git a/ruoyi-ui/src/views/index.vue b/ruoyi-ui/src/views/index.vue index 5582f021..84921bce 100644 --- a/ruoyi-ui/src/views/index.vue +++ b/ruoyi-ui/src/views/index.vue @@ -80,6 +80,19 @@ 更新日志 + +

      +
    1. springboot 升级 2.3.10 依赖全面升级适配
    2. +
    3. add 增加分页工具
    4. +
    5. add 增加 增强Mapper 与 增强Service 重写业务适配
    6. +
    7. add 代码生成器 增加校验注解
    8. +
    9. update 代码生成器修改为MP分页
    10. +
    11. update 使用 MP 分页工具 重构业务
    12. +
    13. update 重写文档介绍
    14. +
    15. remove 移除 pagehelper 分页工具
    16. +
    17. fix 修复代码生成 数据权限问题
    18. +
    +
    1. update 更新整合打包文档 重新排版
    2. @@ -127,7 +140,7 @@ export default { data() { return { // 版本号 - version: "1.0.2", + version: "2.0.0", }; }, methods: {