From 651f2856e9ae10aacbfb8327d967aacbb6d58333 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期三, 12 四月 2023 18:13:58 +0800
Subject: [PATCH] 大淘客API修复/唯品会订单爬取策略修改

---
 fanli/src/main/java/com/yeshi/fanli/controller/web/TLJBuyGoodsController.java |  316 +++++++++++++++++++++++++++-------------------------
 1 files changed, 165 insertions(+), 151 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/web/TLJBuyGoodsController.java b/fanli/src/main/java/com/yeshi/fanli/controller/web/TLJBuyGoodsController.java
index 1254a01..a631fce 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/web/TLJBuyGoodsController.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/web/TLJBuyGoodsController.java
@@ -1,151 +1,165 @@
-package com.yeshi.fanli.controller.web;
-
-import java.io.PrintWriter;
-import java.math.BigDecimal;
-import java.util.Date;
-import java.util.List;
-
-import javax.annotation.Resource;
-
-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;
-import com.yeshi.fanli.entity.accept.AcceptData;
-import com.yeshi.fanli.entity.taobao.TLJBuyGoods;
-import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
-import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBriefExtra;
-import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException;
-import com.yeshi.fanli.service.inter.taobao.TLJBuyGoodsService;
-import com.yeshi.fanli.service.inter.taobao.dataoke.DaTaoKeGoodsDetailService;
-import com.yeshi.fanli.util.StringUtil;
-import com.yeshi.fanli.util.TaoBaoConstant;
-import com.yeshi.fanli.util.TimeUtil;
-import com.yeshi.fanli.util.taobao.TaoBaoUtil;
-import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
-
-import net.sf.json.JSONArray;
-
-@Controller
-@RequestMapping("api/web/v1/tljBuyGoods")
-public class TLJBuyGoodsController {
-
-	@Resource
-	private TLJBuyGoodsService tljBuyGoodsService;
-
-	@Resource
-	private DaTaoKeGoodsDetailService daTaoKeGoodsDetailService;
-
-	/**
-	 * 鎷夊彇澶囬�夊晢鍝�
-	 * 
-	 * @param callback
-	 * @param acceptData
-	 * @param kw
-	 * @param out
-	 */
-	@RequestMapping(value = "listPreGoods", method = RequestMethod.GET)
-	public void listPreGoods(String callback, AcceptData acceptData, String kw, Integer page, PrintWriter out) {
-		// 澶ф窐瀹㈡暟鎹紝鏇存柊
-		List<TaoBaoGoodsBrief> list = tljBuyGoodsService.listPreGoods(page);
-		JSONArray array = new JSONArray();
-		Gson gson = new Gson();
-		for (TaoBaoGoodsBrief goods : list) {
-			array.add(gson.toJson(
-					TaoBaoUtil.getTaoBaoGoodsBriefExtra(goods, TaoBaoConstant.OWN_BUY_WITHOUT_FANLI_RATE + "", null)));
-		}
-		out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult(array)));
-	}
-
-	/**
-	 * 璁剧疆鍒嗕韩鍟嗗搧
-	 * 
-	 * @param callback
-	 * @param acceptData
-	 * @param ids
-	 * @param out
-	 */
-	@RequestMapping(value = "setShareGoods", method = RequestMethod.GET)
-	public void setShareGoods(String callback, AcceptData acceptData, String ids, String day, PrintWriter out) {
-		// 澶ф窐瀹㈡暟鎹紝鏇存柊
-		JSONArray array = JSONArray.fromObject(ids);
-
-		if (StringUtil.isNullOrEmpty(day)) {
-			day = TimeUtil.getGernalTime(System.currentTimeMillis() + 1000 * 60 * 60 * 24L, "yyyy-MM-dd");
-		}
-		int count = 0;
-		for (int i = 0; i < array.size(); i++) {
-			// 鑾峰彇鍟嗗搧璇︽儏
-			TaoBaoGoodsBrief goods = null;
-			try {
-				goods = TaoKeApiUtil.searchGoodsDetail(array.optLong(i));
-			} catch (TaobaoGoodsDownException e) {
-				e.printStackTrace();
-			}
-			if (goods != null && goods.getCouponAmount() != null
-					&& goods.getCouponAmount().compareTo(new BigDecimal(0)) > 0) {
-
-				if (TaoBaoUtil.getAfterUseCouplePrice(goods).multiply(goods.getTkRate())
-						.compareTo(new BigDecimal("143")) >= 0) {
-					count++;
-					goods = daTaoKeGoodsDetailService.filterTaoBaoGoods(goods);
-					int totalHongBaoCount = 2000 + (int) (Math.random() * 8000);
-					int leftHongBaoCount = 200 + (int) (Math.random() * 2000);
-					tljBuyGoodsService.addTLJBuyGoods(
-							new TLJBuyGoods(null, day, new Date(), goods, totalHongBaoCount, leftHongBaoCount),
-							TaoBaoConstant.ownBuyApp);
-				}
-			}
-		}
-		out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult("璁剧疆鎴愬姛:" + count)));
-	}
-
-	/**
-	 * 鑾峰彇宸茬粡閫夋嫨鐨勫晢鍝�
-	 * 
-	 * @param callback
-	 * @param acceptData
-	 * @param day
-	 * @param out
-	 */
-	@RequestMapping(value = "listSelectedGoods", method = RequestMethod.GET)
-	public void listSelectedGoods(String callback, AcceptData acceptData, String day, PrintWriter out) {
-		if (StringUtil.isNullOrEmpty(day)) {
-			day = TimeUtil.getGernalTime(System.currentTimeMillis() + 1000 * 60 * 60 * 24L, "yyyy-MM-dd");
-		}
-
-		// 鏈�澶�30涓晢鍝�
-		List<TLJBuyGoods> listGoods = tljBuyGoodsService.listByDay(day, 30);
-		JSONArray array = new JSONArray();
-		for (TLJBuyGoods sh : listGoods) {
-			TaoBaoGoodsBriefExtra item = TaoBaoUtil.getTaoBaoGoodsBriefExtra(sh.getGoods(),
-					TaoBaoConstant.OWN_BUY_WITHOUT_FANLI_RATE + "", null);
-			if (!StringUtil.isNullOrEmpty(item.getPictUrlWhite()))
-				item.setPictUrl(item.getPictUrlWhite());
-			item.setAuctionUrl(sh.getId());
-			array.add(item);
-		}
-		out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult(array)));
-	}
-
-	/**
-	 * 鍒犻櫎閫夋嫨鐨勫晢鍝�
-	 * 
-	 * @param callback
-	 * @param acceptData
-	 * @param ids
-	 * @param out
-	 */
-	@RequestMapping(value = "deleteSelectedGoods", method = RequestMethod.GET)
-	public void deleteSelectedGoods(String callback, AcceptData acceptData, String ids, PrintWriter out) {
-		JSONArray array = JSONArray.fromObject(ids);
-		for (int i = 0; i < array.size(); i++) {
-			String id = array.optString(i);
-			tljBuyGoodsService.deleteById(id);
-		}
-		out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult("")));
-	}
-
-}
+package com.yeshi.fanli.controller.web;
+
+import java.io.PrintWriter;
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+import javax.annotation.Resource;
+
+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;
+import com.yeshi.fanli.entity.accept.AcceptData;
+import com.yeshi.fanli.entity.taobao.TLJBuyGoods;
+import com.yeshi.goods.facade.entity.taobao.TaoBaoGoodsBrief;
+import com.yeshi.goods.facade.entity.taobao.TaoBaoGoodsBriefExtra;
+import com.yeshi.fanli.entity.taobao.TaoBaoUnionConfig;
+import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException;
+import com.yeshi.fanli.service.inter.taobao.TLJBuyGoodsService;
+import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService;
+import com.yeshi.goods.facade.service.DaTaoKeGoodsDetailV2Service;
+import com.yeshi.fanli.util.StringUtil;
+import com.yeshi.fanli.util.TaoBaoConstant;
+import org.yeshi.utils.TimeUtil;
+import com.yeshi.fanli.util.taobao.TaoBaoUtil;
+import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
+
+import net.sf.json.JSONArray;
+
+@Controller
+@RequestMapping("api/web/v1/tljBuyGoods")
+public class TLJBuyGoodsController {
+
+	@Resource
+	private TLJBuyGoodsService tljBuyGoodsService;
+
+	@Resource
+	private DaTaoKeGoodsDetailV2Service daTaoKeGoodsDetailV2Service;
+
+	@Resource
+	private TaoBaoUnionConfigService taoBaoUnionConfigService;
+
+	/**
+	 * 鎷夊彇澶囬�夊晢鍝�
+	 * 
+	 * @param callback
+	 * @param acceptData
+	 * @param kw
+	 * @param out
+	 */
+	@RequestMapping(value = "listPreGoods", method = RequestMethod.GET)
+	public void listPreGoods(String callback, AcceptData acceptData, String kw, Integer page, PrintWriter out) {
+		// 澶ф窐瀹㈡暟鎹紝鏇存柊
+		List<TaoBaoGoodsBrief> list = tljBuyGoodsService.listPreGoods(page);
+		JSONArray array = new JSONArray();
+		Gson gson = new Gson();
+		for (TaoBaoGoodsBrief goods : list) {
+			array.add(gson.toJson(
+					TaoBaoUtil.getTaoBaoGoodsBriefExtra(goods, TaoBaoConstant.OWN_BUY_WITHOUT_FANLI_RATE + "", null)));
+		}
+		out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult(array)));
+	}
+
+	/**
+	 * 璁剧疆鍒嗕韩鍟嗗搧
+	 * 
+	 * @param callback
+	 * @param acceptData
+	 * @param ids
+	 * @param out
+	 */
+	@RequestMapping(value = "setShareGoods", method = RequestMethod.GET)
+	public void setShareGoods(String callback, AcceptData acceptData, String ids, String day, PrintWriter out) {
+		// 澶ф窐瀹㈡暟鎹紝鏇存柊
+		JSONArray array = JSONArray.fromObject(ids);
+
+		if (StringUtil.isNullOrEmpty(day)) {
+			day = TimeUtil.getGernalTime(System.currentTimeMillis() + 1000 * 60 * 60 * 24L, "yyyy-MM-dd");
+		}
+		int count = 0;
+		for (int i = 0; i < array.size(); i++) {
+			// 鑾峰彇鍟嗗搧璇︽儏
+			TaoBaoGoodsBrief goods = null;
+			try {
+				goods = TaoKeApiUtil.searchGoodsDetail(array.optString(i));
+			} catch (TaobaoGoodsDownException e) {
+				e.printStackTrace();
+			}
+			if (goods != null && goods.getCouponAmount() != null
+					&& goods.getCouponAmount().compareTo(new BigDecimal(0)) > 0) {
+
+				if (TaoBaoUtil.getCouponPrice(goods).multiply(goods.getTkRate())
+						.compareTo(new BigDecimal("143")) >= 0) {
+					count++;
+					goods = daTaoKeGoodsDetailV2Service.filterTaoBaoGoods(goods).getGoods();
+					int totalHongBaoCount = 2000 + (int) (Math.random() * 8000);
+					int leftHongBaoCount = 200 + (int) (Math.random() * 2000);
+					tljBuyGoodsService.addTLJBuyGoods(
+							new TLJBuyGoods(null, day, new Date(), goods, totalHongBaoCount, leftHongBaoCount));
+				}
+			}
+		}
+		out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult("璁剧疆鎴愬姛:" + count)));
+	}
+
+	/**
+	 * 鑾峰彇宸茬粡閫夋嫨鐨勫晢鍝�
+	 * 
+	 * @param callback
+	 * @param acceptData
+	 * @param day
+	 * @param out
+	 */
+	@RequestMapping(value = "listSelectedGoods", method = RequestMethod.GET)
+	public void listSelectedGoods(String callback, AcceptData acceptData, String day, PrintWriter out) {
+		if (StringUtil.isNullOrEmpty(day)) {
+			day = TimeUtil.getGernalTime(System.currentTimeMillis() + 1000 * 60 * 60 * 24L, "yyyy-MM-dd");
+		}
+
+		// 鏈�澶�30涓晢鍝�
+		List<TLJBuyGoods> listGoods = new ArrayList<>();
+		List<TaoBaoUnionConfig> coinfigList = taoBaoUnionConfigService
+				.getConfigByTypeCache(TaoBaoUnionConfig.TYPE_TLJ_BUY);
+		for (TaoBaoUnionConfig app : coinfigList) {
+			List<TLJBuyGoods> list = tljBuyGoodsService.listByDay(app.getAppKey(), day, 30);
+			if (list != null && list.size() > 0) {
+				listGoods.addAll(list);
+			}
+		}
+
+		JSONArray array = new JSONArray();
+		for (TLJBuyGoods sh : listGoods) {
+			TaoBaoGoodsBriefExtra item = TaoBaoUtil.getTaoBaoGoodsBriefExtra(sh.getGoods(),
+					TaoBaoConstant.OWN_BUY_WITHOUT_FANLI_RATE + "", null);
+			if (!StringUtil.isNullOrEmpty(item.getPictUrlWhite()))
+				item.setPictUrl(item.getPictUrlWhite());
+			item.setAuctionUrl(sh.getId());
+			array.add(item);
+		}
+		out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult(array)));
+	}
+
+	/**
+	 * 鍒犻櫎閫夋嫨鐨勫晢鍝�
+	 * 
+	 * @param callback
+	 * @param acceptData
+	 * @param ids
+	 * @param out
+	 */
+	@RequestMapping(value = "deleteSelectedGoods", method = RequestMethod.GET)
+	public void deleteSelectedGoods(String callback, AcceptData acceptData, String ids, PrintWriter out) {
+		JSONArray array = JSONArray.fromObject(ids);
+		for (int i = 0; i < array.size(); i++) {
+			String id = array.optString(i);
+			tljBuyGoodsService.deleteById(id);
+		}
+		out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult("")));
+	}
+
+}

--
Gitblit v1.8.0