Commit 42a899c5d3090de8b35621b78137cdab45b1708f

Authored by owen
1 parent fc432ba0

交易:订单增加字段 推广人编号

sql/mysql/trade_order.sql 0 → 100644
  1 +-- 增加字段
  2 +ALTER TABLE trade_order
  3 + ADD COLUMN brokerage_user_id bigint NULL COMMENT '推广人编号' AFTER comment_status;
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/dal/dataobject/order/TradeOrderDO.java
@@ -2,6 +2,8 @@ package cn.iocoder.yudao.module.trade.dal.dataobject.order; @@ -2,6 +2,8 @@ package cn.iocoder.yudao.module.trade.dal.dataobject.order;
2 2
3 import cn.iocoder.yudao.framework.common.enums.TerminalEnum; 3 import cn.iocoder.yudao.framework.common.enums.TerminalEnum;
4 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; 4 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
  5 +import cn.iocoder.yudao.module.member.api.user.dto.MemberUserRespDTO;
  6 +import cn.iocoder.yudao.module.trade.dal.dataobject.brokerage.BrokerageUserDO;
5 import cn.iocoder.yudao.module.trade.dal.dataobject.delivery.DeliveryExpressDO; 7 import cn.iocoder.yudao.module.trade.dal.dataobject.delivery.DeliveryExpressDO;
6 import cn.iocoder.yudao.module.trade.dal.dataobject.delivery.DeliveryPickUpStoreDO; 8 import cn.iocoder.yudao.module.trade.dal.dataobject.delivery.DeliveryPickUpStoreDO;
7 import cn.iocoder.yudao.module.trade.enums.delivery.DeliveryTypeEnum; 9 import cn.iocoder.yudao.module.trade.enums.delivery.DeliveryTypeEnum;
@@ -105,7 +107,12 @@ public class TradeOrderDO extends BaseDO { @@ -105,7 +107,12 @@ public class TradeOrderDO extends BaseDO {
105 */ 107 */
106 private Boolean commentStatus; 108 private Boolean commentStatus;
107 109
108 - // TODO @疯狂:加一个推广人编号; 110 + /**
  111 + * 推广人编号
  112 + * {@link BrokerageUserDO#getId()}
  113 + * {@link MemberUserRespDTO#getId()}
  114 + */
  115 + private Long brokerageUserId;
109 116
110 // ========== 价格 + 支付基本信息 ========== 117 // ========== 价格 + 支付基本信息 ==========
111 118
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/order/TradeOrderUpdateServiceImpl.java
@@ -40,6 +40,7 @@ import cn.iocoder.yudao.module.trade.controller.app.order.vo.AppTradeOrderSettle @@ -40,6 +40,7 @@ import cn.iocoder.yudao.module.trade.controller.app.order.vo.AppTradeOrderSettle
40 import cn.iocoder.yudao.module.trade.controller.app.order.vo.AppTradeOrderSettlementRespVO; 40 import cn.iocoder.yudao.module.trade.controller.app.order.vo.AppTradeOrderSettlementRespVO;
41 import cn.iocoder.yudao.module.trade.controller.app.order.vo.item.AppTradeOrderItemCommentCreateReqVO; 41 import cn.iocoder.yudao.module.trade.controller.app.order.vo.item.AppTradeOrderItemCommentCreateReqVO;
42 import cn.iocoder.yudao.module.trade.convert.order.TradeOrderConvert; 42 import cn.iocoder.yudao.module.trade.convert.order.TradeOrderConvert;
  43 +import cn.iocoder.yudao.module.trade.dal.dataobject.brokerage.BrokerageUserDO;
43 import cn.iocoder.yudao.module.trade.dal.dataobject.cart.CartDO; 44 import cn.iocoder.yudao.module.trade.dal.dataobject.cart.CartDO;
44 import cn.iocoder.yudao.module.trade.dal.dataobject.delivery.DeliveryExpressDO; 45 import cn.iocoder.yudao.module.trade.dal.dataobject.delivery.DeliveryExpressDO;
45 import cn.iocoder.yudao.module.trade.dal.dataobject.order.TradeOrderDO; 46 import cn.iocoder.yudao.module.trade.dal.dataobject.order.TradeOrderDO;
@@ -54,6 +55,7 @@ import cn.iocoder.yudao.module.trade.framework.order.config.TradeOrderProperties @@ -54,6 +55,7 @@ import cn.iocoder.yudao.module.trade.framework.order.config.TradeOrderProperties
54 import cn.iocoder.yudao.module.trade.framework.order.core.annotations.TradeOrderLog; 55 import cn.iocoder.yudao.module.trade.framework.order.core.annotations.TradeOrderLog;
55 import cn.iocoder.yudao.module.trade.framework.order.core.utils.TradeOrderLogUtils; 56 import cn.iocoder.yudao.module.trade.framework.order.core.utils.TradeOrderLogUtils;
56 import cn.iocoder.yudao.module.trade.service.brokerage.BrokerageRecordService; 57 import cn.iocoder.yudao.module.trade.service.brokerage.BrokerageRecordService;
  58 +import cn.iocoder.yudao.module.trade.service.brokerage.BrokerageUserService;
57 import cn.iocoder.yudao.module.trade.service.brokerage.bo.BrokerageAddReqBO; 59 import cn.iocoder.yudao.module.trade.service.brokerage.bo.BrokerageAddReqBO;
58 import cn.iocoder.yudao.module.trade.service.cart.CartService; 60 import cn.iocoder.yudao.module.trade.service.cart.CartService;
59 import cn.iocoder.yudao.module.trade.service.delivery.DeliveryExpressService; 61 import cn.iocoder.yudao.module.trade.service.delivery.DeliveryExpressService;
@@ -108,6 +110,10 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService { @@ -108,6 +110,10 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
108 private DeliveryExpressService deliveryExpressService; 110 private DeliveryExpressService deliveryExpressService;
109 @Resource 111 @Resource
110 private TradeMessageService tradeMessageService; 112 private TradeMessageService tradeMessageService;
  113 + @Resource
  114 + private BrokerageUserService brokerageUserService;
  115 + @Resource
  116 + private BrokerageRecordService brokerageRecordService;
111 117
112 @Resource 118 @Resource
113 private ProductSpuApi productSpuApi; 119 private ProductSpuApi productSpuApi;
@@ -130,8 +136,6 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService { @@ -130,8 +136,6 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
130 @Resource 136 @Resource
131 private MemberPointApi memberPointApi; 137 private MemberPointApi memberPointApi;
132 @Resource 138 @Resource
133 - private BrokerageRecordService brokerageRecordService;  
134 - @Resource  
135 private ProductCommentApi productCommentApi; 139 private ProductCommentApi productCommentApi;
136 140
137 @Resource 141 @Resource
@@ -305,6 +309,12 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService { @@ -305,6 +309,12 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
305 // 6. 插入订单日志 309 // 6. 插入订单日志
306 TradeOrderLogUtils.setOrderInfo(order.getId(), null, order.getStatus()); 310 TradeOrderLogUtils.setOrderInfo(order.getId(), null, order.getStatus());
307 311
  312 + // 7. 设置订单推广人
  313 + BrokerageUserDO brokerageUser = brokerageUserService.getBrokerageUser(order.getUserId());
  314 + if (brokerageUser != null && brokerageUser.getBindUserId() != null) {
  315 + tradeOrderMapper.updateById(new TradeOrderDO().setId(order.getId()).setBrokerageUserId(brokerageUser.getBindUserId()));
  316 + }
  317 +
308 // TODO @LeeYan9: 是可以思考下, 订单的营销优惠记录, 应该记录在哪里, 微信讨论起来! 318 // TODO @LeeYan9: 是可以思考下, 订单的营销优惠记录, 应该记录在哪里, 微信讨论起来!
309 } 319 }
310 320