From 3b054d0694de1a04c111f7adef089f264143cc8c Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期三, 27 八月 2025 11:52:42 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev --- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ChargeOrderServiceImpl.java | 15 ++++++++++++--- 1 files changed, 12 insertions(+), 3 deletions(-) diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ChargeOrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ChargeOrderServiceImpl.java index d4c673c..6ae4d21 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ChargeOrderServiceImpl.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ChargeOrderServiceImpl.java @@ -36,6 +36,7 @@ import com.ruoyi.system.api.feignClient.SysUserClient; import io.swagger.models.auth.In; import lombok.extern.slf4j.Slf4j; +import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.usermodel.*; import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.springframework.beans.factory.annotation.Autowired; @@ -101,9 +102,17 @@ }*/ List<String> orderNumberList=new ArrayList<>(); JSONObject result = new JSONObject(); - try (InputStream inputStream = file.getInputStream(); - Workbook workbook = new XSSFWorkbook(inputStream)) { -// Workbook workbook = new XSSFWorkbook(fileInputStream); + try (InputStream inputStream = file.getInputStream()) { + Workbook workbook; + + // 判断文件类型并创建相应的Workbook对象 + if (file.getOriginalFilename() != null && file.getOriginalFilename().toLowerCase().endsWith(".xlsx")) { + workbook = new XSSFWorkbook(inputStream); // 处理 .xlsx 文件 + } else if (file.getOriginalFilename() != null && file.getOriginalFilename().toLowerCase().endsWith(".xls")) { + workbook = new HSSFWorkbook(inputStream); // 处理 .xls 文件 + } else { + throw new ServiceException("不支持的文件格式,请上传 .xls 或 .xlsx 格式的文件", 500); + } Sheet sheet = workbook.getSheetAt(0); // 获取第一个Sheet int lastRowNum = sheet.getLastRowNum(); for (int i = 1; i <= lastRowNum; i++) {//第二行开始 -- Gitblit v1.7.1