From 7917a8fe2295734484fed6defc1699370ccdcbd0 Mon Sep 17 00:00:00 2001 From: TwelveT <2471835953@qq.com> Date: Sat, 5 Aug 2023 11:55:30 +0800 Subject: [PATCH] =?UTF-8?q?Excel=E5=88=86=E7=A6=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 8 +++++ twelvet-api/pom.xml | 6 ++++ twelvet-server/pom.xml | 6 ++++ .../main/resources/vm/java/controller.java.vm | 35 +++++++++---------- .../src/main/resources/vm/java/domain.java.vm | 8 ++--- .../main/resources/vm/java/sub-domain.java.vm | 6 ++-- 6 files changed, 44 insertions(+), 25 deletions(-) diff --git a/pom.xml b/pom.xml index b5fdf86a..d5bfad8b 100644 --- a/pom.xml +++ b/pom.xml @@ -66,6 +66,7 @@ 5.8.19 3.18.0 7.12.1 + 1.0.0 0.32.0 0.0.39 @@ -285,6 +286,13 @@ ${twelvet.version} + + + cn.twelvet.excel + excel-spring-boot-starter + ${excel-spring-boot-starter.version} + + com.twelvet diff --git a/twelvet-api/pom.xml b/twelvet-api/pom.xml index e0b155a0..5cbb81ca 100644 --- a/twelvet-api/pom.xml +++ b/twelvet-api/pom.xml @@ -43,6 +43,12 @@ twelvet-framework-swagger + + + cn.twelvet.excel + excel-spring-boot-starter + + diff --git a/twelvet-server/pom.xml b/twelvet-server/pom.xml index 158eaf4f..7770dfd6 100644 --- a/twelvet-server/pom.xml +++ b/twelvet-server/pom.xml @@ -65,6 +65,12 @@ spring-cloud-starter-alibaba-sentinel + + + cn.twelvet.excel + excel-spring-boot-starter + + diff --git a/twelvet-server/twelvet-server-gen/src/main/resources/vm/java/controller.java.vm b/twelvet-server/twelvet-server-gen/src/main/resources/vm/java/controller.java.vm index 87aa5d62..ebaae193 100644 --- a/twelvet-server/twelvet-server-gen/src/main/resources/vm/java/controller.java.vm +++ b/twelvet-server/twelvet-server-gen/src/main/resources/vm/java/controller.java.vm @@ -16,13 +16,13 @@ import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.Operation; import com.twelvet.framework.log.annotation.Log; import com.twelvet.framework.log.enums.BusinessType; -import org.springframework.security.access.prepost.PreAuthorize; +import cn.dev33.satoken.annotation.SaCheckPermission; import ${packageName}.domain.${ClassName}; import ${packageName}.service.I${ClassName}Service; import com.twelvet.framework.core.application.controller.TWTController; import com.twelvet.framework.core.application.domain.AjaxResult; import com.twelvet.framework.core.application.domain.JsonResult; -import com.twelvet.framework.utils.poi.ExcelUtils; +import cn.twelvet.excel.annotation.ResponseExcel; #if($table.crud || $table.sub) import com.twelvet.framework.jdbc.web.utils.PageUtils; #elseif($table.tree) @@ -37,18 +37,18 @@ import com.twelvet.framework.jdbc.web.utils.PageUtils; */ @Tag(description = "${ClassName}Controller", name = "${functionName}") @RestController -@RequestMapping("/${businessName}") +@RequestMapping("/${moduleName}/${businessName}") public class ${ClassName}Controller extends TWTController { @Autowired private I${ClassName}Service ${className}Service; -/** - * 查询${functionName}列表 - */ -@Operation(summary = "查询${functionName}列表") -@PreAuthorize("@role.hasPermi('${permissionPrefix}:list')") -@GetMapping("/pageQuery") + /** + * 查询${functionName}列表 + */ + @Operation(summary = "查询${functionName}列表") + @SaCheckPermission("${permissionPrefix}:list") + @GetMapping("/pageQuery") #if($table.crud || $table.sub) public JsonResult pageQuery(${ClassName} ${className}) { @@ -67,22 +67,21 @@ public class ${ClassName}Controller extends TWTController /** * 导出${functionName}列表 */ + @ResponseExcel(name = "${functionName}") @Operation(summary = "导出${functionName}列表") - @PreAuthorize("@role.hasPermi('${permissionPrefix}:export')") + @SaCheckPermission("${permissionPrefix}:export") @Log(service = "${functionName}", businessType = BusinessType.EXPORT) @PostMapping("/export") - public void export(HttpServletResponse response, ${ClassName} ${className}) + public List<${ClassName}> export(${ClassName} ${className}) { - List<${ClassName}> list = ${className}Service.select${ClassName}List(${className}); - ExcelUtils<${ClassName}> util = new ExcelUtils<${ClassName}>(${ClassName}.class); - util.exportExcel(response, list, "${functionName}数据"); + return ${className}Service.select${ClassName}List(${className}); } /** * 获取${functionName}详细信息 */ @Operation(summary = "获取${functionName}详细信息") - @PreAuthorize("@role.hasPermi('${permissionPrefix}:query')") + @SaCheckPermission("${permissionPrefix}:query") @GetMapping(value = "/{${pkColumn.javaField}}") public JsonResult<${ClassName}> getInfo(@PathVariable("${pkColumn.javaField}") ${pkColumn.javaType} ${pkColumn.javaField}) { @@ -93,7 +92,7 @@ public class ${ClassName}Controller extends TWTController * 新增${functionName} */ @Operation(summary = "新增${functionName}") - @PreAuthorize("@role.hasPermi('${permissionPrefix}:add')") + @SaCheckPermission("${permissionPrefix}:add") @Log(service = "${functionName}", businessType = BusinessType.INSERT) @PostMapping public JsonResult add(@RequestBody ${ClassName} ${className}) @@ -105,7 +104,7 @@ public class ${ClassName}Controller extends TWTController * 修改${functionName} */ @Operation(summary = "修改${functionName}") - @PreAuthorize("@role.hasPermi('${permissionPrefix}:edit')") + @SaCheckPermission("${permissionPrefix}:edit") @Log(service = "${functionName}", businessType = BusinessType.UPDATE) @PutMapping public JsonResult edit(@RequestBody ${ClassName} ${className}) @@ -117,7 +116,7 @@ public class ${ClassName}Controller extends TWTController * 删除${functionName} */ @Operation(summary = "删除${functionName}") - @PreAuthorize("@role.hasPermi('${permissionPrefix}:remove')") + @SaCheckPermission("${permissionPrefix}:remove") @Log(service = "${functionName}", businessType = BusinessType.DELETE) @DeleteMapping("/{${pkColumn.javaField}s}") public JsonResult remove(@PathVariable ${pkColumn.javaType}[] ${pkColumn.javaField}s) diff --git a/twelvet-server/twelvet-server-gen/src/main/resources/vm/java/domain.java.vm b/twelvet-server/twelvet-server-gen/src/main/resources/vm/java/domain.java.vm index 5a2f7cc3..1be133d0 100644 --- a/twelvet-server/twelvet-server-gen/src/main/resources/vm/java/domain.java.vm +++ b/twelvet-server/twelvet-server-gen/src/main/resources/vm/java/domain.java.vm @@ -3,7 +3,7 @@ package ${packageName}.domain; #foreach ($import in $importList) import ${import}; #end -import com.twelvet.framework.utils.annotation.excel.Excel; +import com.alibaba.excel.annotation.ExcelProperty; import com.twelvet.framework.core.application.domain.BaseEntity; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; @@ -43,12 +43,12 @@ public class ${ClassName} extends ${Entity} { #set($comment=$column.columnComment) #end #if($parentheseIndex != -1) - @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") + @ExcelProperty(value ="${comment}($column.readConverterExp())") #elseif($column.javaType == 'Date') @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "${comment}", width = 30, dateFormat = "yyyy-MM-dd") + @ExcelProperty(value ="${comment}", width = 30, dateFormat = "yyyy-MM-dd") #else - @Excel(name = "${comment}") + @ExcelProperty(value ="${comment}") #end #end private $column.javaType $column.javaField; diff --git a/twelvet-server/twelvet-server-gen/src/main/resources/vm/java/sub-domain.java.vm b/twelvet-server/twelvet-server-gen/src/main/resources/vm/java/sub-domain.java.vm index 9bcc5d30..a893f3b3 100644 --- a/twelvet-server/twelvet-server-gen/src/main/resources/vm/java/sub-domain.java.vm +++ b/twelvet-server/twelvet-server-gen/src/main/resources/vm/java/sub-domain.java.vm @@ -28,12 +28,12 @@ public class ${subClassName} extends BaseEntity #set($comment=$column.columnComment) #end #if($parentheseIndex != -1) - @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") + @ExcelProperty(value ="${comment}($column.readConverterExp())") #elseif($column.javaType == 'Date') @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "${comment}", width = 30, dateFormat = "yyyy-MM-dd") + @ExcelProperty(value ="${comment}", width = 30, dateFormat = "yyyy-MM-dd") #else - @Excel(name = "${comment}") + @ExcelProperty(value ="${comment}") #end #end private $column.javaType $column.javaField; -- GitLab