From 34e65d72e73acab040b68d01ef6b4764b4408624 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期一, 05 八月 2019 10:07:38 +0800
Subject: [PATCH] 修改推荐记录点击详情跳转方式不对的bug
---
fanli/src/main/java/com/yeshi/fanli/service/impl/lable/QualityGoodsServiceImpl.java | 84 +++++++++++++++++++++++++++++++++++++++++-
1 files changed, 82 insertions(+), 2 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/lable/QualityGoodsServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/lable/QualityGoodsServiceImpl.java
index b07d2a3..de14a70 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/lable/QualityGoodsServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/lable/QualityGoodsServiceImpl.java
@@ -22,13 +22,16 @@
import com.yeshi.fanli.entity.bus.lable.QualityFactory;
import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
import com.yeshi.fanli.service.inter.goods.TaoBaoGoodsBriefService;
+import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService;
import com.yeshi.fanli.service.inter.lable.LabelService;
import com.yeshi.fanli.service.inter.lable.QualityGoodsService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService;
import com.yeshi.fanli.service.inter.taobao.dataoke.DaTaoKeGoodsDetailService;
import com.yeshi.fanli.util.RedisManager;
import com.yeshi.fanli.util.StringUtil;
+import com.yeshi.fanli.util.factory.goods.GoodsDetailVOFactory;
import com.yeshi.fanli.util.taobao.TaoBaoUtil;
+import com.yeshi.fanli.vo.goods.GoodsDetailVO;
import net.sf.json.JSONArray;
@@ -55,6 +58,10 @@
@Resource
private DaTaoKeGoodsDetailService daTaoKeGoodsDetailService;
+
+ @Resource
+ private HongBaoManageService hongBaoManageService;
+
@Override
@Cacheable(value = "qualityCache", key = "'listQueryByCouponAmount-'+#start+'-'+#key+'-'+#endAmount+'-'+#startPropor")
@@ -171,7 +178,22 @@
@Override
@Cacheable(value = "qualityCache", key = "'listQueryByClassId-'+#start+'-'+#cid")
public List<QualityFactory> listQueryByClassId(long start, int count, Long cid) {
- return qualityFactoryMapper.listQuery(start, count, null, cid, null, null, 1);
+ List<QualityFactory> list = qualityFactoryMapper.listQuery(start, count, null, cid, null, null, 1);
+
+ if (list == null) {
+ list = new ArrayList<QualityFactory>();
+ }
+
+ List<TaoBaoGoodsBrief> goodsList = new ArrayList<>();
+ for (QualityFactory qf : list)
+ goodsList.add(qf.getTaoBaoGoodsBrief());
+ goodsList = daTaoKeGoodsDetailService.filterTaoBaoGoods(goodsList);// 杩囨护澶ф窐瀹㈡爣棰�
+ for (int i = 0; i < list.size(); i++) {
+ if (i < goodsList.size())
+ list.get(i).setTaoBaoGoodsBrief(goodsList.get(i));
+
+ }
+ return list;
}
@Override
@@ -216,6 +238,7 @@
return qualityFactoryMapper.listRecommendToIndex(start, count, proportion, commision, couponAmount, tkRate,
couponRatio);
}
+
@Override
public long countRecommend(Double proportion, Integer commision, Integer couponAmount, double tkRate,
@@ -273,7 +296,7 @@
if (quality.getTaoBaoGoodsBrief() != null)
goodsList.add(quality.getTaoBaoGoodsBrief());
}
-
+
try {
goodsList = daTaoKeGoodsDetailService.filterTaoBaoGoods(goodsList);
} catch (Exception e) {
@@ -300,7 +323,64 @@
return array;
}
+
+
+
+ /**
+ * 棣栭〉鏈�搴曢儴@鍟嗗搧淇℃伅娴�
+ */
+ @Override
+ @Cacheable(value = "qualityCache", key = "'getRecommendToIndexV2-'+#start")
+ public JSONArray getRecommendToIndexV2(long start, int count) {
+
+ // 杩斿埄閲戦2鍏冧互涓婏紱
+ Integer commision = 2;
+ // 浼樻儬鍒搁潰棰濋珮浜�5鍏冧互涓�
+ Integer couponAmount = 5;
+ // 浣i噾姣斾緥楂樼殑:5%浠ヤ笂锛�
+ double tkRate = 5.0;
+ // 浼樻儬鐜囬珮浜�10%浠ヤ笂锛堜紭鎯犵巼=浼樻儬鍒搁潰棰�/鍟嗗搧鍦ㄥ敭浠�*100%锛�
+ Double couponRatio = 10.0;
+
+ BigDecimal fanLiRate = hongBaoManageService.getFanLiRate();
+ Double pop = 50.0;
+ if (fanLiRate != null) {
+ pop = Double.parseDouble(fanLiRate.toString());
+ }
+
+ List<QualityFactory> listQuery = listRecommend(start, count, pop, commision, couponAmount, tkRate, couponRatio);
+
+ if (listQuery == null || listQuery.size() == 0) {
+ return null;
+ }
+
+ JSONArray array = new JSONArray();
+ Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder()).create();
+ // 閬嶅巻鍒楄〃鏁版嵁
+ //
+ List<TaoBaoGoodsBrief> goodsList = new ArrayList<>();
+ for (QualityFactory quality : listQuery) {
+ if (quality.getTaoBaoGoodsBrief() != null)
+ goodsList.add(quality.getTaoBaoGoodsBrief());
+ }
+
+ try {
+ goodsList = daTaoKeGoodsDetailService.filterTaoBaoGoods(goodsList);
+ } catch (Exception e) {
+ }
+
+ BigDecimal shareRate = hongBaoManageService.getShareRate();
+ for (TaoBaoGoodsBrief taoBaoGoodsBrief : goodsList) {
+ GoodsDetailVO detailVO = GoodsDetailVOFactory.convertTaoBao(taoBaoGoodsBrief, null, fanLiRate, shareRate);
+ array.add(gson.toJson(detailVO));
+ }
+
+ return array;
+ }
+
+
+
@Override
@Cacheable(value = "qualityCache", key = "'countRecommendToIndex-'+#proportion")
public long countRecommendToIndex(String proportion) {
--
Gitblit v1.8.0