Skip to content

Commit a631522

Browse files
committed
refactor: 通用导出接口添加自定义文件名
1 parent 3ee1112 commit a631522

File tree

4 files changed

+20
-7
lines changed
  • continew-starter-extension/continew-starter-extension-crud

4 files changed

+20
-7
lines changed

continew-starter-extension/continew-starter-extension-crud/continew-starter-extension-crud-core/src/main/java/top/continew/starter/extension/crud/controller/AbstractCrudController.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -185,8 +185,8 @@ public void batchDelete(@RequestBody @Valid IdsReq req) {
185185
@ExcludeFromGracefulResponse
186186
@Operation(summary = "导出数据", description = "导出数据")
187187
@GetMapping("/export")
188-
public void export(@Valid Q query, @Valid SortQuery sortQuery, HttpServletResponse response) {
189-
baseService.export(query, sortQuery, response);
188+
public void export(@Valid Q query, @Valid SortQuery sortQuery, String fileName, HttpServletResponse response) {
189+
baseService.export(query, sortQuery, fileName, response);
190190
}
191191

192192
/**

continew-starter-extension/continew-starter-extension-crud/continew-starter-extension-crud-core/src/main/java/top/continew/starter/extension/crud/service/CrudService.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,9 +126,10 @@ public interface CrudService<L, D, Q, C> {
126126
*
127127
* @param query 查询条件
128128
* @param sortQuery 排序查询条件
129+
* @param fileName 导出的文件名称
129130
* @param response 响应对象
130131
*/
131-
void export(@Valid Q query, @Valid SortQuery sortQuery, HttpServletResponse response);
132+
void export(@Valid Q query, @Valid SortQuery sortQuery, String fileName, HttpServletResponse response);
132133

133134
/**
134135
* 查询字典列表

continew-starter-extension/continew-starter-extension-crud/continew-starter-extension-crud-mf/src/main/java/top/continew/starter/extension/crud/service/CrudServiceImpl.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -167,10 +167,16 @@ public void delete(List<Long> ids) {
167167
}
168168

169169
@Override
170-
public void export(Q query, SortQuery sortQuery, HttpServletResponse response) {
170+
public void export(Q query, SortQuery sortQuery, String fileName, HttpServletResponse response) {
171171
List<D> list = this.list(query, sortQuery, detailClass);
172172
list.forEach(this::fill);
173-
ExcelUtils.export(list, "导出数据", detailClass, response);
173+
if (fileName == null) {
174+
fileName = "导出数据";
175+
}
176+
if (fileName.endsWith(".xlsx")) {
177+
fileName = fileName.substring(0, fileName.length() - 5);
178+
}
179+
ExcelUtils.export(list, fileName, detailClass, response);
174180
}
175181

176182
@Override

continew-starter-extension/continew-starter-extension-crud/continew-starter-extension-crud-mp/src/main/java/top/continew/starter/extension/crud/service/CrudServiceImpl.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -169,10 +169,16 @@ public void delete(List<Long> ids) {
169169
}
170170

171171
@Override
172-
public void export(Q query, SortQuery sortQuery, HttpServletResponse response) {
172+
public void export(Q query, SortQuery sortQuery, String fileName, HttpServletResponse response) {
173173
List<D> list = this.list(query, sortQuery, this.getDetailClass());
174174
list.forEach(this::fill);
175-
ExcelUtils.export(list, "导出数据", this.getDetailClass(), response);
175+
if (fileName == null) {
176+
fileName = "导出数据";
177+
}
178+
if (fileName.endsWith(".xlsx")) {
179+
fileName = fileName.substring(0, fileName.length() - 5);
180+
}
181+
ExcelUtils.export(list, fileName, this.getDetailClass(), response);
176182
}
177183

178184
@Override

0 commit comments

Comments
 (0)