|
@@ -59,6 +59,8 @@ import java.util.List;
|
|
|
import java.util.Objects;
|
|
|
import java.util.concurrent.TimeUnit;
|
|
|
|
|
|
+import org.apache.http.util.Asserts;
|
|
|
+import org.apache.poi.ss.formula.functions.T;
|
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.aop.framework.AopContext;
|
|
@@ -150,6 +152,10 @@ public class UserTicketOrderServiceImpl extends
|
|
|
@Autowired
|
|
|
private ICouponPkgService couponPkgService;
|
|
|
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IPromoterUserService promoterUserService;
|
|
|
+
|
|
|
@Override
|
|
|
public String submitOrder(Long userId, TicketOrderSettleVO orderSettleVO,
|
|
|
UserShareVO userShareVO) {
|
|
@@ -512,6 +518,30 @@ public class UserTicketOrderServiceImpl extends
|
|
|
|
|
|
}
|
|
|
|
|
|
+ // 绑定用户和推广员的关系
|
|
|
+ if (ticketOrder.getPromoterId() != null) {
|
|
|
+ int count = promoterUserService.count(new LambdaQueryWrapper<PromoterUser>()
|
|
|
+ .eq(PromoterUser::getUserId, ticketOrder.getUserId())
|
|
|
+ .eq(PromoterUser::getChannelId, ticketOrder.getChannelId()));
|
|
|
+
|
|
|
+ if (count > 0) {
|
|
|
+ // 清除原来的关系
|
|
|
+ boolean remove = promoterUserService.remove(new LambdaUpdateWrapper<PromoterUser>()
|
|
|
+ .eq(PromoterUser::getUserId, ticketOrder.getUserId())
|
|
|
+ .eq(PromoterUser::getChannelId, ticketOrder.getChannelId()));
|
|
|
+ if (!remove) {
|
|
|
+ throw new ServiceException("支付回调清除用户和原推广员的关系失败,orderId:" + ticketOrder.getOrderId());
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ PromoterUser promoterUser = new PromoterUser();
|
|
|
+ promoterUser.setPromoterId(ticketOrder.getPromoterId());
|
|
|
+ promoterUser.setUserId(ticketOrder.getUserId());
|
|
|
+ promoterUser.setChannelId(ticketOrder.getChannelId());
|
|
|
+ Assert.isTrue(promoterUserService.save(promoterUser), "支付回调,保存用户和推广员关系失败,orderId:" + ticketOrder.getOrderId());
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
// 更新订单状态为已完成
|
|
|
boolean updateRst = update(
|
|
|
new LambdaUpdateWrapper<UserTicketOrder>().set(UserTicketOrder::getStatus,
|