Przeglądaj źródła

Merge branch 'mp-server-test' into 'master'

Mp server test

See merge request quanshu/mp-server!955
zhong chunping 2 lat temu
rodzic
commit
268090450f

+ 25 - 0
mp-service/src/main/java/com/qs/mp/framework/service/impl/AsyncTaskServiceImpl.java

@@ -4,11 +4,17 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.qs.mp.admin.domain.Goods;
 import com.qs.mp.admin.domain.GoodsCard;
 import com.qs.mp.admin.domain.Ticket;
 import com.qs.mp.admin.domain.TicketBox;
+import com.qs.mp.admin.domain.TicketBoxGoods;
 import com.qs.mp.admin.domain.TicketPackage;
+import com.qs.mp.admin.service.ICouponPkgService;
+import com.qs.mp.admin.service.ICouponService;
 import com.qs.mp.admin.service.IGoodsCardService;
+import com.qs.mp.admin.service.IGoodsService;
+import com.qs.mp.admin.service.ITicketBoxGoodsService;
 import com.qs.mp.admin.service.ITicketBoxService;
 import com.qs.mp.admin.service.ITicketPackageService;
 import com.qs.mp.admin.service.ITicketService;
@@ -31,6 +37,8 @@ import com.qs.mp.user.domain.UserTicketOrderItem;
 import com.qs.mp.user.service.IUserDeliverOrderItemCardService;
 import com.qs.mp.user.service.IUserDeliverOrderItemService;
 import com.qs.mp.user.service.IUserDeliverOrderService;
+import com.qs.mp.user.service.IUserHitPrizeService;
+import com.qs.mp.user.service.IUserPrizeStorageService;
 import com.qs.mp.user.service.IUserTicketOrderItemService;
 import com.qs.mp.user.service.IUserTicketOrderService;
 import java.util.ArrayList;
@@ -95,6 +103,22 @@ public class AsyncTaskServiceImpl extends ServiceImpl<AsyncTaskMapper, AsyncTask
     @Autowired
     private IUserDeliverOrderItemCardService userDeliverOrderItemCardService;
 
+    @Autowired
+    private ITicketBoxGoodsService ticketBoxGoodsService;
+
+    @Autowired
+    private ICouponService couponService;
+
+    @Autowired
+    private ICouponPkgService couponPkgService;
+
+    @Autowired
+    private IGoodsService goodsService;
+
+    @Autowired
+    private IUserPrizeStorageService userPrizeStorageService;
+
+
     @Override
     @Transactional(rollbackFor = Exception.class)
     public boolean insertAsyncTask(AsyncTaskTypeEnum taskType, String bizId) {
@@ -164,6 +188,7 @@ public class AsyncTaskServiceImpl extends ServiceImpl<AsyncTaskMapper, AsyncTask
         }
         userTicketOrderService.commToChannel(orderId, ChannelCommissionResourceEnum.USER.getValue());
 
+
     }
 
 

+ 18 - 11
mp-service/src/main/java/com/qs/mp/user/service/impl/UserTicketOrderServiceImpl.java

@@ -506,14 +506,30 @@ public class UserTicketOrderServiceImpl extends
                     .eq(Ticket::getTicketId, ticket.getTicketId()));
             Assert.isTrue(rtn, "支付回调用户购票订单处理,更新盲票状态失败,ticketId:" + ticket.getTicketId());
 
+        }
+
+        // 更新订单状态为已完成
+        boolean updateRst = update(
+            new LambdaUpdateWrapper<UserTicketOrder>().set(UserTicketOrder::getStatus,
+                    UserTicketOrderStatusEnum.FINISHED)
+                .set(UserTicketOrder::getPayTime, ticketOrder.getPayTime())
+                .set(UserTicketOrder::getPayType, ticketOrder.getPayType())
+                .eq(UserTicketOrder::getOrderId, ticketOrder.getOrderId())
+                .eq(UserTicketOrder::getStatus, UserTicketOrderStatusEnum.NOT_PAY));
+        Assert.isTrue(updateRst, "支付回调用户购票订单处理,更新订单状态失败,orderId:" + ticketOrder.getOrderId());
+
 
+        // 先更新订单状态再发放关联商品
+        List<UserTicketOrderItem> userTicketOrderItemList = userTicketOrderItemService.list(
+            new LambdaQueryWrapper<UserTicketOrderItem>().eq(UserTicketOrderItem::getOrderId, ticketOrder.getOrderId()));
+        for (UserTicketOrderItem orderItem : userTicketOrderItemList) {
+            Ticket ticket = ticketService.getById(orderItem.getTicketId());
             // TODO: 线上和线下票如果有关联商品,都要发送关联商品到用户的仓库中
             List<TicketBoxGoods> ticketBoxGoodsList = ticketBoxGoodsService.list(new LambdaQueryWrapper<TicketBoxGoods>()
                 .eq(TicketBoxGoods::getBoxId, ticketOrder.getBoxId()));
             if (CollectionUtils.isNotEmpty(ticketBoxGoodsList)) {
                 // 发送关联商品
                 for (TicketBoxGoods ticketBoxGoods : ticketBoxGoodsList) {
-
                     if (TicketBoxGoodsTypeEnum.GOODS.equals(ticketBoxGoods.getType())) {
                         Goods goods = goodsService.getById(Long.valueOf(ticketBoxGoods.getRefId()));
                         userPrizeStorageService.takeInStorage(orderItem.getUserId(),goods.getTitle(),goods.getPicUrl(),
@@ -525,18 +541,9 @@ public class UserTicketOrderServiceImpl extends
                     }
                 }
             }
-
         }
 
-        // 更新订单状态为已完成
-        boolean updateRst = update(
-            new LambdaUpdateWrapper<UserTicketOrder>().set(UserTicketOrder::getStatus,
-                    UserTicketOrderStatusEnum.FINISHED)
-                .set(UserTicketOrder::getPayTime, ticketOrder.getPayTime())
-                .set(UserTicketOrder::getPayType, ticketOrder.getPayType())
-                .eq(UserTicketOrder::getOrderId, ticketOrder.getOrderId())
-                .eq(UserTicketOrder::getStatus, UserTicketOrderStatusEnum.NOT_PAY));
-        Assert.isTrue(updateRst, "支付回调用户购票订单处理,更新订单状态失败,orderId:" + ticketOrder.getOrderId());
+
 
         return true;
     }