From 87cf4e9c1b1275ba16c9f027cd501aa43fa888a7 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期二, 10 九月 2024 11:22:46 +0800
Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/mx_charging_pile
---
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TApplyChargingPileController.java | 116 ++++++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 105 insertions(+), 11 deletions(-)
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TApplyChargingPileController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TApplyChargingPileController.java
index 0f7488d..24c8ea8 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TApplyChargingPileController.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TApplyChargingPileController.java
@@ -1,8 +1,17 @@
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.ExportUidDto;
+import com.ruoyi.order.api.feignClient.OrderClient;
import com.ruoyi.order.api.model.TChargingOrder;
import com.ruoyi.order.api.model.TSettlementConfirm;
+import com.ruoyi.order.api.vo.AccountListVO;
import com.ruoyi.order.api.vo.ChargingBillListVO;
@@ -36,6 +45,7 @@
import com.ruoyi.order.api.feignClient.ChargingOrderClient;
import com.ruoyi.order.api.model.ChargingListQuery;
import com.ruoyi.order.api.vo.ChargingBillVO;
+import com.ruoyi.order.api.vo.SettlementTotalVO;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.codec.CharEncoding;
import org.springframework.beans.BeanUtils;
@@ -51,6 +61,8 @@
import java.net.URLEncoder;
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;
@@ -71,6 +83,10 @@
private final RedisService redisService;
@Resource
private ChargingOrderClient chargingOrderClient;
+ @Resource
+ private OrderClient orderClient;
+ @Resource
+ private SiteClient siteClient;
@Autowired
public TApplyChargingPileController(TApplyChargingPileService applyChargingPileService, TokenService tokenService, RedisService redisService) {
@@ -213,9 +229,7 @@
applyChargingPileExportDto.setIs3("否");
}
exportDtos.add(applyChargingPileExportDto);
-
}
-
// excel模板封装
ExcelWriterBuilder excelWriterBuilder = EasyExcelFactory.write(response.getOutputStream());
InputStream stream = Thread.currentThread().getContextClassLoader().getResourceAsStream("template/" +"充电桩申请记录" + ".xlsx");
@@ -234,11 +248,11 @@
}
@ApiOperation(value = "下载-已出账", tags = {"管理后台-充电算账单"})
- @GetMapping("/downloadBill")
- public R downloadBill(String uid,HttpServletResponse response)
+ @PutMapping("/downloadBill")
+ public R downloadBill(@RequestBody ExportUidDto uid, HttpServletResponse response)
{
ChargingListQuery chargingListQuery = new ChargingListQuery();
- chargingListQuery.setUid(uid);
+ chargingListQuery.setUid(uid.getUid());
chargingListQuery.setPageCurr(1);
chargingListQuery.setPageSize(99999);
ChargingBillVO data = chargingOrderClient.chargingBillListR(chargingListQuery).getData();
@@ -273,11 +287,88 @@
}
return R.ok();
}
- @ApiOperation(value = "下载", tags = {"管理后台-结算表记录"})
- @GetMapping("/downloadSettlement")
- public R downloadSettlement(String uid,HttpServletResponse response)
+ @ApiOperation(value = "下载", tags = {"管理后台-账户结算账单"})
+ @PutMapping("/downloadAccount")
+ public R downloadAccount(@RequestBody ChargingListQuery dto,HttpServletResponse response)
+ { dto.setPageCurr(1);
+ dto.setPageSize(99999999);
+ AccountListVO data = orderClient.accountBillList(dto).getData();
+ try {
+ response.setCharacterEncoding(Constants.UTF8);
+ response.setContentType("application/vnd.ms-excel");
+ response.setHeader("Access-Control-Expose-Headers", "Content-disposition");
+ response.setHeader("Content-Disposition", "attachment;filename=" +
+ URLEncoder.encode("账户结算账单", CharEncoding.UTF_8) + ".xlsx");
+ } catch (UnsupportedEncodingException e) {
+ return R.fail("excel导出失败!");
+ }
+ try {
+ // excel模板封装
+ ExcelWriterBuilder excelWriterBuilder = EasyExcelFactory.write(response.getOutputStream());
+ InputStream stream = Thread.currentThread().getContextClassLoader().getResourceAsStream("template/" +"账户结算账单" + ".xlsx");
+ // 自动释放资源
+ try (ExcelWriter excelWriter = excelWriterBuilder.withTemplate(stream).build()) {
+ WriteSheet writeSheet = EasyExcel.writerSheet().build();
+ FillConfig fillConfig = FillConfig.builder().direction(WriteDirectionEnum.VERTICAL).build();
+ excelWriter.fill(new FillWrapper("data1", data.getList().getRecords()), fillConfig, writeSheet);
+ excelWriter.finish();
+ } catch (Exception e) {
+ return R.fail("excel导出失败!");
+ }
+ } catch (IOException e) {
+ return R.fail("excel导出失败!");
+ }
+ return R.ok();
+ }
+
+ @ApiOperation(value = "导出", tags = {"管理后台-结算汇总表"})
+ @PutMapping("/downloadSettlementTotal")
+ public R downloadSettlementTotal(@RequestBody ExportUidDto uid,HttpServletResponse response)
{
- TSettlementConfirm data = chargingOrderClient.downloadSettlement(uid).getData();
+ SettlementTotalVO data = chargingOrderClient.settlementTotalR(uid.getTime()).getData();
+
+
+ try {
+ response.setCharacterEncoding(Constants.UTF8);
+ response.setContentType("application/vnd.ms-excel");
+ response.setHeader("Access-Control-Expose-Headers", "Content-disposition");
+ response.setHeader("Content-Disposition", "attachment;filename=" +
+ URLEncoder.encode("结算确认单", CharEncoding.UTF_8) + ".xlsx");
+ } catch (UnsupportedEncodingException e) {
+ return R.fail("excel导出失败!");
+ }
+ try {
+ // excel模板封装
+ ExcelWriterBuilder excelWriterBuilder = EasyExcelFactory.write(response.getOutputStream());
+ InputStream stream = Thread.currentThread().getContextClassLoader().getResourceAsStream("template/" +"运营商名称1-充电桩名称1-结算对账单明细-结算月份1" + ".xlsx");
+ // 自动释放资源
+ try (ExcelWriter excelWriter = excelWriterBuilder.withTemplate(stream).build()) {
+ WriteSheet writeSheet = EasyExcel.writerSheet().build();
+ FillConfig fillConfig = FillConfig.builder().direction(WriteDirectionEnum.VERTICAL).build();
+ excelWriter.fill(new FillWrapper("data1", data.getList1()), fillConfig, writeSheet);
+ excelWriter.fill(new FillWrapper("data2", data.getList2()), fillConfig, writeSheet);
+ excelWriter.finish();
+ } catch (Exception e) {
+ return R.fail("excel导出失败!");
+ }
+ } catch (IOException e) {
+ return R.fail("excel导出失败!");
+ }
+ return R.ok();
+ }
+ @ApiOperation(value = "下载", tags = {"管理后台-结算表记录"})
+ @PutMapping("/downloadSettlement")
+ public R downloadSettlement(@RequestBody ExportUidDto uid,HttpServletResponse response)
+ {
+ TSettlementConfirm data = chargingOrderClient.downloadSettlement(uid.getUid()).getData();
+ List<Site> data1 = siteClient.getSiteByIds(Arrays.asList(data.getSiteId())).getData();
+ if (!data1.isEmpty()){
+ data.setSiteName(data1.get(0).getName());
+ }
+ Partner data2 = siteClient.getPartnerR(data.getPartnerId()).getData();
+ if (data2!=null){
+ data.setPartnerName(data2.getName());
+ }
List<TSettlementConfirm> chargingBillVOS = new ArrayList<>();
chargingBillVOS.add(data);
try {
@@ -296,9 +387,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导出失败!");
@@ -315,7 +409,7 @@
@ApiOperation(value = "下载-未出账", tags = {"管理后台-充电算账单"})
- @GetMapping("/download")
+ @PutMapping("/download")
public R download(String uid,HttpServletResponse response)
{
ChargingListQuery chargingListQuery = new ChargingListQuery();
--
Gitblit v1.7.1