|
@@ -5,9 +5,7 @@ import cn.hutool.core.lang.Assert;
|
|
|
import cn.hutool.core.map.MapUtil;
|
|
|
import cn.hutool.core.util.ObjUtil;
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
-import cn.hutool.core.util.RandomUtil;
|
|
|
import cn.hutool.extra.spring.SpringUtil;
|
|
|
-import cn.hutool.json.JSONUtil;
|
|
|
import cn.newfeifan.mall.framework.common.core.KeyValue;
|
|
|
import cn.newfeifan.mall.framework.common.enums.UserTypeEnum;
|
|
|
import cn.newfeifan.mall.framework.common.util.json.JsonUtils;
|
|
@@ -22,7 +20,6 @@ import cn.newfeifan.mall.module.distri.dal.dataobject.ptprofit.PtProfitDO;
|
|
|
import cn.newfeifan.mall.module.distri.dal.dataobject.sharepath.SharePathDO;
|
|
|
import cn.newfeifan.mall.module.distri.dal.mysql.orderpercentage.OrderPercentageMapper;
|
|
|
import cn.newfeifan.mall.module.distri.enums.CaclEnum;
|
|
|
-import cn.newfeifan.mall.module.distri.enums.ConsumptionEnum;
|
|
|
import cn.newfeifan.mall.module.distri.enums.SocialStatusEnum;
|
|
|
import cn.newfeifan.mall.module.distri.service.duser.DuserService;
|
|
|
import cn.newfeifan.mall.module.distri.service.integral.IntegralService;
|
|
@@ -265,8 +262,8 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
order.setProductCount(getSumValue(calculateRespBO.getItems(), TradePriceCalculateRespBO.OrderItem::getCount, Integer::sum));
|
|
|
order.setUserIp(getClientIP()).setTerminal(getTerminal());
|
|
|
// 支付 + 退款信息
|
|
|
- order.setAdjustPrice(0).setPayStatus(false);
|
|
|
- order.setRefundStatus(TradeOrderRefundStatusEnum.NONE.getStatus()).setRefundPrice(0);
|
|
|
+ order.setPayStatus(false);
|
|
|
+ order.setRefundStatus(TradeOrderRefundStatusEnum.NONE.getStatus());
|
|
|
// 物流信息
|
|
|
order.setDeliveryType(createReqVO.getDeliveryType());
|
|
|
if (Objects.equals(createReqVO.getDeliveryType(), DeliveryTypeEnum.EXPRESS.getType())) {
|
|
@@ -276,7 +273,6 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
.setReceiverAreaId(address.getAreaId()).setReceiverDetailAddress(address.getDetailAddress());
|
|
|
} else if (Objects.equals(createReqVO.getDeliveryType(), DeliveryTypeEnum.PICK_UP.getType())) {
|
|
|
order.setReceiverName(createReqVO.getReceiverName()).setReceiverMobile(createReqVO.getReceiverMobile());
|
|
|
- order.setPickUpVerifyCode(RandomUtil.randomNumbers(8)); // 随机一个核销码,长度为 8 位
|
|
|
} else if (Objects.equals(createReqVO.getDeliveryType(), DeliveryTypeEnum.VIRTUAL_PRODUCT.getType())) {
|
|
|
MemberAddressRespDTO address = addressApi.getAddress(createReqVO.getAddressId(), userId);
|
|
|
order.setReceiverName(createReqVO.getReceiverName()).setReceiverMobile(createReqVO.getReceiverMobile())
|
|
@@ -326,8 +322,7 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
Long payOrderId = payOrderApi.createOrder(payOrderCreateReqDTO);
|
|
|
|
|
|
// 更新到交易单上
|
|
|
- tradeOrderMapper.updateById(new TradeOrderDO().setId(order.getId()).setPayOrderId(payOrderId));
|
|
|
- order.setPayOrderId(payOrderId);
|
|
|
+ tradeOrderMapper.updateById(new TradeOrderDO().setId(order.getId()));
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -342,7 +337,7 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
// 2. 更新 TradeOrderDO 状态为已支付,等待发货
|
|
|
int updateCount = tradeOrderMapper.updateByIdAndStatus(id, order.getStatus(),
|
|
|
new TradeOrderDO().setStatus(TradeOrderStatusEnum.UNDELIVERED.getStatus()).setPayStatus(true)
|
|
|
- .setPayTime(LocalDateTime.now()).setPayChannelCode(payOrder.getChannelCode()));
|
|
|
+ .setPayTime(LocalDateTime.now()));
|
|
|
if (updateCount == 0) {
|
|
|
throw exception(ORDER_UPDATE_PAID_STATUS_NOT_UNPAID);
|
|
|
}
|
|
@@ -378,12 +373,6 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
id, JsonUtils.toJsonString(order));
|
|
|
throw exception(ORDER_UPDATE_PAID_STATUS_NOT_UNPAID);
|
|
|
}
|
|
|
- // 校验支付订单匹配
|
|
|
- if (ObjectUtil.notEqual(order.getPayOrderId(), payOrderId)) { // 支付单号
|
|
|
- log.error("[validateOrderPaid][order({}) 支付单不匹配({}),请进行处理!order 数据是:{}]",
|
|
|
- id, payOrderId, JsonUtils.toJsonString(order));
|
|
|
- throw exception(ORDER_UPDATE_PAID_FAIL_PAY_ORDER_ID_ERROR);
|
|
|
- }
|
|
|
|
|
|
// 校验支付单是否存在
|
|
|
PayOrderRespDTO payOrder = payOrderApi.getOrder(payOrderId);
|
|
@@ -398,7 +387,7 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
throw exception(ORDER_UPDATE_PAID_FAIL_PAY_ORDER_STATUS_NOT_SUCCESS);
|
|
|
}
|
|
|
// 校验支付金额一致
|
|
|
- if (ObjectUtil.notEqual(payOrder.getPrice(), order.getPayPrice())) {
|
|
|
+ if (ObjectUtil.notEqual(payOrder.getPrice(), order.getPayIntegral())) {
|
|
|
log.error("[validateOrderPaid][order({}) payOrder({}) 支付金额不匹配,请进行处理!order 数据是:{},payOrder 数据是:{}]",
|
|
|
id, payOrderId, JsonUtils.toJsonString(order), JsonUtils.toJsonString(payOrder));
|
|
|
throw exception(ORDER_UPDATE_PAID_FAIL_PAY_PRICE_NOT_MATCH);
|
|
@@ -696,9 +685,6 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
if (payIntegral > 0) {
|
|
|
integralService.updateUserIntegral(userId, CaclEnum.ORDER_CANCEL_BY_SYSTEM_REFUND_INTEGRAL, payIntegral, tradeOrderId, orderNum);
|
|
|
}
|
|
|
- if (order.getPayConsumptionPoints() > 0) {
|
|
|
- integralService.updateUserConsumptionPoints(userId, ConsumptionEnum.ORDER_CANCEL_BY_SYSTEM_REFUND_INTEGRAL, order.getPayConsumptionPoints(), tradeOrderId, orderNum);
|
|
|
- }
|
|
|
|
|
|
count++;
|
|
|
} catch (Throwable e) {
|
|
@@ -752,7 +738,7 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
@TradeOrderLog(operateType = TradeOrderOperateTypeEnum.ADMIN_CANCEL_AFTER_SALE)
|
|
|
public void cancelOrderByAfterSale(TradeOrderDO order, Integer refundPrice) {
|
|
|
// 1. 更新订单
|
|
|
- if (refundPrice < order.getPayPrice()) {
|
|
|
+ if (refundPrice < order.getPayIntegral()) {
|
|
|
return;
|
|
|
}
|
|
|
tradeOrderMapper.updateById(new TradeOrderDO().setId(order.getId())
|
|
@@ -803,19 +789,14 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
if (order.getPayStatus()) {
|
|
|
throw exception(ORDER_UPDATE_PRICE_FAIL_PAID);
|
|
|
}
|
|
|
- // 1.2 校验调价金额是否变化
|
|
|
- if (order.getAdjustPrice() > 0) {
|
|
|
- throw exception(ORDER_UPDATE_PRICE_FAIL_ALREADY);
|
|
|
- }
|
|
|
// 1.3 支付价格不能为 0
|
|
|
- int newPayPrice = order.getPayPrice() + order.getAdjustPrice();
|
|
|
+ int newPayPrice = order.getPayIntegral().intValue();
|
|
|
if (newPayPrice <= 0) {
|
|
|
throw exception(ORDER_UPDATE_PRICE_FAIL_PRICE_ERROR);
|
|
|
}
|
|
|
|
|
|
// 2. 更新订单
|
|
|
- tradeOrderMapper.updateById(new TradeOrderDO().setId(order.getId())
|
|
|
- .setAdjustPrice(reqVO.getAdjustPrice()).setPayPrice(newPayPrice));
|
|
|
+ tradeOrderMapper.updateById(new TradeOrderDO().setId(order.getId()).setPayIntegral((long) newPayPrice));
|
|
|
|
|
|
// 3. 更新 TradeOrderItem,需要做 adjustPrice 的分摊
|
|
|
List<TradeOrderItemDO> orderOrderItems = tradeOrderItemMapper.selectListByOrderId(order.getId());
|
|
@@ -823,17 +804,14 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
List<TradeOrderItemDO> updateItems = new ArrayList<>();
|
|
|
for (int i = 0; i < orderOrderItems.size(); i++) {
|
|
|
TradeOrderItemDO item = orderOrderItems.get(i);
|
|
|
- updateItems.add(new TradeOrderItemDO().setId(item.getId()).setAdjustPrice(dividePrices.get(i))
|
|
|
- .setPayPrice(item.getPayPrice() + dividePrices.get(i)));
|
|
|
+ updateItems.add(new TradeOrderItemDO().setId(item.getId())
|
|
|
+ .setPayIntegral(item.getPayIntegral() + dividePrices.get(i)));
|
|
|
}
|
|
|
tradeOrderItemMapper.updateBatch(updateItems);
|
|
|
|
|
|
- // 4. 更新支付订单
|
|
|
- payOrderApi.updatePayOrderPrice(order.getPayOrderId(), newPayPrice);
|
|
|
-
|
|
|
// 5. 记录订单日志
|
|
|
TradeOrderLogUtils.setOrderInfo(order.getId(), order.getStatus(), order.getStatus(),
|
|
|
- MapUtil.<String, Object>builder().put("oldPayPrice", MoneyUtils.fenToYuanStr(order.getPayPrice()))
|
|
|
+ MapUtil.<String, Object>builder().put("oldPayPrice", MoneyUtils.fenToYuanStr(order.getPayIntegral().intValue()))
|
|
|
.put("newPayPrice", MoneyUtils.fenToYuanStr(newPayPrice)).build());
|
|
|
}
|
|
|
|
|
@@ -860,16 +838,6 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
getSelf().pickUpOrder(tradeOrderMapper.selectById(id));
|
|
|
}
|
|
|
|
|
|
- @Override
|
|
|
- @TradeOrderLog(operateType = TradeOrderOperateTypeEnum.ADMIN_PICK_UP_RECEIVE)
|
|
|
- public void pickUpOrderByAdmin(String pickUpVerifyCode) {
|
|
|
- getSelf().pickUpOrder(tradeOrderMapper.selectOneByPickUpVerifyCode(pickUpVerifyCode));
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- public TradeOrderDO getByPickUpVerifyCode(String pickUpVerifyCode) {
|
|
|
- return tradeOrderMapper.selectOneByPickUpVerifyCode(pickUpVerifyCode);
|
|
|
- }
|
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public void pickUpOrder(TradeOrderDO order) {
|
|
@@ -903,14 +871,13 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
tradeOrderHandlers.forEach(handler -> handler.afterCancelOrderItem(order, orderItem));
|
|
|
|
|
|
// 2.1 更新订单的退款金额、积分
|
|
|
- Integer orderRefundPrice = order.getRefundPrice() + refundPrice;
|
|
|
- Integer orderRefundPoint = order.getRefundPoint() + orderItem.getUsePoint();
|
|
|
+ Integer orderRefundPrice = order.getRefundIntegral().intValue() + refundPrice;
|
|
|
Integer refundStatus = isAllOrderItemAfterSaleSuccess(order.getId()) ?
|
|
|
TradeOrderRefundStatusEnum.ALL.getStatus() // 如果都售后成功,则需要取消订单
|
|
|
: TradeOrderRefundStatusEnum.PART.getStatus();
|
|
|
tradeOrderMapper.updateById(new TradeOrderDO().setId(order.getId())
|
|
|
.setRefundStatus(refundStatus)
|
|
|
- .setRefundPrice(orderRefundPrice).setRefundPoint(orderRefundPoint));
|
|
|
+ .setRefundIntegral(Long.valueOf(orderRefundPrice)));
|
|
|
// 2.2 如果全部退款,则进行取消订单
|
|
|
getSelf().cancelOrderByAfterSale(order, orderRefundPrice);
|
|
|
}
|
|
@@ -1005,9 +972,6 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public void updateOrderCombinationInfo(Long orderId, Long activityId, Long combinationRecordId, Long headId) {
|
|
|
- tradeOrderMapper.updateById(
|
|
|
- new TradeOrderDO().setId(orderId).setCombinationActivityId(activityId)
|
|
|
- .setCombinationRecordId(combinationRecordId).setCombinationHeadId(headId));
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -1116,7 +1080,7 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
/*
|
|
|
* 购物本人自得 百分比
|
|
|
*/
|
|
|
- String grossProfitUserQuotaPerc = orderPercentageDO.getGrossProfitUserQuotaPerc();
|
|
|
+ String grossProfitUserQuotaPerc = "0";
|
|
|
|
|
|
/*
|
|
|
* 推荐人(上一级) 百分比
|
|
@@ -1149,7 +1113,7 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
// 2. 更新 TradeOrderDO 状态为已支付,等待发货
|
|
|
int updateCount = tradeOrderMapper.updateByIdAndStatus(tradeOrderId, order.getStatus(),
|
|
|
new TradeOrderDO().setStatus(TradeOrderStatusEnum.UNDELIVERED.getStatus()).setPayStatus(true)
|
|
|
- .setPayTime(LocalDateTime.now()).setPayChannelCode(payOrder.getChannelCode()));
|
|
|
+ .setPayTime(LocalDateTime.now()));
|
|
|
|
|
|
// System.out.println("#########updateOrderPaid####updateCount:"+updateCount);
|
|
|
|
|
@@ -1226,7 +1190,6 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
//记录用户在此订单项获得的冻结积分
|
|
|
TradeOrderItemDO toid = new TradeOrderItemDO();
|
|
|
toid.setId(tradeOrderItemDO.getId());
|
|
|
- toid.setIncreaseIntegral(itemFreezeAmount);
|
|
|
toid.setAncestorIncreaseIntegral(ancestorItemFreezeAmount);//20240504 add by Ben
|
|
|
toid.setFreezeHighQuota(freezeHighQuotaInt);
|
|
|
tradeOrderItemMapper.updateById(toid);
|
|
@@ -1247,13 +1210,9 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
// 游客收益
|
|
|
PtProfitDO ptProfitDO = ptProfitService.getPtProfit();
|
|
|
|
|
|
- ptProfitDO.setVisitorEarnings(ptProfitDO.getVisitorEarnings() + totalAncestorFreezeAmount);
|
|
|
ptProfitDO.setPtTotalAdd(ptProfitDO.getPtTotalAdd() + totalAncestorFreezeAmount);
|
|
|
ptProfitService.updatePtProfit(cn.newfeifan.mall.framework.common.util.object.BeanUtils.toBean(ptProfitDO, PtProfitSaveReqVO.class));
|
|
|
|
|
|
- // 记录日志
|
|
|
- ptProfitLogService.addMessage(user.getId(), null, CaclEnum.RECOMMENDED_PERSON_QUOTA, totalAncestorFreezeAmount,
|
|
|
- ptProfitDO.getVisitorEarnings(), null, null, JSONUtil.toJsonStr(orderPercentageDO), tradeOrderId, OrderNum);
|
|
|
}
|
|
|
|
|
|
//修改购物者本人获得的冻结峰值
|
|
@@ -1281,10 +1240,10 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
String title = WcChatMessageTemplateIdEnum.ORDER_NO_DELIVERY2.getName();
|
|
|
|
|
|
DecimalFormat df = new DecimalFormat("0.00");
|
|
|
- String formattedPrice = df.format((double) order.getPayPrice() / 100);
|
|
|
+ String formattedPrice = df.format((double) order.getPayIntegral() / 100);
|
|
|
String alert = "订单金额: " + formattedPrice;
|
|
|
alert += "\n单据编号: " + order.getNo();
|
|
|
- alert += "\n客户名称: " + memberUserService.getUser(order.getUserId()).getNickname();
|
|
|
+ alert += "\n客户名称: " + memberUserService.getUser(order.getUserId()).getUsername();
|
|
|
|
|
|
List<TradeOrderItemDO> tradeOrderItemDOS = tradeOrderItemMapper.selectListByOrderId(order.getId());
|
|
|
List<String> productNames = tradeOrderItemDOS.stream().map(TradeOrderItemDO::getSpuName).collect(Collectors.toList());
|
|
@@ -1323,7 +1282,7 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
|
|
|
|
|
|
// 计算,毛利中100 之外的百分比
|
|
|
- BigDecimal otherOneHundred = oneHundred.subtract(new BigDecimal(orderPercentageDO.getGrossProfitUserQuotaPerc()))
|
|
|
+ BigDecimal otherOneHundred = oneHundred
|
|
|
.subtract(new BigDecimal(orderPercentageDO.getGrossProfitAncestorQuotaPerc()))
|
|
|
.subtract(new BigDecimal(orderPercentageDO.getGrossProfitPlatformQuotaPerc()));
|
|
|
|
|
@@ -1345,7 +1304,6 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
BigDecimal productCount = new BigDecimal(j.getCount());
|
|
|
BigDecimal oneGrossProfit = onePrice.subtract(oneCostPrice).multiply(productCount);
|
|
|
profit[0] = profit[0].add(oneGrossProfit); // 注意这里的改动
|
|
|
- profit[1] = profit[1].add(new BigDecimal(j.getIncreaseIntegral())); //自得积分
|
|
|
profit[2] = profit[2].add(new BigDecimal(j.getAncestorIncreaseIntegral())); //直推奖
|
|
|
profit[3] = profit[3].add(new BigDecimal(j.getFreezeHighQuota())); //用户获得冻结最大可用额度
|
|
|
|
|
@@ -1369,7 +1327,7 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
}
|
|
|
|
|
|
// 用户所得: 毛利 * 0.35
|
|
|
- BigDecimal descendantQuota = profit[1];
|
|
|
+ BigDecimal descendantQuota = BigDecimal.valueOf(0L);
|
|
|
|
|
|
// 直推奖: 毛利 * 0.3 (上一级)
|
|
|
BigDecimal ancestorQuota = profit[2];
|
|
@@ -1393,8 +1351,8 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
// 获取当前下单人关系
|
|
|
SharePathDO sharePath = sharePathService.getSharePathByDescendant(k.getUserId());
|
|
|
// 如果sharePath为空, 则说明没有直推人关系
|
|
|
- IntegralDO integralDOAncestor = integralService.selectByUser(sharePath.getAncestor()); //父级
|
|
|
- IntegralDO integralDO = integralService.selectByUser(sharePath.getDescendant()); //自己
|
|
|
+ IntegralDO integralDOAncestor = integralService.selectByUser(sharePath.getReferrerId()); //父级
|
|
|
+ IntegralDO integralDO = integralService.selectByUser(sharePath.getUserId()); //自己
|
|
|
IntegralDO ptIntegral = integralService.selectByUser(1L); //pt
|
|
|
|
|
|
|
|
@@ -1500,14 +1458,8 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
.orderId(k.getId())
|
|
|
.profitStatus(CaclEnum.RECOMMENDED_PERSON_QUOTA.getType())
|
|
|
.orderNo(k.getNo())
|
|
|
- .userId(sharePath.getAncestor())
|
|
|
.amount(amount)
|
|
|
- .afterAmount(integralDOAncestor.getCurrentQuota())
|
|
|
- .freezeAmount(-amount)
|
|
|
- .afterFreezeAmount(integralDOAncestor.getFreezeQuota())
|
|
|
- .ancestorQuotaAmount(ptReplenish)
|
|
|
- .maxAvailablePointsAmount(-amount)
|
|
|
- .afterMaxAvailablePointsAmount(ancestorHighQuota - amount)
|
|
|
+ .afterAmount(integralDOAncestor.getRedCurrentQuota())
|
|
|
.percentTemplate(percentTemplate)
|
|
|
.generateUserId(integralDO.getUserId())
|
|
|
.build();
|
|
@@ -1518,15 +1470,8 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
.orderId(k.getId())
|
|
|
.profitStatus(CaclEnum.DIRECT_REFERRAL_QUOTA.getType())
|
|
|
.orderNo(k.getNo())
|
|
|
- .userId(sharePath.getDescendant())
|
|
|
.amount(descendantQuotaInt)
|
|
|
- .afterAmount(integralDO.getCurrentQuota())
|
|
|
- .freezeAmount(-descendantQuotaInt)
|
|
|
- .afterFreezeAmount(integralDO.getFreezeQuota())
|
|
|
- .maxAvailablePointsAmount(highQuotaInt)
|
|
|
- .afterMaxAvailablePointsAmount(integralDO.getHighQuota() + new BigDecimal(orderPercentageDO.getBaseMaxQuota()).longValue())
|
|
|
- .freezeHighQuota(-highQuotaInt)
|
|
|
- .afterFreezeHighQuota(integralDO.getFreezeHighQuota())
|
|
|
+ .afterAmount(integralDO.getRedCurrentQuota())
|
|
|
.percentTemplate(percentTemplate)
|
|
|
.generateUserId(integralDO.getUserId())
|
|
|
.build();
|
|
@@ -1599,10 +1544,10 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
integralDO.setFreezeHighQuota(integralDO.getFreezeHighQuota() - highQuota);
|
|
|
// todo 增加累计额度
|
|
|
|
|
|
- integralDO.setCurrentQuota(integralDO.getCurrentQuota() + descendantQuota);
|
|
|
+ integralDO.setRedCurrentQuota(integralDO.getRedCurrentQuota() + descendantQuota);
|
|
|
integralDO.setFreezeQuota(integralDO.getFreezeQuota() - descendantQuota);
|
|
|
// 增加推荐人额度
|
|
|
- integralDOAncestor.setCurrentQuota(integralDOAncestor.getCurrentQuota() + ancestorQuota);
|
|
|
+ integralDOAncestor.setRedCurrentQuota(integralDOAncestor.getRedCurrentQuota() + ancestorQuota);
|
|
|
// 减少推荐人的可获取额度
|
|
|
integralDOAncestor.setHighQuota(integralDOAncestor.getHighQuota() - ancestorQuota);
|
|
|
integralDOAncestor.setAncestorQuota(integralDOAncestor.getAncestorQuota() + ancestorQuota);
|
|
@@ -1610,7 +1555,7 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
integralService.updateIntegral(cn.newfeifan.mall.framework.common.util.object.BeanUtils.toBean(integralDOAncestor, IntegralSaveReqVO.class));
|
|
|
|
|
|
// 增加平台额度
|
|
|
- pt.setCurrentQuota(pt.getCurrentQuota() + ptA + ptB);
|
|
|
+ pt.setRedCurrentQuota(pt.getRedCurrentQuota() + ptA + ptB);
|
|
|
|
|
|
integralService.updateIntegral(cn.newfeifan.mall.framework.common.util.object.BeanUtils.toBean(integralDO, IntegralSaveReqVO.class));
|
|
|
integralService.updateIntegral(cn.newfeifan.mall.framework.common.util.object.BeanUtils.toBean(pt, IntegralSaveReqVO.class));
|
|
@@ -1620,11 +1565,11 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
|
private void sentWcChatMessage(TradeOrderDO order) {
|
|
|
List<String> params = new ArrayList<>();
|
|
|
DecimalFormat df = new DecimalFormat("0.00");
|
|
|
- String formattedPrice = df.format((double) order.getPayPrice() / 100);
|
|
|
+ String formattedPrice = df.format((double) order.getPayIntegral() / 100);
|
|
|
|
|
|
params.add("¥ " + formattedPrice);
|
|
|
params.add(order.getNo());
|
|
|
- params.add(memberUserService.getUser(order.getUserId()).getNickname());
|
|
|
+ params.add(memberUserService.getUser(order.getUserId()).getUsername());
|
|
|
|
|
|
List<TradeOrderItemDO> tradeOrderItemDOS = tradeOrderItemMapper.selectListByOrderId(order.getId());
|
|
|
List<String> productNames = tradeOrderItemDOS.stream().map(TradeOrderItemDO::getSpuName).collect(Collectors.toList());
|