mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-05-08 20:10:16 +08:00
Merge branch 'dev' of http://192.168.2.2:8099/jsowell/jsowell-charger-web into dev
This commit is contained in:
@@ -590,11 +590,6 @@ public class OrderService {
|
|||||||
// push远程停机指令
|
// push远程停机指令
|
||||||
pileRemoteService.remoteStopCharging(dto.getPileSn(), dto.getConnectorCode());
|
pileRemoteService.remoteStopCharging(dto.getPileSn(), dto.getConnectorCode());
|
||||||
|
|
||||||
// 桩计算的消费金额
|
|
||||||
|
|
||||||
// 对比一下,是否需要退款
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -123,9 +123,21 @@ public class OrderBasicInfo extends BaseEntity {
|
|||||||
/**
|
/**
|
||||||
* 订单总金额 = 电费总金额 + 服务费总金额
|
* 订单总金额 = 电费总金额 + 服务费总金额
|
||||||
*/
|
*/
|
||||||
@Excel(name = "订单总金额 = 电费总金额 + 服务费总金额")
|
@Excel(name = "订单总金额")
|
||||||
private BigDecimal orderAmount;
|
private BigDecimal orderAmount;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 虚拟金额
|
||||||
|
*/
|
||||||
|
@Excel(name = "虚拟金额")
|
||||||
|
private BigDecimal virtualAmount;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 结算金额
|
||||||
|
*/
|
||||||
|
@Excel(name = "结算金额")
|
||||||
|
private BigDecimal settleAmount;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 充电开始时间
|
* 充电开始时间
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -14,15 +14,7 @@ import com.jsowell.common.core.domain.ykc.RealTimeMonitorData;
|
|||||||
import com.jsowell.common.core.domain.ykc.TransactionRecordsData;
|
import com.jsowell.common.core.domain.ykc.TransactionRecordsData;
|
||||||
import com.jsowell.common.core.redis.RedisCache;
|
import com.jsowell.common.core.redis.RedisCache;
|
||||||
import com.jsowell.common.enums.MemberWalletEnum;
|
import com.jsowell.common.enums.MemberWalletEnum;
|
||||||
import com.jsowell.common.enums.ykc.BillingTimeEnum;
|
import com.jsowell.common.enums.ykc.*;
|
||||||
import com.jsowell.common.enums.ykc.OrderPayModeEnum;
|
|
||||||
import com.jsowell.common.enums.ykc.OrderPayStatusEnum;
|
|
||||||
import com.jsowell.common.enums.ykc.OrderStatusEnum;
|
|
||||||
import com.jsowell.common.enums.ykc.PayModeEnum;
|
|
||||||
import com.jsowell.common.enums.ykc.PileConnectorDataBaseStatusEnum;
|
|
||||||
import com.jsowell.common.enums.ykc.ReturnCodeEnum;
|
|
||||||
import com.jsowell.common.enums.ykc.StartModeEnum;
|
|
||||||
import com.jsowell.common.enums.ykc.StartTypeEnum;
|
|
||||||
import com.jsowell.common.exception.BusinessException;
|
import com.jsowell.common.exception.BusinessException;
|
||||||
import com.jsowell.common.util.DateUtils;
|
import com.jsowell.common.util.DateUtils;
|
||||||
import com.jsowell.common.util.SecurityUtils;
|
import com.jsowell.common.util.SecurityUtils;
|
||||||
@@ -30,37 +22,10 @@ import com.jsowell.common.util.StringUtils;
|
|||||||
import com.jsowell.common.util.bean.BeanUtils;
|
import com.jsowell.common.util.bean.BeanUtils;
|
||||||
import com.jsowell.common.util.id.IdUtils;
|
import com.jsowell.common.util.id.IdUtils;
|
||||||
import com.jsowell.common.util.id.SnowflakeIdWorker;
|
import com.jsowell.common.util.id.SnowflakeIdWorker;
|
||||||
import com.jsowell.pile.domain.OrderAbnormalRecord;
|
import com.jsowell.pile.domain.*;
|
||||||
import com.jsowell.pile.domain.OrderBasicInfo;
|
import com.jsowell.pile.dto.*;
|
||||||
import com.jsowell.pile.domain.OrderDetail;
|
|
||||||
import com.jsowell.pile.domain.OrderMonitorData;
|
|
||||||
import com.jsowell.pile.domain.OrderPayRecord;
|
|
||||||
import com.jsowell.pile.domain.PileAuthCard;
|
|
||||||
import com.jsowell.pile.domain.PileBasicInfo;
|
|
||||||
import com.jsowell.pile.domain.WxpayCallbackRecord;
|
|
||||||
import com.jsowell.pile.domain.WxpayRefundCallback;
|
|
||||||
import com.jsowell.pile.dto.GenerateOrderDTO;
|
|
||||||
import com.jsowell.pile.dto.IndexQueryDTO;
|
|
||||||
import com.jsowell.pile.dto.QueryOrderDTO;
|
|
||||||
import com.jsowell.pile.dto.QueryPersonPileDTO;
|
|
||||||
import com.jsowell.pile.dto.QueryStartChargeDTO;
|
|
||||||
import com.jsowell.pile.dto.QueryStationInfoDTO;
|
|
||||||
import com.jsowell.pile.dto.RefundableWxPayOrderData;
|
|
||||||
import com.jsowell.pile.mapper.OrderBasicInfoMapper;
|
import com.jsowell.pile.mapper.OrderBasicInfoMapper;
|
||||||
import com.jsowell.pile.service.IMemberBasicInfoService;
|
import com.jsowell.pile.service.*;
|
||||||
import com.jsowell.pile.service.IOrderAbnormalRecordService;
|
|
||||||
import com.jsowell.pile.service.IOrderBasicInfoService;
|
|
||||||
import com.jsowell.pile.service.IOrderPayRecordService;
|
|
||||||
import com.jsowell.pile.service.IPileAuthCardService;
|
|
||||||
import com.jsowell.pile.service.IPileBasicInfoService;
|
|
||||||
import com.jsowell.pile.service.IPileBillingTemplateService;
|
|
||||||
import com.jsowell.pile.service.IPileConnectorInfoService;
|
|
||||||
import com.jsowell.pile.service.IPileMerchantInfoService;
|
|
||||||
import com.jsowell.pile.service.IPileStationInfoService;
|
|
||||||
import com.jsowell.pile.service.OrderMonitorDataService;
|
|
||||||
import com.jsowell.pile.service.WechatPayService;
|
|
||||||
import com.jsowell.pile.service.WxpayCallbackRecordService;
|
|
||||||
import com.jsowell.pile.service.WxpayRefundCallbackService;
|
|
||||||
import com.jsowell.pile.transaction.dto.OrderTransactionDTO;
|
import com.jsowell.pile.transaction.dto.OrderTransactionDTO;
|
||||||
import com.jsowell.pile.transaction.service.TransactionService;
|
import com.jsowell.pile.transaction.service.TransactionService;
|
||||||
import com.jsowell.pile.vo.base.OrderAmountDetailVO;
|
import com.jsowell.pile.vo.base.OrderAmountDetailVO;
|
||||||
@@ -71,12 +36,7 @@ import com.jsowell.pile.vo.uniapp.MemberVO;
|
|||||||
import com.jsowell.pile.vo.uniapp.OrderVO;
|
import com.jsowell.pile.vo.uniapp.OrderVO;
|
||||||
import com.jsowell.pile.vo.uniapp.PersonPileConnectorSumInfoVO;
|
import com.jsowell.pile.vo.uniapp.PersonPileConnectorSumInfoVO;
|
||||||
import com.jsowell.pile.vo.uniapp.SendMessageVO;
|
import com.jsowell.pile.vo.uniapp.SendMessageVO;
|
||||||
import com.jsowell.pile.vo.web.BillingTemplateVO;
|
import com.jsowell.pile.vo.web.*;
|
||||||
import com.jsowell.pile.vo.web.IndexOrderInfoVO;
|
|
||||||
import com.jsowell.pile.vo.web.OrderListVO;
|
|
||||||
import com.jsowell.pile.vo.web.OrderTotalDataVO;
|
|
||||||
import com.jsowell.pile.vo.web.PileConnectorInfoVO;
|
|
||||||
import com.jsowell.pile.vo.web.UpdateMemberBalanceDTO;
|
|
||||||
import com.jsowell.wxpay.common.WeChatPayParameter;
|
import com.jsowell.wxpay.common.WeChatPayParameter;
|
||||||
import com.jsowell.wxpay.dto.WeChatRefundDTO;
|
import com.jsowell.wxpay.dto.WeChatRefundDTO;
|
||||||
import com.jsowell.wxpay.dto.WechatSendMsgDTO;
|
import com.jsowell.wxpay.dto.WechatSendMsgDTO;
|
||||||
@@ -92,11 +52,7 @@ import org.springframework.transaction.annotation.Transactional;
|
|||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
import java.util.Comparator;
|
import java.util.*;
|
||||||
import java.util.Date;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
|
||||||
import java.util.Objects;
|
|
||||||
import java.util.concurrent.CompletableFuture;
|
import java.util.concurrent.CompletableFuture;
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
import java.util.function.Function;
|
import java.util.function.Function;
|
||||||
@@ -545,6 +501,9 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
|
|||||||
orderAmount = payAmount;
|
orderAmount = payAmount;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 虚拟金额 指订单消费中使用赠送金额支付的部分
|
||||||
|
BigDecimal virtualAmount = BigDecimal.ZERO;
|
||||||
|
|
||||||
// 剩余需要退回的金额 residue
|
// 剩余需要退回的金额 residue
|
||||||
BigDecimal residue = payAmount.subtract(orderAmount);
|
BigDecimal residue = payAmount.subtract(orderAmount);
|
||||||
if (residue.compareTo(BigDecimal.ZERO) > 0) {
|
if (residue.compareTo(BigDecimal.ZERO) > 0) {
|
||||||
@@ -584,6 +543,8 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
|
|||||||
if (returnGift != null && giftPayRecord != null) {
|
if (returnGift != null && giftPayRecord != null) {
|
||||||
giftPayRecord.setRefundAmount(returnGift);
|
giftPayRecord.setRefundAmount(returnGift);
|
||||||
updatePayRecordList.add(giftPayRecord);
|
updatePayRecordList.add(giftPayRecord);
|
||||||
|
// 支付的赠送金额-退回的赠送金额 = 实际使用赠送金额消费的部分
|
||||||
|
virtualAmount = giftPay.subtract(returnGift);
|
||||||
}
|
}
|
||||||
UpdateMemberBalanceDTO updateMemberBalanceDTO = UpdateMemberBalanceDTO.builder()
|
UpdateMemberBalanceDTO updateMemberBalanceDTO = UpdateMemberBalanceDTO.builder()
|
||||||
.memberId(orderBasicInfo.getMemberId())
|
.memberId(orderBasicInfo.getMemberId())
|
||||||
@@ -626,6 +587,8 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
|
|||||||
|
|
||||||
// 把交易记录中的用电量,金额等信息 更新到orderBasicInfo和orderDetail
|
// 把交易记录中的用电量,金额等信息 更新到orderBasicInfo和orderDetail
|
||||||
orderBasicInfo.setOrderAmount(orderAmount); // 订单总金额
|
orderBasicInfo.setOrderAmount(orderAmount); // 订单总金额
|
||||||
|
orderBasicInfo.setVirtualAmount(virtualAmount); // 虚拟金额
|
||||||
|
orderBasicInfo.setSettleAmount(orderAmount.subtract(virtualAmount)); // 结算金额
|
||||||
orderBasicInfo.setOrderStatus(OrderStatusEnum.ORDER_COMPLETE.getValue());
|
orderBasicInfo.setOrderStatus(OrderStatusEnum.ORDER_COMPLETE.getValue());
|
||||||
orderBasicInfo.setReason(data.getStopReasonMsg()); // 充电停止原因
|
orderBasicInfo.setReason(data.getStopReasonMsg()); // 充电停止原因
|
||||||
orderBasicInfo.setSettlementTime(DateUtils.getNowDate()); // 结算时间
|
orderBasicInfo.setSettlementTime(DateUtils.getNowDate()); // 结算时间
|
||||||
|
|||||||
@@ -20,6 +20,8 @@
|
|||||||
<result property="payAmount" column="pay_amount"/>
|
<result property="payAmount" column="pay_amount"/>
|
||||||
<result property="payTime" column="pay_time"/>
|
<result property="payTime" column="pay_time"/>
|
||||||
<result property="orderAmount" column="order_amount"/>
|
<result property="orderAmount" column="order_amount"/>
|
||||||
|
<result property="virtualAmount" column="virtual_amount"/>
|
||||||
|
<result property="settleAmount" column="settle_amount"/>
|
||||||
<result property="chargeStartTime" column="charge_start_time"/>
|
<result property="chargeStartTime" column="charge_start_time"/>
|
||||||
<result property="chargeEndTime" column="charge_end_time"/>
|
<result property="chargeEndTime" column="charge_end_time"/>
|
||||||
<result property="startType" column="start_type"/>
|
<result property="startType" column="start_type"/>
|
||||||
@@ -98,6 +100,8 @@
|
|||||||
pay_amount,
|
pay_amount,
|
||||||
pay_time,
|
pay_time,
|
||||||
order_amount,
|
order_amount,
|
||||||
|
virtual_amount,
|
||||||
|
settle_amount,
|
||||||
charge_start_time,
|
charge_start_time,
|
||||||
charge_end_time,
|
charge_end_time,
|
||||||
start_type,
|
start_type,
|
||||||
@@ -320,6 +324,12 @@
|
|||||||
<if test="orderAmount != null">
|
<if test="orderAmount != null">
|
||||||
order_amount,
|
order_amount,
|
||||||
</if>
|
</if>
|
||||||
|
<if test="virtualAmount != null">
|
||||||
|
virtual_amount,
|
||||||
|
</if>
|
||||||
|
<if test="settleAmount != null">
|
||||||
|
settle_amount,
|
||||||
|
</if>
|
||||||
<if test="chargeStartTime != null">
|
<if test="chargeStartTime != null">
|
||||||
charge_start_time,
|
charge_start_time,
|
||||||
</if>
|
</if>
|
||||||
@@ -499,6 +509,12 @@
|
|||||||
<if test="orderAmount != null">
|
<if test="orderAmount != null">
|
||||||
order_amount = #{orderAmount},
|
order_amount = #{orderAmount},
|
||||||
</if>
|
</if>
|
||||||
|
<if test="virtualAmount != null">
|
||||||
|
virtual_amount = #{virtualAmount},
|
||||||
|
</if>
|
||||||
|
<if test="settleAmount != null">
|
||||||
|
settle_amount = #{settleAmount},
|
||||||
|
</if>
|
||||||
<if test="chargeStartTime != null">
|
<if test="chargeStartTime != null">
|
||||||
charge_start_time = #{chargeStartTime},
|
charge_start_time = #{chargeStartTime},
|
||||||
</if>
|
</if>
|
||||||
|
|||||||
@@ -208,7 +208,9 @@
|
|||||||
<el-table-column label="终止soc" align="center" prop="endSoc" />
|
<el-table-column label="终止soc" align="center" prop="endSoc" />
|
||||||
<el-table-column label="开始充电时间" align="center" prop="chargeStartTime" width="180"/>
|
<el-table-column label="开始充电时间" align="center" prop="chargeStartTime" width="180"/>
|
||||||
<el-table-column label="结束充电时间" align="center" prop="chargeEndTime" width="180"/>
|
<el-table-column label="结束充电时间" align="center" prop="chargeEndTime" width="180"/>
|
||||||
<el-table-column label="订单总金额" align="center" prop="orderAmount" width="100px" fixed="right"/>
|
<el-table-column label="总消费金额" align="center" prop="orderAmount" width="100px" fixed="right"/>
|
||||||
|
<el-table-column label="虚拟金额" align="center" prop="orderAmount" width="100px" fixed="right"/>
|
||||||
|
<el-table-column label="对账金额" align="center" prop="orderAmount" width="100px" fixed="right"/>
|
||||||
<!--<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
<!--<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-button
|
<el-button
|
||||||
|
|||||||
Reference in New Issue
Block a user