cup 2 жил өмнө
parent
commit
39972aaf52

+ 2 - 1
mp-common/src/main/java/com/qs/mp/common/enums/PrizeStorageInTypeEnum.java

@@ -12,7 +12,8 @@ import com.baomidou.mybatisplus.annotation.IEnum;
 public enum PrizeStorageInTypeEnum implements IEnum<Integer> {
 
   TICKET_CASHED(1, "奖品兑奖"),
-  COIN_EXCHANGE(2, "盲豆兑换");
+  COIN_EXCHANGE(2, "盲豆兑换"),
+  MARKETING(3, "营销活动");
 
 
   private final int value;

+ 1 - 1
mp-service/src/main/java/com/qs/mp/user/domain/UserPrizeStorage.java

@@ -88,7 +88,7 @@ public class UserPrizeStorage implements Serializable {
    */
   @TableField("in_type")
   @JSONField(serialzeFeatures = SerializerFeature.WriteEnumUsingToString)
-  @ApiModelProperty("入库类型;1盲票兑奖、2盲豆兑换")
+  @ApiModelProperty("入库类型;1盲票兑奖、2盲豆兑换,3营销活动")
   private PrizeStorageInTypeEnum inType;
 
   /**

+ 13 - 27
mp-service/src/main/java/com/qs/mp/user/service/impl/UserExchangeOrderServiceImpl.java

@@ -111,33 +111,19 @@ public class UserExchangeOrderServiceImpl extends ServiceImpl<UserExchangeOrderM
     userCoinService.consume(userId, orderAmt, exchangeOrder.getOrderId());
 
     // 放入奖品库
-    List<UserPrizeStorage> userPrizeStorageList = userPrizeStorageService.list(new LambdaQueryWrapper<UserPrizeStorage>()
-        .eq(UserPrizeStorage::getUserId, userId)
-        .eq(UserPrizeStorage::getGoodsId, goodsId)
-        .eq(null != skuId, UserPrizeStorage::getSkuId, skuId)
-        .isNull(null == skuId, UserPrizeStorage::getSkuId)
-        .eq(UserPrizeStorage::getStatus, PrizeStorageStatusEnum.NOT_DISTRIBUTED));
-    if (CollectionUtils.isEmpty(userPrizeStorageList)) {
-      UserPrizeStorage userPrizeStorage = new UserPrizeStorage();
-      userPrizeStorage.setStorageId(bizIdGenerator.newIdWithUidSharding(String.valueOf(userId)));
-      userPrizeStorage.setUserId(userId);
-      userPrizeStorage.setGoodsId(goodsId);
-      userPrizeStorage.setSkuId(skuId);
-      userPrizeStorage.setProperties(goodsSku.getProperties());
-      userPrizeStorage.setTitle(goods.getTitle());
-      userPrizeStorage.setPicUrl(goods.getPicUrl());
-      userPrizeStorage.setGoodsNum(orderNum);
-      userPrizeStorage.setInType(PrizeStorageInTypeEnum.COIN_EXCHANGE);
-      userPrizeStorage.setRefId(exchangeOrder.getOrderId());
-      userPrizeStorage.setStatus(PrizeStorageStatusEnum.NOT_DISTRIBUTED);
-      userPrizeStorageService.save(userPrizeStorage);
-    } else {
-      UserPrizeStorage userPrizeStorage = userPrizeStorageList.get(0);
-      boolean rtn = userPrizeStorageService.update(new LambdaUpdateWrapper<UserPrizeStorage>()
-          .set(UserPrizeStorage::getGoodsNum, userPrizeStorage.getGoodsNum() + orderNum)
-          .eq(UserPrizeStorage::getStorageId, userPrizeStorage.getStorageId()));
-      Assert.isTrue(rtn, "兑换商品成功,放入奖品库失败。userId:" + userId + ",goodsId:" + goodsId + ",skuId:" + skuId + ",orderNum:" + orderNum);
-    }
+    UserPrizeStorage userPrizeStorage = new UserPrizeStorage();
+    userPrizeStorage.setStorageId(bizIdGenerator.newIdWithUidSharding(String.valueOf(userId)));
+    userPrizeStorage.setUserId(userId);
+    userPrizeStorage.setGoodsId(goodsId);
+    userPrizeStorage.setSkuId(skuId);
+    userPrizeStorage.setProperties(goodsSku.getProperties());
+    userPrizeStorage.setTitle(goods.getTitle());
+    userPrizeStorage.setPicUrl(goods.getPicUrl());
+    userPrizeStorage.setGoodsNum(orderNum);
+    userPrizeStorage.setInType(PrizeStorageInTypeEnum.COIN_EXCHANGE);
+    userPrizeStorage.setRefId(exchangeOrder.getOrderId());
+    userPrizeStorage.setStatus(PrizeStorageStatusEnum.NOT_DISTRIBUTED);
+    userPrizeStorageService.save(userPrizeStorage);
 
     // 修改商品库存
     if (null != skuId && 0 != skuId) {

+ 1 - 10
mp-service/src/main/java/com/qs/mp/user/service/impl/UserPrizeStorageServiceImpl.java

@@ -28,12 +28,7 @@ public class UserPrizeStorageServiceImpl extends ServiceImpl<UserPrizeStorageMap
 
   @Override
   public void takeInStorage(Long userId, TicketAwardsPrize ticketAwardsPrize, PrizeStorageInTypeEnum inTypeEnum, String refId) {
-    UserPrizeStorage userPrizeStorage = getOne(new LambdaQueryWrapper<UserPrizeStorage>()
-        .eq(UserPrizeStorage::getGoodsId, ticketAwardsPrize.getRefId()).eq(UserPrizeStorage::getUserId,
-            userId)
-        .eq(UserPrizeStorage::getStatus, PrizeStorageStatusEnum.NOT_DISTRIBUTED));
-    if (null == userPrizeStorage) {
-      userPrizeStorage = new UserPrizeStorage();
+      UserPrizeStorage userPrizeStorage = new UserPrizeStorage();
       userPrizeStorage.setStorageId(bizIdGenerator.newIdWithUidSharding(String.valueOf(userId)));
       userPrizeStorage.setUserId(userId);
       userPrizeStorage.setGoodsId(Long.valueOf(ticketAwardsPrize.getRefId()));
@@ -46,9 +41,5 @@ public class UserPrizeStorageServiceImpl extends ServiceImpl<UserPrizeStorageMap
       userPrizeStorage.setRefId(refId);
       userPrizeStorage.setStatus(PrizeStorageStatusEnum.NOT_DISTRIBUTED);
       save(userPrizeStorage);
-    } else {
-      update(new LambdaUpdateWrapper<UserPrizeStorage>().set(UserPrizeStorage::getGoodsNum, userPrizeStorage.getGoodsNum() + 1)
-          .eq(UserPrizeStorage::getStorageId, userPrizeStorage.getStorageId()).eq(UserPrizeStorage::getGoodsNum, userPrizeStorage.getGoodsNum()));
-    }
   }
 }