diff --git a/jsowell-common/src/main/java/com/jsowell/common/constant/CacheConstants.java b/jsowell-common/src/main/java/com/jsowell/common/constant/CacheConstants.java index 6b18993fe..d8d10ae74 100644 --- a/jsowell-common/src/main/java/com/jsowell/common/constant/CacheConstants.java +++ b/jsowell-common/src/main/java/com/jsowell/common/constant/CacheConstants.java @@ -33,6 +33,9 @@ public class CacheConstants { // 缓存时间 10天 public static final int cache_expire_time_10d = cache_expire_time_1d * 10; + // 缓存时间 30天 + public static final int cache_expire_time_30d = cache_expire_time_1d * 30; + public static final String PUSH_STATION_CONNECTOR = "push_station_connector"; // 支付确认列表 diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/AdapayCallbackRecordServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/AdapayCallbackRecordServiceImpl.java index af1fab35c..7189a536c 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/AdapayCallbackRecordServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/AdapayCallbackRecordServiceImpl.java @@ -1,5 +1,6 @@ package com.jsowell.pile.service.impl; +import com.google.common.collect.Maps; import com.jsowell.common.constant.CacheConstants; import com.jsowell.common.core.redis.RedisCache; import com.jsowell.common.util.StringUtils; @@ -11,6 +12,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; +import java.util.Map; @Slf4j @Service @@ -56,6 +58,21 @@ public class AdapayCallbackRecordServiceImpl implements AdapayCallbackRecordServ return record; } + /** + * 批量查询支付回调记录 + * @param orderCodeList + * @return + */ + public Map selectByOrderCodeList(List orderCodeList) { + Map resultMap = Maps.newHashMap(); + + // 批量取缓存 + + // 没有从缓存取到的查数据库 + + return resultMap; + } + @Override public AdapayCallbackRecord selectByPaymentId(String paymentId) { if (StringUtils.isBlank(paymentId)) { diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java index f58ebb72e..63f273416 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java @@ -222,8 +222,8 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService { } // 批量查手续费 - List orderCodeList = orderListVOS.stream().map(OrderListVO::getOrderCode).collect(Collectors.toList()); - Map billDetailMap = clearingBillDetailService.selectByOrderCodeList(orderCodeList); + // List orderCodeList = orderListVOS.stream().map(OrderListVO::getOrderCode).collect(Collectors.toList()); + // Map billDetailMap = clearingBillDetailService.selectByOrderCodeList(orderCodeList); for (OrderListVO orderListVO : orderListVOS) { // 如果是微信支付,通过订单号查询微信支付单号 @@ -253,13 +253,30 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService { orderListVO.setChargingTime(DateUtils.getDatePoor(DateUtils.parseDate(chargeEndTime), DateUtils.parseDate(chargeStartTime))); } + // 交易手续费 + // ClearingBillDetail clearingBillDetail = billDetailMap.get(orderListVO.getOrderCode()); + // if (Objects.nonNull(clearingBillDetail)) { + // orderListVO.setFeeAmount(clearingBillDetail.getFeeAmt() + ""); + // } + } + + batchQueryFeeAmt(orderListVOS); + return orderListVOS; + } + + private void batchQueryFeeAmt(List orderListVOS) { + // 批量查手续费 + List orderCodeList = orderListVOS.stream().map(OrderListVO::getOrderCode).collect(Collectors.toList()); + Map billDetailMap = clearingBillDetailService.selectByOrderCodeList(orderCodeList); + + for (OrderListVO orderListVO : orderListVOS) { // 交易手续费 ClearingBillDetail clearingBillDetail = billDetailMap.get(orderListVO.getOrderCode()); if (Objects.nonNull(clearingBillDetail)) { orderListVO.setFeeAmount(clearingBillDetail.getFeeAmt() + ""); } } - return orderListVOS; + } /*private void tempUpdateVirtualAmount(OrderListVO orderListVO) { @@ -360,12 +377,15 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService { // @DataScope(deptAlias = "t3") public OrderTotalDataVO getOrderTotalData(QueryOrderDTO dto) { OrderTotalDataVO vo = new OrderTotalDataVO(); + // 只计算订单完成状态的 dto.setOrderStatus(OrderStatusEnum.ORDER_COMPLETE.getValue()); + // 查询出所有符合条件的订单 List list = selectOrderBasicInfoList(dto); BigDecimal sumOrderAmount = BigDecimal.ZERO; BigDecimal sumUsedElectricity = BigDecimal.ZERO; BigDecimal sumSettleAmount = BigDecimal.ZERO; vo.setDateDescription("创建时间 " + dto.getStartTime() + " - " + dto.getEndTime()); + // 计算金额 if (CollectionUtils.isNotEmpty(list)) { for (OrderListVO orderListVO : list) { BigDecimal orderAmount = StringUtils.isBlank(orderListVO.getOrderAmount())