From 8ba02b125d2df1a3393efdb276daae2244452d45 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期一, 28 十月 2019 18:06:58 +0800
Subject: [PATCH] 返利奖励券新规则调整,订单统计,返利到账优化
---
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/RecommendControllerV2.java | 176 ++++++++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 138 insertions(+), 38 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/RecommendControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/RecommendControllerV2.java
index c40c2ac..4c6d10f 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/RecommendControllerV2.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/RecommendControllerV2.java
@@ -12,7 +12,6 @@
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
import org.yeshi.utils.JsonUtil;
import com.google.gson.Gson;
@@ -21,6 +20,7 @@
import com.yeshi.fanli.dto.pdd.PDDGoodsDetail;
import com.yeshi.fanli.dto.pdd.PDDGoodsResult;
import com.yeshi.fanli.entity.accept.AcceptData;
+import com.yeshi.fanli.entity.bus.homemodule.Special;
import com.yeshi.fanli.entity.bus.homemodule.SwiperPicture;
import com.yeshi.fanli.entity.common.JumpDetailV2;
import com.yeshi.fanli.entity.jd.JDGoods;
@@ -31,16 +31,17 @@
import com.yeshi.fanli.log.LogHelper;
import com.yeshi.fanli.service.inter.common.JumpDetailV2Service;
import com.yeshi.fanli.service.inter.config.ConfigService;
+import com.yeshi.fanli.service.inter.count.HongBaoV2CountService;
import com.yeshi.fanli.service.inter.goods.recommend.HomeRecommendGoodsService;
import com.yeshi.fanli.service.inter.goods.recommend.RecommendGoodsDeleteHistoryService;
import com.yeshi.fanli.service.inter.homemodule.DeviceSexService;
import com.yeshi.fanli.service.inter.homemodule.SpecialService;
import com.yeshi.fanli.service.inter.homemodule.SwiperPictureService;
-import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService;
import com.yeshi.fanli.service.inter.jd.JDGoodsService;
import com.yeshi.fanli.service.inter.lable.QualityFlashSaleService;
import com.yeshi.fanli.service.inter.lable.QualityGoodsService;
import com.yeshi.fanli.service.inter.monitor.MonitorService;
+import com.yeshi.fanli.service.inter.order.config.HongBaoManageService;
import com.yeshi.fanli.service.inter.pdd.PDDGoodsService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoGoodsUpdateService;
import com.yeshi.fanli.service.inter.taobao.dataoke.DaTaoKeGoodsDetailService;
@@ -122,9 +123,14 @@
@Resource
private DaTaoKeGoodsDetailV2Service daTaoKeGoodsDetailV2Service;
-
+
@Resource
private DaTaoKeGoodsService daTaoKeGoodsService;
+
+ @Resource
+ private HongBaoV2CountService hongBaoV2CountService;
+
+
/**
* 鏂扮増鎺ㄨ崘涓撻绠$悊(1.5.3)
@@ -172,10 +178,10 @@
root.put("spikeGoods", getSpikeGoodsContent(acceptData));
if (VersionUtil.greaterThan_1_6_5(acceptData.getPlatform(), acceptData.getVersion()))
root.put("scoreExchange", getScoreExchangeInfo(acceptData));
-
- if (VersionUtil.greaterThan_2_0_0(acceptData.getPlatform(), acceptData.getVersion()))
+
+ if (VersionUtil.greaterThan_2_0(acceptData.getPlatform(), acceptData.getVersion()))
root.put("searchDiscovery", getSearchDiscoveryInfo(acceptData));
-
+
out.print(JsonUtil.loadTrueResult(root));
} catch (Exception e) {
out.print(JsonUtil.loadFalseResult(1, "鑾峰彇鏁版嵁澶辫触"));
@@ -200,8 +206,10 @@
}
private JSONObject getSpikeGoodsContent(AcceptData acceptData) {
- List<String> dtoList = DaTaoKeUtil.getDingDongQiangTime();
long nowTime = System.currentTimeMillis();
+ Calendar calendar= Calendar.getInstance();
+ calendar.setTimeInMillis(nowTime);
+ List<String> dtoList = DaTaoKeUtil.getDingDongQiangTime(calendar);
int dateNum = Integer.parseInt(TimeUtil.getGernalTime(nowTime, "ddHH"));
String timeStr = null;
int nextPos = 0;
@@ -212,6 +220,7 @@
break;
}
}
+
if (timeStr == null)
timeStr = dtoList.get(dtoList.size() - 1);
@@ -349,8 +358,7 @@
root.put("tagImg", "http://img.flqapp.com/resource/score_exchange_tag.png");
return root;
}
-
-
+
/**
* 閲戝竵鍏戞崲淇℃伅
*
@@ -365,30 +373,29 @@
for (int i = 0; i < arrayKeys.size(); i++) {
String name = arrayKeys.get(i).toString();
JSONObject params = new JSONObject();
- params.put("searchKey", name);
-
+ params.put("content", name);
+
SearchKeyVO keyVO = new SearchKeyVO();
keyVO.setName(name);
keyVO.setParams(params.toString());
array.add(keyVO);
}
}
-
+
JSONObject params = new JSONObject();
params.put("url", configService.get("search_discovery_h5_link"));
-
+
JSONObject root = new JSONObject();
root.put("picture", "http://img.flqapp.com/resource/home_search_found.png");
root.put("params", params);
root.put("jumpDetail", jumpDetailV2Service.getByTypeCache("web",
Constant.getPlatformCode(acceptData.getPlatform()), Integer.parseInt(acceptData.getVersion())));
-
+
root.put("jumpResult", jumpDetailV2Service.getByTypeCache("search_goods_result",
Constant.getPlatformCode(acceptData.getPlatform()), Integer.parseInt(acceptData.getVersion())));
root.put("keyList", array);
return root;
}
-
/**
* 棣栭〉搴曢儴鍟嗗搧鎺ㄨ崘
@@ -653,61 +660,154 @@
out.print(JsonUtil.loadTrueResult(data));
}
-
- /**
- * 鎼滅储鍙戠幇鍒楄〃
- * @param acceptData
- * @param uid
- * @param page
- * @param out
- */
- @RequestMapping(value = "getSearchDiscoveryTop", method = RequestMethod.POST)
- public void getSearchDiscoveryTop(AcceptData acceptData, Long uid, Integer page, PrintWriter out) {
+ /**
+ * 鎼滅储鍙戠幇鍒楄〃
+ *
+ * @param acceptData
+ * @param uid
+ * @param page
+ * @param out
+ */
+ @RequestMapping(value = "getSearchDiscoveryTop")
+ public void getSearchDiscoveryTop(AcceptData acceptData, Long uid, Integer page, String callback, PrintWriter out) {
int count = 0;
List<SearchKeyTOPVO> list = new ArrayList<SearchKeyTOPVO>();
-
- String keys = configService.getSearchDiscoveryKeys();
+
+ String keys = configService.getSearchDiscoveryKeys();
if (!StringUtil.isNullOrEmpty(keys)) {
JSONArray arrayKeys = JSONArray.fromObject(keys);
if (arrayKeys != null && arrayKeys.size() > 0) {
count = arrayKeys.size();
BigDecimal fanLiRate = hongBaoManageService.getFanLiRate();
BigDecimal shareRate = hongBaoManageService.getShareRate();
-
+
int j = 1;
- for (int i = (page-1) * 3; i < arrayKeys.size(); i++) {
+ for (int i = (page - 1) * 3; i < arrayKeys.size(); i++) {
if (j > 3)
break;
-
+
String words = arrayKeys.get(i).toString();
List<GoodsDetailVO> listGoods = new ArrayList<GoodsDetailVO>();
-
+
List<DaTaoKeDetailV2> listTaoKe = daTaoKeGoodsService.getSearchDiscoveryGoods(words);
if (listTaoKe != null && listTaoKe.size() > 0) {
- for (DaTaoKeDetailV2 daTaoKeDetailV2: listTaoKe) {
- listGoods.add(GoodsDetailVOFactory.convertTaoBao(TaoBaoUtil.convert(daTaoKeDetailV2), null, fanLiRate,
- shareRate));
+ for (DaTaoKeDetailV2 daTaoKeDetailV2 : listTaoKe) {
+ listGoods.add(GoodsDetailVOFactory.convertTaoBao(TaoBaoUtil.convert(daTaoKeDetailV2), null,
+ fanLiRate, shareRate));
if (listGoods.size() >= 3)
break;
}
}
-
+
SearchKeyTOPVO keyTOPVO = new SearchKeyTOPVO();
keyTOPVO.setName(words);
keyTOPVO.setListGoods(listGoods);
list.add(keyTOPVO);
-
+
j++;
}
}
}
-
+
GsonBuilder gsonBuilder = new GsonBuilder().excludeFieldsWithoutExposeAnnotation();
Gson gson = gsonBuilder.create();
JSONObject data = new JSONObject();
data.put("count", count);
data.put("list", gson.toJson(list));
+ if (!StringUtil.isNullOrEmpty(callback)) {
+ JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
+ } else
+ out.print(JsonUtil.loadTrueResult(data));
+ }
+
+ /**
+ * 鑾峰彇涓撻娓犻亾娲诲姩
+ *
+ * @param acceptData
+ * @param uid
+ * @param callback
+ * @param out
+ */
+ @RequestMapping(value = "getSpecialChannelActivity")
+ public void getSpecialChannelActivity(AcceptData acceptData, Long uid, String callback, PrintWriter out) {
+
+ int platformCode = Constant.getPlatformCode(acceptData.getPlatform());
+
+ List<Special> list = specialService.listByPlaceKey("special_channel_activity", platformCode,
+ Integer.parseInt(acceptData.getVersion()));
+
+ long time = System.currentTimeMillis();
+ // 鍒犻櫎灏氭湭鍚敤鐨勮繃鏈熺殑
+ for (int i = 0; i < list.size(); i++) {
+ Special special = list.get(i);
+ if (special.getState() == 1L) {
+ list.remove(i--);
+ } else {
+ if (special.getStartTime() != null && special.getEndTime() != null)
+ special.setTimeTask(true);
+ else
+ special.setTimeTask(false);
+
+ if (special.isTimeTask()) {
+ if (time < special.getStartTime().getTime() || time > special.getEndTime().getTime()) {
+ list.remove(i--);
+ } else// 璁剧疆鍊掕鏃�
+ {
+ special.setCountDownTime((special.getEndTime().getTime() - time) / 1000);
+ }
+ }
+ }
+ }
+
+ GsonBuilder gsonBuilder = new GsonBuilder().excludeFieldsWithoutExposeAnnotation();
+ Gson gson = gsonBuilder.create();
+ JSONObject data = new JSONObject();
+ data.put("count", list.size());
+ data.put("list", gson.toJson(list));
+ if (!StringUtil.isNullOrEmpty(callback)) {
+ JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
+ } else
+ out.print(JsonUtil.loadTrueResult(data));
+ }
+
+
+ /**
+ * 鑾峰彇涓撻娓犻亾娲诲姩
+ *
+ * @param acceptData
+ * @param uid
+ * @param callback
+ * @param out
+ */
+ @RequestMapping(value = "getGuide")
+ public void getGuide(AcceptData acceptData, Long uid, PrintWriter out) {
+ String tips = null;
+ if (uid == null || uid <= 0) {
+ tips = configService.get("tip_guide_new_user");
+ } else {
+ long rebateOrder = hongBaoV2CountService.countRebateOrder(uid);
+ long shareOrInviteOrder = hongBaoV2CountService.countShareOrInviteOrder(uid);
+ if (rebateOrder + shareOrInviteOrder >= 3) {
+ // 鐔熷鐗�
+ } else if (rebateOrder <= 0 && shareOrInviteOrder <= 0) {
+ // 鏂颁汉鐗�
+ tips = configService.get("tip_guide_new_user");
+ } else if (rebateOrder > 0 && shareOrInviteOrder <= 0) {
+ // 鐪侀挶鐗�
+ tips = configService.get("tip_guide_save_money");
+ } else {
+ // 璧氶挶鐗�
+ tips = configService.get("tip_guide_share_invite");
+ }
+ }
+
+ if (StringUtil.isNullOrEmpty(tips)) {
+ out.print(JsonUtil.loadFalseResult("鏆傛棤鎻愮ず"));
+ return;
+ }
+
+ JSONObject data = JSONObject.fromObject(tips);
out.print(JsonUtil.loadTrueResult(data));
}
-
+
}
--
Gitblit v1.8.0