diff --git a/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisSettleBillController.java b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisSettleBillController.java index 602c00ddd..39e6de106 100644 --- a/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisSettleBillController.java +++ b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisSettleBillController.java @@ -296,7 +296,7 @@ public class EmisSettleBillController extends BaseController */ @GetMapping("/calculateRecedMoney") public AjaxResult calculateRecedMoney(String beginTime, String endTime) { - Map result = emisSettleBillService.calculateRecedMoney(beginTime, endTime); + List> result = emisSettleBillService.calculateRecedMoney(beginTime, endTime); return AjaxResult.success(result); } diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisSettlePayRecordMapper.java b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisSettlePayRecordMapper.java index 470a12ed4..91f0a57cc 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisSettlePayRecordMapper.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisSettlePayRecordMapper.java @@ -16,6 +16,7 @@ import java.util.Map; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.xdadan.erp.emis.domain.EmisSettlePayRecord; import com.xdadan.erp.emis.domain.stat.PayBackRecordDtl; +import org.apache.ibatis.annotations.Param; /** * @ClassName EmisSettlePayRecordMapper @@ -87,4 +88,13 @@ public interface EmisSettlePayRecordMapper extends BaseMapper> calculateRecedMoney(@Param("beginTime") String beginTime, @Param("endTime") String endTime); } diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisSettleBillService.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisSettleBillService.java index b66f83e19..cd465c3f0 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisSettleBillService.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisSettleBillService.java @@ -151,5 +151,5 @@ public interface IEmisSettleBillService extends IDataAuditService * @param endTime 结束时间 * @return 每一天的收款总金额 */ - Map calculateRecedMoney(String beginTime, String endTime); + List> calculateRecedMoney(String beginTime, String endTime); } diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/excelCellStrategy/ImageExcelHandler.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/excelCellStrategy/ImageExcelHandler.java index 75fdb291a..452791586 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/service/excelCellStrategy/ImageExcelHandler.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/excelCellStrategy/ImageExcelHandler.java @@ -58,7 +58,8 @@ public class ImageExcelHandler { // 创建标题行 Row headerRow = sheet.createRow(0); headerRow.setHeight((short) (30 * 20)); // 设置标题行高 - String[] headers = {"进仓单号", "进仓子单号", "运单号", "订单号", "进仓时间", "件数", "重量", "体积", "快递公司", "快递单号", "品名", "供应商", "图片"}; + String[] headers = { "进仓单号", "进仓子单号", "运单号", "订单号", "进仓时间", "件数", "重量", "体积", "快递公司", "快递单号", "品名", "供应商", + "图片" }; // 创建标题单元格 for (int i = 0; i < headers.length; i++) { @@ -150,23 +151,25 @@ public class ImageExcelHandler { } // 合并图片列的表头 - CellRangeAddress mergedRegion = new CellRangeAddress( - 0, // 起始行 - 0, // 结束行 - IMAGE_COLUMN_START, // 起始列 - IMAGE_COLUMN_START + maxImageCount - 1 // 结束列 - ); - sheet.addMergedRegion(mergedRegion); + if (maxImageCount > 1) { + CellRangeAddress mergedRegion = new CellRangeAddress( + 0, // 起始行 + 0, // 结束行 + IMAGE_COLUMN_START, // 起始列 + IMAGE_COLUMN_START + maxImageCount - 1 // 结束列 + ); + sheet.addMergedRegion(mergedRegion); - // 为合并后的单元格设置边框 - RegionUtil.setBorderTop(BorderStyle.MEDIUM, mergedRegion, sheet); - RegionUtil.setBorderBottom(BorderStyle.MEDIUM, mergedRegion, sheet); - RegionUtil.setBorderLeft(BorderStyle.MEDIUM, mergedRegion, sheet); - RegionUtil.setBorderRight(BorderStyle.MEDIUM, mergedRegion, sheet); - RegionUtil.setBottomBorderColor(IndexedColors.BLACK.getIndex(), mergedRegion, sheet); - RegionUtil.setTopBorderColor(IndexedColors.BLACK.getIndex(), mergedRegion, sheet); - RegionUtil.setLeftBorderColor(IndexedColors.BLACK.getIndex(), mergedRegion, sheet); - RegionUtil.setRightBorderColor(IndexedColors.BLACK.getIndex(), mergedRegion, sheet); + // 为合并后的单元格设置边框 + RegionUtil.setBorderTop(BorderStyle.MEDIUM, mergedRegion, sheet); + RegionUtil.setBorderBottom(BorderStyle.MEDIUM, mergedRegion, sheet); + RegionUtil.setBorderLeft(BorderStyle.MEDIUM, mergedRegion, sheet); + RegionUtil.setBorderRight(BorderStyle.MEDIUM, mergedRegion, sheet); + RegionUtil.setBottomBorderColor(IndexedColors.BLACK.getIndex(), mergedRegion, sheet); + RegionUtil.setTopBorderColor(IndexedColors.BLACK.getIndex(), mergedRegion, sheet); + RegionUtil.setLeftBorderColor(IndexedColors.BLACK.getIndex(), mergedRegion, sheet); + RegionUtil.setRightBorderColor(IndexedColors.BLACK.getIndex(), mergedRegion, sheet); + } // 写入到字节数组 ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisSettleBillServiceImpl.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisSettleBillServiceImpl.java index 29b1a97fd..bbf7a644c 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisSettleBillServiceImpl.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisSettleBillServiceImpl.java @@ -1215,28 +1215,17 @@ public class EmisSettleBillServiceImpl extends EmisBaseService implements IEmisS } @Override - public Map calculateRecedMoney(String beginTime, String endTime) { - // 构建查询条件 - EmisSettleBill query = new EmisSettleBill(); - query.setParams(new HashMap<>()); - query.getParams().put("beginTime", beginTime); - query.getParams().put("endTime", endTime); - - // 查询符合条件的记录 - List list = emisSettleBillMapper.selectEmisSettleBillList(query); - - // 按天分组统计金额 - Map dailyAmounts = list.stream() - .filter(bill -> bill.getRecedMoney() != null && bill.getCreateTime() != null) - .collect(Collectors.groupingBy( - bill -> DateUtils.parseDateToStr("yyyy-MM-dd", bill.getCreateTime()), - Collectors.mapping( - EmisSettleBill::getRecedMoney, - Collectors.reducing(BigDecimal.ZERO, (a, b) -> { - BigDecimal sum = a.add(b).stripTrailingZeros(); - return new BigDecimal(sum.toPlainString()); - })))); + public List> calculateRecedMoney(String beginTime, String endTime) { + // 查询获取按天统计的已收款金额 + List> resultList = emisSettlePayRecordMapper.calculateRecedMoney(beginTime, endTime); + List> dailyAmounts = new ArrayList<>(); + for (Map result : resultList) { + Map item = new HashMap<>(); + item.put("tradeDay", (String) result.get("tradeDay")); + item.put("payMoney", result.get("payMoney").toString()); + dailyAmounts.add(item); + } return dailyAmounts; } diff --git a/emis-biz/src/main/resources/mapper/EmisSettlePayRecordMapper.xml b/emis-biz/src/main/resources/mapper/EmisSettlePayRecordMapper.xml index 164f52f1f..76240f698 100644 --- a/emis-biz/src/main/resources/mapper/EmisSettlePayRecordMapper.xml +++ b/emis-biz/src/main/resources/mapper/EmisSettlePayRecordMapper.xml @@ -467,4 +467,20 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{id} + + \ No newline at end of file