Bläddra i källkod

1.去除未使用的easyExcelUtils

lengfaqiang 2 år sedan
förälder
incheckning
01976caf70

+ 0 - 151
sckw-common/sckw-common-excel/src/main/java/com/sckw/excel/utils/EasyExcelUtil.java

@@ -1,151 +0,0 @@
-package com.sckw.excel.utils;
-
-
-import com.alibaba.excel.EasyExcel;
-import com.alibaba.excel.ExcelWriter;
-import com.alibaba.excel.support.ExcelTypeEnum;
-import com.alibaba.excel.write.metadata.WriteSheet;
-import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
-import com.alibaba.fastjson.JSON;
-import com.sckw.core.web.response.HttpResult;
-import com.sckw.excel.config.easyexcel.CustomCellWriteHandler;
-import com.sckw.excel.config.easyexcel.ExcelListener;
-import com.sckw.excel.config.easyexcel.RequestHolder;
-import com.sckw.excel.config.easyexcel.SheetExcelData;
-import jakarta.servlet.ServletOutputStream;
-import jakarta.servlet.http.HttpServletResponse;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.http.HttpStatus;
-import org.springframework.web.multipart.MultipartFile;
-
-import java.io.IOException;
-import java.io.UnsupportedEncodingException;
-import java.net.URLEncoder;
-import java.time.LocalDate;
-import java.util.List;
-
-/**
- * Excel工具类
- * @author LengFaQiang
- * @Created 2019-7-18 18:01:53
- **/
-@Slf4j
-public class EasyExcelUtil {
-    /**
-     * 读取单个sheet的excel文件
-     * @param excel 文件
-     * @param t 实体类型
-     * @param headRowNumber 头行数
-     * @return
-     * @throws Exception
-     */
-    public static <T> List<T> readSingleExcel(MultipartFile excel, T t, int headRowNumber) throws IOException {
-        return EasyExcel.read(excel.getInputStream(), t.getClass(), new ExcelListener())
-                .sheet().headRowNumber(headRowNumber).doReadSync();
-    }
-
-
-    /**
-     * 导出文件
-     * 导出模板时,tList传一个空list即可
-     * @param tList 数据集
-     * @param tClass 数据类型
-     * @param <T>
-     * @throws IOException
-     */
-    public static <T> void writeSingleExcel(String fileName,String sheetName, List<T> tList, Class tClass) throws IOException{
-        HttpServletResponse response = RequestHolder.getResponse();
-        try (ServletOutputStream outputStream = response.getOutputStream()){
-            setResponse(fileName, response);
-            EasyExcel.write(outputStream, tClass).autoCloseStream(Boolean.FALSE)
-                    .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy())
-                    .registerWriteHandler(new CustomCellWriteHandler())
-                    .sheet(sheetName)
-                    .doWrite(tList);
-        } catch (Exception e) {
-            errorWrite(response, e);
-        }
-    }
-
-    /**
-     * 导出多sheet
-     * @param fileName 文件名
-     * @param sheetExcelDataList sheet对象
-     * @throws IOException
-     */
-    public static void writeMultiExcel(String fileName, List<SheetExcelData> sheetExcelDataList) throws IOException{
-        HttpServletResponse response = RequestHolder.getResponse();
-        ServletOutputStream outputStream = response.getOutputStream();
-        setResponse(fileName, response);
-        ExcelWriter excelWriter = EasyExcel.write(outputStream).autoCloseStream(false).build();
-        try {
-            for (int i = 0,length = sheetExcelDataList.size(); i < length; i++) {
-                WriteSheet writeSheet = EasyExcel.writerSheet(i+1, sheetExcelDataList.get(i).getSheetName())
-                        .head(sheetExcelDataList.get(i).getTClass())
-                        .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()).build();
-                excelWriter.write(sheetExcelDataList.get(i).getDataList(), writeSheet);
-            }
-        } catch (Exception e) {
-            errorWrite(response, e);
-        }finally {
-            // 刷新流,不加这句话,下载文件损坏打不开
-            outputStream.flush();
-            // outputStream.close();
-            if(excelWriter != null){
-                // 千万别忘记finish关闭流
-                excelWriter.finish();
-            }
-        }
-    }
-
-    /**
-     * 无对象导出
-     * @param fileName
-     * @param headList
-     * @param dataList
-     * @throws IOException
-     */
-    public static void writeWithoutModel(String fileName, List<List<String>> headList,List<List<Object>> dataList) throws IOException{
-        HttpServletResponse response = RequestHolder.getResponse();
-        try (ServletOutputStream outputStream = response.getOutputStream()){
-            setResponse(fileName, response);
-            // 这里 需要指定写用哪个class去写,然后写到第一个sheet,名字为模板 然后文件流会自动关闭
-            EasyExcel.write(outputStream).head(headList).sheet("模板").registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()).doWrite(dataList);
-        } catch (Exception e) {
-            errorWrite(response, e);
-        }
-    }
-
-    /**
-     * 导出错误
-     * @param response
-     * @param e
-     * @throws IOException
-     */
-    private static void errorWrite(HttpServletResponse response, Exception e) throws IOException {
-        // 重置response
-        response.reset();
-        log.error(e.getMessage(), e);
-        response.setContentType("application/json");
-        response.setCharacterEncoding("utf-8");
-        response.setStatus(HttpStatus.INTERNAL_SERVER_ERROR.value());
-        response.getWriter().println(JSON.toJSONString(HttpResult.error(com.sckw.core.web.constant.HttpStatus.GLOBAL_EXCEPTION_CODE,"导出失败")));
-    }
-
-    /**
-     * 设置导出信息
-     * @param fileName
-     * @param response
-     * @throws UnsupportedEncodingException
-     */
-    private static void setResponse(String fileName, HttpServletResponse response) throws UnsupportedEncodingException {
-        // 重置response
-        response.reset();
-        response.setContentType("application/vnd.ms-excel;charset=utf-8");
-        response.setCharacterEncoding("utf-8");
-        // 这里URLEncoder.encode可以防止中文乱码
-        //,"yyyy-MM-dd_HH_mm_ss"
-        fileName = URLEncoder.encode(fileName + DateUtil.dateToStr(LocalDate.now()) + ExcelTypeEnum.XLSX.getValue(), "UTF-8");
-        response.setHeader("Content-disposition", "attachment;filename=" + fileName);
-    }
-}