From 0f4459e4201fdc19185b7dd03215871f036acd70 Mon Sep 17 00:00:00 2001 From: liujie <1793218484@qq.com> Date: 星期三, 28 五月 2025 16:45:01 +0800 Subject: [PATCH] Merge branch 'dev' of http://120.76.84.145:10101/gitblit/r/java/mx_charging_pile into dev --- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/ChargingBillController.java | 55 +++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 39 insertions(+), 16 deletions(-) diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/ChargingBillController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/ChargingBillController.java index 91b9420..6db46cb 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/ChargingBillController.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/ChargingBillController.java @@ -16,6 +16,8 @@ import com.ruoyi.common.core.web.page.PageInfo; import com.ruoyi.common.log.annotation.Log; import com.ruoyi.common.log.enums.BusinessType; +import com.ruoyi.common.security.annotation.Logical; +import com.ruoyi.common.security.annotation.RequiresPermissions; import com.ruoyi.order.api.model.*; import com.ruoyi.order.api.query.TOrderInvoiceQuery; import com.ruoyi.order.api.vo.AccountListVO; @@ -24,6 +26,7 @@ import com.ruoyi.order.api.vo.TOrderInvoiceVO; import com.ruoyi.order.export.*; import com.ruoyi.order.service.*; +import com.ruoyi.order.vo.StatisticsOfBatteryVO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.apache.poi.ss.usermodel.Workbook; @@ -139,6 +142,9 @@ // chargingBillService.save(tChargingBill14); return R.ok(); } + + + @RequiresPermissions(value = {"/accountSettlementStatement"}, logical = Logical.OR) @PostMapping(value = "/accountBillList") @ApiOperation(value = "列表查询", tags = {"管理后台-账户结算账单"}) public R<AccountListVO> accountBillList(@RequestBody ChargingListQuery dto) { @@ -146,7 +152,7 @@ ChargingBillVO res = chargingBillService.chargingBillList1(dto); List<ChargingBillListVO> records = res.getList().getRecords(); accountListVO.setBillCount(records.size()); - accountListVO.setTotalAmount(res.getPaymentAmount().subtract(res.getRefundAmount()).subtract(res.getCommissionAmount()).subtract(res.getSharingAmount()).setScale(2, BigDecimal.ROUND_DOWN)); + accountListVO.setTotalAmount(res.getPaymentAmount().subtract(res.getCommissionAmount()).subtract(res.getSharingAmount()).setScale(2, BigDecimal.ROUND_DOWN)); accountListVO.setPaymentAmount(res.getPaymentAmount().setScale(2, BigDecimal.ROUND_DOWN)); accountListVO.setRefundAmount(res.getRefundAmount().setScale(2, BigDecimal.ROUND_DOWN)); accountListVO.setCommissionAmount(res.getCommissionAmount().setScale(2, BigDecimal.ROUND_DOWN)); @@ -155,6 +161,8 @@ accountListVO.setOrderList(res.getExportList()); return R.ok(accountListVO); } + + @RequiresPermissions(value = {"/chargeBill"}, logical = Logical.OR) @PostMapping(value = "/chargingBillList") @ApiOperation(value = "充电算帐单列表查询", tags = {"管理后台-充电算账单"}) public AjaxResult<ChargingBillVO> chargingBillList(@RequestBody ChargingListQuery dto) { @@ -170,6 +178,9 @@ public R<ChargingBillVO> chargingBillListExport(String uid) { return R.ok(null); } + + + @RequiresPermissions(value = {"/chargeBill/export"}, logical = Logical.OR) @ApiOperation(value = "导出", tags = {"管理后台-充电算账单"}) @PutMapping("/export") public void export(@RequestBody ChargingListQuery dto) @@ -234,6 +245,9 @@ } } } + + + @RequiresPermissions(value = {"/accountSettlementStatement/export"}, logical = Logical.OR) @ApiOperation(value = "导出", tags = {"管理后台-账户结算账单"}) @PutMapping("/exportAccount") public void exportAccount(@RequestBody ChargingListQuery dto) @@ -304,7 +318,9 @@ } } } - + + + @ApiOperation(value = "下载-未出账", tags = {"管理后台-充电算账单"}) @PutMapping("/download") public void download(@RequestBody ExportUidDto uid) @@ -328,23 +344,18 @@ chargingBillExport.setSiteName(data.get(0).getName()); } // // 根据账单的出账时间 查询上个月的充电订单 -// LocalDateTime localDate = byId.getBillTime().minusMonths(1); + LocalDateTime localDate = byId.getBillTime().minusMonths(1); // // 账单周期 // // 获取 LocalDate 对象 // LocalDate date = localDate.toLocalDate(); // // 获取该月份的第一天 // LocalDate firstDayOfMonth = date.withDayOfMonth(1); - LocalDateTime localDate = byId.getBillTime().minusDays(1); - // todo 临时修改为前一天 // 获取 LocalDate 对象 LocalDate date = localDate.toLocalDate(); -// // 获取该月份的第一天 -// LocalDate firstDayOfMonth = date.withDayOfMonth(1); -// // 获取该月份的最后一天 -// LocalDate lastDayOfMonth = date.with(TemporalAdjusters.lastDayOfMonth()); - // todo 临时修改为查询昨天凌晨00:00:00 到 23:59:59 - LocalDateTime firstDayOfMonth = LocalDateTime.of(date, LocalTime.MIN); - LocalDateTime lastDayOfMonth = LocalDateTime.of(date, LocalTime.MAX); + // 获取该月份的第一天 + LocalDate firstDayOfMonth = date.withDayOfMonth(1); + // 获取该月份的最后一天 + LocalDate lastDayOfMonth = date.with(TemporalAdjusters.lastDayOfMonth()); // 获取该月份的最后一天 // LocalDate lastDayOfMonth = date.with(TemporalAdjusters.lastDayOfMonth()); QueryWrapper<TChargingOrder> eq = new QueryWrapper<TChargingOrder>() @@ -367,8 +378,20 @@ int i =1; for (TChargingOrder tChargingOrder : tChargingOrders) { // 账单信息 - paymentAmount = paymentAmount.add(tChargingOrder.getRechargeAmount()); - commissionAmount = commissionAmount.add(tChargingOrder.getPaymentAmount().multiply(bigDecimal1).setScale(2, BigDecimal.ROUND_DOWN)); + if (!tChargingOrder.getOrderSource().equals(2)){ + chargingBillExport.setPaymentAmount(tChargingOrder.getRechargeAmount()); + paymentAmount = paymentAmount.add(tChargingOrder.getRechargeAmount()); + + }else{ + chargingBillExport.setPaymentAmount(tChargingOrder.getServiceCharge()!=null? + tChargingOrder.getServiceCharge().multiply(new BigDecimal("0.2")).setScale(2, BigDecimal.ROUND_DOWN) + :new BigDecimal("0")); + paymentAmount = paymentAmount.add(tChargingOrder.getServiceCharge()!=null? + tChargingOrder.getServiceCharge().multiply(new BigDecimal("0.2")).setScale(2, BigDecimal.ROUND_DOWN) + :new BigDecimal("0")); + + } + commissionAmount = commissionAmount.add(tChargingOrder.getRechargeAmount().multiply(bigDecimal1).setScale(2, BigDecimal.ROUND_DOWN)); sharingAmount = sharingAmount.add(tChargingOrder.getSharingAmount()!=null?tChargingOrder.getSharingAmount():new BigDecimal("0")); // 退款信息 ChargingBillRefundExport chargingBillRefundExport = new ChargingBillRefundExport(); @@ -433,8 +456,8 @@ } chargingBillExport.setPaymentAmount(paymentAmount); chargingBillExport.setRefundAmount(refundAmount); - chargingBillExport.setIncome(paymentAmount.subtract(refundAmount).subtract(commissionAmount) - .subtract(sharingAmount).setScale(2, BigDecimal.ROUND_DOWN)); + chargingBillExport.setIncome(paymentAmount.subtract(refundAmount) + .setScale(2, BigDecimal.ROUND_DOWN)); chargingBillExports.add(chargingBillExport); // 导出 List<Map<String, Object>> sheetsList = new ArrayList<>(); -- Gitblit v1.7.1