futian.liu
2023-12-01 79a57e0844bdd3b5f06ebaac807a0896624be70f
consum-base/src/main/java/com/consum/base/BaseController.java
@@ -5,6 +5,12 @@
import com.iplatform.base.util.UserUtils;
import com.iplatform.core.BeanContextAware;
import com.iplatform.model.po.S_user_core;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.net.URLEncoder;
import javax.servlet.http.HttpServletResponse;
import org.apache.poi.ss.usermodel.Workbook;
public abstract class BaseController extends PlatformAdapterController {
@@ -38,4 +44,17 @@
        // 从缓存中取出用户,如果没有则新增
        return this.getFinSysTenantUserCache().get(String.valueOf(userInfo.getId()));
    }
    protected void downLoadExcel(String fileName, HttpServletResponse response, Workbook workbook) throws IOException {
        OutputStream out = response.getOutputStream();
        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()));
        out.write(byteArrayOutputStream.toByteArray());
        workbook.close();
        out.close();
    }
}