From e40d1c22c7202aac843c66f9ee9cc000744f9e10 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期二, 30 六月 2020 15:52:49 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/div' into div
---
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/GoodsControllerV2.java | 205 +++++++++++++++++++++++++++++++++++++--------------
1 files changed, 148 insertions(+), 57 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/GoodsControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/GoodsControllerV2.java
index d0b1831..e7be381 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/GoodsControllerV2.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/GoodsControllerV2.java
@@ -13,7 +13,6 @@
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
-import org.yeshi.utils.HttpUtil;
import org.yeshi.utils.JsonUtil;
import org.yeshi.utils.taobao.TbImgUtil;
@@ -26,6 +25,7 @@
import com.yeshi.fanli.dto.pdd.PDDPromotionUrl;
import com.yeshi.fanli.dto.pdd.PDDSearchFilter;
import com.yeshi.fanli.dto.suning.SuningGoodsInfo;
+import com.yeshi.fanli.dto.suning.SuningGoodsInfoRecommend;
import com.yeshi.fanli.dto.taobao.DaTaoKeFilterResult;
import com.yeshi.fanli.dto.vip.VIPConvertResultDTO;
import com.yeshi.fanli.dto.vip.goods.VIPGoodsInfo;
@@ -33,6 +33,10 @@
import com.yeshi.fanli.entity.bus.user.ShamUser;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.entity.bus.user.vip.UserLevelEnum;
+import com.yeshi.fanli.entity.dynamic.CommentInfo;
+import com.yeshi.fanli.entity.dynamic.GoodsEvaluate;
+import com.yeshi.fanli.entity.dynamic.ImgInfo;
+import com.yeshi.fanli.entity.dynamic.ImgInfo.ImgEnum;
import com.yeshi.fanli.entity.goods.CollectionGoodsV2;
import com.yeshi.fanli.entity.goods.CommonGoods;
import com.yeshi.fanli.entity.jd.JDGoods;
@@ -476,15 +480,15 @@
goodsDetail.setShopInfo(ShopInfoVOFactory.convertTaoBaoShop(shop));
}
- // 鏈夊埜澶勭悊
- if (goodsDetail.isHasCoupon()) {
- if (!StringUtil.isNullOrEmpty(from)) {
- if ("miandan".equals(from)) { // 鍏嶅崟鍟嗗搧
- MoneyInfoVO moneyInfo = goodsDetail.getMoneyInfo();
- moneyInfo.setFanliMoney("楼" + goodsDetail.getCouponPrice());
- goodsDetail.setMoneyInfo(moneyInfo);
- }
+ // 鍏嶅崟鍟嗗搧
+ if (!StringUtil.isNullOrEmpty(from) && "miandan".equals(from)) {
+ MoneyInfoVO moneyInfo = goodsDetail.getMoneyInfo();
+ if (goodsDetail.isHasCoupon()) {
+ moneyInfo.setFanliMoney("楼" + goodsDetail.getCouponPrice());
+ } else {
+ moneyInfo.setFanliMoney("楼" + goodsDetail.getZkPrice());
}
+ goodsDetail.setMoneyInfo(moneyInfo);
}
extraVO.setTbPidInfo(clientTBPid);
@@ -654,6 +658,12 @@
couponInfoList.add(goodsDetail.getCouponInfo());
goodsDetail.setCouponInfoList(couponInfoList);
}
+
+
+ if (VersionUtil.greaterThan_2_1_2(acceptData.getPlatform(), acceptData.getVersion())) {
+ getCloudInfo(acceptData, uid, goodsDetail, extraVO); // 浜戝彂鍗曟枃妗堜俊鎭�
+ }
+
JSONObject object = new JSONObject();
object.put("extra", JsonUtil.getApiCommonGson().toJson(extraVO));
object.put("goods", JsonUtil.getApiCommonGson().toJson(goodsDetail));
@@ -871,6 +881,10 @@
ShareVO shareInfoVO = new ShareVO();
shareInfoVO.setHelpLink(helpLink);
extraVO.setShare(shareInfoVO);
+
+ if (VersionUtil.greaterThan_2_1_2(acceptData.getPlatform(), acceptData.getVersion())) {
+ getCloudInfo(acceptData, uid, goodsDetail, extraVO); // 浜戝彂鍗曟枃妗堜俊鎭�
+ }
JSONObject object = new JSONObject();
object.put("extra", JsonUtil.getApiCommonGson().toJson(extraVO));
@@ -1056,6 +1070,21 @@
extraVO.setCouponJumpLink(convertUrl.getUrl());
extraVO.setNativeCouponJumpLink(PinDuoDuoUtil.getAndroidNativeURI(convertUrl.getUrl()));
}
+
+ if (VersionUtil.greaterThan_2_1_2(acceptData.getPlatform(), acceptData.getVersion())) {
+ getCloudInfo(acceptData, uid, goodsDetail, extraVO); // 浜戝彂鍗曟枃妗堜俊鎭�
+ }
+
+ // 鍏嶅崟鍟嗗搧
+ if (!StringUtil.isNullOrEmpty(from) && "miandan".equals(from)) {
+ MoneyInfoVO moneyInfo = goodsDetail.getMoneyInfo();
+ if (goodsDetail.isHasCoupon()) {
+ moneyInfo.setFanliMoney("楼" + goodsDetail.getCouponPrice());
+ } else {
+ moneyInfo.setFanliMoney("楼" + goodsDetail.getZkPrice());
+ }
+ goodsDetail.setMoneyInfo(moneyInfo);
+ }
JSONObject object = new JSONObject();
object.put("extra", JsonUtil.getApiCommonGson().toJson(extraVO));
@@ -1191,6 +1220,9 @@
ShareVO shareInfoVO = new ShareVO();
shareInfoVO.setHelpLink(helpLink);
extraVO.setShare(shareInfoVO);
+
+ // 浜戝彂鍗曟枃妗堜俊鎭�
+ getCloudInfo(acceptData, uid, goodsDetail, extraVO);
JSONObject object = new JSONObject();
object.put("extra", JsonUtil.getApiCommonGson().toJson(extraVO));
@@ -1323,6 +1355,9 @@
shareInfoVO.setHelpLink(helpLink);
extraVO.setShare(shareInfoVO);
+ // 浜戝彂鍗曟枃妗堜俊鎭�
+ getCloudInfo(acceptData, uid, goodsDetail, extraVO);
+
JSONObject object = new JSONObject();
object.put("extra", JsonUtil.getApiCommonGson().toJson(extraVO));
object.put("goods", JsonUtil.getApiCommonGson().toJson(goodsDetail));
@@ -1345,6 +1380,62 @@
}
});
}
+
+ /**
+ * // 浜戝彂鍗曟枃妗堜俊鎭�
+ * @param goodsDetail
+ */
+ private void getCloudInfo(AcceptData acceptData,Long uid, GoodsDetailVO goodsDetail, GoodsDetailExtraVO extraVO) {
+ // 浜戝彂鍗曟槸鍚﹀紑鍚�
+ boolean cloudOpen = configService.isRobotCloudOpen(ConfigKeyEnum.robotCloudOpenGoodsDetail.getKey(),acceptData.getPlatform(),acceptData.getVersion());
+ if (!cloudOpen && uid != null) {
+ List<String> testUsers = configService.getTestUsers();
+ if (testUsers != null && testUsers.contains(uid+"")) {
+ cloudOpen = true;
+ }
+ }
+ extraVO.setCloudOpen(cloudOpen);
+
+ // 鏃犲埜鎴栬�呮湭寮�鍚彂鍦�
+ if (!goodsDetail.isHasCoupon() || !cloudOpen) {
+ return;
+ }
+
+ GoodsEvaluate evaluate = goodsEvaluateService.queryExistSingle(goodsDetail.getGoodsId() +"", goodsDetail.getGoodsType());
+ if (evaluate != null) {
+ String cloudText = null;
+ List<CommentInfo> comments = evaluate.getComments();
+ if (comments != null && comments.size() > 0) {
+ cloudText = comments.get(0).getContent();
+ }
+
+ String cloudPic = null;
+ List<ImgInfo> imgList = evaluate.getImgList();
+ if (imgList != null && imgList.size() > 0) {
+ for (ImgInfo imgInfo: imgList) {
+ ImgEnum type = imgInfo.getType();
+ if (type == ImgEnum.goods) {
+ cloudPic = imgInfo.getUrl();
+ }
+ }
+ }
+
+ if (!StringUtil.isNullOrEmpty(cloudText) && !StringUtil.isNullOrEmpty(cloudPic)) {
+
+ cloudText = cloudText.replace("[鍘熶环]", MoneyBigDecimalUtil.getWithNoZera(goodsDetail.getZkPrice()) + "");
+ if (!goodsDetail.isHasCoupon()) {
+ cloudText = cloudText.replace("棰嗗埜鎶㈣喘", "鎶㈣喘");
+ cloudText = cloudText.replace("銆愬埜鍚庝环銆慬鍒稿悗浠穄鍏�", "");
+ } else {
+ cloudText = cloudText.replace("[鍒稿悗浠穄", MoneyBigDecimalUtil.getWithNoZera(goodsDetail.getCouponPrice()) + "");
+ }
+ cloudText = cloudText.replace("\r\n\r\n", "\r\n").replace("\r\n\r\n", "\r\n").replace("\r\n\r\n", "\r\n");
+
+ extraVO.setCloudPic(cloudPic);
+ extraVO.setCloudText(cloudText);
+ }
+ }
+ }
/**
* 鍟嗗搧璇︽儏鎺ㄨ崘锛堢寽浣犲枩娆� + 鎺ㄨ崘锛�
@@ -1360,7 +1451,6 @@
}
try {
-
// 浜笢
if (goodsType == Constant.SOURCE_TYPE_JD) {
JSONObject data = new JSONObject();
@@ -1433,11 +1523,50 @@
return;
}
- if (goodsType == Constant.SOURCE_TYPE_SUNING) {
- // 鐚滀綘鍠滄
-
+ // 鍞搧浼�
+ if (goodsType == Constant.SOURCE_TYPE_VIP) {
+ JSONObject data = new JSONObject();
+ data.put("listGuess", JsonUtil.getApiCommonGson().toJson(new ArrayList<GoodsDetailVO>()));
+ data.put("listQuality", JsonUtil.getApiCommonGson().toJson(new ArrayList<GoodsDetailVO>()));
+ out.print(JsonUtil.loadTrueResult(data));
+ return;
}
+
+ // 鑻忓畞
+ if (goodsType == Constant.SOURCE_TYPE_SUNING) {
+ List<SuningGoodsInfo> resultList = null;
+ String[] ids = SuningUtil.getGoodsIdDetail(id);
+ List<SuningGoodsInfoRecommend> list = SuningApiUtil.getRecommendGoods(ids[1], ids[0]);
+ if (list != null && list.size() > 0) {
+ List<String> listId = new ArrayList<>();
+ for (SuningGoodsInfoRecommend goodsInfo: list) {
+ if (goodsInfo != null) {
+ listId.add(goodsInfo.getCommodityCode() + "-" + goodsInfo.getSupplierCode());
+ }
+ }
+ resultList = SuningApiUtil.getGoodsDetailList(listId);
+ }
+
+ List<GoodsDetailVO> listDetailVO = new ArrayList<GoodsDetailVO>();
+ if (resultList != null) {
+ if (resultList != null && resultList.size() > 0) {
+ ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
+ acceptData.getVersion());
+ for (SuningGoodsInfo goods : resultList) {
+ GoodsDetailVO goodsDetailVO = GoodsDetailVOFactory.convertSuningGoods(goods, paramsDTO);
+ listDetailVO.add(goodsDetailVO);
+ }
+ }
+ }
+
+ JSONObject data = new JSONObject();
+ data.put("listQuality", JsonUtil.getApiCommonGson().toJson(listDetailVO));
+ data.put("listGuess", JsonUtil.getApiCommonGson().toJson(new ArrayList<GoodsDetailVO>()));
+ out.print(JsonUtil.loadTrueResult(data));
+ return;
+ }
+
List<TaoBaoGoodsBrief> goodsList = TaoKeApiUtil.guessLikeByAuctionId(Long.parseLong(id), 10);
// 鍒濆鍖�
if (goodsList == null) {
@@ -1445,50 +1574,12 @@
}
List<GoodsDetailVO> listExtra = new ArrayList<GoodsDetailVO>();
- TaoKeAppInfo app = new TaoKeAppInfo();
- app.setAppKey(TaoBaoConstant.TAOBAO_AUTH_APPKEY);
- app.setAppSecret(TaoBaoConstant.TAOBAO_AUTH_APPSECRET);
- app.setAdzoneId(TaoBaoConstant.TAOBAO_SPECIAL_PID_DEFAULT.split("_")[3]);
- app.setPid(TaoBaoConstant.TAOBAO_SPECIAL_PID_DEFAULT);
-
- List<Long> ids = new ArrayList<>();
- for (TaoBaoGoodsBrief goods : goodsList)
- ids.add(goods.getAuctionId());
-
- try {
- goodsList = TaoKeApiUtil.getBatchGoodsInfo(ids);
- } catch (TaoKeApiException e1) {
- } catch (TaobaoGoodsDownException e1) {
- }
-
- if (goodsList != null && goodsList.size() > 0) {
-
- ConfigParamsDTO paramsDTO = getParamsDTO(acceptData.getPlatform(), acceptData.getVersion(), null);
-
- goodsList.parallelStream().forEach(goods -> {
- if (goods != null) {
- // 鑾峰彇璇︽儏
- TaoBaoGoodsBrief taoBaoGoodsBrief = null;
- try {
- taoBaoGoodsBrief = taoBaoGoodsCacheUtil.getCommonTaoBaoGoodsInfo(goods.getAuctionId());
- } catch (Exception e) {
- e.printStackTrace();
- }
-
- if (taoBaoGoodsBrief == null) {
- TaoBaoGoodsBrief newGoods = TaoKeApiUtil.specialConvertCoupon(goods.getAuctionId(), app);
- goods.setCouponInfo(newGoods.getCouponInfo());
- goods.setCouponLink(newGoods.getCouponLink());
- goods.setTkRate(newGoods.getTkRate());
- taoBaoGoodsBrief = goods;
- }
-
- if (taoBaoGoodsBrief != null) {
- listExtra.add(GoodsDetailVOFactory.convertTaoBao(taoBaoGoodsBrief, paramsDTO));
- }
- }
- });
- }
+ ConfigParamsDTO paramsDTO = getParamsDTO(acceptData.getPlatform(), acceptData.getVersion(), null);
+ goodsList.parallelStream().forEach(goods -> {
+ if (goods != null) {
+ listExtra.add(GoodsDetailVOFactory.convertTaoBao(goods, paramsDTO));
+ }
+ });
List<GoodsDetailVO> listQuality = new ArrayList<GoodsDetailVO>();
// 鍙栧伓鏁颁釜鏁版嵁
--
Gitblit v1.8.0