From c5c6d40edef756ca0600bcdef100c32108a3b4bb Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期二, 14 五月 2019 16:21:29 +0800
Subject: [PATCH] 添加大淘客搜索

---
 fanli/src/main/java/com/yeshi/fanli/controller/admin/TaoBaoGoodsBriefAdminController.java |  111 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 111 insertions(+), 0 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/admin/TaoBaoGoodsBriefAdminController.java b/fanli/src/main/java/com/yeshi/fanli/controller/admin/TaoBaoGoodsBriefAdminController.java
index c38b880..f94907f 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/admin/TaoBaoGoodsBriefAdminController.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/admin/TaoBaoGoodsBriefAdminController.java
@@ -27,12 +27,14 @@
 import com.yeshi.fanli.entity.taobao.TaoBaoSearchResult;
 import com.yeshi.fanli.entity.taobao.TaoBaoUnionConfig;
 import com.yeshi.fanli.entity.taobao.TaobaoMeterial;
+import com.yeshi.fanli.entity.taobao.dataoke.DaTaoKeDetail;
 import com.yeshi.fanli.service.inter.goods.GoodsClassService;
 import com.yeshi.fanli.service.inter.goods.TaoBaoClassService;
 import com.yeshi.fanli.service.inter.goods.TaoBaoGoodsBriefService;
 import com.yeshi.fanli.service.inter.lable.QualityFactoryService;
 import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService;
 import com.yeshi.fanli.service.inter.taobao.TaobaoMeterialService;
+import com.yeshi.fanli.service.inter.taobao.dataoke.DaTaoKeGoodsDetailService;
 import com.yeshi.fanli.tag.PageEntity;
 import com.yeshi.fanli.util.Constant;
 import com.yeshi.fanli.util.MoneyBigDecimalUtil;
@@ -62,6 +64,9 @@
 
 	@Resource
 	private TaoBaoClassService taoBaoClassService;
+	
+	@Resource
+	private DaTaoKeGoodsDetailService daTaoKeGoodsDetailService;
 
 	/**
 	 * 
@@ -896,6 +901,112 @@
 		}
 
 	}
+	
+
+	private List<Map<String, Object>> filterTaoBaoGoodsWithQulity(List<TaoBaoGoodsBrief> goodsList) {
+
+		// 鎻掑叆鍟嗗搧闆嗗悎
+		List<Long> listAuctionId = new ArrayList<Long>();
+		for (TaoBaoGoodsBrief goodsBrief : goodsList) {
+			listAuctionId.add(goodsBrief.getAuctionId());
+		}
+
+		// 楠岃瘉鏄惁瀛樺湪鏁版嵁搴�
+		List<QualityFactory> listHas = qualityFactoryService.listQueryByAuctionId(listAuctionId);
+
+		List<Map<String, Object>> listmap = new ArrayList<Map<String, Object>>();
+
+		for (TaoBaoGoodsBrief taoBaoGoodsBrief : goodsList) {
+			taoBaoGoodsBrief.setId(null);
+
+			Map<String, Object> map = new HashMap<String, Object>();
+
+			map.put("pictUrl", taoBaoGoodsBrief.getPictUrl());
+			map.put("title", taoBaoGoodsBrief.getTitle());
+			map.put("auctionId", taoBaoGoodsBrief.getAuctionId());
+			map.put("auctionUrl", taoBaoGoodsBrief.getAuctionUrl());
+			map.put("zkPrice", taoBaoGoodsBrief.getZkPrice());
+			map.put("biz30day", taoBaoGoodsBrief.getBiz30day());
+			map.put("couponInfo", taoBaoGoodsBrief.getCouponInfo());
+			map.put("couponTotalCount", taoBaoGoodsBrief.getCouponTotalCount());
+			map.put("couponLeftCount", taoBaoGoodsBrief.getCouponLeftCount());
+			map.put("couponEffectiveEndTime", taoBaoGoodsBrief.getCouponEffectiveEndTime());
+			map.put("tkRate", taoBaoGoodsBrief.getTkRate());
+
+			// 鏉ユ簮 0 鏃� 1娣樺疂 2 浜笢
+			map.put("goodsSource", 1);
+
+			/* 鍒稿悗浠�--璁$畻 */
+			BigDecimal couponPrice = TaoBaoUtil.getAfterUseCouplePrice(taoBaoGoodsBrief);
+			map.put("couponPrice", couponPrice);
+
+			/* 棰勮鏀剁泭锛� 鍏徃銆佺敤鎴� */
+			BigDecimal tkRate = taoBaoGoodsBrief.getTkRate();
+			BigDecimal zkPrice = taoBaoGoodsBrief.getZkPrice();
+			BigDecimal profit = MoneyBigDecimalUtil.mul(tkRate, zkPrice);
+			// 璁$畻缁撴灉
+			BigDecimal estimateProfit = MoneyBigDecimalUtil.div(profit, new BigDecimal("100"));
+
+			// 棰勮鏀剁泭
+			map.put("estimateProfit", estimateProfit);
+
+			int existence = 0;
+
+			/* 鏌ヨ鍟嗗搧鏄惁宸插瓨鍦ㄥ晢鍝佺簿閫夊簱涓� */
+			Long localAuctionId = taoBaoGoodsBrief.getAuctionId();
+			if (localAuctionId != null) {
+				if (listHas != null && listHas.size() > 0) {
+					for (QualityFactory selectionGoods : listHas) {
+						TaoBaoGoodsBrief hasgoodsBrief = selectionGoods.getTaoBaoGoodsBrief();
+						Long hasId = hasgoodsBrief.getAuctionId();
+						if (localAuctionId.equals(hasId) || localAuctionId == hasId) {
+							existence = 1; // 瀛樺湪鍟嗗搧涓�
+						}
+					}
+				}
+			}
+
+			map.put("isExistence", existence);
+
+			listmap.add(map);
+		}
+
+		return listmap;
+
+	}
+
+	
+	@RequestMapping(value = "searchDaTaoKe")
+	public void searchDaTaoKe(String callback, Integer pageIndex, Integer pageSize, String key, Long cid,
+			PrintWriter out) {
+		try {
+			key = StringUtil.isNullOrEmpty(key) ? "" : key;
+			List<DaTaoKeDetail> list = daTaoKeGoodsDetailService.listSearchByTitleWithCid(key, cid, pageIndex,
+					pageSize);
+			long count = daTaoKeGoodsDetailService.countSearchByTitleWithCid(key, cid);
+			List<TaoBaoGoodsBrief> goodsList = new ArrayList<>();
+			for (DaTaoKeDetail detail : list) {
+				goodsList.add(TaoBaoUtil.convert(detail));
+			}
+
+			List<Map<String, Object>> listmap = filterTaoBaoGoodsWithQulity(goodsList);
+
+			PageEntity pe = new PageEntity(pageIndex, pageSize, (int) count,(int)(count%pageSize==0?count/pageSize:count/pageSize+1));
+			JSONObject data = new JSONObject();
+			GsonBuilder gsonBuilder = new GsonBuilder();
+			gsonBuilder.serializeNulls(); // 閲嶇偣
+			Gson gson = gsonBuilder.setDateFormat("yyyy-MM-dd").create();
+
+			data.put("pe", pe);
+			data.put("listGoods", gson.toJson(listmap));
+
+			JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
+
+		} catch (Exception e) {
+			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏌ヨ寮傚父"));
+			e.printStackTrace();
+		}
+	}
 
 	@RequestMapping(value = "getQiangGou")
 	public void getQiangGou(String callback, Integer pageIndex, PrintWriter out) {

--
Gitblit v1.8.0