| | |
| | | package com.doumee.core.utils; |
| | | |
| | | |
| | | import cn.hutool.core.io.IoUtil; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.doumee.core.constants.ResponseStatus; |
| | | import com.doumee.core.exception.BusinessException; |
| | | import com.doumee.core.model.LoginUserInfo; |
| | | import com.fasterxml.jackson.annotation.JsonInclude; |
| | | import com.fasterxml.jackson.core.JsonProcessingException; |
| | |
| | | import com.fasterxml.jackson.databind.PropertyNamingStrategy; |
| | | import io.swagger.models.auth.In; |
| | | import org.apache.batik.util.Platform; |
| | | import org.apache.commons.compress.archivers.zip.Zip64Mode; |
| | | import org.apache.commons.compress.archivers.zip.ZipArchiveEntry; |
| | | import org.apache.commons.compress.archivers.zip.ZipArchiveOutputStream; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.util.CollectionUtils; |
| | | |
| | | import java.io.File; |
| | | import java.io.FileInputStream; |
| | | import java.io.IOException; |
| | | import java.io.OutputStream; |
| | | import java.math.BigDecimal; |
| | | import java.net.URLDecoder; |
| | | import java.text.SimpleDateFormat; |
| | |
| | | public static final String YW_PATROL ="YW_PATROL" ; |
| | | public static final String YW_CONTRACT_BILL ="YW_CONTRACT_BILL" ; |
| | | public static final String YW_MATERIAL ="YW_MATERIAL" ; |
| | | public static final String YW_PROBLEM ="YW_PROBLEM" ; |
| | | public static final String YW_QUICK_MODEL ="YW_QUICK_MODEL" ; |
| | | |
| | | public static final String RESERVATION_TOTAL_NUM ="RESERVATION_TOTAL_NUM" ; |
| | | public static final String SIGN_IN_PLACE_LAT ="SIGN_IN_PLACE_LAT" ; |
| | |
| | | FN_PATROL_TASK_RECORD_FILE(11, "巡检任务点处理附件 ", "巡检任务点处理附件 "), |
| | | MATERIAL_FILE(12, "资产附件 ", "资产附件 "), |
| | | PROBLEM_FILE(13, "问题附件 ", "问题附件 "), |
| | | FN_DEVICE_MAINTENANCE_FILE(14, "阜宁服务平台设备文件 ", "阜宁服务平台设备文件 "), |
| | | |
| | | ; |
| | | // 成员变量 |
| | |
| | | } |
| | | } |
| | | |
| | | public static void packFilesToZip(List<File> files, OutputStream os) throws IOException { |
| | | try { |
| | | ZipArchiveOutputStream zipOutputStream = new ZipArchiveOutputStream(os); |
| | | zipOutputStream.setUseZip64(Zip64Mode.AsNeeded); |
| | | for (File file : files) { |
| | | if(!file.exists()){ |
| | | System.out.println("===文件不存在======="+file.getPath()); |
| | | continue; |
| | | }else{ |
| | | System.out.println("===文件存在======="+file.getPath()); |
| | | } |
| | | ZipArchiveEntry entry = new ZipArchiveEntry(file.getName()); |
| | | zipOutputStream.putArchiveEntry(entry); |
| | | FileInputStream fileInputStream = new FileInputStream(file); |
| | | byte[] buffer = new byte[1024]; |
| | | int length; |
| | | while ((length = fileInputStream.read(buffer)) > 0) { |
| | | zipOutputStream.write(buffer, 0, length); |
| | | } |
| | | zipOutputStream.closeArchiveEntry(); |
| | | zipOutputStream.flush(); |
| | | IoUtil.close(fileInputStream); |
| | | file.delete(); |
| | | } |
| | | }catch (Exception e){ |
| | | throw new BusinessException(ResponseStatus.EXPORT_EXCEL_ERROR.getCode(),"对不起,下载压缩文件失败"); |
| | | }finally { |
| | | if (os != null) { |
| | | try { |
| | | os.close(); |
| | | } catch (IOException e) { |
| | | e.printStackTrace(); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |