Commit c3df5bc62fb7f42e78deffedbb30ccb6518418dc
1 parent
d8a52a8c
1. 完成所有导出的功能
Showing
34 changed files
with
304 additions
and
308 deletions
ruoyi-ui/src/api/system/dict/data.js
| @@ -54,9 +54,10 @@ export function delData(dictCode) { | @@ -54,9 +54,10 @@ export function delData(dictCode) { | ||
| 54 | // 导出字典数据 | 54 | // 导出字典数据 |
| 55 | export function exportData(query) { | 55 | export function exportData(query) { |
| 56 | return request({ | 56 | return request({ |
| 57 | - url: '/system/dict/data/export', | 57 | + url: '/system/dict-data/export', |
| 58 | method: 'get', | 58 | method: 'get', |
| 59 | - params: query | 59 | + params: query, |
| 60 | + responseType: 'blob' | ||
| 60 | }) | 61 | }) |
| 61 | } | 62 | } |
| 62 | 63 |
ruoyi-ui/src/api/system/dict/type.js
| @@ -48,7 +48,8 @@ export function exportType(query) { | @@ -48,7 +48,8 @@ export function exportType(query) { | ||
| 48 | return request({ | 48 | return request({ |
| 49 | url: '/system/dict-type/export', | 49 | url: '/system/dict-type/export', |
| 50 | method: 'get', | 50 | method: 'get', |
| 51 | - params: query | 51 | + params: query, |
| 52 | + responseType: 'blob' | ||
| 52 | }) | 53 | }) |
| 53 | } | 54 | } |
| 54 | 55 |
ruoyi-ui/src/api/system/role.js
| @@ -69,6 +69,7 @@ export function exportRole(query) { | @@ -69,6 +69,7 @@ export function exportRole(query) { | ||
| 69 | return request({ | 69 | return request({ |
| 70 | url: '/system/role/export', | 70 | url: '/system/role/export', |
| 71 | method: 'get', | 71 | method: 'get', |
| 72 | - params: query | 72 | + params: query, |
| 73 | + responseType: 'blob' | ||
| 73 | }) | 74 | }) |
| 74 | } | 75 | } |
ruoyi-ui/src/views/system/dict/data.vue
| @@ -314,7 +314,7 @@ export default { | @@ -314,7 +314,7 @@ export default { | ||
| 314 | }).then(function() { | 314 | }).then(function() { |
| 315 | return exportData(queryParams); | 315 | return exportData(queryParams); |
| 316 | }).then(response => { | 316 | }).then(response => { |
| 317 | - this.download(response.msg); | 317 | + this.downloadExcel(response, '字典数据.xls'); |
| 318 | }) | 318 | }) |
| 319 | } | 319 | } |
| 320 | } | 320 | } |
ruoyi-ui/src/views/system/dict/index.vue
| @@ -304,7 +304,10 @@ export default { | @@ -304,7 +304,10 @@ export default { | ||
| 304 | }, | 304 | }, |
| 305 | /** 导出按钮操作 */ | 305 | /** 导出按钮操作 */ |
| 306 | handleExport() { | 306 | handleExport() { |
| 307 | - const queryParams = this.queryParams; | 307 | + const queryParams = this.addDateRange(this.queryParams, [ |
| 308 | + this.dateRange[0] ? this.dateRange[0] + ' 00:00:00' : undefined, | ||
| 309 | + this.dateRange[1] ? this.dateRange[1] + ' 23:59:59' : undefined, | ||
| 310 | + ]); | ||
| 308 | this.$confirm('是否确认导出所有类型数据项?', "警告", { | 311 | this.$confirm('是否确认导出所有类型数据项?', "警告", { |
| 309 | confirmButtonText: "确定", | 312 | confirmButtonText: "确定", |
| 310 | cancelButtonText: "取消", | 313 | cancelButtonText: "取消", |
| @@ -312,7 +315,7 @@ export default { | @@ -312,7 +315,7 @@ export default { | ||
| 312 | }).then(function() { | 315 | }).then(function() { |
| 313 | return exportType(queryParams); | 316 | return exportType(queryParams); |
| 314 | }).then(response => { | 317 | }).then(response => { |
| 315 | - this.download(response.msg); | 318 | + this.downloadExcel(response, '数据类型.xls'); |
| 316 | }) | 319 | }) |
| 317 | } | 320 | } |
| 318 | } | 321 | } |
ruoyi-ui/src/views/system/role/index.vue
| @@ -568,7 +568,7 @@ export default { | @@ -568,7 +568,7 @@ export default { | ||
| 568 | }).then(function() { | 568 | }).then(function() { |
| 569 | return exportRole(queryParams); | 569 | return exportRole(queryParams); |
| 570 | }).then(response => { | 570 | }).then(response => { |
| 571 | - this.download(response.msg); | 571 | + this.downloadExcel(response, '角色数据.xls'); |
| 572 | }) | 572 | }) |
| 573 | } | 573 | } |
| 574 | } | 574 | } |
src/main/java/cn/iocoder/dashboard/framework/excel/Excel.java deleted
| 1 | -package cn.iocoder.dashboard.framework.excel; | ||
| 2 | - | ||
| 3 | -import java.lang.annotation.ElementType; | ||
| 4 | -import java.lang.annotation.Retention; | ||
| 5 | -import java.lang.annotation.RetentionPolicy; | ||
| 6 | -import java.lang.annotation.Target; | ||
| 7 | -import java.math.BigDecimal; | ||
| 8 | - | ||
| 9 | -/** | ||
| 10 | - * 自定义导出Excel数据注解 | ||
| 11 | - * | ||
| 12 | - * @author ruoyi | ||
| 13 | - */ | ||
| 14 | -@Deprecated | ||
| 15 | -@Retention(RetentionPolicy.RUNTIME) | ||
| 16 | -@Target(ElementType.FIELD) | ||
| 17 | -public @interface Excel { | ||
| 18 | - | ||
| 19 | - /** | ||
| 20 | - * 导出时在excel中排序 | ||
| 21 | - */ | ||
| 22 | - int sort() default Integer.MAX_VALUE; | ||
| 23 | - | ||
| 24 | - /** | ||
| 25 | - * 导出到Excel中的名字. | ||
| 26 | - */ | ||
| 27 | - String name() default ""; | ||
| 28 | - | ||
| 29 | - /** | ||
| 30 | - * 日期格式, 如: yyyy-MM-dd | ||
| 31 | - */ | ||
| 32 | - String dateFormat() default ""; | ||
| 33 | - | ||
| 34 | - /** | ||
| 35 | - * 如果是字典类型,请设置字典的type值 (如: sys_user_sex) | ||
| 36 | - */ | ||
| 37 | - String dictType() default ""; | ||
| 38 | - | ||
| 39 | - /** | ||
| 40 | - * 读取内容转表达式 (如: 0=男,1=女,2=未知) | ||
| 41 | - */ | ||
| 42 | - public String readConverterExp() default ""; | ||
| 43 | - | ||
| 44 | - /** | ||
| 45 | - * 分隔符,读取字符串组内容 | ||
| 46 | - */ | ||
| 47 | - public String separator() default ","; | ||
| 48 | - | ||
| 49 | - /** | ||
| 50 | - * BigDecimal 精度 默认:-1(默认不开启BigDecimal格式化) | ||
| 51 | - */ | ||
| 52 | - public int scale() default -1; | ||
| 53 | - | ||
| 54 | - /** | ||
| 55 | - * BigDecimal 舍入规则 默认:BigDecimal.ROUND_HALF_EVEN | ||
| 56 | - */ | ||
| 57 | - public int roundingMode() default BigDecimal.ROUND_HALF_EVEN; | ||
| 58 | - | ||
| 59 | - /** | ||
| 60 | - * 导出类型(0数字 1字符串) | ||
| 61 | - */ | ||
| 62 | - public ColumnType cellType() default ColumnType.STRING; | ||
| 63 | - | ||
| 64 | - /** | ||
| 65 | - * 导出时在excel中每个列的高度 单位为字符 | ||
| 66 | - */ | ||
| 67 | - public double height() default 14; | ||
| 68 | - | ||
| 69 | - /** | ||
| 70 | - * 导出时在excel中每个列的宽 单位为字符 | ||
| 71 | - */ | ||
| 72 | - public double width() default 16; | ||
| 73 | - | ||
| 74 | - /** | ||
| 75 | - * 文字后缀,如% 90 变成90% | ||
| 76 | - */ | ||
| 77 | - String suffix() default ""; | ||
| 78 | - | ||
| 79 | - /** | ||
| 80 | - * 当值为空时,字段的默认值 | ||
| 81 | - */ | ||
| 82 | - String defaultValue() default ""; | ||
| 83 | - | ||
| 84 | - /** | ||
| 85 | - * 提示信息 | ||
| 86 | - */ | ||
| 87 | - String prompt() default ""; | ||
| 88 | - | ||
| 89 | - /** | ||
| 90 | - * 设置只能选择不能输入的列内容. | ||
| 91 | - */ | ||
| 92 | - String[] combo() default {}; | ||
| 93 | - | ||
| 94 | - /** | ||
| 95 | - * 是否导出数据,应对需求:有时我们需要导出一份模板,这是标题需要但内容需要用户手工填写. | ||
| 96 | - */ | ||
| 97 | - boolean isExport() default true; | ||
| 98 | - | ||
| 99 | - /** | ||
| 100 | - * 另一个类中的属性名称,支持多级获取,以小数点隔开 | ||
| 101 | - */ | ||
| 102 | - String targetAttr() default ""; | ||
| 103 | - | ||
| 104 | - /** | ||
| 105 | - * 是否自动统计数据,在最后追加一行统计数据总和 | ||
| 106 | - */ | ||
| 107 | - boolean isStatistics() default false; | ||
| 108 | - | ||
| 109 | - /** | ||
| 110 | - * 导出字段对齐方式(0:默认;1:靠左;2:居中;3:靠右) | ||
| 111 | - */ | ||
| 112 | - Align align() default Align.AUTO; | ||
| 113 | - | ||
| 114 | - enum Align { | ||
| 115 | - AUTO(0), LEFT(1), CENTER(2), RIGHT(3); | ||
| 116 | - private final int value; | ||
| 117 | - | ||
| 118 | - Align(int value) { | ||
| 119 | - this.value = value; | ||
| 120 | - } | ||
| 121 | - | ||
| 122 | - public int value() { | ||
| 123 | - return this.value; | ||
| 124 | - } | ||
| 125 | - } | ||
| 126 | - | ||
| 127 | - /** | ||
| 128 | - * 字段类型(0:导出导入;1:仅导出;2:仅导入) | ||
| 129 | - */ | ||
| 130 | - Type type() default Type.ALL; | ||
| 131 | - | ||
| 132 | - enum Type { | ||
| 133 | - ALL(0), EXPORT(1), IMPORT(2); | ||
| 134 | - private final int value; | ||
| 135 | - | ||
| 136 | - Type(int value) { | ||
| 137 | - this.value = value; | ||
| 138 | - } | ||
| 139 | - | ||
| 140 | - public int value() { | ||
| 141 | - return this.value; | ||
| 142 | - } | ||
| 143 | - } | ||
| 144 | - | ||
| 145 | - enum ColumnType { | ||
| 146 | - NUMERIC(0), STRING(1), IMAGE(2); | ||
| 147 | - private final int value; | ||
| 148 | - | ||
| 149 | - ColumnType(int value) { | ||
| 150 | - this.value = value; | ||
| 151 | - } | ||
| 152 | - | ||
| 153 | - public int value() { | ||
| 154 | - return this.value; | ||
| 155 | - } | ||
| 156 | - } | ||
| 157 | -} |
src/main/java/cn/iocoder/dashboard/framework/excel/Excels.java deleted
| 1 | -package cn.iocoder.dashboard.framework.excel; | ||
| 2 | - | ||
| 3 | -import java.lang.annotation.ElementType; | ||
| 4 | -import java.lang.annotation.Retention; | ||
| 5 | -import java.lang.annotation.RetentionPolicy; | ||
| 6 | -import java.lang.annotation.Target; | ||
| 7 | - | ||
| 8 | -/** | ||
| 9 | - * Excel注解集 | ||
| 10 | - * | ||
| 11 | - * @author ruoyi | ||
| 12 | - */ | ||
| 13 | -@Deprecated | ||
| 14 | -@Target(ElementType.FIELD) | ||
| 15 | -@Retention(RetentionPolicy.RUNTIME) | ||
| 16 | -public @interface Excels | ||
| 17 | -{ | ||
| 18 | - Excel[] value(); | ||
| 19 | -} |
src/main/java/cn/iocoder/dashboard/framework/excel/core/util/ExcelUtils.java
| @@ -10,18 +10,32 @@ import java.util.List; | @@ -10,18 +10,32 @@ import java.util.List; | ||
| 10 | 10 | ||
| 11 | /** | 11 | /** |
| 12 | * Excel 工具类 | 12 | * Excel 工具类 |
| 13 | + * | ||
| 14 | + * @author 芋道源码 | ||
| 13 | */ | 15 | */ |
| 14 | public class ExcelUtils { | 16 | public class ExcelUtils { |
| 15 | 17 | ||
| 16 | - public static void write(HttpServletResponse response, String filename, String sheetName, | ||
| 17 | - Class<?> head, List<?> data) throws IOException { | ||
| 18 | - // 设置 header 和 contentType | ||
| 19 | - response.addHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(filename, "UTF-8")); | ||
| 20 | - response.setContentType("application/vnd.ms-excel;charset=UTF-8"); | 18 | + /** |
| 19 | + * 将列表以 Excel 响应给前端 | ||
| 20 | + * | ||
| 21 | + * @param response 响应 | ||
| 22 | + * @param filename 文件名 | ||
| 23 | + * @param sheetName Excel sheet 名 | ||
| 24 | + * @param head Excel head 头 | ||
| 25 | + * @param data 数据列表哦 | ||
| 26 | + * @param <T> 泛型,保证 head 和 data 类型的一致性 | ||
| 27 | + * @throws IOException 写入失败的情况 | ||
| 28 | + */ | ||
| 29 | + public static <T> void write(HttpServletResponse response, String filename, String sheetName, | ||
| 30 | + Class<T> head, List<T> data) throws IOException { | ||
| 21 | // 输出 Excel | 31 | // 输出 Excel |
| 22 | EasyExcel.write(response.getOutputStream(), head) | 32 | EasyExcel.write(response.getOutputStream(), head) |
| 33 | + .autoCloseStream(false) // 不要自动关闭,交给 Servlet 自己处理 | ||
| 23 | .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) // 基于 column 长度,自动适配。最大 255 宽度 | 34 | .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) // 基于 column 长度,自动适配。最大 255 宽度 |
| 24 | .sheet(sheetName).doWrite(data); | 35 | .sheet(sheetName).doWrite(data); |
| 36 | + // 设置 header 和 contentType。写在最后的原因是,避免报错时,响应 contentType 已经被修改了 | ||
| 37 | + response.addHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(filename, "UTF-8")); | ||
| 38 | + response.setContentType("application/vnd.ms-excel;charset=UTF-8"); | ||
| 25 | } | 39 | } |
| 26 | 40 | ||
| 27 | } | 41 | } |
src/main/java/cn/iocoder/dashboard/modules/system/controller/dept/SysPostController.java
| @@ -89,10 +89,10 @@ public class SysPostController { | @@ -89,10 +89,10 @@ public class SysPostController { | ||
| 89 | // @PreAuthorize("@ss.hasPermi('system:post:export')") | 89 | // @PreAuthorize("@ss.hasPermi('system:post:export')") |
| 90 | public void export(HttpServletResponse response, @Validated SysPostExportReqVO reqVO) throws IOException { | 90 | public void export(HttpServletResponse response, @Validated SysPostExportReqVO reqVO) throws IOException { |
| 91 | List<SysPostDO> posts = postService.listPosts(reqVO); | 91 | List<SysPostDO> posts = postService.listPosts(reqVO); |
| 92 | - List<SysPostExcelVO> excelPosts = SysPostConvert.INSTANCE.convertList03(posts); | 92 | + List<SysPostExcelVO> excelDataList = SysPostConvert.INSTANCE.convertList03(posts); |
| 93 | // 输出 | 93 | // 输出 |
| 94 | ExcelUtils.write(response, "岗位数据.xls", "岗位列表", | 94 | ExcelUtils.write(response, "岗位数据.xls", "岗位列表", |
| 95 | - SysPostExcelVO.class, excelPosts); | 95 | + SysPostExcelVO.class, excelDataList); |
| 96 | } | 96 | } |
| 97 | 97 | ||
| 98 | } | 98 | } |
src/main/java/cn/iocoder/dashboard/modules/system/controller/dept/vo/post/SysPostExcelVO.java
| 1 | package cn.iocoder.dashboard.modules.system.controller.dept.vo.post; | 1 | package cn.iocoder.dashboard.modules.system.controller.dept.vo.post; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.dashboard.framework.excel.core.annotations.DictFormat; | ||
| 4 | -import cn.iocoder.dashboard.framework.excel.core.convert.DictConvert; | ||
| 5 | import com.alibaba.excel.annotation.ExcelProperty; | 3 | import com.alibaba.excel.annotation.ExcelProperty; |
| 6 | import lombok.Data; | 4 | import lombok.Data; |
| 7 | 5 | ||
| 8 | -import static cn.iocoder.dashboard.modules.system.enums.dict.DictTypeEnum.SYS_COMMON_STATUS; | ||
| 9 | - | ||
| 10 | /** | 6 | /** |
| 11 | * 岗位 Excel 导出响应 VO | 7 | * 岗位 Excel 导出响应 VO |
| 12 | */ | 8 | */ |
| @@ -25,8 +21,9 @@ public class SysPostExcelVO { | @@ -25,8 +21,9 @@ public class SysPostExcelVO { | ||
| 25 | @ExcelProperty("岗位排序") | 21 | @ExcelProperty("岗位排序") |
| 26 | private String sort; | 22 | private String sort; |
| 27 | 23 | ||
| 28 | - @ExcelProperty(value = "状态", converter = DictConvert.class) | ||
| 29 | - @DictFormat(SYS_COMMON_STATUS) | 24 | +// @ExcelProperty(value = "状态", converter = DictConvert.class) |
| 25 | +// @DictFormat(SYS_COMMON_STATUS) | ||
| 26 | + @ExcelProperty(value = "状态") | ||
| 30 | private String status; | 27 | private String status; |
| 31 | 28 | ||
| 32 | } | 29 | } |
src/main/java/cn/iocoder/dashboard/modules/system/controller/dict/SysDictDataController.java
| @@ -2,6 +2,7 @@ package cn.iocoder.dashboard.modules.system.controller.dict; | @@ -2,6 +2,7 @@ package cn.iocoder.dashboard.modules.system.controller.dict; | ||
| 2 | 2 | ||
| 3 | import cn.iocoder.dashboard.common.pojo.CommonResult; | 3 | import cn.iocoder.dashboard.common.pojo.CommonResult; |
| 4 | import cn.iocoder.dashboard.common.pojo.PageResult; | 4 | import cn.iocoder.dashboard.common.pojo.PageResult; |
| 5 | +import cn.iocoder.dashboard.framework.excel.core.util.ExcelUtils; | ||
| 5 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.data.*; | 6 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.data.*; |
| 6 | import cn.iocoder.dashboard.modules.system.convert.dict.SysDictDataConvert; | 7 | import cn.iocoder.dashboard.modules.system.convert.dict.SysDictDataConvert; |
| 7 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.dict.SysDictDataDO; | 8 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.dict.SysDictDataDO; |
| @@ -13,6 +14,8 @@ import org.springframework.validation.annotation.Validated; | @@ -13,6 +14,8 @@ import org.springframework.validation.annotation.Validated; | ||
| 13 | import org.springframework.web.bind.annotation.*; | 14 | import org.springframework.web.bind.annotation.*; |
| 14 | 15 | ||
| 15 | import javax.annotation.Resource; | 16 | import javax.annotation.Resource; |
| 17 | +import javax.servlet.http.HttpServletResponse; | ||
| 18 | +import java.io.IOException; | ||
| 16 | import java.util.List; | 19 | import java.util.List; |
| 17 | 20 | ||
| 18 | import static cn.iocoder.dashboard.common.pojo.CommonResult.success; | 21 | import static cn.iocoder.dashboard.common.pojo.CommonResult.success; |
| @@ -25,8 +28,8 @@ public class SysDictDataController { | @@ -25,8 +28,8 @@ public class SysDictDataController { | ||
| 25 | @Resource | 28 | @Resource |
| 26 | private SysDictDataService dictDataService; | 29 | private SysDictDataService dictDataService; |
| 27 | 30 | ||
| 28 | - @GetMapping("/list-all-simple") | ||
| 29 | @ApiOperation(value = "获得全部字典数据列表", notes = "一般用于管理后台缓存字典数据在本地") | 31 | @ApiOperation(value = "获得全部字典数据列表", notes = "一般用于管理后台缓存字典数据在本地") |
| 32 | + @GetMapping("/list-all-simple") | ||
| 30 | // 无需添加权限认证,因为前端全局都需要 | 33 | // 无需添加权限认证,因为前端全局都需要 |
| 31 | public CommonResult<List<SysDictDataSimpleVO>> listSimpleDictDatas() { | 34 | public CommonResult<List<SysDictDataSimpleVO>> listSimpleDictDatas() { |
| 32 | List<SysDictDataDO> list = dictDataService.listDictDatas(); | 35 | List<SysDictDataDO> list = dictDataService.listDictDatas(); |
| @@ -75,14 +78,16 @@ public class SysDictDataController { | @@ -75,14 +78,16 @@ public class SysDictDataController { | ||
| 75 | return success(true); | 78 | return success(true); |
| 76 | } | 79 | } |
| 77 | 80 | ||
| 78 | - | 81 | + @ApiOperation("导出字典数据") |
| 82 | + @GetMapping("/export") | ||
| 79 | // @Log(title = "字典类型", businessType = BusinessType.EXPORT) | 83 | // @Log(title = "字典类型", businessType = BusinessType.EXPORT) |
| 80 | // @PreAuthorize("@ss.hasPermi('system:dict:export')") | 84 | // @PreAuthorize("@ss.hasPermi('system:dict:export')") |
| 81 | -// @GetMapping("/export") | ||
| 82 | -// public AjaxResult export(SysDictType dictType) { | ||
| 83 | -// List<SysDictType> list = dictTypeService.selectDictTypeList(dictType); | ||
| 84 | -// ExcelUtil<SysDictType> util = new ExcelUtil<SysDictType>(SysDictType.class); | ||
| 85 | -// return util.exportExcel(list, "字典类型"); | ||
| 86 | -// } | 85 | + public void export(HttpServletResponse response, @Validated SysDictDataExportReqVO reqVO) throws IOException { |
| 86 | + List<SysDictDataDO> list = dictDataService.listDictDatas(reqVO); | ||
| 87 | + List<SysDictDataExcelVO> excelDataList = SysDictDataConvert.INSTANCE.convertList02(list); | ||
| 88 | + // 输出 | ||
| 89 | + ExcelUtils.write(response, "字典数据.xls", "数据列表", | ||
| 90 | + SysDictDataExcelVO.class, excelDataList); | ||
| 91 | + } | ||
| 87 | 92 | ||
| 88 | } | 93 | } |
src/main/java/cn/iocoder/dashboard/modules/system/controller/dict/SysDictTypeController.java
| @@ -2,6 +2,7 @@ package cn.iocoder.dashboard.modules.system.controller.dict; | @@ -2,6 +2,7 @@ package cn.iocoder.dashboard.modules.system.controller.dict; | ||
| 2 | 2 | ||
| 3 | import cn.iocoder.dashboard.common.pojo.CommonResult; | 3 | import cn.iocoder.dashboard.common.pojo.CommonResult; |
| 4 | import cn.iocoder.dashboard.common.pojo.PageResult; | 4 | import cn.iocoder.dashboard.common.pojo.PageResult; |
| 5 | +import cn.iocoder.dashboard.framework.excel.core.util.ExcelUtils; | ||
| 5 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.type.*; | 6 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.type.*; |
| 6 | import cn.iocoder.dashboard.modules.system.convert.dict.SysDictTypeConvert; | 7 | import cn.iocoder.dashboard.modules.system.convert.dict.SysDictTypeConvert; |
| 7 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.dict.SysDictTypeDO; | 8 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.dict.SysDictTypeDO; |
| @@ -13,6 +14,8 @@ import org.springframework.validation.annotation.Validated; | @@ -13,6 +14,8 @@ import org.springframework.validation.annotation.Validated; | ||
| 13 | import org.springframework.web.bind.annotation.*; | 14 | import org.springframework.web.bind.annotation.*; |
| 14 | 15 | ||
| 15 | import javax.annotation.Resource; | 16 | import javax.annotation.Resource; |
| 17 | +import javax.servlet.http.HttpServletResponse; | ||
| 18 | +import java.io.IOException; | ||
| 16 | import java.util.List; | 19 | import java.util.List; |
| 17 | 20 | ||
| 18 | import static cn.iocoder.dashboard.common.pojo.CommonResult.success; | 21 | import static cn.iocoder.dashboard.common.pojo.CommonResult.success; |
| @@ -76,14 +79,16 @@ public class SysDictTypeController { | @@ -76,14 +79,16 @@ public class SysDictTypeController { | ||
| 76 | return success(SysDictTypeConvert.INSTANCE.convertList(list)); | 79 | return success(SysDictTypeConvert.INSTANCE.convertList(list)); |
| 77 | } | 80 | } |
| 78 | 81 | ||
| 79 | - // | 82 | + @ApiOperation("导出数据类型") |
| 83 | + @GetMapping("/export") | ||
| 80 | // @Log(title = "字典类型", businessType = BusinessType.EXPORT) | 84 | // @Log(title = "字典类型", businessType = BusinessType.EXPORT) |
| 81 | // @PreAuthorize("@ss.hasPermi('system:dict:export')") | 85 | // @PreAuthorize("@ss.hasPermi('system:dict:export')") |
| 82 | -// @GetMapping("/export") | ||
| 83 | -// public AjaxResult export(SysDictType dictType) { | ||
| 84 | -// List<SysDictType> list = dictTypeService.selectDictTypeList(dictType); | ||
| 85 | -// ExcelUtil<SysDictType> util = new ExcelUtil<SysDictType>(SysDictType.class); | ||
| 86 | -// return util.exportExcel(list, "字典类型"); | ||
| 87 | -// } | 86 | + public void export(HttpServletResponse response, @Validated SysDictTypeExportReqVO reqVO) throws IOException { |
| 87 | + List<SysDictTypeDO> list = dictTypeService.listDictTypes(reqVO); | ||
| 88 | + List<SysDictTypeExcelVO> excelTypeList = SysDictTypeConvert.INSTANCE.convertList02(list); | ||
| 89 | + // 输出 | ||
| 90 | + ExcelUtils.write(response, "字典类型.xls", "类型列表", | ||
| 91 | + SysDictTypeExcelVO.class, excelTypeList); | ||
| 92 | + } | ||
| 88 | 93 | ||
| 89 | } | 94 | } |
src/main/java/cn/iocoder/dashboard/modules/system/controller/dict/vo/data/SysDictDataExportReqVO.java
0 → 100644
| 1 | +package cn.iocoder.dashboard.modules.system.controller.dict.vo.data; | ||
| 2 | + | ||
| 3 | +import io.swagger.annotations.ApiModel; | ||
| 4 | +import io.swagger.annotations.ApiModelProperty; | ||
| 5 | +import lombok.Data; | ||
| 6 | + | ||
| 7 | +import javax.validation.constraints.Size; | ||
| 8 | + | ||
| 9 | +@ApiModel("字典类型导出 Request VO") | ||
| 10 | +@Data | ||
| 11 | +public class SysDictDataExportReqVO { | ||
| 12 | + | ||
| 13 | + @ApiModelProperty(value = "字典标签", example = "芋道") | ||
| 14 | + @Size(max = 100, message = "字典标签长度不能超过100个字符") | ||
| 15 | + private String label; | ||
| 16 | + | ||
| 17 | + @ApiModelProperty(value = "字典类型", example = "sys_common_sex", notes = "模糊匹配") | ||
| 18 | + @Size(max = 100, message = "字典类型类型长度不能超过100个字符") | ||
| 19 | + private String dictType; | ||
| 20 | + | ||
| 21 | + @ApiModelProperty(value = "展示状态", example = "1", notes = "参见 SysCommonStatusEnum 枚举类") | ||
| 22 | + private Integer status; | ||
| 23 | + | ||
| 24 | +} |
src/main/java/cn/iocoder/dashboard/modules/system/controller/dict/vo/type/SysDictTypeExportReqVO.java
0 → 100644
| 1 | +package cn.iocoder.dashboard.modules.system.controller.dict.vo.type; | ||
| 2 | + | ||
| 3 | +import io.swagger.annotations.ApiModel; | ||
| 4 | +import io.swagger.annotations.ApiModelProperty; | ||
| 5 | +import lombok.Data; | ||
| 6 | +import org.springframework.format.annotation.DateTimeFormat; | ||
| 7 | + | ||
| 8 | +import javax.validation.constraints.Size; | ||
| 9 | +import java.util.Date; | ||
| 10 | + | ||
| 11 | +import static cn.iocoder.dashboard.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; | ||
| 12 | + | ||
| 13 | +@ApiModel("字典类型分页列表 Request VO") | ||
| 14 | +@Data | ||
| 15 | +public class SysDictTypeExportReqVO { | ||
| 16 | + | ||
| 17 | + @ApiModelProperty(value = "字典类型名称", example = "芋道", notes = "模糊匹配") | ||
| 18 | + private String name; | ||
| 19 | + | ||
| 20 | + @ApiModelProperty(value = "字典类型", example = "sys_common_sex", notes = "模糊匹配") | ||
| 21 | + @Size(max = 100, message = "字典类型类型长度不能超过100个字符") | ||
| 22 | + private String type; | ||
| 23 | + | ||
| 24 | + @ApiModelProperty(value = "展示状态", example = "1", notes = "参见 SysCommonStatusEnum 枚举类") | ||
| 25 | + private Integer status; | ||
| 26 | + | ||
| 27 | + @ApiModelProperty(value = "开始时间", example = "2020-10-24") | ||
| 28 | + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) | ||
| 29 | + private Date beginTime; | ||
| 30 | + | ||
| 31 | + @ApiModelProperty(value = "结束时间", example = "2020-10-24") | ||
| 32 | + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) | ||
| 33 | + private Date endTime; | ||
| 34 | + | ||
| 35 | +} |
src/main/java/cn/iocoder/dashboard/modules/system/controller/dict/vo/type/SysDictTypePageReqVO.java
| @@ -4,6 +4,7 @@ import cn.iocoder.dashboard.common.pojo.PageParam; | @@ -4,6 +4,7 @@ import cn.iocoder.dashboard.common.pojo.PageParam; | ||
| 4 | import io.swagger.annotations.ApiModel; | 4 | import io.swagger.annotations.ApiModel; |
| 5 | import io.swagger.annotations.ApiModelProperty; | 5 | import io.swagger.annotations.ApiModelProperty; |
| 6 | import lombok.Data; | 6 | import lombok.Data; |
| 7 | +import lombok.EqualsAndHashCode; | ||
| 7 | import org.springframework.format.annotation.DateTimeFormat; | 8 | import org.springframework.format.annotation.DateTimeFormat; |
| 8 | 9 | ||
| 9 | import javax.validation.constraints.Size; | 10 | import javax.validation.constraints.Size; |
| @@ -13,6 +14,7 @@ import static cn.iocoder.dashboard.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOU | @@ -13,6 +14,7 @@ import static cn.iocoder.dashboard.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOU | ||
| 13 | 14 | ||
| 14 | @ApiModel("字典类型分页列表 Request VO") | 15 | @ApiModel("字典类型分页列表 Request VO") |
| 15 | @Data | 16 | @Data |
| 17 | +@EqualsAndHashCode(callSuper = true) | ||
| 16 | public class SysDictTypePageReqVO extends PageParam { | 18 | public class SysDictTypePageReqVO extends PageParam { |
| 17 | 19 | ||
| 18 | @ApiModelProperty(value = "字典类型名称", example = "芋道", notes = "模糊匹配") | 20 | @ApiModelProperty(value = "字典类型名称", example = "芋道", notes = "模糊匹配") |
src/main/java/cn/iocoder/dashboard/modules/system/controller/permission/SysRoleController.java
| @@ -3,6 +3,7 @@ package cn.iocoder.dashboard.modules.system.controller.permission; | @@ -3,6 +3,7 @@ package cn.iocoder.dashboard.modules.system.controller.permission; | ||
| 3 | import cn.iocoder.dashboard.common.enums.CommonStatusEnum; | 3 | import cn.iocoder.dashboard.common.enums.CommonStatusEnum; |
| 4 | import cn.iocoder.dashboard.common.pojo.CommonResult; | 4 | import cn.iocoder.dashboard.common.pojo.CommonResult; |
| 5 | import cn.iocoder.dashboard.common.pojo.PageResult; | 5 | import cn.iocoder.dashboard.common.pojo.PageResult; |
| 6 | +import cn.iocoder.dashboard.framework.excel.core.util.ExcelUtils; | ||
| 6 | import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.*; | 7 | import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.*; |
| 7 | import cn.iocoder.dashboard.modules.system.convert.permission.SysRoleConvert; | 8 | import cn.iocoder.dashboard.modules.system.convert.permission.SysRoleConvert; |
| 8 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.permission.SysRoleDO; | 9 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.permission.SysRoleDO; |
| @@ -14,6 +15,8 @@ import org.springframework.validation.annotation.Validated; | @@ -14,6 +15,8 @@ import org.springframework.validation.annotation.Validated; | ||
| 14 | import org.springframework.web.bind.annotation.*; | 15 | import org.springframework.web.bind.annotation.*; |
| 15 | 16 | ||
| 16 | import javax.annotation.Resource; | 17 | import javax.annotation.Resource; |
| 18 | +import javax.servlet.http.HttpServletResponse; | ||
| 19 | +import java.io.IOException; | ||
| 17 | import java.util.Collections; | 20 | import java.util.Collections; |
| 18 | import java.util.Comparator; | 21 | import java.util.Comparator; |
| 19 | import java.util.List; | 22 | import java.util.List; |
| @@ -80,16 +83,6 @@ public class SysRoleController { | @@ -80,16 +83,6 @@ public class SysRoleController { | ||
| 80 | return success(SysRoleConvert.INSTANCE.convert(role)); | 83 | return success(SysRoleConvert.INSTANCE.convert(role)); |
| 81 | } | 84 | } |
| 82 | 85 | ||
| 83 | -// @Log(title = "角色管理", businessType = BusinessType.EXPORT) | ||
| 84 | -// @PreAuthorize("@ss.hasPermi('system:role:export')") | ||
| 85 | -// @GetMapping("/export") | ||
| 86 | -// public AjaxResult export(SysRole role) | ||
| 87 | -// { | ||
| 88 | -// List<SysRole> list = roleService.selectRoleList(role); | ||
| 89 | -// ExcelUtil<SysRole> util = new ExcelUtil<SysRole>(SysRole.class); | ||
| 90 | -// return util.exportExcel(list, "角色数据"); | ||
| 91 | -// } | ||
| 92 | - | ||
| 93 | @ApiOperation("修改角色状态") | 86 | @ApiOperation("修改角色状态") |
| 94 | @PostMapping("/update-status") | 87 | @PostMapping("/update-status") |
| 95 | // @PreAuthorize("@ss.hasPermi('system:role:edit')") | 88 | // @PreAuthorize("@ss.hasPermi('system:role:edit')") |
| @@ -99,4 +92,15 @@ public class SysRoleController { | @@ -99,4 +92,15 @@ public class SysRoleController { | ||
| 99 | return success(true); | 92 | return success(true); |
| 100 | } | 93 | } |
| 101 | 94 | ||
| 95 | + @GetMapping("/export") | ||
| 96 | +// @Log(title = "角色管理", businessType = BusinessType.EXPORT) | ||
| 97 | +// @PreAuthorize("@ss.hasPermi('system:role:export')") | ||
| 98 | + public void export(HttpServletResponse response, @Validated SysRoleExportReqVO reqVO) throws IOException { | ||
| 99 | + List<SysRoleDO> list = roleService.listRoles(reqVO); | ||
| 100 | + List<SysRoleExcelVO> excelDataList = SysRoleConvert.INSTANCE.convertList03(list); | ||
| 101 | + // 输出 | ||
| 102 | + ExcelUtils.write(response, "角色数据.xls", "角色列表", | ||
| 103 | + SysRoleExcelVO.class, excelDataList); | ||
| 104 | + } | ||
| 105 | + | ||
| 102 | } | 106 | } |
src/main/java/cn/iocoder/dashboard/modules/system/controller/permission/vo/role/SysRoleExcelRespVO.java renamed to src/main/java/cn/iocoder/dashboard/modules/system/controller/permission/vo/role/SysRoleExcelVO.java
| 1 | package cn.iocoder.dashboard.modules.system.controller.permission.vo.role; | 1 | package cn.iocoder.dashboard.modules.system.controller.permission.vo.role; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.dashboard.framework.excel.Excel; | 3 | +import cn.iocoder.dashboard.framework.excel.core.annotations.DictFormat; |
| 4 | +import cn.iocoder.dashboard.framework.excel.core.convert.DictConvert; | ||
| 5 | +import cn.iocoder.dashboard.modules.system.enums.dict.DictTypeEnum; | ||
| 6 | +import com.alibaba.excel.annotation.ExcelProperty; | ||
| 4 | import lombok.Data; | 7 | import lombok.Data; |
| 5 | 8 | ||
| 6 | /** | 9 | /** |
| 7 | * 角色 Excel 导出响应 VO | 10 | * 角色 Excel 导出响应 VO |
| 8 | */ | 11 | */ |
| 9 | @Data | 12 | @Data |
| 10 | -public class SysRoleExcelRespVO { | 13 | +public class SysRoleExcelVO { |
| 11 | 14 | ||
| 12 | - @Excel(name = "角色序号", cellType = Excel.ColumnType.NUMERIC) | 15 | + @ExcelProperty("角色序号") |
| 13 | private Long id; | 16 | private Long id; |
| 14 | 17 | ||
| 15 | - @Excel(name = "角色名称") | 18 | + @ExcelProperty("角色名称") |
| 16 | private String name; | 19 | private String name; |
| 17 | 20 | ||
| 18 | - @Excel(name = "角色标志") | 21 | + @ExcelProperty("角色标志") |
| 19 | private String code; | 22 | private String code; |
| 20 | 23 | ||
| 21 | - @Excel(name = "角色排序") | 24 | + @ExcelProperty("角色排序") |
| 22 | private Integer sort; | 25 | private Integer sort; |
| 23 | 26 | ||
| 24 | - @Excel(name = "数据范围", readConverterExp = "1=所有数据权限,2=自定义数据权限,3=本部门数据权限,4=本部门及以下数据权限") | 27 | + @ExcelProperty("数据范围") |
| 25 | private Integer dataScope; | 28 | private Integer dataScope; |
| 26 | 29 | ||
| 27 | - @Excel(name = "角色状态", readConverterExp = "0=正常,1=停用") | 30 | + @ExcelProperty(value = "角色状态", converter = DictConvert.class) |
| 31 | + @DictFormat(DictTypeEnum.SYS_COMMON_STATUS) | ||
| 28 | private String status; | 32 | private String status; |
| 29 | 33 | ||
| 30 | } | 34 | } |
src/main/java/cn/iocoder/dashboard/modules/system/controller/permission/vo/role/SysRoleExportReqVO.java
0 → 100644
| 1 | +package cn.iocoder.dashboard.modules.system.controller.permission.vo.role; | ||
| 2 | + | ||
| 3 | +import io.swagger.annotations.ApiModel; | ||
| 4 | +import io.swagger.annotations.ApiModelProperty; | ||
| 5 | +import lombok.Data; | ||
| 6 | +import lombok.EqualsAndHashCode; | ||
| 7 | +import org.springframework.format.annotation.DateTimeFormat; | ||
| 8 | + | ||
| 9 | +import java.util.Date; | ||
| 10 | + | ||
| 11 | +import static cn.iocoder.dashboard.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; | ||
| 12 | + | ||
| 13 | +@ApiModel("角色分页 Request VO") | ||
| 14 | +@Data | ||
| 15 | +public class SysRoleExportReqVO { | ||
| 16 | + | ||
| 17 | + @ApiModelProperty(value = "角色名称", example = "芋道", notes = "模糊匹配") | ||
| 18 | + private String name; | ||
| 19 | + | ||
| 20 | + @ApiModelProperty(value = "角色标识", example = "yudao", notes = "模糊匹配") | ||
| 21 | + private String code; | ||
| 22 | + | ||
| 23 | + @ApiModelProperty(value = "展示状态", example = "1", notes = "参见 SysCommonStatusEnum 枚举类") | ||
| 24 | + private Integer status; | ||
| 25 | + | ||
| 26 | + @ApiModelProperty(value = "开始时间", example = "2020-10-24") | ||
| 27 | + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) | ||
| 28 | + private Date beginTime; | ||
| 29 | + | ||
| 30 | + @ApiModelProperty(value = "结束时间", example = "2020-10-24") | ||
| 31 | + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) | ||
| 32 | + private Date endTime; | ||
| 33 | + | ||
| 34 | +} |
src/main/java/cn/iocoder/dashboard/modules/system/controller/user/vo/user/SysUserExcelRespBackVO.java deleted
| 1 | -package cn.iocoder.dashboard.modules.system.controller.user.vo.user; | ||
| 2 | - | ||
| 3 | -import cn.iocoder.dashboard.framework.excel.Excel; | ||
| 4 | -import cn.iocoder.dashboard.framework.excel.Excels; | ||
| 5 | -import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.dept.SysDeptDO; | ||
| 6 | -import lombok.Data; | ||
| 7 | - | ||
| 8 | -import java.util.Date; | ||
| 9 | - | ||
| 10 | -/** | ||
| 11 | - * 用户 Excel 导出响应 VO | ||
| 12 | - */ | ||
| 13 | -@Data | ||
| 14 | -public class SysUserExcelRespBackVO { | ||
| 15 | - | ||
| 16 | - @Excel(name = "用户序号", cellType = Excel.ColumnType.NUMERIC, prompt = "用户编号") | ||
| 17 | - private Long id; | ||
| 18 | - | ||
| 19 | - @Excel(name = "登录名称") | ||
| 20 | - private String username; | ||
| 21 | - | ||
| 22 | - @Excel(name = "用户名称") | ||
| 23 | - private String nickname; | ||
| 24 | - | ||
| 25 | - @Excel(name = "部门编号", type = Excel.Type.IMPORT) | ||
| 26 | - private Long deptId; | ||
| 27 | - | ||
| 28 | - @Excel(name = "用户邮箱") | ||
| 29 | - private String email; | ||
| 30 | - | ||
| 31 | - @Excel(name = "手机号码") | ||
| 32 | - private String mobile; | ||
| 33 | - | ||
| 34 | - @Excel(name = "用户性别", readConverterExp = "0=男,1=女,2=未知") | ||
| 35 | - private String sex; | ||
| 36 | - | ||
| 37 | - @Excel(name = "帐号状态", readConverterExp = "0=正常,1=停用") | ||
| 38 | - private Integer status; | ||
| 39 | - | ||
| 40 | - @Excel(name = "最后登录IP", type = Excel.Type.EXPORT) | ||
| 41 | - private String loginIp; | ||
| 42 | - | ||
| 43 | - @Excel(name = "最后登录时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", type = Excel.Type.EXPORT) | ||
| 44 | - private Date loginDate; | ||
| 45 | - | ||
| 46 | - @Excels({ | ||
| 47 | - @Excel(name = "部门名称", targetAttr = "deptName", type = Excel.Type.EXPORT), | ||
| 48 | - @Excel(name = "部门负责人", targetAttr = "leader", type = Excel.Type.EXPORT) | ||
| 49 | - }) | ||
| 50 | - private SysDeptDO dept; | ||
| 51 | - | ||
| 52 | -} |
src/main/java/cn/iocoder/dashboard/modules/system/controller/user/vo/user/SysUserImportExcelVO.java
0 → 100644
| 1 | +package cn.iocoder.dashboard.modules.system.controller.user.vo.user; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.dashboard.framework.excel.core.annotations.DictFormat; | ||
| 4 | +import cn.iocoder.dashboard.framework.excel.core.convert.DictConvert; | ||
| 5 | +import cn.iocoder.dashboard.modules.system.enums.dict.DictTypeEnum; | ||
| 6 | +import com.alibaba.excel.annotation.ExcelProperty; | ||
| 7 | +import lombok.Data; | ||
| 8 | + | ||
| 9 | +/** | ||
| 10 | + * 用户 Excel 导入 VO | ||
| 11 | + */ | ||
| 12 | +@Data | ||
| 13 | +public class SysUserImportExcelVO { | ||
| 14 | + | ||
| 15 | + @ExcelProperty("登录名称") | ||
| 16 | + private String username; | ||
| 17 | + | ||
| 18 | + @ExcelProperty("用户名称") | ||
| 19 | + private String nickname; | ||
| 20 | + | ||
| 21 | + @ExcelProperty("部门编号") | ||
| 22 | + private Long deptId; | ||
| 23 | + | ||
| 24 | + @ExcelProperty("用户邮箱") | ||
| 25 | + private String email; | ||
| 26 | + | ||
| 27 | + @ExcelProperty("手机号码") | ||
| 28 | + private String mobile; | ||
| 29 | + | ||
| 30 | + @ExcelProperty(value = "用户性别", converter = DictConvert.class) | ||
| 31 | + @DictFormat(DictTypeEnum.SYS_USER_SEX) | ||
| 32 | + private String sex; | ||
| 33 | + | ||
| 34 | + @ExcelProperty(value = "账号状态", converter = DictConvert.class) | ||
| 35 | + @DictFormat(DictTypeEnum.SYS_COMMON_STATUS) | ||
| 36 | + private Integer status; | ||
| 37 | + | ||
| 38 | +} |
src/main/java/cn/iocoder/dashboard/modules/system/convert/dict/SysDictDataConvert.java
| 1 | package cn.iocoder.dashboard.modules.system.convert.dict; | 1 | package cn.iocoder.dashboard.modules.system.convert.dict; |
| 2 | 2 | ||
| 3 | import cn.iocoder.dashboard.common.pojo.PageResult; | 3 | import cn.iocoder.dashboard.common.pojo.PageResult; |
| 4 | -import cn.iocoder.dashboard.modules.system.controller.dict.vo.data.SysDictDataCreateReqVO; | ||
| 5 | -import cn.iocoder.dashboard.modules.system.controller.dict.vo.data.SysDictDataRespVO; | ||
| 6 | -import cn.iocoder.dashboard.modules.system.controller.dict.vo.data.SysDictDataSimpleVO; | ||
| 7 | -import cn.iocoder.dashboard.modules.system.controller.dict.vo.data.SysDictDataUpdateReqVO; | 4 | +import cn.iocoder.dashboard.modules.system.controller.dict.vo.data.*; |
| 8 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.dict.SysDictDataDO; | 5 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.dict.SysDictDataDO; |
| 9 | import com.baomidou.mybatisplus.core.metadata.IPage; | 6 | import com.baomidou.mybatisplus.core.metadata.IPage; |
| 10 | import org.mapstruct.Mapper; | 7 | import org.mapstruct.Mapper; |
| @@ -31,4 +28,6 @@ public interface SysDictDataConvert { | @@ -31,4 +28,6 @@ public interface SysDictDataConvert { | ||
| 31 | @Mapping(source = "records", target = "list") | 28 | @Mapping(source = "records", target = "list") |
| 32 | PageResult<SysDictDataDO> convertPage02(IPage<SysDictDataDO> page); | 29 | PageResult<SysDictDataDO> convertPage02(IPage<SysDictDataDO> page); |
| 33 | 30 | ||
| 31 | + List<SysDictDataExcelVO> convertList02(List<SysDictDataDO> bean); | ||
| 32 | + | ||
| 34 | } | 33 | } |
src/main/java/cn/iocoder/dashboard/modules/system/convert/dict/SysDictTypeConvert.java
| 1 | package cn.iocoder.dashboard.modules.system.convert.dict; | 1 | package cn.iocoder.dashboard.modules.system.convert.dict; |
| 2 | 2 | ||
| 3 | import cn.iocoder.dashboard.common.pojo.PageResult; | 3 | import cn.iocoder.dashboard.common.pojo.PageResult; |
| 4 | -import cn.iocoder.dashboard.modules.system.controller.dict.vo.type.SysDictTypeCreateReqVO; | ||
| 5 | -import cn.iocoder.dashboard.modules.system.controller.dict.vo.type.SysDictTypeRespVO; | ||
| 6 | -import cn.iocoder.dashboard.modules.system.controller.dict.vo.type.SysDictTypeSimpleRespVO; | ||
| 7 | -import cn.iocoder.dashboard.modules.system.controller.dict.vo.type.SysDictTypeUpdateReqVO; | 4 | +import cn.iocoder.dashboard.modules.system.controller.dict.vo.type.*; |
| 8 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.dict.SysDictTypeDO; | 5 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.dict.SysDictTypeDO; |
| 9 | import com.baomidou.mybatisplus.core.metadata.IPage; | 6 | import com.baomidou.mybatisplus.core.metadata.IPage; |
| 10 | import org.mapstruct.Mapper; | 7 | import org.mapstruct.Mapper; |
| @@ -31,4 +28,6 @@ public interface SysDictTypeConvert { | @@ -31,4 +28,6 @@ public interface SysDictTypeConvert { | ||
| 31 | 28 | ||
| 32 | List<SysDictTypeSimpleRespVO> convertList(List<SysDictTypeDO> list); | 29 | List<SysDictTypeSimpleRespVO> convertList(List<SysDictTypeDO> list); |
| 33 | 30 | ||
| 31 | + List<SysDictTypeExcelVO> convertList02(List<SysDictTypeDO> list); | ||
| 32 | + | ||
| 34 | } | 33 | } |
src/main/java/cn/iocoder/dashboard/modules/system/convert/permission/SysRoleConvert.java
| 1 | package cn.iocoder.dashboard.modules.system.convert.permission; | 1 | package cn.iocoder.dashboard.modules.system.convert.permission; |
| 2 | 2 | ||
| 3 | import cn.iocoder.dashboard.common.pojo.PageResult; | 3 | import cn.iocoder.dashboard.common.pojo.PageResult; |
| 4 | -import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.SysRoleCreateReqVO; | ||
| 5 | -import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.SysRoleRespVO; | ||
| 6 | -import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.SysRoleSimpleRespVO; | ||
| 7 | -import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.SysRoleUpdateReqVO; | 4 | +import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.*; |
| 8 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.permission.SysRoleDO; | 5 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.permission.SysRoleDO; |
| 9 | import com.baomidou.mybatisplus.core.metadata.IPage; | 6 | import com.baomidou.mybatisplus.core.metadata.IPage; |
| 10 | import org.mapstruct.Mapper; | 7 | import org.mapstruct.Mapper; |
| @@ -29,4 +26,6 @@ public interface SysRoleConvert { | @@ -29,4 +26,6 @@ public interface SysRoleConvert { | ||
| 29 | 26 | ||
| 30 | List<SysRoleSimpleRespVO> convertList02(List<SysRoleDO> list); | 27 | List<SysRoleSimpleRespVO> convertList02(List<SysRoleDO> list); |
| 31 | 28 | ||
| 29 | + List<SysRoleExcelVO> convertList03(List<SysRoleDO> list); | ||
| 30 | + | ||
| 32 | } | 31 | } |
src/main/java/cn/iocoder/dashboard/modules/system/dal/mysql/dao/dict/SysDictDataMapper.java
| @@ -2,6 +2,7 @@ package cn.iocoder.dashboard.modules.system.dal.mysql.dao.dict; | @@ -2,6 +2,7 @@ package cn.iocoder.dashboard.modules.system.dal.mysql.dao.dict; | ||
| 2 | 2 | ||
| 3 | import cn.iocoder.dashboard.framework.mybatis.core.query.QueryWrapperX; | 3 | import cn.iocoder.dashboard.framework.mybatis.core.query.QueryWrapperX; |
| 4 | import cn.iocoder.dashboard.framework.mybatis.core.util.MyBatisUtils; | 4 | import cn.iocoder.dashboard.framework.mybatis.core.util.MyBatisUtils; |
| 5 | +import cn.iocoder.dashboard.modules.system.controller.dict.vo.data.SysDictDataExportReqVO; | ||
| 5 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.data.SysDictDataPageReqVO; | 6 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.data.SysDictDataPageReqVO; |
| 6 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.dict.SysDictDataDO; | 7 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.dict.SysDictDataDO; |
| 7 | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; | 8 | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| @@ -36,4 +37,9 @@ public interface SysDictDataMapper extends BaseMapper<SysDictDataDO> { | @@ -36,4 +37,9 @@ public interface SysDictDataMapper extends BaseMapper<SysDictDataDO> { | ||
| 36 | return selectList(new QueryWrapper<>()); | 37 | return selectList(new QueryWrapper<>()); |
| 37 | } | 38 | } |
| 38 | 39 | ||
| 40 | + default List<SysDictDataDO> selectList(SysDictDataExportReqVO reqVO) { | ||
| 41 | + return selectList(new QueryWrapperX<SysDictDataDO>().likeIfPresent("label", reqVO.getLabel()) | ||
| 42 | + .likeIfPresent("dict_type", reqVO.getDictType()) | ||
| 43 | + .eqIfPresent("status", reqVO.getStatus())); | ||
| 44 | + } | ||
| 39 | } | 45 | } |
src/main/java/cn/iocoder/dashboard/modules/system/dal/mysql/dao/dict/SysDictTypeMapper.java
| @@ -2,6 +2,7 @@ package cn.iocoder.dashboard.modules.system.dal.mysql.dao.dict; | @@ -2,6 +2,7 @@ package cn.iocoder.dashboard.modules.system.dal.mysql.dao.dict; | ||
| 2 | 2 | ||
| 3 | import cn.iocoder.dashboard.framework.mybatis.core.query.QueryWrapperX; | 3 | import cn.iocoder.dashboard.framework.mybatis.core.query.QueryWrapperX; |
| 4 | import cn.iocoder.dashboard.framework.mybatis.core.util.MyBatisUtils; | 4 | import cn.iocoder.dashboard.framework.mybatis.core.util.MyBatisUtils; |
| 5 | +import cn.iocoder.dashboard.modules.system.controller.dict.vo.type.SysDictTypeExportReqVO; | ||
| 5 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.type.SysDictTypePageReqVO; | 6 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.type.SysDictTypePageReqVO; |
| 6 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.dict.SysDictTypeDO; | 7 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.dict.SysDictTypeDO; |
| 7 | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; | 8 | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| @@ -22,6 +23,13 @@ public interface SysDictTypeMapper extends BaseMapper<SysDictTypeDO> { | @@ -22,6 +23,13 @@ public interface SysDictTypeMapper extends BaseMapper<SysDictTypeDO> { | ||
| 22 | .betweenIfPresent("create_time", reqVO.getBeginTime(), reqVO.getEndTime())); | 23 | .betweenIfPresent("create_time", reqVO.getBeginTime(), reqVO.getEndTime())); |
| 23 | } | 24 | } |
| 24 | 25 | ||
| 26 | + default List<SysDictTypeDO> selectList(SysDictTypeExportReqVO reqVO) { | ||
| 27 | + return selectList(new QueryWrapperX<SysDictTypeDO>().likeIfPresent("name", reqVO.getName()) | ||
| 28 | + .likeIfPresent("dict_type", reqVO.getType()) | ||
| 29 | + .eqIfPresent("status", reqVO.getStatus()) | ||
| 30 | + .betweenIfPresent("create_time", reqVO.getBeginTime(), reqVO.getEndTime())); | ||
| 31 | + } | ||
| 32 | + | ||
| 25 | default SysDictTypeDO selectByType(String type) { | 33 | default SysDictTypeDO selectByType(String type) { |
| 26 | return selectOne(new QueryWrapperX<SysDictTypeDO>().eq("dict_type", type)); | 34 | return selectOne(new QueryWrapperX<SysDictTypeDO>().eq("dict_type", type)); |
| 27 | } | 35 | } |
src/main/java/cn/iocoder/dashboard/modules/system/dal/mysql/dao/permission/SysRoleMapper.java
| @@ -2,6 +2,7 @@ package cn.iocoder.dashboard.modules.system.dal.mysql.dao.permission; | @@ -2,6 +2,7 @@ package cn.iocoder.dashboard.modules.system.dal.mysql.dao.permission; | ||
| 2 | 2 | ||
| 3 | import cn.iocoder.dashboard.framework.mybatis.core.query.QueryWrapperX; | 3 | import cn.iocoder.dashboard.framework.mybatis.core.query.QueryWrapperX; |
| 4 | import cn.iocoder.dashboard.framework.mybatis.core.util.MyBatisUtils; | 4 | import cn.iocoder.dashboard.framework.mybatis.core.util.MyBatisUtils; |
| 5 | +import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.SysRoleExportReqVO; | ||
| 5 | import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.SysRolePageReqVO; | 6 | import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.SysRolePageReqVO; |
| 6 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.permission.SysRoleDO; | 7 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.permission.SysRoleDO; |
| 7 | import com.baomidou.mybatisplus.core.mapper.BaseMapper; | 8 | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| @@ -18,9 +19,16 @@ public interface SysRoleMapper extends BaseMapper<SysRoleDO> { | @@ -18,9 +19,16 @@ public interface SysRoleMapper extends BaseMapper<SysRoleDO> { | ||
| 18 | default IPage<SysRoleDO> selectPage(SysRolePageReqVO reqVO) { | 19 | default IPage<SysRoleDO> selectPage(SysRolePageReqVO reqVO) { |
| 19 | return selectPage(MyBatisUtils.buildPage(reqVO), | 20 | return selectPage(MyBatisUtils.buildPage(reqVO), |
| 20 | new QueryWrapperX<SysRoleDO>().likeIfPresent("name", reqVO.getName()) | 21 | new QueryWrapperX<SysRoleDO>().likeIfPresent("name", reqVO.getName()) |
| 21 | - .likeIfPresent("code", reqVO.getCode()) | ||
| 22 | - .eqIfPresent("status", reqVO.getStatus()) | ||
| 23 | - .betweenIfPresent("create_time", reqVO.getBeginTime(), reqVO.getEndTime())); | 22 | + .likeIfPresent("code", reqVO.getCode()) |
| 23 | + .eqIfPresent("status", reqVO.getStatus()) | ||
| 24 | + .betweenIfPresent("create_time", reqVO.getBeginTime(), reqVO.getEndTime())); | ||
| 25 | + } | ||
| 26 | + | ||
| 27 | + default List<SysRoleDO> listRoles(SysRoleExportReqVO reqVO) { | ||
| 28 | + return selectList(new QueryWrapperX<SysRoleDO>().likeIfPresent("name", reqVO.getName()) | ||
| 29 | + .likeIfPresent("code", reqVO.getCode()) | ||
| 30 | + .eqIfPresent("status", reqVO.getStatus()) | ||
| 31 | + .betweenIfPresent("create_time", reqVO.getBeginTime(), reqVO.getEndTime())); | ||
| 24 | } | 32 | } |
| 25 | 33 | ||
| 26 | default SysRoleDO selectByName(String name) { | 34 | default SysRoleDO selectByName(String name) { |
| @@ -34,4 +42,5 @@ public interface SysRoleMapper extends BaseMapper<SysRoleDO> { | @@ -34,4 +42,5 @@ public interface SysRoleMapper extends BaseMapper<SysRoleDO> { | ||
| 34 | default List<SysRoleDO> selectListByStatus(@Nullable Collection<Integer> statuses) { | 42 | default List<SysRoleDO> selectListByStatus(@Nullable Collection<Integer> statuses) { |
| 35 | return selectList(new QueryWrapperX<SysRoleDO>().in("status", statuses)); | 43 | return selectList(new QueryWrapperX<SysRoleDO>().in("status", statuses)); |
| 36 | } | 44 | } |
| 45 | + | ||
| 37 | } | 46 | } |
src/main/java/cn/iocoder/dashboard/modules/system/service/dict/SysDictDataService.java
| @@ -3,6 +3,7 @@ package cn.iocoder.dashboard.modules.system.service.dict; | @@ -3,6 +3,7 @@ package cn.iocoder.dashboard.modules.system.service.dict; | ||
| 3 | import cn.iocoder.dashboard.common.pojo.PageResult; | 3 | import cn.iocoder.dashboard.common.pojo.PageResult; |
| 4 | import cn.iocoder.dashboard.framework.dict.core.service.DictDataFrameworkService; | 4 | import cn.iocoder.dashboard.framework.dict.core.service.DictDataFrameworkService; |
| 5 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.data.SysDictDataCreateReqVO; | 5 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.data.SysDictDataCreateReqVO; |
| 6 | +import cn.iocoder.dashboard.modules.system.controller.dict.vo.data.SysDictDataExportReqVO; | ||
| 6 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.data.SysDictDataPageReqVO; | 7 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.data.SysDictDataPageReqVO; |
| 7 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.data.SysDictDataUpdateReqVO; | 8 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.data.SysDictDataUpdateReqVO; |
| 8 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.dict.SysDictDataDO; | 9 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.dict.SysDictDataDO; |
| @@ -37,6 +38,14 @@ public interface SysDictDataService extends DictDataFrameworkService { | @@ -37,6 +38,14 @@ public interface SysDictDataService extends DictDataFrameworkService { | ||
| 37 | PageResult<SysDictDataDO> pageDictDatas(SysDictDataPageReqVO reqVO); | 38 | PageResult<SysDictDataDO> pageDictDatas(SysDictDataPageReqVO reqVO); |
| 38 | 39 | ||
| 39 | /** | 40 | /** |
| 41 | + * 获得字典数据列表 | ||
| 42 | + * | ||
| 43 | + * @param reqVO 列表请求 | ||
| 44 | + * @return 字典数据列表 | ||
| 45 | + */ | ||
| 46 | + List<SysDictDataDO> listDictDatas(SysDictDataExportReqVO reqVO); | ||
| 47 | + | ||
| 48 | + /** | ||
| 40 | * 获得字典数据详情 | 49 | * 获得字典数据详情 |
| 41 | * | 50 | * |
| 42 | * @param id 字典数据编号 | 51 | * @param id 字典数据编号 |
src/main/java/cn/iocoder/dashboard/modules/system/service/dict/SysDictTypeService.java
| @@ -2,6 +2,7 @@ package cn.iocoder.dashboard.modules.system.service.dict; | @@ -2,6 +2,7 @@ package cn.iocoder.dashboard.modules.system.service.dict; | ||
| 2 | 2 | ||
| 3 | import cn.iocoder.dashboard.common.pojo.PageResult; | 3 | import cn.iocoder.dashboard.common.pojo.PageResult; |
| 4 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.type.SysDictTypeCreateReqVO; | 4 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.type.SysDictTypeCreateReqVO; |
| 5 | +import cn.iocoder.dashboard.modules.system.controller.dict.vo.type.SysDictTypeExportReqVO; | ||
| 5 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.type.SysDictTypePageReqVO; | 6 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.type.SysDictTypePageReqVO; |
| 6 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.type.SysDictTypeUpdateReqVO; | 7 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.type.SysDictTypeUpdateReqVO; |
| 7 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.dict.SysDictTypeDO; | 8 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.dict.SysDictTypeDO; |
| @@ -24,6 +25,14 @@ public interface SysDictTypeService { | @@ -24,6 +25,14 @@ public interface SysDictTypeService { | ||
| 24 | PageResult<SysDictTypeDO> pageDictTypes(SysDictTypePageReqVO reqVO); | 25 | PageResult<SysDictTypeDO> pageDictTypes(SysDictTypePageReqVO reqVO); |
| 25 | 26 | ||
| 26 | /** | 27 | /** |
| 28 | + * 获得字典类型列表 | ||
| 29 | + * | ||
| 30 | + * @param reqVO 列表请求 | ||
| 31 | + * @return 字典类型列表 | ||
| 32 | + */ | ||
| 33 | + List<SysDictTypeDO> listDictTypes(SysDictTypeExportReqVO reqVO); | ||
| 34 | + | ||
| 35 | + /** | ||
| 27 | * 获得字典类型详情 | 36 | * 获得字典类型详情 |
| 28 | * | 37 | * |
| 29 | * @param id 字典类型编号 | 38 | * @param id 字典类型编号 |
src/main/java/cn/iocoder/dashboard/modules/system/service/dict/impl/SysDictDataServiceImpl.java
| @@ -4,6 +4,7 @@ import cn.iocoder.dashboard.common.enums.CommonStatusEnum; | @@ -4,6 +4,7 @@ import cn.iocoder.dashboard.common.enums.CommonStatusEnum; | ||
| 4 | import cn.iocoder.dashboard.common.exception.util.ServiceExceptionUtil; | 4 | import cn.iocoder.dashboard.common.exception.util.ServiceExceptionUtil; |
| 5 | import cn.iocoder.dashboard.common.pojo.PageResult; | 5 | import cn.iocoder.dashboard.common.pojo.PageResult; |
| 6 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.data.SysDictDataCreateReqVO; | 6 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.data.SysDictDataCreateReqVO; |
| 7 | +import cn.iocoder.dashboard.modules.system.controller.dict.vo.data.SysDictDataExportReqVO; | ||
| 7 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.data.SysDictDataPageReqVO; | 8 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.data.SysDictDataPageReqVO; |
| 8 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.data.SysDictDataUpdateReqVO; | 9 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.data.SysDictDataUpdateReqVO; |
| 9 | import cn.iocoder.dashboard.modules.system.convert.dict.SysDictDataConvert; | 10 | import cn.iocoder.dashboard.modules.system.convert.dict.SysDictDataConvert; |
| @@ -85,6 +86,13 @@ public class SysDictDataServiceImpl implements SysDictDataService { | @@ -85,6 +86,13 @@ public class SysDictDataServiceImpl implements SysDictDataService { | ||
| 85 | } | 86 | } |
| 86 | 87 | ||
| 87 | @Override | 88 | @Override |
| 89 | + public List<SysDictDataDO> listDictDatas(SysDictDataExportReqVO reqVO) { | ||
| 90 | + List<SysDictDataDO> list = dictDataMapper.selectList(reqVO); | ||
| 91 | + list.sort(COMPARATOR_TYPE_AND_SORT); | ||
| 92 | + return list; | ||
| 93 | + } | ||
| 94 | + | ||
| 95 | + @Override | ||
| 88 | public SysDictDataDO getDictData(Long id) { | 96 | public SysDictDataDO getDictData(Long id) { |
| 89 | return dictDataMapper.selectById(id); | 97 | return dictDataMapper.selectById(id); |
| 90 | } | 98 | } |
src/main/java/cn/iocoder/dashboard/modules/system/service/dict/impl/SysDictTypeServiceImpl.java
| @@ -3,6 +3,7 @@ package cn.iocoder.dashboard.modules.system.service.dict.impl; | @@ -3,6 +3,7 @@ package cn.iocoder.dashboard.modules.system.service.dict.impl; | ||
| 3 | import cn.iocoder.dashboard.common.exception.util.ServiceExceptionUtil; | 3 | import cn.iocoder.dashboard.common.exception.util.ServiceExceptionUtil; |
| 4 | import cn.iocoder.dashboard.common.pojo.PageResult; | 4 | import cn.iocoder.dashboard.common.pojo.PageResult; |
| 5 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.type.SysDictTypeCreateReqVO; | 5 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.type.SysDictTypeCreateReqVO; |
| 6 | +import cn.iocoder.dashboard.modules.system.controller.dict.vo.type.SysDictTypeExportReqVO; | ||
| 6 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.type.SysDictTypePageReqVO; | 7 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.type.SysDictTypePageReqVO; |
| 7 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.type.SysDictTypeUpdateReqVO; | 8 | import cn.iocoder.dashboard.modules.system.controller.dict.vo.type.SysDictTypeUpdateReqVO; |
| 8 | import cn.iocoder.dashboard.modules.system.convert.dict.SysDictTypeConvert; | 9 | import cn.iocoder.dashboard.modules.system.convert.dict.SysDictTypeConvert; |
| @@ -41,6 +42,11 @@ public class SysDictTypeServiceImpl implements SysDictTypeService { | @@ -41,6 +42,11 @@ public class SysDictTypeServiceImpl implements SysDictTypeService { | ||
| 41 | } | 42 | } |
| 42 | 43 | ||
| 43 | @Override | 44 | @Override |
| 45 | + public List<SysDictTypeDO> listDictTypes(SysDictTypeExportReqVO reqVO) { | ||
| 46 | + return dictTypeMapper.selectList(reqVO); | ||
| 47 | + } | ||
| 48 | + | ||
| 49 | + @Override | ||
| 44 | public SysDictTypeDO getDictType(Long id) { | 50 | public SysDictTypeDO getDictType(Long id) { |
| 45 | return dictTypeMapper.selectById(id); | 51 | return dictTypeMapper.selectById(id); |
| 46 | } | 52 | } |
src/main/java/cn/iocoder/dashboard/modules/system/service/permission/SysRoleService.java
| @@ -2,6 +2,7 @@ package cn.iocoder.dashboard.modules.system.service.permission; | @@ -2,6 +2,7 @@ package cn.iocoder.dashboard.modules.system.service.permission; | ||
| 2 | 2 | ||
| 3 | import cn.iocoder.dashboard.common.pojo.PageResult; | 3 | import cn.iocoder.dashboard.common.pojo.PageResult; |
| 4 | import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.SysRoleCreateReqVO; | 4 | import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.SysRoleCreateReqVO; |
| 5 | +import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.SysRoleExportReqVO; | ||
| 5 | import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.SysRolePageReqVO; | 6 | import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.SysRolePageReqVO; |
| 6 | import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.SysRoleUpdateReqVO; | 7 | import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.SysRoleUpdateReqVO; |
| 7 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.permission.SysRoleDO; | 8 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.permission.SysRoleDO; |
| @@ -94,6 +95,14 @@ public interface SysRoleService { | @@ -94,6 +95,14 @@ public interface SysRoleService { | ||
| 94 | PageResult<SysRoleDO> pageRole(SysRolePageReqVO reqVO); | 95 | PageResult<SysRoleDO> pageRole(SysRolePageReqVO reqVO); |
| 95 | 96 | ||
| 96 | /** | 97 | /** |
| 98 | + * 获得角色列表 | ||
| 99 | + * | ||
| 100 | + * @param reqVO 列表查询 | ||
| 101 | + * @return 角色列表 | ||
| 102 | + */ | ||
| 103 | + List<SysRoleDO> listRoles(SysRoleExportReqVO reqVO); | ||
| 104 | + | ||
| 105 | + /** | ||
| 97 | * 更新角色状态 | 106 | * 更新角色状态 |
| 98 | * | 107 | * |
| 99 | * @param id 角色编号 | 108 | * @param id 角色编号 |
src/main/java/cn/iocoder/dashboard/modules/system/service/permission/impl/SysRoleServiceImpl.java
| @@ -5,6 +5,7 @@ import cn.iocoder.dashboard.common.enums.CommonStatusEnum; | @@ -5,6 +5,7 @@ import cn.iocoder.dashboard.common.enums.CommonStatusEnum; | ||
| 5 | import cn.iocoder.dashboard.common.exception.util.ServiceExceptionUtil; | 5 | import cn.iocoder.dashboard.common.exception.util.ServiceExceptionUtil; |
| 6 | import cn.iocoder.dashboard.common.pojo.PageResult; | 6 | import cn.iocoder.dashboard.common.pojo.PageResult; |
| 7 | import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.SysRoleCreateReqVO; | 7 | import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.SysRoleCreateReqVO; |
| 8 | +import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.SysRoleExportReqVO; | ||
| 8 | import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.SysRolePageReqVO; | 9 | import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.SysRolePageReqVO; |
| 9 | import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.SysRoleUpdateReqVO; | 10 | import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.SysRoleUpdateReqVO; |
| 10 | import cn.iocoder.dashboard.modules.system.convert.permission.SysRoleConvert; | 11 | import cn.iocoder.dashboard.modules.system.convert.permission.SysRoleConvert; |
| @@ -141,6 +142,11 @@ public class SysRoleServiceImpl implements SysRoleService { | @@ -141,6 +142,11 @@ public class SysRoleServiceImpl implements SysRoleService { | ||
| 141 | } | 142 | } |
| 142 | 143 | ||
| 143 | @Override | 144 | @Override |
| 145 | + public List<SysRoleDO> listRoles(SysRoleExportReqVO reqVO) { | ||
| 146 | + return roleMapper.listRoles(reqVO); | ||
| 147 | + } | ||
| 148 | + | ||
| 149 | + @Override | ||
| 144 | public void updateRoleStatus(Long id, Integer status) { | 150 | public void updateRoleStatus(Long id, Integer status) { |
| 145 | // 校验是否可以更新 | 151 | // 校验是否可以更新 |
| 146 | this.checkUpdateRole(id); | 152 | this.checkUpdateRole(id); |
src/main/java/cn/iocoder/dashboard/modules/system/service/user/SysUserServiceImpl.java
| @@ -335,15 +335,4 @@ public class SysUserServiceImpl implements SysUserService { | @@ -335,15 +335,4 @@ public class SysUserServiceImpl implements SysUserService { | ||
| 335 | // return successMsg.toString(); | 335 | // return successMsg.toString(); |
| 336 | // } | 336 | // } |
| 337 | 337 | ||
| 338 | -// /** | ||
| 339 | -// * 根据条件分页查询用户列表 | ||
| 340 | -// * | ||
| 341 | -// * @param user 用户信息 | ||
| 342 | -// * @return 用户信息集合信息 | ||
| 343 | -// */ | ||
| 344 | -// @Override | ||
| 345 | -// @DataScope(deptAlias = "d", userAlias = "u") | ||
| 346 | -// public List<SysUser> selectUserList(SysUser user) { | ||
| 347 | -// return userMapper.selectUserList(user); | ||
| 348 | -// } | ||
| 349 | } | 338 | } |