feat: 导入相关
This commit is contained in:
+2
-2
@@ -240,7 +240,7 @@ public class ProcessStandardComplianceCheckDetail implements Serializable, Compa
|
||||
@ApiModelProperty(value = "佐证材料")
|
||||
@ExcelCollection(name = "", orderNum = "16")
|
||||
@TableField(exist = false)
|
||||
private List<ExcelExportUtilPro.FileDetails> fileList = Collections.emptyList();
|
||||
private List<ExcelExportUtilPro.MaterialFile> fileList = Collections.emptyList();
|
||||
|
||||
public List<String> obtainFileIds() {
|
||||
return material != null ? Arrays.asList(material.split(",")) : Collections.emptyList();
|
||||
@@ -252,7 +252,7 @@ public class ProcessStandardComplianceCheckDetail implements Serializable, Compa
|
||||
@ApiModelProperty(value = "辅助说明材料")
|
||||
@ExcelCollection(name = "", orderNum = "17")
|
||||
@TableField(exist = false)
|
||||
private List<ExcelExportUtilPro.FileDetails> fileListTwo = Collections.emptyList();
|
||||
private List<ExcelExportUtilPro.UnsatisfiedRequireAttachFile> fileListTwo = Collections.emptyList();
|
||||
|
||||
public List<String> obtainFileTwoIds() {
|
||||
return unsatisfiedRequireAttach != null ? Arrays.asList(unsatisfiedRequireAttach.split(",")) : Collections.emptyList();
|
||||
|
||||
+20
-7
@@ -546,6 +546,7 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<Proce
|
||||
|
||||
@Override
|
||||
public void exportXls(String taskId, HttpServletResponse response) {
|
||||
List<SysDictItemCore> listDict = commonAPI.getDictItemAll();
|
||||
ProcessInfoVO<ProcessSccVO> handleData = this.getHandleData(taskId);
|
||||
ProcessSccVO businessInfoDTO = handleData.getBusinessInfoDTO();
|
||||
ProcessStandardComplianceCheck standardInfo = businessInfoDTO.getStandardInfo();
|
||||
@@ -565,9 +566,13 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<Proce
|
||||
}
|
||||
try (FileOutputStream fos = new FileOutputStream(url + File.separator + fileName + ".xls")) {
|
||||
// 获取数据
|
||||
excelExportUtilPro.settleDocuments(url, "附件", detailInfoList,
|
||||
excelExportUtilPro.settleDocuments(url, "佐证材料", detailInfoList,
|
||||
ProcessStandardComplianceCheckDetail::obtainFileIds,
|
||||
ProcessStandardComplianceCheckDetail::setFileList);
|
||||
ProcessStandardComplianceCheckDetail::setFileList, ExcelExportUtilPro.MaterialFile.class);
|
||||
// 获取数据
|
||||
excelExportUtilPro.settleDocuments(url, "辅助说明材料", detailInfoList,
|
||||
ProcessStandardComplianceCheckDetail::obtainFileTwoIds,
|
||||
ProcessStandardComplianceCheckDetail::setFileListTwo, ExcelExportUtilPro.UnsatisfiedRequireAttachFile.class);
|
||||
// 生成excel
|
||||
ExportParams exportParams = new ExportParams();
|
||||
exportParams.setType(ExcelType.HSSF);
|
||||
@@ -584,9 +589,17 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<Proce
|
||||
newRecordsExport.sort(new ProcessStandardComplianceCheckDetail());
|
||||
Workbook workbook = ExcelExportUtil
|
||||
.exportExcel(exportParams, ProcessStandardComplianceCheckDetail.class, detailInfoList);
|
||||
// 生成超链接
|
||||
excelExportUtilPro.generateHyperlink("附件", newRecordsExport, workbook,
|
||||
ProcessStandardComplianceCheckDetail::getFileList, 15);
|
||||
// 翻译评估结果和佐证材料字段
|
||||
newRecordsExport.parallelStream().forEach(item -> {
|
||||
String material = excelUtils.translateDictValue("id", "file_name", "oss_file", item.getMaterial(), listDict);
|
||||
if (StrUtil.isNotBlank(material)) {
|
||||
item.setMaterial("佐证材料/" + material);
|
||||
}
|
||||
String unsatisfiedRequireAttach = excelUtils.translateDictValue("id", "file_name", "oss_file", item.getUnsatisfiedRequireAttach(), listDict);
|
||||
if (StrUtil.isNotBlank(unsatisfiedRequireAttach)) {
|
||||
item.setUnsatisfiedRequireAttach("辅助说明材料/" + unsatisfiedRequireAttach);
|
||||
}
|
||||
});
|
||||
// 导出excel
|
||||
workbook.write(fos);
|
||||
// 生成并导出zip
|
||||
@@ -626,11 +639,11 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<Proce
|
||||
// 获取数据
|
||||
excelExportUtilPro.settleDocuments(url, "佐证材料", detailInfoList,
|
||||
ProcessStandardComplianceCheckDetail::obtainFileIds,
|
||||
ProcessStandardComplianceCheckDetail::setFileList);
|
||||
ProcessStandardComplianceCheckDetail::setFileList, ExcelExportUtilPro.MaterialFile.class);
|
||||
// 获取数据
|
||||
excelExportUtilPro.settleDocuments(url, "辅助说明材料", detailInfoList,
|
||||
ProcessStandardComplianceCheckDetail::obtainFileTwoIds,
|
||||
ProcessStandardComplianceCheckDetail::setFileListTwo);
|
||||
ProcessStandardComplianceCheckDetail::setFileListTwo, ExcelExportUtilPro.UnsatisfiedRequireAttachFile.class);
|
||||
|
||||
// 去除文本的<p>
|
||||
String regex = "<[^>]*>";
|
||||
|
||||
+2
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.aspect.annotation.AutoLog;
|
||||
import com.jero.common.aspect.annotation.Translation;
|
||||
import com.jero.modules.assessmentLibrary.entity.LawsConformityAssessmentLibrary;
|
||||
import com.jero.modules.assessmentLibrary.entity.LawsConformityAssessmentLibraryDetail;
|
||||
import com.jero.modules.assessmentLibrary.service.ILawsConformityAssessmentLibraryService;
|
||||
@@ -42,6 +43,7 @@ public class LawsConformityAssessmentController {
|
||||
@GetMapping(value = "/page")
|
||||
@ApiOperationSupport(order = 1)
|
||||
@RequiresPermissions("lawsConformityAssessment:search")
|
||||
@Translation
|
||||
public Result<IPage<LawsConformityAssessmentLibrary>> queryPageList(LawsConformityAssessmentLibrary lawsConformityAssessmentLibrary,
|
||||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
|
||||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) {
|
||||
|
||||
+12
@@ -228,6 +228,18 @@ public class LawsEvaluationNotMetLibrary implements Serializable {
|
||||
return file != null ? Arrays.asList(file.split(",")) : Collections.emptyList();
|
||||
}
|
||||
|
||||
/**
|
||||
* 附件
|
||||
*/
|
||||
@ApiModelProperty(value = "辅助说明材料")
|
||||
@ExcelCollection(name = "", orderNum = "14")
|
||||
@TableField(exist = false)
|
||||
private List<ExcelExportUtilPro.UnsatisfiedRequireAttachFile> fileListTwo = Collections.emptyList();
|
||||
|
||||
public List<String> obtainFileTwoIds() {
|
||||
return unsatisfiedRequireAttach != null ? Arrays.asList(unsatisfiedRequireAttach.split(",")) : Collections.emptyList();
|
||||
}
|
||||
|
||||
/**
|
||||
* 标准ID
|
||||
*/
|
||||
|
||||
+2
@@ -2,6 +2,8 @@ package com.jero.modules.assessmentLibrary.entity.vo;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.jero.common.aspect.annotation.Dict;
|
||||
import com.jero.modules.laws.utils.ExcelExportUtilPro.MaterialFile;
|
||||
import com.jero.modules.laws.utils.ExcelExportUtilPro.UnsatisfiedRequireAttachFile;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import org.jeecgframework.poi.excel.annotation.Excel;
|
||||
|
||||
-15
@@ -1,15 +0,0 @@
|
||||
package com.jero.modules.assessmentLibrary.entity.vo;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import org.jeecgframework.poi.excel.annotation.Excel;
|
||||
|
||||
@Data
|
||||
public class MaterialFile {
|
||||
@ApiModelProperty(value = "id")
|
||||
private String id;
|
||||
|
||||
@Excel(name = "佐证材料", width = 15)
|
||||
@ApiModelProperty(value = "佐证材料")
|
||||
private String fileName;
|
||||
}
|
||||
-15
@@ -1,15 +0,0 @@
|
||||
package com.jero.modules.assessmentLibrary.entity.vo;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import org.jeecgframework.poi.excel.annotation.Excel;
|
||||
|
||||
@Data
|
||||
public class UnsatisfiedRequireAttachFile {
|
||||
@ApiModelProperty(value = "id")
|
||||
private String id;
|
||||
|
||||
@Excel(name = "辅助说明材料", width = 15)
|
||||
@ApiModelProperty(value = "辅助说明材料")
|
||||
private String fileName;
|
||||
}
|
||||
+3
-5
@@ -23,14 +23,12 @@
|
||||
cs.standard_id,
|
||||
IF(cs.standard_id IS NOT NULL, d.standard_number, cs.standard_number) AS standard_number,
|
||||
IF(cs.standard_id IS NOT NULL, d.standard_name, cs.standard_name) AS standard_name,
|
||||
lms.country as applicableMarket,
|
||||
cs.applicable_market,
|
||||
cs.valuation_time,
|
||||
cs.create_time,
|
||||
cs.all_approval_user,
|
||||
lms.country
|
||||
cs.all_approval_user
|
||||
from laws_conformity_assessment_library cs
|
||||
left join laws_domestic_standard as d on d.id = cs.standard_id
|
||||
left join laws_market_standard as lms on lms.id = cs.applicable_market) as t
|
||||
left join laws_domestic_standard as d on d.id = cs.standard_id) as t
|
||||
${ew.customSqlSegment}
|
||||
</select>
|
||||
|
||||
|
||||
+21
@@ -6,12 +6,15 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.common.api.CommonAPI;
|
||||
import com.jero.common.api.vo.ResultCommon;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.common.system.vo.SysDictItemCore;
|
||||
import com.jero.common.util.FileUtils;
|
||||
import com.jero.common.util.ZipUtil;
|
||||
import com.jero.common.util.obs.ObsBootUtil;
|
||||
import com.jero.modules.activiti.util.ExcelUtils;
|
||||
import com.jero.modules.assessmentLibrary.entity.LawsConformityAssessmentLibrary;
|
||||
import com.jero.modules.assessmentLibrary.entity.LawsConformityAssessmentLibraryDetail;
|
||||
import com.jero.modules.assessmentLibrary.entity.vo.LawsConformityAssessmentLibraryExportVO;
|
||||
@@ -66,6 +69,12 @@ public class LawsConformityAssessmentLibraryServiceImpl extends ServiceImpl<Laws
|
||||
@Resource
|
||||
private LawsConformityAssessmentLibraryMapper lawsConformityAssessmentLibraryMapper;
|
||||
|
||||
@Resource
|
||||
private ExcelUtils excelUtils;
|
||||
|
||||
@Resource
|
||||
private CommonAPI commonAPI;
|
||||
|
||||
/**
|
||||
* 法规管理员
|
||||
*/
|
||||
@@ -142,6 +151,7 @@ public class LawsConformityAssessmentLibraryServiceImpl extends ServiceImpl<Laws
|
||||
|
||||
@Override
|
||||
public void export(HttpServletResponse response, LawsConformityAssessmentLibrary lawsConformityAssessmentLibrary, String fileName, String sheetName, HttpServletRequest req) {
|
||||
List<SysDictItemCore> listDict = commonAPI.getDictItemAll();
|
||||
String url = exportExcelTempPath.replace(EXPORT_EXCEL_TEMP, fileName);
|
||||
File file = new File(url);
|
||||
if (!file.exists()) {
|
||||
@@ -199,6 +209,17 @@ public class LawsConformityAssessmentLibraryServiceImpl extends ServiceImpl<Laws
|
||||
// 复制一份数据
|
||||
List<LawsConformityAssessmentLibraryExportVO> newRecordsExport = new ArrayList<>(recordsExport);
|
||||
Workbook workbook = ExcelExportUtil.exportExcel(exportParams, LawsConformityAssessmentLibraryExportVO.class, recordsExport);
|
||||
// 翻译评估结果和佐证材料字段
|
||||
newRecordsExport.parallelStream().forEach(item -> {
|
||||
String material = excelUtils.translateDictValue("id", "file_name", "oss_file", item.getMaterial(), listDict);
|
||||
if (StrUtil.isNotBlank(material)) {
|
||||
item.setMaterial("佐证材料/" + material);
|
||||
}
|
||||
String unsatisfiedRequireAttach = excelUtils.translateDictValue("id", "file_name", "oss_file", item.getUnsatisfiedRequireAttach(), listDict);
|
||||
if (StrUtil.isNotBlank(unsatisfiedRequireAttach)) {
|
||||
item.setUnsatisfiedRequireAttach("辅助说明材料/" + unsatisfiedRequireAttach);
|
||||
}
|
||||
});
|
||||
// 生成超链接
|
||||
generateHyperlink("佐证材料", newRecordsExport, workbook);
|
||||
generateHyperlinkTwo("辅助说明材料", newRecordsExport, workbook);
|
||||
|
||||
+24
-2
@@ -6,16 +6,21 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.common.api.CommonAPI;
|
||||
import com.jero.common.api.vo.ResultCommon;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.common.system.vo.SysDictItemCore;
|
||||
import com.jero.common.util.FileUtils;
|
||||
import com.jero.common.util.ZipUtil;
|
||||
import com.jero.modules.activiti.util.ExcelUtils;
|
||||
import com.jero.modules.assessmentLibrary.entity.AssessCommon;
|
||||
import com.jero.modules.assessmentLibrary.entity.LawsEvaluationNotMetLibrary;
|
||||
import com.jero.modules.assessmentLibrary.mapper.LawsEvaluationNotMetLibraryMapper;
|
||||
import com.jero.modules.assessmentLibrary.service.ILawsConformityAssessmentLibraryService;
|
||||
import com.jero.modules.assessmentLibrary.service.ILawsEvaluationNotMetLibraryService;
|
||||
import com.jero.modules.laws.utils.ExcelExportUtilPro;
|
||||
import com.jero.modules.laws.utils.ExcelExportUtilPro.FileDetails;
|
||||
import com.jero.modules.laws.utils.ExcelExportUtilPro.UnsatisfiedRequireAttachFile;
|
||||
import com.jero.modules.sys.utils.UserUtils;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
@@ -52,6 +57,10 @@ public class LawsEvaluationNotMetLibraryServiceImpl extends ServiceImpl<LawsEval
|
||||
private ExcelExportUtilPro excelExportUtilPro;
|
||||
@Resource
|
||||
private ILawsConformityAssessmentLibraryService calService;
|
||||
@Resource
|
||||
private CommonAPI commonAPI;
|
||||
@Resource
|
||||
private ExcelUtils excelUtils;
|
||||
|
||||
@Value("${jero.path.exportExcelTempPath}")
|
||||
private String exportExcelTempPath;
|
||||
@@ -110,8 +119,8 @@ public class LawsEvaluationNotMetLibraryServiceImpl extends ServiceImpl<LawsEval
|
||||
@Override
|
||||
public void export(HttpServletResponse response, LawsEvaluationNotMetLibrary lawsEvaluationNotMet, String fileName,
|
||||
String sheetName, HttpServletRequest req) {
|
||||
List<SysDictItemCore> listDict = commonAPI.getDictItemAll();
|
||||
horizontalCheck(lawsEvaluationNotMet.getSelections());
|
||||
|
||||
String url = exportExcelTempPath.replace(EXPORT_EXCEL_TEMP, fileName);
|
||||
File file = new File(url);
|
||||
if (!file.exists()) {
|
||||
@@ -123,7 +132,8 @@ public class LawsEvaluationNotMetLibraryServiceImpl extends ServiceImpl<LawsEval
|
||||
IPage<LawsEvaluationNotMetLibrary> lawsEvaluationNotMets = this.queryPage(lawsEvaluationNotMet, 1, Integer.MAX_VALUE, req);
|
||||
List<LawsEvaluationNotMetLibrary> records = lawsEvaluationNotMets.getRecords();
|
||||
|
||||
excelExportUtilPro.settleDocuments(url, "附件", records, LawsEvaluationNotMetLibrary::obtainFileIds, LawsEvaluationNotMetLibrary::setFileList);
|
||||
excelExportUtilPro.settleDocuments(url, "附件", records, LawsEvaluationNotMetLibrary::obtainFileIds, LawsEvaluationNotMetLibrary::setFileList, FileDetails.class);
|
||||
excelExportUtilPro.settleDocuments(url, "辅助说明材料", records, LawsEvaluationNotMetLibrary::obtainFileTwoIds, LawsEvaluationNotMetLibrary::setFileListTwo, UnsatisfiedRequireAttachFile.class);
|
||||
|
||||
// 去除文本的<p>
|
||||
String regex = "<[^>]*>";
|
||||
@@ -140,8 +150,20 @@ public class LawsEvaluationNotMetLibraryServiceImpl extends ServiceImpl<LawsEval
|
||||
// 复制一份数据
|
||||
List<LawsEvaluationNotMetLibrary> newRecordsExport = new ArrayList<>(records);
|
||||
Workbook workbook = ExcelExportUtil.exportExcel(exportParams, LawsEvaluationNotMetLibrary.class, records);
|
||||
// 翻译评估结果和佐证材料字段
|
||||
newRecordsExport.parallelStream().forEach(item -> {
|
||||
String material = excelUtils.translateDictValue("id", "file_name", "oss_file", item.getFile(), listDict);
|
||||
if (StrUtil.isNotBlank(material)) {
|
||||
item.setFile("附件/" + material);
|
||||
}
|
||||
String unsatisfiedRequireAttach = excelUtils.translateDictValue("id", "file_name", "oss_file", item.getUnsatisfiedRequireAttach(), listDict);
|
||||
if (StrUtil.isNotBlank(unsatisfiedRequireAttach)) {
|
||||
item.setUnsatisfiedRequireAttach("辅助说明材料/" + unsatisfiedRequireAttach);
|
||||
}
|
||||
});
|
||||
// 生成超链接
|
||||
excelExportUtilPro.generateHyperlink("附件", newRecordsExport, workbook, LawsEvaluationNotMetLibrary::getFileList, 12);
|
||||
excelExportUtilPro.generateHyperlink("辅助说明材料", newRecordsExport, workbook, LawsEvaluationNotMetLibrary::getFileList, 13);
|
||||
// 导出excel
|
||||
workbook.write(fos);
|
||||
// 生成并导出zip
|
||||
|
||||
@@ -389,6 +389,18 @@ public class ImportUtil {
|
||||
parameterMap.put(tag.getDbFieldName(), this.convertInspectContentFile(cellValue, fileMap));
|
||||
}
|
||||
}
|
||||
// 企标稽查内容文件导入
|
||||
if (FieldCommon.REFERENCE_STANDARD.equals(tag.getDbFieldName()) &&
|
||||
TableNameEnum.ENTERPRISE_STANDARDS.getValue().equals(tag.getIsModel())) {
|
||||
// if (!this.inspectContentFileValid(cellValue, fileMap)) {
|
||||
// log.error("第" + row + "列" + tag.getDbFieldTxt() + "填写错误 ");
|
||||
// errMsg.append("第").append(row).append("列").append(tag.getDbFieldTxt()).append("填写错误 ");
|
||||
// } else {
|
||||
// // 转为List
|
||||
// // 将转好的值加入Map
|
||||
// parameterMap.put(tag.getDbFieldName(), this.convertInspectContentFile(cellValue, fileMap));
|
||||
// }
|
||||
}
|
||||
}
|
||||
if (errMsg.toString().contains("列") || errMsg.toString().contains("重复") || errMsg.toString().contains("已存在")) {
|
||||
errMsgList.add(errMsg.toString());
|
||||
|
||||
@@ -39,8 +39,30 @@ public class ExcelExportUtilPro {
|
||||
@ApiModelProperty(value = "id")
|
||||
private String id;
|
||||
|
||||
@Excel(name = "附件/佐证材料", width = 15)
|
||||
@ApiModelProperty(value = "附件/佐证材料")
|
||||
@Excel(name = "附件", width = 15)
|
||||
@ApiModelProperty(value = "附件")
|
||||
private String fileName;
|
||||
}
|
||||
|
||||
@Setter
|
||||
@Getter
|
||||
public static class MaterialFile {
|
||||
@ApiModelProperty(value = "id")
|
||||
private String id;
|
||||
|
||||
@Excel(name = "佐证材料", width = 15)
|
||||
@ApiModelProperty(value = "佐证材料")
|
||||
private String fileName;
|
||||
}
|
||||
|
||||
@Setter
|
||||
@Getter
|
||||
public static class UnsatisfiedRequireAttachFile {
|
||||
@ApiModelProperty(value = "id")
|
||||
private String id;
|
||||
|
||||
@Excel(name = "辅助说明材料", width = 15)
|
||||
@ApiModelProperty(value = "辅助说明材料")
|
||||
private String fileName;
|
||||
}
|
||||
|
||||
@@ -78,9 +100,10 @@ public class ExcelExportUtilPro {
|
||||
return cellStyle;
|
||||
}
|
||||
|
||||
public <T> void settleDocuments(String url, String folderName, List<T> items,
|
||||
Function<T, List<String>> fileIdProvider,
|
||||
BiConsumer<T, List<FileDetails>> fileDetailsConsumer) throws IOException {
|
||||
public <T, R> void settleDocuments(String url, String folderName, List<T> items,
|
||||
Function<T, List<String>> fileIdProvider,
|
||||
BiConsumer<T, List<R>> fileDetailsConsumer,
|
||||
Class<R> fileDetailsClass) throws IOException {
|
||||
// 构建完整的文件夹路径
|
||||
String directoryPath = url + File.separator + folderName;
|
||||
|
||||
@@ -95,7 +118,8 @@ public class ExcelExportUtilPro {
|
||||
if (fileIdList != null && !fileIdList.isEmpty()) {
|
||||
List<OSSFile> ossFileList = ossFileService.listByIds(fileIdList);
|
||||
if (!ossFileList.isEmpty()) {
|
||||
List<FileDetails> fileDetailsList = BeanCopyUtils.copyBeanList(ossFileList, FileDetails.class);
|
||||
// 将OSSFile列表复制为泛型R的列表
|
||||
List<R> fileDetailsList = BeanCopyUtils.copyBeanList(ossFileList, fileDetailsClass);
|
||||
fileDetailsConsumer.accept(item, fileDetailsList);
|
||||
for (OSSFile ossFile : ossFileList) {
|
||||
InputStream inputStream = ObsBootUtil.getOssFile(ossFile.getUrl());
|
||||
@@ -110,6 +134,7 @@ public class ExcelExportUtilPro {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public void writeToLocal(String filePath, InputStream input) throws IOException {
|
||||
int index;
|
||||
byte[] bytes = new byte[1024];
|
||||
|
||||
Reference in New Issue
Block a user