From d88c167fc5973a2c15ff1539e4cdab36e4a7842c Mon Sep 17 00:00:00 2001
From: yujian <yujian@123.com>
Date: 星期三, 28 八月 2019 14:47:15 +0800
Subject: [PATCH] 奖励券使用区分订单下单三方日期

---
 fanli/src/main/java/com/yeshi/fanli/controller/web/WebSearchController.java |  170 +++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 154 insertions(+), 16 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/web/WebSearchController.java b/fanli/src/main/java/com/yeshi/fanli/controller/web/WebSearchController.java
index ada7163..39202e5 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/web/WebSearchController.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/web/WebSearchController.java
@@ -10,16 +10,16 @@
 
 import javax.annotation.Resource;
 
-import net.sf.json.JSONArray;
-import net.sf.json.JSONObject;
-
 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 org.yeshi.utils.taobao.TbImgUtil;
 
 import com.google.gson.Gson;
 import com.google.gson.GsonBuilder;
 import com.yeshi.fanli.entity.accept.AcceptData;
+import com.yeshi.fanli.entity.bus.lable.QualityFactory;
 import com.yeshi.fanli.entity.bus.search.HotSearch;
 import com.yeshi.fanli.entity.bus.su.search.SuperHotSearch;
 import com.yeshi.fanli.entity.system.CustomerContent;
@@ -28,13 +28,17 @@
 import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBriefExtra;
 import com.yeshi.fanli.entity.taobao.TaoBaoSearchNav;
 import com.yeshi.fanli.entity.taobao.TaoBaoSearchResult;
+import com.yeshi.fanli.service.inter.config.CustomerContentService;
 import com.yeshi.fanli.service.inter.config.SuperHotSearchService;
 import com.yeshi.fanli.service.inter.config.SystemClientParamsService;
 import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService;
+import com.yeshi.fanli.service.inter.lable.QualityGoodsService;
 import com.yeshi.fanli.service.inter.user.HistorySearchService;
 import com.yeshi.fanli.util.StringUtil;
 import com.yeshi.fanli.util.taobao.TaoBaoUtil;
-import org.yeshi.utils.JsonUtil;
+
+import net.sf.json.JSONArray;
+import net.sf.json.JSONObject;
 
 @Controller
 @RequestMapping("api/web/v1/webSearch")
@@ -54,6 +58,12 @@
 
 	@Resource
 	private SuperHotSearchService superHotSearchSerivce;
+
+	@Resource
+	private CustomerContentService customerContentService;
+
+	@Resource
+	private QualityGoodsService qualityGoodsService;
 
 	// 浼樻儬鍒�
 	/*
@@ -111,12 +121,6 @@
 	@RequestMapping(value = "search", method = RequestMethod.GET)
 	public void search(String callback, AcceptData acceptData, String kw, int page, String filter, String order,
 			String startprice, String endprice, String fastFilter, PrintWriter out) {
-		/*
-		 * System system = webControllerUtil.getSystem(acceptData); if(system ==
-		 * null){
-		 * out.print(JsonUtil.loadFalseResult(WebControllerUtil.NOSYSTEM));
-		 * return; }
-		 */
 		if (!StringUtil.isNullOrEmpty(fastFilter)) {
 			if (!StringUtil.isNullOrEmpty(filter)) {
 				JSONArray filterArray = JSONArray.fromObject(filter);
@@ -128,6 +132,140 @@
 			}
 		}
 		JSONObject data = search(kw, page, filter, order, startprice, endprice);
+		out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult(data)));
+	}
+
+	@RequestMapping(value = "searchGoods", method = RequestMethod.GET)
+	public void searchGoods(String callback, AcceptData acceptData, String kw, int page, int pagesize, String filters,
+			String rate, String order, String startprice, String endprice, PrintWriter out) {
+		/*
+		 * System system = webControllerUtil.getSystem(acceptData); if(system ==
+		 * null){
+		 * out.print(JsonUtil.loadFalseResult(WebControllerUtil.NOSYSTEM));
+		 * return; }
+		 */
+		if (pagesize > 100)
+			return;
+
+		SearchFilter sf = new SearchFilter();
+		sf.setPage(page);
+		sf.setPageSize(pagesize);
+		sf.setKey(StringUtil.isNullOrEmpty(kw) ? "" : kw);
+		boolean recommend = false;
+		if (!StringUtil.isNullOrEmpty(filters)) {
+			JSONArray array = JSONArray.fromObject(filters);
+			for (int i = 0; i < array.size(); i++) {
+				String type = array.optJSONObject(i).optString("type");
+				if ("quantype".equalsIgnoreCase(type)) {
+					sf.setQuan(1);
+				} else if ("baoyou".equalsIgnoreCase(type)) {
+					sf.setBaoYou(true);
+				} else if ("usertype".equalsIgnoreCase(type)) {
+					sf.setTmall(true);
+				} else if ("recommend".equalsIgnoreCase(type)) {
+					//
+					recommend = true;
+				}
+			}
+		}
+
+		if (!StringUtil.isNullOrEmpty(startprice))
+			sf.setStartPrice(new BigDecimal(startprice));
+		if (!StringUtil.isNullOrEmpty(endprice))
+			sf.setEndPrice(new BigDecimal(endprice));
+
+		if (!StringUtil.isNullOrEmpty(rate))
+			try {
+				sf.setStartTkRate(Integer.parseInt(rate));
+			} catch (Exception e) {
+			}
+		if (!StringUtil.isNullOrEmpty(order))
+			if (Integer.parseInt(order) == 0)
+				sf.setSort(TaoBaoUtil.SORT_SALE_HIGH_TO_LOW);
+			else if (Integer.parseInt(order) == 2)
+				sf.setSort(TaoBaoUtil.SORT_PRICE_LOW_TO_HIGH);
+			else if (Integer.parseInt(order) == 3)
+				sf.setSort(TaoBaoUtil.SORT_PRICE_HIGH_TO_LOW);
+			else if (Integer.parseInt(order) == 4)
+				sf.setSort(TaoBaoUtil.SORT_TKRATE_HIGH_TO_LOW);
+		if (StringUtil.isNullOrEmpty(kw))
+			recommend = true;
+
+		List<TaoBaoGoodsBriefExtra> listExtra = new ArrayList<TaoBaoGoodsBriefExtra>();
+
+		long count = 0;
+		if (recommend) {
+
+			List<QualityFactory> listQuery = qualityGoodsService.listRecommendBykey((page - 1) * pagesize, pagesize, kw,
+					sf.getQuan() == 1 ? 1 : 0, sf.isTmall() ? 1 : 0,
+					StringUtil.isNullOrEmpty(startprice) ? null : Double.parseDouble(startprice),
+					StringUtil.isNullOrEmpty(endprice) ? null : Double.parseDouble(endprice),
+					StringUtil.isNullOrEmpty(rate) ? null : Double.parseDouble(rate), null, 1);
+
+			BigDecimal proportion = manageService.getFanLiRate();
+			/* 閬嶅巻鍒楄〃鏁版嵁 */
+			if (listQuery != null && listQuery.size() > 0) {
+				for (QualityFactory selectionGoods : listQuery) {
+
+					TaoBaoGoodsBrief taoBaoGoodsBrief = selectionGoods.getTaoBaoGoodsBrief();
+
+					if (taoBaoGoodsBrief == null) {
+						continue;
+					}
+
+					int biz30day = taoBaoGoodsBrief.getBiz30day();
+					if (biz30day >= 10000) {
+						double sales = biz30day;
+						String salesCountMidea = String.format("%.1f", sales / 10000);
+						taoBaoGoodsBrief.setSalesCount(salesCountMidea + "涓�");
+					} else {
+						taoBaoGoodsBrief.setSalesCount(biz30day + "");
+					}
+
+					// 鏀瑰彉鍥剧墖灏哄
+					String pictUrl = taoBaoGoodsBrief.getPictUrl();
+					if (!StringUtil.isNullOrEmpty(pictUrl) && !pictUrl.contains("320x320")) {
+						taoBaoGoodsBrief.setPictUrl(TbImgUtil.getTBSize320Img(pictUrl));
+					}
+
+					listExtra.add(TaoBaoUtil.getTaoBaoGoodsBriefExtra(taoBaoGoodsBrief, proportion.toString(), null));
+				}
+			}
+			count = qualityGoodsService.countRecommendBykey(kw, sf.getQuan() == 1 ? 1 : 0, sf.isTmall() ? 1 : 0,
+					StringUtil.isNullOrEmpty(startprice) ? null : Double.parseDouble(startprice),
+					StringUtil.isNullOrEmpty(endprice) ? null : Double.parseDouble(endprice),
+					StringUtil.isNullOrEmpty(rate) ? null : Double.parseDouble(rate), null);
+
+		} else {
+			TaoBaoSearchResult result = TaoBaoUtil.search(sf);
+			if (result != null) {
+				List<TaoBaoGoodsBrief> taoBaoGoodsBriefs = result.getTaoBaoGoodsBriefs();
+				int fq = sf.getQuan();
+				int fh = sf.getHongbao();
+				boolean ft = sf.isTmall();
+				BigDecimal proportion = manageService.getFanLiRate();
+				if (fq == 0 && fh == 0 && !ft) {
+					if (taoBaoGoodsBriefs != null)
+						for (TaoBaoGoodsBrief bf : taoBaoGoodsBriefs) {
+							listExtra.add(TaoBaoUtil.getTaoBaoGoodsBriefExtra(bf, proportion.toString(), ""));
+						}
+				} else {
+					TaoBaoGoodsBriefExtra taoBaoGoodsBriefExtra;
+					if (taoBaoGoodsBriefs != null)
+						for (TaoBaoGoodsBrief taoBaoGoodsBrief : taoBaoGoodsBriefs) {
+							taoBaoGoodsBriefExtra = TaoBaoUtil.getTaoBaoGoodsBriefExtra(taoBaoGoodsBrief,
+									proportion.toString(), "");
+							listExtra.add(taoBaoGoodsBriefExtra);
+						}
+				}
+				count = result.getTaoBaoHead().getDocsfound();
+			}
+
+		}
+		JSONObject data = new JSONObject();
+		Gson gson2 = new GsonBuilder().excludeFieldsWithoutExposeAnnotation().create();
+		data.put("result", gson2.toJson(listExtra));
+		data.put("count", count);
 		out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult(data)));
 	}
 
@@ -248,16 +386,16 @@
 		int fh = sf.getHongbao();
 		boolean ft = sf.isTmall();
 		Map<String, String> map = manageService.convertMap();
-		String proportion = map.get("hongbao_goods_proportion");
-		String fcRate = map.get("hongbao_fc_ratio");
+		BigDecimal proportion = manageService.getFanLiRate();
 		if (fq == 0 && fh == 0 && !ft) {
 			for (TaoBaoGoodsBrief bf : result.getTaoBaoGoodsBriefs()) {
-				re.add(TaoBaoUtil.getTaoBaoGoodsBriefExtra(bf, proportion, fcRate, ""));
+				re.add(TaoBaoUtil.getTaoBaoGoodsBriefExtra(bf, proportion.toString(), ""));
 			}
 		} else {
 			TaoBaoGoodsBriefExtra taoBaoGoodsBriefExtra;
 			for (TaoBaoGoodsBrief taoBaoGoodsBrief : taoBaoGoodsBriefs) {
-				taoBaoGoodsBriefExtra = TaoBaoUtil.getTaoBaoGoodsBriefExtra(taoBaoGoodsBrief, proportion, fcRate, "");
+				taoBaoGoodsBriefExtra = TaoBaoUtil.getTaoBaoGoodsBriefExtra(taoBaoGoodsBrief, proportion.toString(),
+						"");
 				re.add(taoBaoGoodsBriefExtra);
 			}
 		}
@@ -276,7 +414,7 @@
 	@RequestMapping(value = "contactCustomer", method = RequestMethod.GET)
 	public void contactCustomerService(PrintWriter out) {
 		String title = "鑱旂郴瀹㈡湇";
-		List<CustomerContent> contentList = systemClientParamsService.contactCustomerService(title);
+		List<CustomerContent> contentList = customerContentService.contactCustomerService(title);
 		JSONObject data = new JSONObject();
 		data.put("contentList", JsonUtil.getSimpleGsonWithDate().toJson(contentList));
 		out.print(JsonUtil.loadTrueResult(data));
@@ -298,7 +436,7 @@
 		 * out.print(JsonUtil.loadFalseResult(XcxMiniControllerUtil.NOSYSTEM));
 		 * return; }
 		 */
-		List<SuperHotSearch> superHotSearchList = superHotSearchSerivce.getSuperHotSearchBySystemId(4); // 杩斿埄鍒竌pp
+		List<SuperHotSearch> superHotSearchList = superHotSearchSerivce.getSuperHotSearchBySystemId(4,null); // 杩斿埄鍒竌pp
 		if (superHotSearchList == null || superHotSearchList.size() == 0) {
 			out.print(JsonUtil.loadFalseResult(WebControllerUtil.NODATA));
 			return;

--
Gitblit v1.8.0