| | |
| | | package org.jeecg.modules.base.controller; |
| | | |
| | | import java.io.File; |
| | | import java.net.URLEncoder; |
| | | import java.util.Arrays; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | |
| | | import java.net.URLDecoder; |
| | | import javax.servlet.http.HttpServletRequest; |
| | | import javax.servlet.http.HttpServletResponse; |
| | | |
| | | import org.apache.poi.ss.usermodel.Workbook; |
| | | import org.apache.poi.ss.usermodel.WorkbookFactory; |
| | | import org.jeecg.common.api.vo.Result; |
| | | import org.jeecg.common.constant.CommonConstant; |
| | | import org.jeecg.common.system.query.QueryGenerator; |
| | |
| | | return Result.ok("操作成功!"); |
| | | } |
| | | |
| | | /** |
| | | * 导入模板下载 |
| | | * |
| | | */ |
| | | @RequestMapping(value = "/loadTemplate") |
| | | public void loadTemplate(HttpServletRequest request, HttpServletResponse response) throws IOException { |
| | | |
| | | Map<String,String[]> req = request.getParameterMap(); |
| | | Workbook workbook = WorkbookFactory.create(new File("D:\\opt\\upFiles\\供应商信息导入模板.xlsx")); |
| | | //导出Workbook |
| | | //设置响应头 |
| | | String fileName = "供应商信息导入模板.xlsx"; |
| | | // 对文件名进行URL编码,防止中文乱码 |
| | | String encodedFileName = URLEncoder.encode(fileName, "UTF-8").replaceAll("\\+", "%20"); |
| | | response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); |
| | | response.setHeader("Content-Disposition", "attachment; filename*=UTF-8''" + encodedFileName); |
| | | // 将Workbook写入响应输出流 |
| | | try { // try-with-resources自动关闭资源 |
| | | workbook.write(response.getOutputStream()); |
| | | response.flushBuffer(); |
| | | } catch (IOException e) { |
| | | // 异常处理(如记录日志) |
| | | throw new IOException("下载模板失败", e); |
| | | } |
| | | |
| | | } |
| | | |
| | | } |