From d8359ddb48dab5cc797a9d552e11fde571f4920c Mon Sep 17 00:00:00 2001
From: yujian <yujian@123.com>
Date: 星期二, 27 八月 2019 12:32:46 +0800
Subject: [PATCH] Merge branch 'div' of ssh://193.112.35.168:29418/fanli-server into div

---
 fanli/src/main/java/com/yeshi/fanli/controller/client/v2/BrandControllerV2.java |  338 +++++++++++++++++++++++++++++++++++---------------------
 1 files changed, 210 insertions(+), 128 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/BrandControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/BrandControllerV2.java
index b6d8b20..205a4d5 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/BrandControllerV2.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/BrandControllerV2.java
@@ -15,6 +15,7 @@
 import com.google.gson.Gson;
 import com.google.gson.GsonBuilder;
 import com.yeshi.fanli.entity.accept.AcceptData;
+import com.yeshi.fanli.entity.brand.TaoBaoShopHistory;
 import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
 import com.yeshi.fanli.entity.taobao.TaoBaoShop;
 import com.yeshi.fanli.entity.taobao.dataoke.DaTaoKeDetail;
@@ -25,8 +26,10 @@
 import com.yeshi.fanli.service.inter.brand.TaoBaoShopHistoryService;
 import com.yeshi.fanli.service.inter.goods.TaoBaoGoodsBriefService;
 import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService;
+import com.yeshi.fanli.service.inter.taobao.TaoBaoGoodsUpdateService;
 import com.yeshi.fanli.service.inter.taobao.TaoBaoShopService;
 import com.yeshi.fanli.service.inter.taobao.dataoke.DaTaoKeGoodsService;
+import com.yeshi.fanli.util.Constant;
 import com.yeshi.fanli.util.StringUtil;
 import com.yeshi.fanli.util.ThreadUtil;
 import com.yeshi.fanli.util.factory.goods.GoodsDetailVOFactory;
@@ -56,15 +59,14 @@
 	@Resource
 	private HongBaoManageService hongBaoManageService;
 
-	
 	@Resource
 	private TaoBaoGoodsBriefService taoBaoGoodsBriefService;
 
 	@Resource
 	private DaTaoKeGoodsService daTaoKeGoodsService;
 
-
-
+	@Resource
+	private TaoBaoGoodsUpdateService taoBaoGoodsUpdateService;
 
 	/**
 	 * 搴楅摵鍒楄〃
@@ -74,16 +76,91 @@
 	 */
 	@RequestMapping(value = "getShopList", method = RequestMethod.POST)
 	public void getShopList(AcceptData acceptData, Integer page, Long cid, PrintWriter out) {
-		try {
-			if (page == null || page < 1) {
-				page = 1;
-			}
-			JSONObject data = brandClassShopService.listEffectiveCacheV2(page, cid);
-			out.print(JsonUtil.loadTrueResult(data));
-		} catch (Exception e) {
-			e.printStackTrace();
-			out.print(JsonUtil.loadFalseResult("鏌ヨ澶辫触"));
+		if (page == null || page < 1) {
+			page = 1;
 		}
+		JSONObject data = brandClassShopService.listEffectiveCacheV2(page, cid);
+		out.print(JsonUtil.loadTrueResult(data));
+	}
+
+	/**
+	 * 搴楅摵瓒宠抗
+	 * 
+	 * @param acceptData
+	 * @param type
+	 *            绮鹃��1锛� 瓒宠抗鍒楄〃2
+	 * @param out
+	 */
+	@RequestMapping(value = "getHistory", method = RequestMethod.POST)
+	public void getHistory(AcceptData acceptData, Integer page, Long uid, Integer type, PrintWriter out) {
+		if (type == null) {
+			out.print(JsonUtil.loadFalseResult("绫诲瀷涓嶆纭�"));
+			return;
+		}
+
+		if (page == null || page < 1) {
+			page = 1;
+		}
+
+		int pageSize;
+		if (type == 1) {
+			pageSize = 4;
+		} else {
+			pageSize = Constant.PAGE_SIZE;
+		}
+
+		long count = 0;
+		List<TaoBaoShopHistory> listHistory = null;
+		if (uid == null || uid == 0) {
+			String device = acceptData.getDevice();
+			count = taoBaoShopHistoryService.countByDevice(device);
+			if (count > 0) {
+				listHistory = taoBaoShopHistoryService.listByDevice((page - 1) * pageSize, pageSize, device);
+			}
+		} else {
+			count = taoBaoShopHistoryService.countByUid(uid);
+			if (count > 0) {
+				listHistory = taoBaoShopHistoryService.listByUid((page - 1) * pageSize, pageSize, uid);
+			}
+		}
+
+		List<TaoBaoShop> list = new ArrayList<TaoBaoShop>();
+		if (listHistory != null && listHistory.size() > 0) {
+			for (TaoBaoShopHistory history : listHistory) {
+				TaoBaoShop taoBaoShop = history.getTaoBaoShop();
+				if (taoBaoShop != null) {
+
+					Integer userType = taoBaoShop.getUserType();
+					if (userType == null || userType == 0) {
+						taoBaoShop.setUserType(10);
+					} else {
+						taoBaoShop.setUserType(11);
+					}
+
+					String shopLink = taoBaoShop.getShopLink();
+					if (StringUtil.isNullOrEmpty(shopLink)) {
+						taoBaoShop.setShopLink(TaoBaoUtil.getShopLink(taoBaoShop.getId()));
+					}
+
+					String shopNameCustom = taoBaoShop.getShopNameCustom();
+					if (!StringUtil.isNullOrEmpty(shopNameCustom)) {
+						taoBaoShop.setShopName(shopNameCustom);
+					}
+
+					String shopIconCustom = taoBaoShop.getShopIconCustom();
+					if (!StringUtil.isNullOrEmpty(shopIconCustom)) {
+						taoBaoShop.setShopIcon(shopIconCustom);
+					}
+
+					list.add(taoBaoShop);
+				}
+			}
+		}
+
+		JSONObject data = new JSONObject();
+		data.put("count", count);
+		data.put("list", JsonUtil.getApiCommonGson().toJson(list));
+		out.print(JsonUtil.loadTrueResult(data));
 	}
 
 	/**
@@ -94,138 +171,143 @@
 	 */
 	@RequestMapping(value = "getShopInfo", method = RequestMethod.POST)
 	public void getShopInfo(AcceptData acceptData, Integer page, Long sid, Long uid, PrintWriter out) {
-		try {
-			if (sid == null) {
-				out.print(JsonUtil.loadFalseResult("缂哄け搴楅摵id"));
+		if (sid == null) {
+			out.print(JsonUtil.loadFalseResult("缂哄け搴楅摵id"));
+			return;
+		}
+
+		JSONObject data = new JSONObject();
+		if (page == 1) {
+			TaoBaoShop taoBaoShop = taoBaoShopService.selectByPrimaryKey(sid);
+			if (taoBaoShop == null) {
+				out.print(JsonUtil.loadFalseResult("搴楅摵淇℃伅鑾峰彇澶辫触"));
 				return;
 			}
-			
-			JSONObject data = new JSONObject();
-			if (page == 1) {
-				TaoBaoShop taoBaoShop = taoBaoShopService.selectByPrimaryKey(sid);
-				if (taoBaoShop == null) {
-					out.print(JsonUtil.loadFalseResult("搴楅摵淇℃伅鑾峰彇澶辫触"));
-					return;
-				}
-				String shopLink = taoBaoShop.getShopLink();
-				if (StringUtil.isNullOrEmpty(shopLink)) {
-					taoBaoShop.setShopLink(TaoBaoUtil.getShopLink(taoBaoShop.getId()));
-				}
-				
-				String shopNameCustom = taoBaoShop.getShopNameCustom();
-				if (!StringUtil.isNullOrEmpty(shopNameCustom)) {
-					taoBaoShop.setShopName(shopNameCustom);
-				}
-				
-				String shopIconCustom = taoBaoShop.getShopIconCustom();
-				if (!StringUtil.isNullOrEmpty(shopIconCustom)) {
-					taoBaoShop.setShopIcon(shopIconCustom);
-				}
-				data.put("shop", JsonUtil.getApiCommonGson().toJson(taoBaoShop));
-				
-				
-				ThreadUtil.run(new Runnable() {
-					public void run() {
-						// 娣诲姞瓒宠抗
-						taoBaoShopHistoryService.addHistory(sid, uid, acceptData.getDevice());
-					}
-				});
+			String shopLink = taoBaoShop.getShopLink();
+			if (StringUtil.isNullOrEmpty(shopLink)) {
+				taoBaoShop.setShopLink(TaoBaoUtil.getShopLink(taoBaoShop.getId()));
 			}
 
-			
-			// 鍟嗗搧鍒楄〃淇℃伅
-			int pageSize = 50;
-			List<TaoBaoGoodsBrief> listGoodsBrief = new ArrayList<TaoBaoGoodsBrief>();
-			
-			// 鍏堟煡璇㈠ぇ娣樺鏁版嵁
-			List<DaTaoKeDetail> listDaTaoKe = daTaoKeGoodsService.listBySellerId(0, pageSize, sid);
-			if (listDaTaoKe != null && listDaTaoKe.size() > 0) {
-				for (DaTaoKeDetail daTaoKe: listDaTaoKe) {
-					listGoodsBrief.add(TaoBaoUtil.convert(daTaoKe));
-				}
+			String shopNameCustom = taoBaoShop.getShopNameCustom();
+			if (!StringUtil.isNullOrEmpty(shopNameCustom)) {
+				taoBaoShop.setShopName(shopNameCustom);
 			}
-			
-			// 涓嶈冻50鏉℃暟鎹�佹煡璇㈢簿閫夊簱
-			if (listGoodsBrief.size() < pageSize) {
-				int needCount = pageSize- listGoodsBrief.size();
-				List<TaoBaoGoodsBrief> listGoods = taoBaoGoodsBriefService.listByShopId(0, needCount, sid);
-				if (listGoods != null && listGoods.size() > 0) {
-					
-					if (listGoodsBrief.size() > 0) {
-						for (int i = 0; i< listGoods.size(); i ++) {
-							long id = listGoods.get(i).getAuctionId();
-							boolean isRepeat = false;
-							for (TaoBaoGoodsBrief goodsBrief: listGoodsBrief) {
-								long auctionId = goodsBrief.getAuctionId();
-								if (auctionId == id) {
-									isRepeat = true;
-									break;
-								}
-							}
-							if(isRepeat) {
-								listGoods.remove(i);
-								i--;
-							}
-						}
-					}
-					
-					listGoodsBrief.addAll(listGoods);
-				}
+
+			String shopIconCustom = taoBaoShop.getShopIconCustom();
+			if (!StringUtil.isNullOrEmpty(shopIconCustom)) {
+				taoBaoShop.setShopIcon(shopIconCustom);
 			}
-			
 
-			JSONArray array = new JSONArray();
-			if (listGoodsBrief.size() > 0) {
-				List<Long> listGid = new ArrayList<Long>();
-				for (TaoBaoGoodsBrief taoBaoGoodsBrief : listGoodsBrief) {
-					listGid.add(taoBaoGoodsBrief.getAuctionId());
-				}
-				// API缃戠粶鎺ュ彛楠岃瘉鏄惁鍦ㄥ敭
-				List<TaoBaoGoodsBrief> listTaoKeGoods = null;
-				try {
-					listTaoKeGoods = TaoKeApiUtil.getBatchGoodsInfo(listGid);
-				} catch (TaoKeApiException e) {
-					e.printStackTrace();
-				} catch (TaobaoGoodsDownException e) {
-					e.printStackTrace();
-				} catch (Exception e) {
-					e.printStackTrace();
-				}
-				
+			Integer userType = taoBaoShop.getUserType();
+			if (userType == null || userType == 0) {
+				taoBaoShop.setUserType(10);
+			} else {
+				taoBaoShop.setUserType(11);
+			}
 
-				Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
-						.excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
-				
-				BigDecimal fanLiRate = hongBaoManageService.getFanLiRate();
-				BigDecimal shareRate = hongBaoManageService.getShareRate();
-				
-				for (TaoBaoGoodsBrief taoBaoGoodsBrief : listGoodsBrief) {
-					if (listTaoKeGoods != null && listTaoKeGoods.size() > 0) {
-						boolean stateSale = false; // 榛樿鍋滃敭
-						Long goodsId = taoBaoGoodsBrief.getAuctionId();
-						for (TaoBaoGoodsBrief taoKeGoods : listTaoKeGoods) {
-							Long auctionId = taoKeGoods.getAuctionId();
-							if (goodsId == auctionId || goodsId.equals(auctionId)) {
-								stateSale = true; // 鍦ㄥ敭
+			data.put("shop", JsonUtil.getApiCommonGson().toJson(taoBaoShop));
+
+			ThreadUtil.run(new Runnable() {
+				public void run() {
+					// 娣诲姞瓒宠抗
+					taoBaoShopHistoryService.addHistory(sid, uid, acceptData.getDevice());
+				}
+			});
+		}
+
+		// 鍟嗗搧鍒楄〃淇℃伅
+		int pageSize = 50;
+		List<TaoBaoGoodsBrief> listGoodsBrief = new ArrayList<TaoBaoGoodsBrief>();
+
+		// 鍏堟煡璇㈠ぇ娣樺鏁版嵁
+		List<DaTaoKeDetail> listDaTaoKe = daTaoKeGoodsService.listBySellerId(0, pageSize, sid);
+		if (listDaTaoKe != null && listDaTaoKe.size() > 0) {
+			for (DaTaoKeDetail daTaoKe : listDaTaoKe) {
+				listGoodsBrief.add(TaoBaoUtil.convert(daTaoKe));
+			}
+		}
+
+		// 涓嶈冻50鏉℃暟鎹�佹煡璇㈢簿閫夊簱
+		if (listGoodsBrief.size() < pageSize) {
+			int needCount = pageSize - listGoodsBrief.size();
+			List<TaoBaoGoodsBrief> listGoods = taoBaoGoodsBriefService.listByShopId(0, needCount, sid);
+			if (listGoods != null && listGoods.size() > 0) {
+
+				if (listGoodsBrief.size() > 0) {
+					for (int i = 0; i < listGoods.size(); i++) {
+						long id = listGoods.get(i).getAuctionId();
+						boolean isRepeat = false;
+						for (TaoBaoGoodsBrief goodsBrief : listGoodsBrief) {
+							long auctionId = goodsBrief.getAuctionId();
+							if (auctionId == id) {
+								isRepeat = true;
 								break;
 							}
 						}
-						if (!stateSale) {
-							continue;
+						if (isRepeat) {
+							listGoods.remove(i);
+							i--;
 						}
 					}
-					GoodsDetailVO goodsDetailVO = GoodsDetailVOFactory.convertTaoBao(taoBaoGoodsBrief, null, fanLiRate, shareRate);
-					array.add(gson.toJson(goodsDetailVO));
 				}
+
+				listGoodsBrief.addAll(listGoods);
 			}
-			
-			data.put("count", array.size());
-			data.put("list", array);
-			out.print(JsonUtil.loadTrueResult(data));
-		} catch (Exception e) {
-			e.printStackTrace();
-			out.print(JsonUtil.loadFalseResult("鏌ヨ澶辫触"));
 		}
+
+		JSONArray array = new JSONArray();
+		if (listGoodsBrief.size() > 0) {
+			List<Long> listGid = new ArrayList<Long>();
+			for (TaoBaoGoodsBrief taoBaoGoodsBrief : listGoodsBrief) {
+				listGid.add(taoBaoGoodsBrief.getAuctionId());
+			}
+			// API缃戠粶鎺ュ彛楠岃瘉鏄惁鍦ㄥ敭
+			List<TaoBaoGoodsBrief> listTaoKeGoods = null;
+			try {
+				listTaoKeGoods = TaoKeApiUtil.getBatchGoodsInfo(listGid);
+			} catch (TaoKeApiException e) {
+				e.printStackTrace();
+			} catch (TaobaoGoodsDownException e) {
+				e.printStackTrace();
+			} catch (Exception e) {
+				e.printStackTrace();
+			}
+
+			Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
+					.excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
+
+			BigDecimal fanLiRate = hongBaoManageService.getFanLiRate();
+			BigDecimal shareRate = hongBaoManageService.getShareRate();
+
+			// 鍟嗗搧淇℃伅杩囨护
+			listGoodsBrief = taoBaoGoodsUpdateService.filterImportantTaoBaoGoods(listGoodsBrief);
+
+			for (TaoBaoGoodsBrief taoBaoGoodsBrief : listGoodsBrief) {
+				if (listTaoKeGoods != null && listTaoKeGoods.size() > 0) {
+					boolean stateSale = false; // 榛樿鍋滃敭
+					Long goodsId = taoBaoGoodsBrief.getAuctionId();
+					for (TaoBaoGoodsBrief taoKeGoods : listTaoKeGoods) {
+						Long auctionId = taoKeGoods.getAuctionId();
+						if (goodsId == auctionId || goodsId.equals(auctionId)) {
+							stateSale = true; // 鍦ㄥ敭
+							break;
+						}
+					}
+					if (!stateSale) {
+						continue;
+					}
+				}
+				GoodsDetailVO goodsDetailVO = GoodsDetailVOFactory.convertTaoBao(taoBaoGoodsBrief, null, fanLiRate,
+						shareRate);
+				array.add(gson.toJson(goodsDetailVO));
+			}
+		}
+
+		data.put("count", array.size());
+		data.put("list", array);
+		out.print(JsonUtil.loadTrueResult(data));
+		// 娣诲姞鍒版洿鏂板垪琛�
+		taoBaoGoodsUpdateService.addUpdateQueueAsync(listGoodsBrief);
 	}
 
 }

--
Gitblit v1.8.0