zoujiajian 1 year ago
parent
commit
c25eded3df

+ 6 - 0
netflix-dao/src/main/java/com/cyksj/model/views/GoodsFrontListCategoryView.java

@@ -166,6 +166,12 @@ public class GoodsFrontListCategoryView {
 	@DbIgnore
 	private String notifyMsg;
 
+	/**
+	 * gpt赠送天卡活动标识 默认false
+	 */
+	@DbIgnore
+	private Boolean isGptGift = false;
+
 	@DbIgnore
 	private List<GoodsDonSkuFrontView> skuList;
 

+ 6 - 0
netflix-dao/src/main/java/com/cyksj/model/views/GoodsFrontListView.java

@@ -178,4 +178,10 @@ public class GoodsFrontListView {
 	 */
 	@DbIgnore
 	private Boolean isGift = false;
+
+	/**
+	 * gpt赠送天卡活动标识 默认false
+	 */
+	@DbIgnore
+	private Boolean isGptGift = false;
 }

+ 6 - 0
netflix-dao/src/main/java/com/cyksj/model/views/HomeManagementFrontView.java

@@ -229,4 +229,10 @@ public class HomeManagementFrontView {
 
 	@DbIgnore
 	private List<RealGoodsConfigDto> subInfoList;
+
+	/**
+	 * gpt赠送天卡活动标识 默认false
+	 */
+	@DbIgnore
+	private Boolean isGptGift = false;
 }

+ 29 - 1
netflix-web/src/main/java/com/cyksj/web/controller/goods/GoodsDonController.java

@@ -370,6 +370,10 @@ public class GoodsDonController {
 			}
 			views.setSkuList(beanSearcher.searchAll(GoodsDonSkuFrontView.class, builder.build()));
 			views.setSold(getGoodsSold(views.getId(), views.getSold()));
+			List<Long> gptBuyGids = getGptMirrorGiveawayBuyGids();
+			if (CollUtil.isNotEmpty(gptBuyGids) && gptBuyGids.contains(views.getId())) {
+				views.setIsGptGift(true);
+			}
 			List<GoodsDonQaFrontView> donQaFrontViews = beanSearcher.searchAll(GoodsDonQaFrontView.class, MapUtils.builder().field(GoodsDonQaFrontView::getGoodsId, id).field(GoodsDonQaFrontView::getType, 1).build());
 			views.setQuestions(donQaFrontViews);
 			redisService.setNx(goodsDetailKey, views, RedisService.key.YH_HOME_PAGHE_CACHE.getTimeout() + 60 * RandomUtil.randomInt(10));
@@ -899,8 +903,12 @@ public class GoodsDonController {
 
 	public void setHomeConfigGoods(Map<String, List<HomeManagementFrontView>> map, HomeManagementConfig.Type type, List<HomeManagementFrontView> list, AtomicLong dsUserId, AtomicBoolean existsChannel, Long fUid, BigDecimal discount) throws Exception {
 		//设置特定价格
+		List<Long> gptBuyGids = getGptMirrorGiveawayBuyGids();
 		if (CollUtil.isNotEmpty(list)) {
 			list = list.stream().filter(data -> {
+				if (CollUtil.isNotEmpty(gptBuyGids) && gptBuyGids.contains(data.getGoodsId())) {
+					data.setIsGptGift(true);
+				}
 				if (data.getIsOwns()) {
 					if (dsUserId.get() == 0 && fUid != null && existsChannel.get()) {
 						Long sharedId = userService.getSharedIdByUserId(fUid);
@@ -1026,10 +1034,13 @@ public class GoodsDonController {
 				mapBuilder.field(GoodsFrontListCategoryView::getId, filter_goodsIds).op(Operator.NotIn);
 			}
 			List<GoodsFrontListCategoryView> goodsFrontListViews = beanSearcher.searchAll(GoodsFrontListCategoryView.class, mapBuilder.build());
+			List<Long> gptBuyGids = getGptMirrorGiveawayBuyGids();
 			goodsFrontListViews.forEach(data -> {
 				data.setSold(getGoodsSold(data.getId(), data.getSold()));
-				;
 				data.setNotifyMsg(getPayMsgTime(data.getId(), now, 1, null));
+				if (CollUtil.isNotEmpty(gptBuyGids) && gptBuyGids.contains(data.getId())) {
+					data.setIsGptGift(true);
+				}
 			});
 			redisService.setNx(categoryGoodsKey, goodsFrontListViews, RedisService.key.YH_HOME_PAGHE_CACHE.getTimeout() + 10 * 60);
 			o = redisService.get(categoryGoodsKey);
@@ -1540,4 +1551,21 @@ public class GoodsDonController {
 		}
 	}
 
+	/**
+	 * 获取gpt镜像天卡活动参与平台ids
+	 * @return
+	 */
+	private List<Long> getGptMirrorGiveawayBuyGids() {
+		GptMirrorDayCardGiveawayActivity gptMirrorDayCardGiveawayActivity = beanSearcher.searchFirst(GptMirrorDayCardGiveawayActivity.class, MapUtils.builder().build());
+		if (gptMirrorDayCardGiveawayActivity != null) {
+			String buyGoodsIds = gptMirrorDayCardGiveawayActivity.getBuyGoodsIds();
+			try {
+				return Jsons.parseList(buyGoodsIds, Long.class);
+			} catch (Exception e) {
+
+			}
+		}
+		return null;
+	}
+
 }