From c8b8fec415c1e6c419d792894f830c39c76f761c Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期三, 27 八月 2025 10:11:10 +0800 Subject: [PATCH] bug修改 --- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ChargeOrderServiceImpl.java | 25 ++++++++++++++++++++----- 1 files changed, 20 insertions(+), 5 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 0a93f7b..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++) {//第二行开始 @@ -314,7 +323,7 @@ throw new ServiceException(e.getMessage()); } if(!result.isEmpty()){ - return R.fail(result); + return R.fail(result.toString()); } return R.ok(); } @@ -381,6 +390,12 @@ List<SysUser> data = sysUserClient.getSysUserAll().getData(); SysUser sysUser = data.stream().filter(e -> e.getSiteId().equals(site.getId())).findFirst().orElse(null); if (sysUser != null) { + if (sysUser.getIntegral()==null){ + sysUser.setIntegral(0); + } + if (sysUser.getIntegral()< point){ + return R.fail("站点积分不足"); + } sysUser.setIntegral(sysUser.getIntegral()==null?0:sysUser.getIntegral()-point); sysUserClient.updateSysUser(sysUser); } @@ -474,7 +489,7 @@ } // 计算积分并向下取整(Floor) int cashInt = cash.intValue(); - return cashInt*=num1; + return cashInt * num1; } catch (NumberFormatException e) { throw new RuntimeException("积分兑换比例配置值格式错误", e); -- Gitblit v1.7.1