From 70082014b9b5c62f2edee1301343b3e54cfdc72e Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期五, 25 十月 2024 11:27:52 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java | 18 +- ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/TEvaluationTagClient.java | 2 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java | 71 ++++++++----- ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/QrCodeDeliveryMessage.java | 1 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TShoppingOrderServiceImpl.java | 48 ++++---- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/ChargingBillController.java | 76 ++++++++++---- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderAppealServiceImpl.java | 8 + ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/task/TaskUtil.java | 4 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysRoleController.java | 12 +- ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/tools/MessageUtil.java | 1 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingGunServiceImpl.java | 2 ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/QrCodeDelivery.java | 1 ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/ChargingBillListVO.java | 2 13 files changed, 155 insertions(+), 91 deletions(-) diff --git a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/QrCodeDelivery.java b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/QrCodeDelivery.java index ac3be77..9ae1359 100644 --- a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/QrCodeDelivery.java +++ b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/QrCodeDelivery.java @@ -11,6 +11,7 @@ public class QrCodeDelivery { private String charging_pile_code; // 桩编码 + private String charging_gun_code; // 枪编码 private Integer code_format; // "0:第一种前缀+桩编号 1:第二种前缀+桩编号+枪编号" private Integer prefix_length; // 二维码前缀长度长度最大不超过200 字节 private String code_prefix; // 如:“www.baidu.com?No=” diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/ChargingBillListVO.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/ChargingBillListVO.java index c97801a..8fabc3d 100644 --- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/ChargingBillListVO.java +++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/ChargingBillListVO.java @@ -14,6 +14,8 @@ public class ChargingBillListVO extends TChargingBill { @ApiModelProperty(value = "账单周期") private String billWeek; + @ApiModelProperty(value = "账户类型名称") + private String payTypeName; @ApiModelProperty(value = "充电时间 秒") private Integer chargingSecond; diff --git a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/TEvaluationTagClient.java b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/TEvaluationTagClient.java index b11e4bb..65045dc 100644 --- a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/TEvaluationTagClient.java +++ b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/TEvaluationTagClient.java @@ -26,7 +26,7 @@ * @return */ @PostMapping("/t-evaluation-tag/getTagList") - R<List<TEvaluationTagVO>> getTagList(Integer type); + R<List<TEvaluationTagVO>> getTagList(@RequestParam("type") Integer type); /** * 获取标签列表 * @return diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysRoleController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysRoleController.java index c079129..4c2f434 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysRoleController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysRoleController.java @@ -238,11 +238,13 @@ roleSiteClient.delRoleSite(dto.getRoleId()); //添加站点权限 List<TRoleSite> roleSites = new ArrayList<>(); - for (Integer siteId : dto.getSiteIds()) { - TRoleSite roleSite = new TRoleSite(); - roleSite.setRoleId(role.getRoleId().intValue()); - roleSite.setSiteId(siteId); - roleSites.add(roleSite); + if(null != dto.getSiteIds()){ + for (Integer siteId : dto.getSiteIds()) { + TRoleSite roleSite = new TRoleSite(); + roleSite.setRoleId(role.getRoleId().intValue()); + roleSite.setSiteId(siteId); + roleSites.add(roleSite); + } } roleSiteClient.addRoleSite(roleSites); return AjaxResult.success(); diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingGunServiceImpl.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingGunServiceImpl.java index f320a87..dcea1b1 100644 --- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingGunServiceImpl.java +++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingGunServiceImpl.java @@ -144,6 +144,7 @@ String code_prefix = "https://mxcd.zhinenganguan.com?No="; QrCodeDelivery qrCodeDelivery = new QrCodeDelivery(); qrCodeDelivery.setCharging_pile_code(chargingPile.getCode()); + qrCodeDelivery.setCharging_gun_code(dto.getCode()); qrCodeDelivery.setCode_format(1); qrCodeDelivery.setPrefix_length(code_prefix.length()); qrCodeDelivery.setCode_prefix(code_prefix); @@ -181,6 +182,7 @@ String code_prefix = "https://mxcd.zhinenganguan.com?No="; QrCodeDelivery qrCodeDelivery = new QrCodeDelivery(); qrCodeDelivery.setCharging_pile_code(chargingPile.getCode()); + qrCodeDelivery.setCharging_gun_code(dto.getCode()); qrCodeDelivery.setCode_format(1); qrCodeDelivery.setPrefix_length(code_prefix.length()); qrCodeDelivery.setCode_prefix(code_prefix); diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/tools/MessageUtil.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/tools/MessageUtil.java index bd592d8..267029d 100644 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/tools/MessageUtil.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/tools/MessageUtil.java @@ -289,6 +289,7 @@ public JSONObject getMessageJsonString(Object object, String serviceId){ JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(object)); jsonObject.put("service_id", serviceId); + log.info("发送数据service_id:{},发送内容:{}",serviceId,jsonObject); return jsonObject; } } diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/QrCodeDeliveryMessage.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/QrCodeDeliveryMessage.java index 6b9ad6d..0e4dd03 100644 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/QrCodeDeliveryMessage.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/model/QrCodeDeliveryMessage.java @@ -11,6 +11,7 @@ public class QrCodeDeliveryMessage extends BaseMessage { private String charging_pile_code; // 桩编码 + private String charging_gun_code; // 枪编码 private Integer code_format; // "0:第一种前缀+桩编号 1:第二种前缀+桩编号+枪编号" private Integer prefix_length; // 二维码前缀长度长度最大不超过200 字节 private String code_prefix; // 如:“www.baidu.com?No=” 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 da2f83b..c1b037f 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 @@ -15,14 +15,11 @@ 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.order.api.model.ExportUidDto; -import com.ruoyi.order.api.model.TChargingBill; -import com.ruoyi.order.api.model.TChargingOrder; +import com.ruoyi.order.api.model.*; import com.ruoyi.order.api.query.TOrderInvoiceQuery; import com.ruoyi.order.api.vo.AccountListVO; import com.ruoyi.order.api.vo.ChargingBillListVO; import com.ruoyi.order.api.vo.ChargingBillVO; -import com.ruoyi.order.api.model.ChargingListQuery; import com.ruoyi.order.api.vo.TOrderInvoiceVO; import com.ruoyi.order.export.*; import com.ruoyi.order.service.*; @@ -30,6 +27,7 @@ import io.swagger.annotations.ApiOperation; import org.apache.poi.ss.usermodel.Workbook; import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; @@ -40,6 +38,7 @@ import java.net.URLEncoder; import java.time.LocalDate; import java.time.LocalDateTime; +import java.time.LocalTime; import java.time.format.DateTimeFormatter; import java.time.temporal.TemporalAdjusters; import java.util.ArrayList; @@ -232,6 +231,8 @@ } } + @Autowired + private TChargingOrderRefundService tChargingOrderRefundService; @ApiOperation(value = "下载-未出账", tags = {"管理后台-充电算账单"}) @PutMapping("/download") public void download(@RequestBody ExportUidDto uid) @@ -244,7 +245,7 @@ chargingBillExport.setCode(byId.getCode()); chargingBillExport.setAccountType("微信商户"); chargingBillExport.setType(byId.getType().toString()); - chargingBillExport.setBillType("月结"); + chargingBillExport.setBillType("月账单"); LocalDateTime billTime = byId.getBillTime(); // 将billTime 减去一个月 转化为yyyy-MM格式字符串 billTime = billTime.minusMonths(1); @@ -256,15 +257,26 @@ if (!data.isEmpty()){ 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 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 lastDayOfMonth = date.with(TemporalAdjusters.lastDayOfMonth()); +// LocalDate lastDayOfMonth = date.with(TemporalAdjusters.lastDayOfMonth()); QueryWrapper<TChargingOrder> eq = new QueryWrapper<TChargingOrder>() .between("create_time", firstDayOfMonth, lastDayOfMonth) .eq("status", 5) @@ -277,6 +289,7 @@ List<TChargingOrder> tChargingOrders = chargingOrderService.list(eq); // 累加支付金额 + BigDecimal bigDecimal = new BigDecimal("0"); int i =1; for (TChargingOrder tChargingOrder : tChargingOrders) { // 账单信息 @@ -303,26 +316,43 @@ chargingBillPayExport.setPlatformPay("支付宝小程序支付"); } - chargingBillRefundExport.setRechargeSerialNumber(tChargingOrder.getRechargeSerialNumber()); - chargingBillRefundExport.setCode(tChargingOrder.getCode()); - chargingBillRefundExport.setPayTime(DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss",DateUtils.toDate(tChargingOrder.getPayTime()))); - if (tChargingOrder.getRefundTime()!=null){ - chargingBillRefundExport.setRefundTime(DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss",DateUtils.toDate(tChargingOrder.getRefundTime()))); + TChargingOrderRefund one = tChargingOrderRefundService.lambdaQuery().eq(TChargingOrderRefund::getChargingOrderId, tChargingOrder.getId()).one(); + if (one!=null){ + chargingBillRefundExport.setRechargeSerialNumber(one.getSerailNumber()); + chargingBillRefundExport.setCode(one.getCode()); + chargingBillRefundExport.setPayTime(tChargingOrder.getPayTime()!=null?DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss",DateUtils.toDate(tChargingOrder.getPayTime())):""); + if (tChargingOrder.getRefundTime()!=null){ + chargingBillRefundExport.setRefundTime(DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss",DateUtils.toDate(tChargingOrder.getRefundTime()))); + } + chargingBillRefundExport.setRefundMoney(one.getRefundAmount().toString()); + chargingBillRefundExport.setRefundRemark(one.getRefundReason()); + chargingBillRefundExport.setRefundCode(one.getRefundCode()); + chargingBillRefundExport.setRefundSerialNumber(one.getRefundSerialNumber()); + chargingBillRefundExports.add(chargingBillRefundExport); } - chargingBillRefundExport.setRefundMoney(tChargingOrder.getRefundAmount().toString()); - chargingBillRefundExport.setRefundRemark(tChargingOrder.getRefundReason()); - chargingBillRefundExport.setRefundCode(tChargingOrder.getRefundCode()); - chargingBillRefundExport.setRefundSerialNumber(tChargingOrder.getRefundSerialNumber()); - chargingBillRefundExports.add(chargingBillRefundExport); // 支付信息 chargingBillPayExport.setId(i+""); chargingBillPayExport.setRechargeSerialNumber(tChargingOrder.getRechargeSerialNumber()); chargingBillPayExport.setCode(tChargingOrder.getCode()); - chargingBillPayExport.setPayTime(DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss",DateUtils.toDate(tChargingOrder.getPayTime()))); - chargingBillPayExport.setPaymentAmount(tChargingOrder.getPaymentAmount().toString()); + chargingBillPayExport.setPayTime(tChargingOrder.getPayTime()!=null?DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss",DateUtils.toDate(tChargingOrder.getPayTime())):""); + chargingBillPayExport.setPaymentAmount(tChargingOrder.getOrderAmount().toString()); chargingBillPayExport.setTotal(""); chargingBillPayExports.add(chargingBillPayExport); i++; + bigDecimal = bigDecimal.add(tChargingOrder.getOrderAmount()); + } + if (!chargingBillPayExports.isEmpty()){ + chargingBillPayExports.get(0).setTotal(bigDecimal+""); + } + if (byId.getSiteId()==0){ + chargingBillExport.setSiteName("全站"); + }else{ + List<Site> data1 = siteClient.getSiteByIds(Arrays.asList(byId.getSiteId())).getData(); + if (data1!=null&&(!data1.isEmpty())){ + String name = data1.get(0).getName(); + chargingBillExport.setSiteName(name); + } + } chargingBillExport.setPaymentAmount(paymentAmount); chargingBillExport.setRefundAmount(refundAmount); diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java index 4ed7604..9672dc8 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java @@ -65,6 +65,13 @@ private AppUserCarClient appUserCarClient; @Override public ChargingBillVO chargingBillList1(ChargingListQuery dto) { + if (dto.getState()!=null){ + if (dto.getState()==1){ + dto.setState(2); + }else { + dto.setState(1); + } + } ChargingBillVO chargingBillVO = new ChargingBillVO(); String startTime1 = null; String startTime2 = null; @@ -256,8 +263,8 @@ serviceCharge = serviceCharge.add(tChargingOrder.getServiceCharge()); } // 累加平台手续费 - if (tChargingOrder.getServiceCharge()!=null){ - commissionAmount = commissionAmount.add(tChargingOrder.getServiceCharge().multiply(BigDecimal.valueOf(0.006)) + if (tChargingOrder.getOrderAmount()!=null){ + commissionAmount = commissionAmount.add(tChargingOrder.getOrderAmount().multiply(BigDecimal.valueOf(0.006)) .setScale(2,RoundingMode.HALF_DOWN)); } // 累加平台分佣 @@ -289,7 +296,7 @@ chargingBillListVO.setRefundAmount(refundAmount == null?BigDecimal.ZERO:orderAmount); chargingBillListVO.setElectrovalence(electrovalence == null?BigDecimal.ZERO:electrovalence); chargingBillListVO.setServiceCharge(serviceCharge == null?BigDecimal.ZERO:serviceCharge); - chargingBillListVO.setCommissionAmount(commissionAmount == null?BigDecimal.ZERO:commissionAmount); + chargingBillListVO.setCommissionAmount(commissionAmount == null?BigDecimal.ZERO:commissionAmount.setScale(2, RoundingMode.HALF_DOWN)); chargingBillListVO.setSharingAmount(sharingAmount == null?BigDecimal.ZERO:sharingAmount); chargingBillListVO.setChargingCapacity(chargingCapacity == null?BigDecimal.ZERO:chargingCapacity); chargingBillListVO.setBillMoney(chargingBillListVO.getPaymentAmount().subtract(chargingBillListVO.getRefundAmount()==null?BigDecimal.ZERO:chargingBillListVO.getRefundAmount()) @@ -345,8 +352,6 @@ chargingBillVO.setCategory(""); chargingBillVO.setExportList(tChargingOrders); for (TChargingOrder tChargingOrder : tChargingOrders) { - - // 累加实收金额 支付金额减去退款金额 if (tChargingOrder.getRefundAmount()!=null && tChargingOrder.getPaymentAmount()!=null){ paymentAmountTotal = paymentAmountTotal.add(tChargingOrder.getPaymentAmount()); @@ -369,8 +374,8 @@ serviceChargeTotal = serviceChargeTotal.add(tChargingOrder.getServiceCharge()); } // 累加平台手续费 - if (tChargingOrder.getServiceCharge()!=null){ - commissionAmountTotal = commissionAmountTotal.add(tChargingOrder.getServiceCharge().multiply(new BigDecimal("0.006"))); + if (tChargingOrder.getOrderAmount()!=null){ + commissionAmountTotal = commissionAmountTotal.add(tChargingOrder.getOrderAmount().multiply(new BigDecimal("0.006"))); } // 累加平台分佣 if (tChargingOrder.getSharingAmount()!=null){ @@ -391,13 +396,13 @@ } } chargingBillVO.setChargingCapacity(chargingCapacityTotal); - chargingBillVO.setPaymentAmount(paymentAmountTotal); - chargingBillVO.setOrderAmount(orderAmountTotal); - chargingBillVO.setElectrovalence(electrovalenceTotal); - chargingBillVO.setServiceCharge(serviceChargeTotal); + chargingBillVO.setPaymentAmount(paymentAmountTotal.setScale(2, RoundingMode.HALF_DOWN)); + chargingBillVO.setOrderAmount(orderAmountTotal.setScale(2, RoundingMode.HALF_DOWN)); + chargingBillVO.setElectrovalence(electrovalenceTotal.setScale(2, RoundingMode.HALF_DOWN)); + chargingBillVO.setServiceCharge(serviceChargeTotal.setScale(2, RoundingMode.HALF_DOWN)); chargingBillVO.setOrderCount(orderCount); - chargingBillVO.setCommissionAmount(commissionAmountTotal); - chargingBillVO.setSharingAmount(sharingAmountTotal); + chargingBillVO.setCommissionAmount(commissionAmountTotal.setScale(2, RoundingMode.HALF_DOWN)); + chargingBillVO.setSharingAmount(sharingAmountTotal.setScale(2, RoundingMode.HALF_DOWN)); chargingBillVO.setDiscount(discountTotal); @@ -495,8 +500,20 @@ BigDecimal chargingCapacity = new BigDecimal("0"); orderCount+=tChargingOrders.size(); chargingBillVO.setCategory(""); + chargingBillListVO.setOrderCount(tChargingOrders.size()); chargingBillVO.setExportList(tChargingOrders); + for (TChargingOrder tChargingOrder : tChargingOrders) { + if (tChargingOrder.getRechargePaymentType()!=null && tChargingOrder.getRechargePaymentType()==1){ + chargingBillListVO.setPayTypeName("微信商户"); + } + if (tChargingOrder.getRechargePaymentType()!=null && tChargingOrder.getRechargePaymentType()==2){ + if (StringUtils.hasLength(chargingBillListVO.getPayTypeName())){ + chargingBillListVO.setPayTypeName("微信商户+支付宝商户"); + }else{ + chargingBillListVO.setPayTypeName("支付宝商户"); + } + } List<Site> data = siteClient.getSiteByIds(Arrays.asList(tChargingOrder.getSiteId())).getData(); if (!data.isEmpty()){ chargingBillVO.setSiteName(data.get(0).getName()); @@ -607,8 +624,8 @@ serviceCharge = serviceCharge.add(tChargingOrder.getServiceCharge()); } // 累加平台手续费 - if (tChargingOrder.getServiceCharge()!=null){ - commissionAmount = commissionAmount.add(tChargingOrder.getServiceCharge().multiply(BigDecimal.valueOf(0.006)).setScale(2,RoundingMode.HALF_DOWN)); + if (tChargingOrder.getOrderAmount()!=null){ + commissionAmount = commissionAmount.add(tChargingOrder.getOrderAmount().multiply(BigDecimal.valueOf(0.006))); } // 累加平台分佣 if (tChargingOrder.getSharingAmount()!=null){ @@ -631,8 +648,8 @@ chargingBillListVO.setOrderAmount(orderAmount); chargingBillListVO.setElectrovalence(electrovalence); chargingBillListVO.setServiceCharge(serviceCharge.setScale(2,RoundingMode.HALF_DOWN)); - chargingBillListVO.setCommissionAmount(commissionAmount); - chargingBillListVO.setSharingAmount(sharingAmount); + chargingBillListVO.setCommissionAmount(commissionAmount.setScale(2,RoundingMode.HALF_DOWN)); + chargingBillListVO.setSharingAmount(sharingAmount.setScale(2,RoundingMode.HALF_DOWN)); chargingBillListVO.setChargingCapacity(chargingCapacity); switch (chargingBillListVO.getType()){ case 1: @@ -722,9 +739,9 @@ serviceChargeTotal = serviceChargeTotal.add(tChargingOrder.getServiceCharge()); } // 累加平台手续费 - if (tChargingOrder.getServiceCharge()!=null){ - commissionAmount = commissionAmount.add(tChargingOrder.getServiceCharge().multiply(new BigDecimal("0.006")).setScale(2, RoundingMode.HALF_DOWN)); - commissionAmountTotal = commissionAmountTotal.add(tChargingOrder.getServiceCharge().multiply(new BigDecimal("0.006")).setScale(2, RoundingMode.HALF_DOWN)); + if (tChargingOrder.getOrderAmount()!=null){ + commissionAmount = commissionAmount.add(tChargingOrder.getOrderAmount().multiply(new BigDecimal("0.006"))); + commissionAmountTotal = commissionAmountTotal.add(tChargingOrder.getOrderAmount().multiply(new BigDecimal("0.006"))); } // 累加平台分佣 if (tChargingOrder.getSharingAmount()!=null){ @@ -746,14 +763,14 @@ } } chargingBillVO.setChargingCapacity(chargingCapacityTotal); - chargingBillVO.setPaymentAmount(paymentAmountTotal); - chargingBillVO.setOrderAmount(orderAmountTotal); - chargingBillVO.setElectrovalence(electrovalenceTotal); - chargingBillVO.setServiceCharge(serviceChargeTotal); + chargingBillVO.setPaymentAmount(paymentAmountTotal.setScale(2, RoundingMode.HALF_DOWN)); + chargingBillVO.setOrderAmount(orderAmountTotal.setScale(2, RoundingMode.HALF_DOWN)); + chargingBillVO.setElectrovalence(electrovalenceTotal.setScale(2, RoundingMode.HALF_DOWN)); + chargingBillVO.setServiceCharge(serviceChargeTotal.setScale(2, RoundingMode.HALF_DOWN)); chargingBillVO.setOrderCount(orderCount); - chargingBillVO.setCommissionAmount(commissionAmountTotal); - chargingBillVO.setSharingAmount(sharingAmountTotal); - chargingBillVO.setDiscount(discountTotal); + chargingBillVO.setCommissionAmount(commissionAmountTotal.setScale(2, RoundingMode.HALF_DOWN)); + chargingBillVO.setSharingAmount(sharingAmountTotal.setScale(2, RoundingMode.HALF_DOWN)); + chargingBillVO.setDiscount(discountTotal.setScale(2, RoundingMode.HALF_DOWN)); pageInfo.setRecords(list); chargingBillVO.setList(pageInfo); return chargingBillVO; diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java index adc90fe..e9caa9b 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java @@ -1283,8 +1283,8 @@ chargingOrderListVO.setChargingCapacity(chargingOrderListVO.getElectricity()); chargingOrderListVO.setPaymentAmount(chargingOrderListVO.getPaymentAmount()); BigDecimal bigDecimal = new BigDecimal("0.006"); - if (chargingOrderListVO.getServiceCharge()!=null){ - chargingOrderListVO.setCommissionAmount(chargingOrderListVO.getServiceCharge().multiply(bigDecimal)); + if (chargingOrderListVO.getOrderAmount()!=null){ + chargingOrderListVO.setCommissionAmount(chargingOrderListVO.getOrderAmount().multiply(bigDecimal)); } chargingOrderListVO.setPaymentAmount(chargingOrderListVO.getResidualAmount()==null?chargingOrderListVO.getPaymentAmount():chargingOrderListVO.getPaymentAmount()); chargingOrderListVO.setUid(chargingOrderListVO.getId()+""); @@ -1500,8 +1500,8 @@ chargingOrderListInfoVO.setStatus(chargingOrder.getStatus()); BigDecimal bigDecimal = new BigDecimal("0.006"); - if (chargingOrder.getServiceCharge()!=null){ - chargingOrderListInfoVO.setCommissionAmount(chargingOrder.getServiceCharge().multiply(bigDecimal)); + if (chargingOrder.getOrderAmount()!=null){ + chargingOrderListInfoVO.setCommissionAmount(chargingOrder.getOrderAmount().multiply(bigDecimal)); } chargingOrderListInfoVO.setElectrovalence(chargingOrder.getElectrovalence()); chargingOrderListInfoVO.setServiceCharge(chargingOrder.getServiceCharge()); @@ -1865,7 +1865,7 @@ //开始将优惠券优惠的金额添加到明细中 BigDecimal couponDiscountAmount = order.getCouponDiscountAmount(); - if(couponDiscountAmount.compareTo(BigDecimal.ZERO) > 0){ + if(null != couponDiscountAmount && couponDiscountAmount.compareTo(BigDecimal.ZERO) > 0){ List<TChargingOrderAccountingStrategy> list = chargingOrderAccountingStrategyService.list(new LambdaQueryWrapper<TChargingOrderAccountingStrategy>().eq(TChargingOrderAccountingStrategy::getChargingOrderId, order.getId())); for (TChargingOrderAccountingStrategy chargingOrderAccountingStrategy : list) { BigDecimal periodServicePrice = chargingOrderAccountingStrategy.getPeriodServicePrice(); @@ -2290,10 +2290,10 @@ } if (tChargingOrder.getRefundStatus()!=null &&tChargingOrder.getRefundStatus() == 2){ // 如果成功退款 那么减去退款金额 - paymentAmount = paymentAmount.add(tChargingOrder.getPaymentAmount().subtract(tChargingOrder.getRefundAmount())); + paymentAmount = paymentAmount.add(tChargingOrder.getOrderAmount()); }else{ if (tChargingOrder.getPaymentAmount()!=null){ - paymentAmount = paymentAmount.add(tChargingOrder.getPaymentAmount()); + paymentAmount = paymentAmount.add(tChargingOrder.getOrderAmount()); } } } @@ -2301,8 +2301,8 @@ commissionAmount = sharingAmount.multiply(new BigDecimal("0.006")); // 订单手续费 订单支付金额 - 退款金额*0.6% orderCommission = paymentAmount.multiply(new BigDecimal("0.006")); - tSettlementConfirm.setSharingAmount(sharingAmount); - tSettlementConfirm.setCommissionAmount(commissionAmount); + tSettlementConfirm.setSharingAmount(sharingAmount.setScale(2, RoundingMode.HALF_DOWN)); + tSettlementConfirm.setCommissionAmount(commissionAmount.setScale(2, RoundingMode.HALF_DOWN)); tSettlementConfirm.setElectrovalence(electrovalence); // 服务费=总服务费-三费收费-交易手续费-交易手续费-服务费会员抵扣-服务费优惠券抵扣 tSettlementConfirm.setServiceCharge(serviceCharge.subtract(commissionAmount).subtract(sharingAmount).subtract(orderCommission).subtract(vipDiscount).subtract(couponDiscount)); diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderAppealServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderAppealServiceImpl.java index e294a86..e831ef1 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderAppealServiceImpl.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderAppealServiceImpl.java @@ -93,6 +93,14 @@ TChargingOrder tChargingOrder = chargingOrderMapper.selectById(orderAppeal.getOrderId()); orderAppealVO.setChargingOrder(tChargingOrder); if(Objects.nonNull(tChargingOrder)){ + SiteNameVO siteNameVO = chargingGunClient.getAllInfoById(tChargingOrder.getChargingGunId()).getData(); + if(Objects.nonNull(siteNameVO)){ + orderAppealVO.setGunName(siteNameVO.getGunName()); + orderAppealVO.setGunNumber(siteNameVO.getGunNumber()); + orderAppealVO.setPileName(siteNameVO.getPileName()); + orderAppealVO.setPileNumber(siteNameVO.getPileNumber()); + orderAppealVO.setSiteName(siteNameVO.getSiteName()); + } orderAppealVO.setEndMode(tChargingOrder.getEndMode()); } }else if (orderAppeal.getOrderType() == 2) { diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TShoppingOrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TShoppingOrderServiceImpl.java index 4783fdf..82c41ed 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TShoppingOrderServiceImpl.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TShoppingOrderServiceImpl.java @@ -63,37 +63,37 @@ */ @Service public class TShoppingOrderServiceImpl extends ServiceImpl<TShoppingOrderMapper, TShoppingOrder> implements TShoppingOrderService { - + @Resource private TokenService tokenService; - + @Resource private GoodsClient goodsClient; - + @Resource private CouponClient couponClient; @Resource private AppUserClient appUserClient; - + @Resource private AppUserAddressClient appUserAddressClient; @Resource private AppCouponClient appCouponClient; - + @Resource private WxPaymentClient wxPaymentClient; - + @Resource private AliPaymentClient aliPaymentClient; - + @Resource private TShoppingOrderRefundService shoppingOrderRefundService; - + @Autowired public RedisTemplate redisTemplate; - - - + + + @Override public TActivityVO activityStatistics(TActivityStatisticsQuery dto) { @@ -270,8 +270,8 @@ res.setGrantVip(grantVip); return res; } - - + + /** * 获取小程序商城购买订单列表 * @param query @@ -318,8 +318,8 @@ map.put("total", count); return map; } - - + + /** * 获取购买订单详情 * @param id @@ -369,8 +369,8 @@ } return info; } - - + + /** * 取消订单 * @param id @@ -391,10 +391,10 @@ if(shoppingOrder.getPaymentAmount().compareTo(bigDecimal) == 0 && shoppingOrder.getStatus() == 4){ return AjaxResult.error("订单已取消,不能重复操作"); } - + //退款金额 BigDecimal refundAmount = shoppingOrder.getPaymentAmount().subtract(bigDecimal); - + //先查询第三方订单状态订单是否退款 //支付方式(1=微信,2=支付宝) Integer paymentType = shoppingOrder.getPaymentType(); @@ -443,7 +443,7 @@ shoppingOrderRefund.setRefundRemark("全额退款"); shoppingOrderRefund.setRefundTotalAmount(refundAmount.add(bigDecimal)); shoppingOrderRefund.setPayAmount(shoppingOrder.getPaymentAmount()); - + shoppingOrder.setCancellationTime(LocalDateTime.now()); shoppingOrder.setCancellationId(shoppingOrder.getAppUserId()); if(1 == paymentType){ @@ -479,8 +479,8 @@ } return AjaxResult.success(); } - - + + /** * 商城订单取消订单微信退款处理 * @param out_refund_no 退款单号 @@ -505,7 +505,7 @@ shoppingOrder.setRefundStatus(2); shoppingOrder.setRefundTime(one.getRefundTime()); this.updateById(shoppingOrder); - + //商品 if(shoppingOrder.getOrderType() == 1){ //redis锁 和支付使用同一个锁 @@ -546,7 +546,7 @@ } return AjaxResult.success(); } - + /** * 获取未开票的订单列表 * @param query diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/task/TaskUtil.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/task/TaskUtil.java index de82b18..37f8bac 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/task/TaskUtil.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/task/TaskUtil.java @@ -52,7 +52,7 @@ // 每天凌晨12点执行的定时任务 -@Scheduled(cron = "0 0 12 * * ?") +@Scheduled(cron = "0 0 0 * * ?") //@Scheduled(fixedRate = 60000) public void taskMonth() { try { @@ -143,7 +143,7 @@ } // 每天晚上23:59:59执行的定时任务 - @Scheduled(cron = "0 0 23 1 * ?") + @Scheduled(cron = "0 0 23 * * ?") public void taskLastDay() { try { // 获取上个月的开始和结束日期 -- Gitblit v1.7.1