From f470bdc535b6ca345d4e843da248f8860d294b85 Mon Sep 17 00:00:00 2001 From: futian.liu <liufutianyoo@163.com> Date: 星期二, 12 十二月 2023 11:36:54 +0800 Subject: [PATCH] 修改导出为标准返回 --- consum-base/src/main/java/com/consum/base/BaseController.java | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 58 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 5dc03e8..5cb5081 100644 --- a/consum-base/src/main/java/com/consum/base/BaseController.java +++ b/consum-base/src/main/java/com/consum/base/BaseController.java @@ -1,11 +1,69 @@ 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 { protected TokenCacheProvider getTokenCache() { return BeanContextAware.getBeanByType(TokenCacheProvider.class); } + + protected FinOrgCacheProvider getFinOrgCache() { + return BeanContextAware.getBeanByType(FinOrgCacheProvider.class); + } + + protected FinSysTenantUserCacheProvider getFinSysTenantUserCache() { + return BeanContextAware.getBeanByType(FinSysTenantUserCacheProvider.class); + } + + protected FinSysTenantCacheProvider getFinSysTenantCache() { + return BeanContextAware.getBeanByType(FinSysTenantCacheProvider.class); + } + + /** + * @Description 鑾峰彇鍚庡彴鐧诲綍鐢ㄦ埛淇℃伅 + * @Author wh + * @Date 2023/7/25 9:59 + */ + protected FinSysTenantUser getSysInfo() { + S_user_core userInfo = UserUtils.getUserInfo(); + FinSysTenantUser finSysTenantUser = new FinSysTenantUser(); + if (userInfo.getId() == null) { + return finSysTenantUser; + } + // 浠庣紦瀛樹腑鍙栧嚭鐢ㄦ埛锛屽鏋滄病鏈夊垯鏂板 + 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