From 63d7d733938c8ea2fbb046625f1f70d6c48f8673 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期六, 14 十二月 2019 11:08:19 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/div' into div
---
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ConsumerControllerV2.java | 114 ++++++++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 96 insertions(+), 18 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ConsumerControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ConsumerControllerV2.java
index a739d45..269e502 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ConsumerControllerV2.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ConsumerControllerV2.java
@@ -21,10 +21,13 @@
import com.google.gson.JsonPrimitive;
import com.google.gson.JsonSerializationContext;
import com.google.gson.JsonSerializer;
+import com.yeshi.fanli.dto.ConfigParamsDTO;
+import com.yeshi.fanli.dto.pdd.PDDGoodsDetail;
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.goods.CollectionGoodsV2;
import com.yeshi.fanli.entity.goods.CommonGoods;
import com.yeshi.fanli.entity.goods.ScanHistoryV2;
+import com.yeshi.fanli.entity.jd.JDGoods;
import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
import com.yeshi.fanli.exception.goods.CollectionGoodsException;
import com.yeshi.fanli.exception.taobao.TaoKeApiException;
@@ -32,10 +35,15 @@
import com.yeshi.fanli.service.inter.config.BusinessSystemService;
import com.yeshi.fanli.service.inter.goods.CollectionGoodsV2Service;
import com.yeshi.fanli.service.inter.goods.ScanHistoryV2Service;
-import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService;
+import com.yeshi.fanli.service.inter.order.config.HongBaoManageService;
import com.yeshi.fanli.util.Constant;
+import com.yeshi.fanli.util.RedisManager;
import com.yeshi.fanli.util.StringUtil;
+import com.yeshi.fanli.util.cache.JDGoodsCacheUtil;
+import com.yeshi.fanli.util.cache.PinDuoDuoCacheUtil;
+import com.yeshi.fanli.util.cache.TaoBaoGoodsCacheUtil;
import com.yeshi.fanli.util.factory.goods.GoodsDetailVOFactory;
+import com.yeshi.fanli.util.jd.JDApiUtil;
import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
import com.yeshi.fanli.vo.goods.GoodsDetailVO;
@@ -54,7 +62,7 @@
@Resource
private BusinessSystemService businessSystemService;
-
+
@Resource
private HongBaoManageService hongBaoManageService;
@@ -64,10 +72,83 @@
@Resource
private ScanHistoryV2Service scanHistoryV2Service;
-
+ @Resource
+ private TaoBaoGoodsCacheUtil taoBaoGoodsCacheUtil;
+
+ @Resource
+ private JDGoodsCacheUtil jdGoodsCacheUtil;
+
+ @Resource
+ private PinDuoDuoCacheUtil pinDuoDuoCacheUtil;
+
+ @Resource
+ private RedisManager redisManager;
+
/**
+ * 鏀惰棌鍟嗗搧
+ * @param acceptData
+ * @param uid
+ * @param id
+ * @param type
+ * @param goodsType
+ * @param out
+ */
+ @RequestMapping("collectionGoods")
+ public void collectionGoods(AcceptData acceptData, long uid, long id, int type, Integer goodsType,
+ PrintWriter out) {
+ try {
+ if (goodsType == null) {
+ goodsType = Constant.SOURCE_TYPE_TAOBAO;
+ }
+
+ if (type != 1) {
+ collectionGoodsV2Service.cancelCollectionByAuctionId(uid, id, goodsType);
+ out.print(JsonUtil.loadTrueResult("鍙栨秷鏀惰棌鎴愬姛"));
+ return;
+ }
+
+ CollectionGoodsV2 find = collectionGoodsV2Service.findByUidAndAuctionId(uid, id, goodsType);
+ if (find != null) {
+ out.print(JsonUtil.loadFalseResult(""));
+ return;
+ }
+
+ if (goodsType == Constant.SOURCE_TYPE_JD) {
+ JDGoods jdGoods = jdGoodsCacheUtil.getGoodsInfo(id);
+ if (jdGoods == null) {
+ jdGoods = JDApiUtil.getGoodsDetail(id);
+ }
+ if (jdGoods == null) {
+ out.print(JsonUtil.loadFalseResult(1, "鍟嗗搧宸蹭笅鏋�"));
+ return;
+ }
+ collectionGoodsV2Service.addJDCollection(uid, jdGoods);
+ } else if (goodsType == Constant.SOURCE_TYPE_PDD) {
+ PDDGoodsDetail pddGoods = pinDuoDuoCacheUtil.getGoodsInfo(id);
+ if (pddGoods == null) {
+ out.print(JsonUtil.loadFalseResult(1, "鍟嗗搧宸蹭笅鏋�"));
+ return;
+ }
+ collectionGoodsV2Service.addPDDCollection(uid, pddGoods);
+ } else {
+ try {
+ TaoBaoGoodsBrief taoBaoGoodsBrief = redisManager.getTaoBaoGoodsBrief(id);
+ collectionGoodsV2Service.addCollection(uid, taoBaoGoodsBrief);
+ } catch (TaobaoGoodsDownException e) {
+ out.print(JsonUtil.loadFalseResult(1, "鍟嗗搧宸蹭笅鏋�"));
+ return;
+ }
+ }
+ out.print(JsonUtil.loadTrueResult("鏀惰棌鎴愬姛"));
+ } catch (CollectionGoodsException e) {
+ out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg()));
+ }
+ }
+
+ /**
* 鍒犻櫎鏀惰棌
+ *
* @param acceptData
* @param ids
* @param type
@@ -80,7 +161,7 @@
out.print(JsonUtil.loadFalseResult("鐢ㄦ埛鏈櫥褰�"));
return;
}
-
+
if (type != null && type == 1) { // 鍒犻櫎鍏ㄩ儴
try {
collectionGoodsV2Service.cancelCollectionByUid(uid);
@@ -102,8 +183,6 @@
out.print(JsonUtil.loadTrueResult("鍒犻櫎鎴愬姛"));
}
-
-
/**
* 鏀惰棌鍒楄〃
*
@@ -159,7 +238,7 @@
BigDecimal fanLiRate = hongBaoManageService.getFanLiRate();
BigDecimal shareRate = hongBaoManageService.getShareRate();
-
+ ConfigParamsDTO paramsDTO = new ConfigParamsDTO(fanLiRate, shareRate, Constant.MAX_REWARD_RATE, hongBaoManageService.getVIPFanLiRate());
for (CollectionGoodsV2 collectionGoodsV2 : collectionGoodsList) {
CommonGoods commonGoods = collectionGoodsV2.getCommonGoods();
if (commonGoods == null) {
@@ -180,8 +259,7 @@
commonGoods.setState(state);
}
- GoodsDetailVO detailVO = GoodsDetailVOFactory.convertCommonGoods(commonGoods, null, fanLiRate,
- shareRate);
+ GoodsDetailVO detailVO = GoodsDetailVOFactory.convertCommonGoods(commonGoods, paramsDTO);
detailVO.setId(commonGoods.getId());
detailVO.setCreatetime(collectionGoodsV2.getCreateTime());
list.add(detailVO);
@@ -207,9 +285,9 @@
out.print(JsonUtil.loadTrueResult(data));
}
-
/**
* 鍒犻櫎瓒宠抗
+ *
* @param acceptData
* @param type
* @param uid
@@ -227,7 +305,7 @@
out.print(JsonUtil.loadFalseResult("ids涓嶈兘涓虹┖"));
return;
}
-
+
String[] idStr = ids.split(",");
for (String id : idStr) {
scanHistoryV2Service.deleteByCommonIdAndDeviceOrUid(uid, acceptData.getDevice(), Long.parseLong(id));
@@ -235,10 +313,10 @@
}
out.print(JsonUtil.loadTrueResult(""));
}
-
-
+
/**
* 鑾峰彇娴忚璁板綍
+ *
* @param acceptData
* @param uid
* @param page
@@ -267,7 +345,7 @@
}
}
});
-
+
long count = scanHistoryV2Service.getCountByDeviceOrUid(uid, acceptData.getDevice(), goodsType);
JSONArray array = new JSONArray();
@@ -275,15 +353,15 @@
Gson gson = gsonBuilder.create();
BigDecimal fanLiRate = hongBaoManageService.getFanLiRate();
BigDecimal shareRate = hongBaoManageService.getShareRate();
+ ConfigParamsDTO paramsDTO = new ConfigParamsDTO(fanLiRate, shareRate, Constant.MAX_REWARD_RATE, hongBaoManageService.getVIPFanLiRate());
for (ScanHistoryV2 sh : list) {
CommonGoods commonGoods = sh.getCommonGoods();
if (commonGoods == null) {
continue;
}
- GoodsDetailVO detailVO = GoodsDetailVOFactory.convertCommonGoods(commonGoods, null, fanLiRate,
- shareRate);
-
+ GoodsDetailVO detailVO = GoodsDetailVOFactory.convertCommonGoods(commonGoods, paramsDTO);
+
detailVO.setId(commonGoods.getId());
detailVO.setCreatetime(sh.getCreateTime());
array.add(gson.toJson(detailVO));
@@ -296,5 +374,5 @@
out.print(JsonUtil.loadTrueResult(data));
return;
}
-
+
}
--
Gitblit v1.8.0