ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TSettlementConfirm.java
@@ -13,6 +13,7 @@ import java.math.BigDecimal; import java.time.LocalDateTime; import java.util.List; /** * <p> @@ -178,5 +179,8 @@ @ApiModelProperty(value = "结账日期 2024年09月06日17:10:06至2024年09月06日17:10:06") @TableField(exist = false) private String time; @ApiModelProperty(value = "充电记录明细") @TableField(exist = false) private List<TChargingOrder> list; } ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TApplyChargingPileController.java
@@ -1,9 +1,11 @@ package com.ruoyi.chargingPile.controller; import java.time.LocalDateTime; import java.math.BigDecimal; import com.ruoyi.chargingPile.api.feignClient.SiteClient; import com.ruoyi.chargingPile.api.model.Partner; import com.ruoyi.chargingPile.api.model.Site; import com.ruoyi.common.core.utils.WebUtils; import com.ruoyi.common.core.web.page.PageInfo; import com.ruoyi.order.api.model.TChargingOrder; import com.ruoyi.order.api.model.TSettlementConfirm; @@ -56,6 +58,7 @@ import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Arrays; import java.util.LinkedList; import java.util.List; import java.util.regex.Pattern; @@ -220,9 +223,7 @@ applyChargingPileExportDto.setIs3("否"); } exportDtos.add(applyChargingPileExportDto); } // excel模板封装 ExcelWriterBuilder excelWriterBuilder = EasyExcelFactory.write(response.getOutputStream()); InputStream stream = Thread.currentThread().getContextClassLoader().getResourceAsStream("template/" +"充电桩申请记录" + ".xlsx"); @@ -280,6 +281,7 @@ } return R.ok(); } @ApiOperation(value = "下载", tags = {"管理后台-结算表记录"}) @GetMapping("/downloadSettlement") public R downloadSettlement(String uid,HttpServletResponse response) @@ -311,9 +313,12 @@ // 自动释放资源 try (ExcelWriter excelWriter = excelWriterBuilder.withTemplate(stream).build()) { WriteSheet writeSheet = EasyExcel.writerSheet().build(); WriteSheet writeSheet2 = EasyExcel.writerSheet().build(); WriteSheet writeSheet3 = EasyExcel.writerSheet().build(); FillConfig fillConfig = FillConfig.builder().direction(WriteDirectionEnum.HORIZONTAL).build(); excelWriter.fill(new FillWrapper("data1", chargingBillVOS), fillConfig, writeSheet); excelWriter.fill(new FillWrapper("data2", chargingBillVOS), fillConfig, writeSheet); excelWriter.fill(new FillWrapper("data2", chargingBillVOS), fillConfig, writeSheet2); excelWriter.fill(new FillWrapper("data3", data.getList()), fillConfig, writeSheet3); excelWriter.finish(); } catch (Exception e) { return R.fail("excel导出失败!"); ruoyi-service/ruoyi-chargingPile/src/main/resources/template/运营商名称1-充电桩名称1-结算对账单明细-结算月份1.xlsxBinary files differ
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/FinancialSettlementController.java
@@ -13,6 +13,7 @@ import com.ruoyi.common.redis.service.RedisService; import com.ruoyi.common.security.service.TokenService; import com.ruoyi.order.api.dto.SettlementConfirmAdd; import com.ruoyi.order.api.model.TChargingOrder; import com.ruoyi.order.api.model.TSettlementConfirm; import com.ruoyi.order.api.query.SettlementListQuery; import com.ruoyi.order.vo.ChargingOrderListInfoVO; @@ -28,6 +29,8 @@ import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.time.format.DateTimeFormatter; import java.util.List; /** * <p> @@ -79,7 +82,18 @@ } @GetMapping(value = "/downloadSettlement/{uid}") public R<TSettlementConfirm> downloadSettlement(@PathVariable("uid") String uid) { return R.ok(tSettlementConfirmService.getById(uid)); TSettlementConfirm byId = tSettlementConfirmService.getById(uid); if (byId!=null){ List<TChargingOrder> list = chargingOrderService.lambdaQuery().eq(TChargingOrder::getSiteId, byId.getSiteId()) .between(TChargingOrder::getStartTime, byId.getStartTime(), byId.getEndTime()) .eq(TChargingOrder::getStatus, 5) .eq(TChargingOrder::getRechargePaymentStatus, 2).list(); byId.setList(list); String format = byId.getStartTime().format(DateTimeFormatter.ofPattern("yyyy年MM月dd日HH:mm:ss")); String format1 = byId.getEndTime().format(DateTimeFormatter.ofPattern("yyyy年MM月dd日HH:mm:ss")); byId.setTime(format+"至"+format1); } return R.ok(byId); } }