From 44b1fe9c919f833151445a30ba978beb041f8692 Mon Sep 17 00:00:00 2001 From: 石广澎 <shiguangpeng@163.com> Date: 星期二, 12 十二月 2023 11:43:30 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- consum-base/src/main/java/com/consum/base/BaseController.java | 28 ++++++++++++++++++++++++++++ 1 files changed, 28 insertions(+), 0 deletions(-) diff --git a/consum-base/src/main/java/com/consum/base/BaseController.java b/consum-base/src/main/java/com/consum/base/BaseController.java index b379508..bdf12d3 100644 --- a/consum-base/src/main/java/com/consum/base/BaseController.java +++ b/consum-base/src/main/java/com/consum/base/BaseController.java @@ -1,10 +1,20 @@ package com.consum.base; +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.InputStream; +import java.net.URLEncoder; + +import javax.servlet.http.HttpServletResponse; + +import org.apache.poi.ss.usermodel.Workbook; + import com.consum.model.po.FinSysTenantUser; import com.iplatform.base.PlatformAdapterController; import com.iplatform.base.util.UserUtils; import com.iplatform.core.BeanContextAware; import com.iplatform.model.po.S_user_core; +import com.walker.file.FileInfo; public abstract class BaseController extends PlatformAdapterController { @@ -38,4 +48,22 @@ // 浠庣紦瀛樹腑鍙栧嚭鐢ㄦ埛锛屽鏋滄病鏈夊垯鏂板 return this.getFinSysTenantUserCache().get(String.valueOf(userInfo.getId())); } + + protected String downLoadExcel(String fileName, HttpServletResponse response, Workbook workbook) throws Exception { + response.setCharacterEncoding("UTF-8"); + response.setHeader("content-Type", "application/vnd.ms-excel"); + response.setHeader("Content-Disposition", + "attachment;filename=" + URLEncoder.encode(fileName + ".xls", "UTF-8")); + ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); + workbook.write(byteArrayOutputStream); + response.setHeader("Content-Length", String.valueOf(byteArrayOutputStream.size())); + + InputStream byteArrayInputStream = new ByteArrayInputStream(byteArrayOutputStream.toByteArray()); + FileInfo fileInfo = this.uploadFileToLocal(byteArrayInputStream, fileName + ".xls", "-1", + byteArrayOutputStream.size(), 0, "-1"); + String fileUrl = fileInfo.getUrl(); + workbook.close(); + return "/file/" + fileUrl; + } + } -- Gitblit v1.9.1