diff --git a/common-ruoyi/ruoyi-common/src/main/java/com/ruoyi/common/utils/MathUtils.java b/common-ruoyi/ruoyi-common/src/main/java/com/ruoyi/common/utils/MathUtils.java index a36f0c3..a577090 100644 --- a/common-ruoyi/ruoyi-common/src/main/java/com/ruoyi/common/utils/MathUtils.java +++ b/common-ruoyi/ruoyi-common/src/main/java/com/ruoyi/common/utils/MathUtils.java @@ -137,7 +137,7 @@ public class MathUtils { for (int i = 1; i < values.length; i++) { BigDecimal value = values[i]; if (value == null) { - continue; + return null; } if (min == null || value.compareTo(min) < 0) { min = value; diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/bonus/mapper/BonusMapper.xml b/ruoyi-service/src/main/java/com/ruoyi/bst/bonus/mapper/BonusMapper.xml index f7f43ed..e56b87b 100644 --- a/ruoyi-service/src/main/java/com/ruoyi/bst/bonus/mapper/BonusMapper.xml +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/bonus/mapper/BonusMapper.xml @@ -282,13 +282,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + bb.status = 'WAIT_DIVIDE', + bb.wait_amount = bb.wait_amount + bb.invalid_amount, + bb.invalid_amount = 0 where bb.id in #{item.id} and - and bb.status = 'WAIT_DIVIDE' + and bb.status in ('INVALID', 'WAIT_DIVIDE') diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/bonus/service/impl/BonusServiceImpl.java b/ruoyi-service/src/main/java/com/ruoyi/bst/bonus/service/impl/BonusServiceImpl.java index 3aef536..4713ce3 100644 --- a/ruoyi-service/src/main/java/com/ruoyi/bst/bonus/service/impl/BonusServiceImpl.java +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/bonus/service/impl/BonusServiceImpl.java @@ -201,7 +201,7 @@ public class BonusServiceImpl implements BonusService { if (CollectionUtils.isEmptyElement(list)) { return 0; } - + // 获取用户列表 List userList = userService.selectByIds(list.stream() .filter(item -> BonusArrivalType.userList().contains(item.getArrivalType())) diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/order/domain/Order.java b/ruoyi-service/src/main/java/com/ruoyi/bst/order/domain/Order.java index b1a36e9..342a626 100644 --- a/ruoyi-service/src/main/java/com/ruoyi/bst/order/domain/Order.java +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/order/domain/Order.java @@ -190,4 +190,20 @@ public class Order extends BaseEntity { @ApiModelProperty("审核备注") private String verifyRemark; + @Excel(name = "实收骑行费") + @ApiModelProperty("实收骑行费") + private BigDecimal actualRidingFee; + + @Excel(name = "实收调度费") + @ApiModelProperty("实收调度费") + private BigDecimal actualDispatchFee; + + @Excel(name = "实收管理费") + @ApiModelProperty("实收管理费") + private BigDecimal actualManageFee; + + @Excel(name = "实收车损费") + @ApiModelProperty("实收车损费") + private BigDecimal actualDeductionFee; + } diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/order/domain/OrderVO.java b/ruoyi-service/src/main/java/com/ruoyi/bst/order/domain/OrderVO.java index 0dfc240..90a2f82 100644 --- a/ruoyi-service/src/main/java/com/ruoyi/bst/order/domain/OrderVO.java +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/order/domain/OrderVO.java @@ -69,6 +69,10 @@ public class OrderVO extends Order implements IotDevice { @ApiModelProperty("管理员退款金额") private BigDecimal payAdminRefund; + // 实收金额 = 最小值(支付金额,结算金额) - 退款金额 - 退款中金额 + @ApiModelProperty("实收金额") + private BigDecimal actualAmount; + @Override public String mac() { return this.deviceMac; diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/order/domain/query/OrderRefundQuery.java b/ruoyi-service/src/main/java/com/ruoyi/bst/order/domain/query/OrderRefundQuery.java index 2af9881..2b7ae15 100644 --- a/ruoyi-service/src/main/java/com/ruoyi/bst/order/domain/query/OrderRefundQuery.java +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/order/domain/query/OrderRefundQuery.java @@ -16,4 +16,7 @@ public class OrderRefundQuery extends OrderQuery { @ApiModelProperty("退款状态列表") private List refundStatusList; + + @ApiModelProperty("退款类型") + private String refundType; } diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/order/mapper/OrderMapper.java b/ruoyi-service/src/main/java/com/ruoyi/bst/order/mapper/OrderMapper.java index f9afbc0..42c5795 100644 --- a/ruoyi-service/src/main/java/com/ruoyi/bst/order/mapper/OrderMapper.java +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/order/mapper/OrderMapper.java @@ -179,4 +179,44 @@ public interface OrderMapper { */ BigDecimal selectSumOfActualAmount(@Param("query") OrderQuery query); + /** + * 查询订单骑行费 + * + * @param query 查询条件 + * @return 结果 + */ + BigDecimal selectSumOfActualRiddingFee(@Param("query") OrderQuery query); + + /** + * 查询订单车损费 + * + * @param query 查询条件 + * @return 结果 + */ + BigDecimal selectSumOfActualDeductionFee(@Param("query") OrderQuery query); + + /** + * 查询订单调度费 + * + * @param query 查询条件 + * @return 结果 + */ + BigDecimal selectSumOfActualDispatchFee(@Param("query") OrderQuery query); + + /** + * 查询订单管理费 + * + * @param query 查询条件 + * @return 结果 + */ + BigDecimal selectSumOfActualManageFee(@Param("query") OrderQuery query); + + /** + * 查询订单总金额 + * + * @param query 查询条件 + * @return 结果 + */ + BigDecimal selectSumOfActualTotalAmount(@Param("query") OrderQuery query); + } diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/order/mapper/OrderMapper.xml b/ruoyi-service/src/main/java/com/ruoyi/bst/order/mapper/OrderMapper.xml index 69517b3..2f9c928 100644 --- a/ruoyi-service/src/main/java/com/ruoyi/bst/order/mapper/OrderMapper.xml +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/order/mapper/OrderMapper.xml @@ -9,6 +9,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + bp.amount - bp.refunded - bp.refunding + + select bo.id, @@ -52,6 +56,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" bo.area_user_id, bo.area_agent_id, bo.cancel_remark, + bo.actual_riding_fee, + bo.actual_dispatch_fee, + bo.actual_manage_fee, + bo.actual_deduction_fee, + as actual_amount, ba.name as area_name, su.nick_name as user_name, su.user_name as user_phone, @@ -175,6 +184,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and date(br.create_time) >= #{query.refundCreateDateRange[0]} and date(br.create_time) <= #{query.refundCreateDateRange[1]} + + and br.type = #{query.refundType} + + select sum() + from + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/order/service/OrderDashboard.java b/ruoyi-service/src/main/java/com/ruoyi/bst/order/service/OrderDashboard.java index 2b03f14..4a02e5d 100644 --- a/ruoyi-service/src/main/java/com/ruoyi/bst/order/service/OrderDashboard.java +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/order/service/OrderDashboard.java @@ -92,4 +92,30 @@ public interface OrderDashboard { * 查询订单实收金额 */ BigDecimal selectSumOfActualAmount(OrderQuery query); + + /** + * 查询订单骑行费 + */ + BigDecimal selectSumOfActualRiddingFee(OrderQuery query); + + /** + * 查询订单车损费 + */ + BigDecimal selectSumOfActualDeductionFee(OrderQuery query); + + /** + * 查询订单调度费 + */ + BigDecimal selectSumOfActualDispatchFee(OrderQuery query); + + /** + * 查询订单管理费 + */ + BigDecimal selectSumOfActualManageFee(OrderQuery query); + + /** + * 查询订单总金额 + */ + BigDecimal selectSumOfActualTotalAmount(OrderQuery query); + } diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/order/service/impl/OrderConverterImpl.java b/ruoyi-service/src/main/java/com/ruoyi/bst/order/service/impl/OrderConverterImpl.java index 5f6ed33..1830abf 100644 --- a/ruoyi-service/src/main/java/com/ruoyi/bst/order/service/impl/OrderConverterImpl.java +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/order/service/impl/OrderConverterImpl.java @@ -337,6 +337,9 @@ public class OrderConverterImpl implements OrderConverter{ data.setReturnType(order.getReturnType()); data.setEndAreaSubName(order.getEndAreaSubName()); data.setEndReason(order.getEndReason()); + data.setActualRidingFee(order.getActualRidingFee()); + data.setActualDispatchFee(order.getActualDispatchFee()); + data.setActualManageFee(order.getActualManageFee()); return data; } diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/order/service/impl/OrderDashboardImpl.java b/ruoyi-service/src/main/java/com/ruoyi/bst/order/service/impl/OrderDashboardImpl.java index 4020b11..cacf028 100644 --- a/ruoyi-service/src/main/java/com/ruoyi/bst/order/service/impl/OrderDashboardImpl.java +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/order/service/impl/OrderDashboardImpl.java @@ -118,4 +118,29 @@ public class OrderDashboardImpl implements OrderDashboard { public BigDecimal selectSumOfActualAmount(OrderQuery query) { return MathUtils.dv(orderMapper.selectSumOfActualAmount(query)); } + + @Override + public BigDecimal selectSumOfActualRiddingFee(OrderQuery query) { + return MathUtils.dv(orderMapper.selectSumOfActualRiddingFee(query)); + } + + @Override + public BigDecimal selectSumOfActualDeductionFee(OrderQuery query) { + return MathUtils.dv(orderMapper.selectSumOfActualDeductionFee(query)); + } + + @Override + public BigDecimal selectSumOfActualDispatchFee(OrderQuery query) { + return MathUtils.dv(orderMapper.selectSumOfActualDispatchFee(query)); + } + + @Override + public BigDecimal selectSumOfActualManageFee(OrderQuery query) { + return MathUtils.dv(orderMapper.selectSumOfActualManageFee(query)); + } + + @Override + public BigDecimal selectSumOfActualTotalAmount(OrderQuery query) { + return MathUtils.dv(orderMapper.selectSumOfActualTotalAmount(query)); + } } diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/order/service/impl/OrderPayHandlerImpl.java b/ruoyi-service/src/main/java/com/ruoyi/bst/order/service/impl/OrderPayHandlerImpl.java index b059118..6c0938c 100644 --- a/ruoyi-service/src/main/java/com/ruoyi/bst/order/service/impl/OrderPayHandlerImpl.java +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/order/service/impl/OrderPayHandlerImpl.java @@ -6,7 +6,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.support.TransactionTemplate; -import com.ruoyi.bst.bonus.domain.enums.BonusBstType; import com.ruoyi.bst.bonus.service.BonusService; import com.ruoyi.bst.device.domain.enums.DeviceUnLockType; import com.ruoyi.bst.device.domain.vo.DeviceIotVO; @@ -76,10 +75,6 @@ public class OrderPayHandlerImpl implements PayHandler { int rows = orderMapper.updateByQuery(data, query); ServiceUtil.assertion(rows != 1, "更新ID为%s的订单失败", order.getId()); - // 分成更新为待分成状态 - boolean valid = bonusService.validByBst(BonusBstType.ORDER, order.getId()); - ServiceUtil.assertion(!valid, "更新ID为%s的订单分成失败", order.getId()); - // 开始使用订单设备 int start = orderDeviceService.start(orderDevice); ServiceUtil.assertion(start != 1, "开始使用ID为%s的订单设备失败", orderDevice.getId()); diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/order/service/impl/OrderServiceImpl.java b/ruoyi-service/src/main/java/com/ruoyi/bst/order/service/impl/OrderServiceImpl.java index c6a4140..1085591 100644 --- a/ruoyi-service/src/main/java/com/ruoyi/bst/order/service/impl/OrderServiceImpl.java +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/order/service/impl/OrderServiceImpl.java @@ -477,6 +477,17 @@ public class OrderServiceImpl implements OrderService { order.setDispatchFee(orderFee.getDispatchFee()); order.setRidingFee(orderFee.getRidingFee()); order.setTotalFee(orderFee.getTotalFee()); + + // 实收金额 + BigDecimal remain = order.getPayedAmount(); + // 骑行费实收 + order.setActualRidingFee(MathUtils.min(remain, order.getRidingFee())); + remain = MathUtils.subtractDecimal(remain, order.getActualRidingFee()); + // 调度费实收 + order.setActualDispatchFee(MathUtils.min(remain, order.getDispatchFee())); + remain = MathUtils.subtractDecimal(remain, order.getActualDispatchFee()); + // 管理费实收 + order.setActualManageFee(MathUtils.min(remain, order.getManageFee())); } private int refundRemainAmount(OrderVO order) { diff --git a/ruoyi-service/src/main/java/com/ruoyi/dashboard/constants/StatKeys.java b/ruoyi-service/src/main/java/com/ruoyi/dashboard/constants/StatKeys.java index 9053508..bd065ee 100644 --- a/ruoyi-service/src/main/java/com/ruoyi/dashboard/constants/StatKeys.java +++ b/ruoyi-service/src/main/java/com/ruoyi/dashboard/constants/StatKeys.java @@ -21,7 +21,7 @@ public class StatKeys { public static final String ORDER_STATUS_COUNT = "order_status_count"; // 订单完成状态数量 public static final String ORDER_END_STATUS_COUNT = "order_end_status_count"; - // 订单实收金额 + // 订单总金额 public static final String ORDER_ACTUAL_AMOUNT = "order_actual_amount"; // 订单骑行费 public static final String ORDER_RIDDING_FEE = "order_ridding_fee"; diff --git a/ruoyi-service/src/main/java/com/ruoyi/dashboard/domain/revenueStat/RevenueStatQuery.java b/ruoyi-service/src/main/java/com/ruoyi/dashboard/domain/revenueStat/RevenueStatQuery.java index e7cf6c8..f33b4cc 100644 --- a/ruoyi-service/src/main/java/com/ruoyi/dashboard/domain/revenueStat/RevenueStatQuery.java +++ b/ruoyi-service/src/main/java/com/ruoyi/dashboard/domain/revenueStat/RevenueStatQuery.java @@ -7,6 +7,7 @@ import org.springframework.format.annotation.DateTimeFormat; import com.ruoyi.bst.area.domain.AreaQuery; import com.ruoyi.bst.areaJoin.domain.AreaJoinQuery; +import com.ruoyi.bst.areaJoin.domain.enums.AreaJoinPermission; import com.ruoyi.bst.bonus.domain.BonusQuery; import com.ruoyi.bst.bonus.domain.enums.BonusStatus; import com.ruoyi.bst.bonusRefund.domain.BonusRefundQuery; @@ -15,6 +16,8 @@ import com.ruoyi.bst.fault.domain.FaultQuery; import com.ruoyi.bst.mchApply.domain.MchApplyQuery; import com.ruoyi.bst.order.domain.OrderQuery; import com.ruoyi.bst.order.domain.enums.OrderStatus; +import com.ruoyi.bst.order.domain.query.OrderRefundQuery; +import com.ruoyi.bst.refund.domain.enums.RefundStatus; import com.ruoyi.bst.withdraw.domain.WithdrawQuery; import io.swagger.annotations.ApiModelProperty; @@ -45,6 +48,7 @@ public class RevenueStatQuery { query.setUserId(userId); query.setAreaId(areaId); query.setScope(scope); + query.addAreaPermission(AreaJoinPermission.ORDER_VIEW.getCode()); return query; } @@ -75,6 +79,7 @@ public class RevenueStatQuery { public OrderQuery toOrderQueryForEnd() { OrderQuery query = baseOrderQuery(); query.setEndDateRange(dateRange); + query.setStatusList(OrderStatus.finishedList()); return query; } @@ -96,6 +101,7 @@ public class RevenueStatQuery { query.setId(areaId); query.setUserId(userId); query.setScope(scope); + query.addAreaPermission(AreaJoinPermission.AREA_VIEW.getCode()); return query; } @@ -114,6 +120,7 @@ public class RevenueStatQuery { query.setAreaId(areaId); query.setMchId(userId); query.setScope(scope); + query.addAreaPermission(AreaJoinPermission.DEVICE_VIEW.getCode()); return query; } @@ -139,6 +146,19 @@ public class RevenueStatQuery { query.setStoreId(userId); query.setAreaId(areaId); query.setScope(scope); + query.addAreaPermission(AreaJoinPermission.FAULT_VIEW.getCode()); + return query; + } + + public OrderRefundQuery toOrderRefundQuery() { + OrderRefundQuery query = new OrderRefundQuery(); + query.setStatusList(OrderStatus.valid()); + query.setRefundStatusList(RefundStatus.valid()); + query.setRefundCreateDateRange(dateRange); + query.setBonusUserId(userId); + query.setAreaId(areaId); + query.setScope(scope); + query.addAreaPermission(AreaJoinPermission.ORDER_VIEW.getCode()); return query; } } diff --git a/ruoyi-service/src/main/java/com/ruoyi/dashboard/domain/revenueStat/RevenueStatVO.java b/ruoyi-service/src/main/java/com/ruoyi/dashboard/domain/revenueStat/RevenueStatVO.java index 5bbb2d6..644d4f7 100644 --- a/ruoyi-service/src/main/java/com/ruoyi/dashboard/domain/revenueStat/RevenueStatVO.java +++ b/ruoyi-service/src/main/java/com/ruoyi/dashboard/domain/revenueStat/RevenueStatVO.java @@ -16,6 +16,8 @@ public class RevenueStatVO { private Integer orderUserCount; @ApiModelProperty("订单总金额") private BigDecimal orderActualTotalAmount; + @ApiModelProperty("订单实收金额") + private BigDecimal orderActualAmount; @ApiModelProperty("订单骑行费") private BigDecimal orderRiddingFee; @ApiModelProperty("订单车损费") @@ -28,6 +30,10 @@ public class RevenueStatVO { private Integer orderCount; @ApiModelProperty("订单退款金额") private BigDecimal orderRefundAmount; + @ApiModelProperty("订单自动退款金额") + private BigDecimal orderAutoRefundAmount; + @ApiModelProperty("订单人工退款金额") + private BigDecimal orderAdminRefundAmount; @ApiModelProperty("订单状态数量(创建时间)") private Map orderStatusMap; @ApiModelProperty("订单状态数量(完成时间)") @@ -43,10 +49,6 @@ public class RevenueStatVO { } return count; } - @ApiModelProperty("订单实收金额") - public BigDecimal getOrderActualAmount() { - return MathUtils.subtractDecimal(orderActualTotalAmount, orderRefundAmount); - } @ApiModelProperty("分成总金额") private BigDecimal bonusAmount; diff --git a/ruoyi-service/src/main/java/com/ruoyi/dashboard/service/DashboardService.java b/ruoyi-service/src/main/java/com/ruoyi/dashboard/service/DashboardService.java index 6a2cf64..5f7162b 100644 --- a/ruoyi-service/src/main/java/com/ruoyi/dashboard/service/DashboardService.java +++ b/ruoyi-service/src/main/java/com/ruoyi/dashboard/service/DashboardService.java @@ -16,10 +16,13 @@ import com.ruoyi.bst.device.service.DeviceDashboard; import com.ruoyi.bst.fault.service.FaultDashboard; import com.ruoyi.bst.mchApply.service.MchApplyDashboard; import com.ruoyi.bst.model.service.ModelDashboard; +import com.ruoyi.bst.order.domain.query.OrderRefundQuery; import com.ruoyi.bst.order.domain.vo.OrderDailyRefundStatVO; import com.ruoyi.bst.order.domain.vo.OrderDailyStatVO; import com.ruoyi.bst.order.service.OrderDashboard; +import com.ruoyi.bst.refund.domain.enums.RefundType; import com.ruoyi.bst.withdraw.service.WithdrawDashboard; +import com.ruoyi.common.utils.MathUtils; import com.ruoyi.common.utils.collection.CollectionUtils; import com.ruoyi.dashboard.constants.StatKeys; import com.ruoyi.dashboard.domain.dailyStat.DailyStatQuery; @@ -135,18 +138,51 @@ public class DashboardService { if (keys.contains(StatKeys.ORDER_USER_COUNT)) { vo.setOrderUserCount(orderDashboard.selectUserCount(query.toOrderQuery())); } - // 订单实收金额 + // 订单总金额 if (keys.contains(StatKeys.ORDER_ACTUAL_AMOUNT)) { - vo.setOrderActualTotalAmount(orderDashboard.selectSumOfActualAmount(query.toOrderQueryForEnd())); + vo.setOrderActualTotalAmount(orderDashboard.selectSumOfActualTotalAmount(query.toOrderQueryForEnd())); + + vo.setOrderActualAmount(orderDashboard.selectSumOfActualAmount(query.toOrderQueryForEnd())); + } + // 订单骑行费 + if (keys.contains(StatKeys.ORDER_RIDDING_FEE)) { + vo.setOrderRiddingFee(orderDashboard.selectSumOfActualRiddingFee(query.toOrderQueryForEnd())); + } + // 订单车损费 + if (keys.contains(StatKeys.ORDER_DEDUCTION_FEE)) { + vo.setOrderDeductionFee(orderDashboard.selectSumOfActualDeductionFee(query.toOrderQueryForEnd())); + } + // 订单调度费 + if (keys.contains(StatKeys.ORDER_DISPATCH_FEE)) { + vo.setOrderDispatchFee(orderDashboard.selectSumOfActualDispatchFee(query.toOrderQueryForEnd())); + } + // 订单管理费 + if (keys.contains(StatKeys.ORDER_MANAGE_FEE)) { + vo.setOrderManageFee(orderDashboard.selectSumOfActualManageFee(query.toOrderQueryForEnd())); } // 订单数量 if (keys.contains(StatKeys.ORDER_COUNT)) { vo.setOrderCount(orderDashboard.selectCount(query.toOrderQuery())); } + // 订单退款金额 + if (keys.contains(StatKeys.ORDER_REFUND_AMOUNT)) { + OrderRefundQuery refundQuery = query.toOrderRefundQuery(); + refundQuery.setRefundType(RefundType.AUTO.getCode()); + vo.setOrderAutoRefundAmount(orderDashboard.selectRefundAmount(refundQuery)); + + refundQuery.setRefundType(RefundType.ADMIN.getCode()); + vo.setOrderAdminRefundAmount(orderDashboard.selectRefundAmount(refundQuery)); + + vo.setOrderRefundAmount(MathUtils.addDecimal(vo.getOrderAutoRefundAmount(), vo.getOrderAdminRefundAmount())); + } // 订单状态数量 if (keys.contains(StatKeys.ORDER_STATUS_COUNT)) { vo.setOrderStatusMap(orderDashboard.selectStatusCount(query.toOrderQuery())); } + // 订单完成状态数量 + if (keys.contains(StatKeys.ORDER_END_STATUS_COUNT)) { + vo.setOrderEndStatusMap(orderDashboard.selectStatusCount(query.toOrderQueryForEnd())); + } // 分成总金额 if (keys.contains(StatKeys.BONUS_AMOUNT) || keys.contains(StatKeys.BONUS_ACTUAL_AMOUNT)) {