From 31d6bd3dd8163a5d6c182110dcf21e94b4770dac Mon Sep 17 00:00:00 2001 From: Administrator <Administrator@S0ZHK00LKCA6OYY> Date: 星期一, 26 十一月 2018 14:17:02 +0800 Subject: [PATCH] 收藏信息更新 --- fanli/src/main/java/com/yeshi/fanli/controller/client/SearchController.java | 158 +++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 136 insertions(+), 22 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/SearchController.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/SearchController.java index 6251ed3..6288178 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/client/SearchController.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/SearchController.java @@ -38,6 +38,7 @@ import com.yeshi.fanli.entity.taobao.TaoBaoSearchNav; import com.yeshi.fanli.entity.taobao.TaoBaoSearchResult; import com.yeshi.fanli.entity.taobao.TaoBaoUnionConfig; +import com.yeshi.fanli.service.inter.config.ConfigService; import com.yeshi.fanli.service.inter.config.SuperHotSearchService; import com.yeshi.fanli.service.inter.config.SystemService; import com.yeshi.fanli.service.inter.goods.HonestService; @@ -58,7 +59,10 @@ @Resource private SystemService systemService; - + + @Resource + private ConfigService configService; + @Resource private SuperHotSearchService superHotSearchSerivce; @@ -467,10 +471,10 @@ JSONObject data = null; if (!recommend) { // 娣樺疂鎺ュ彛璇锋眰 - data = searchGoods(kw, page, filter, order, startprice, endprice, startTkRate, endTkRate); + data = searchGoods(kw, page, filter, order, startprice, endprice); } else { // 鎺ㄨ崘锛氱簿閫夊簱 - data = searchQualityGoods(kw, page, filter, order, startprice, endprice, startTkRate, endTkRate); + data = searchQualityGoods(kw, page, filter, order, startprice, endprice); } // 鑾峰彇鎺ㄨ崘璇� @@ -501,7 +505,7 @@ * @return */ private JSONObject searchGoods(String kw, int page, String filter, String order, String startprice, - String endprice, Double startTkRate, Double endTkRate) { + String endprice) { page = page + 1; SearchFilter sf = new SearchFilter(); @@ -517,20 +521,6 @@ sf.setEndPrice(new BigDecimal(endprice)); } - if (startTkRate != null && startTkRate != 0 && !startTkRate.equals(0)) { - BigDecimal b = new BigDecimal(startTkRate/2); - double df = b.setScale(2, BigDecimal.ROUND_FLOOR).doubleValue(); - int tkRate = (int) (df * 100); - sf.setStartTkRate(tkRate); - } - - if (endTkRate != null && endTkRate != 0 && !endTkRate.equals(0)) { - BigDecimal b = new BigDecimal(endTkRate/2); - double df = b.setScale(2, BigDecimal.ROUND_FLOOR).doubleValue(); - int tkRate = (int) (df * 100); - sf.setEndTkRate(tkRate); - } - if (!com.yeshi.fanli.util.StringUtil.isNullOrEmpty(order)) { if (Integer.parseInt(order) == 1) { sf.setSort(TaoBaoUtil.SORT_SALE_HIGH_TO_LOW); @@ -617,10 +607,21 @@ } else if ("materialId".equalsIgnoreCase(ty)) { int id = array.optJSONObject(i).optInt("id"); sf.setProvinceId(id); - } + } else if ("tkRate1".equalsIgnoreCase(ty)) { + setSearchTkRate(0, sf); + } else if ("tkRate2".equalsIgnoreCase(ty)) { + setSearchTkRate(1, sf); + } else if ("tkRate3".equalsIgnoreCase(ty)) { + setSearchTkRate(2, sf); + } else if ("tkRate4".equalsIgnoreCase(ty)) { + setSearchTkRate(3, sf); + } else if ("tkRate5".equalsIgnoreCase(ty)) { + setSearchTkRate(4, sf); + } } sf.setParams(params); } + TaoBaoSearchResult result = TaoBaoUtil.search(sf); if (result == null) { return null; @@ -693,14 +694,16 @@ * @return */ private JSONObject searchQualityGoods(String key, int page, String filter, String order, String startprice, - String endprice, Double startTkRate, Double endTkRate) { + String endprice ) { Integer hasQuan = null; Integer userType = null; Double start_Price = null; Double end_Price = null; Integer sort = null; - + Double startTkRate = null; + Double endTkRate = null; + int provinceId = -100; // 璧峰浠锋牸 @@ -738,7 +741,87 @@ } else if ("fahuodi".equalsIgnoreCase(ty)) { provinceId = array.optJSONObject(i).optInt("id"); - } + } else if ("tkRate1".equalsIgnoreCase(ty)) { + // 鑾峰彇瀵瑰簲鍙傛暟 + String value = configService.get("tkRate_range"); + if (!StringUtil.isNullOrEmpty(value)) { + JSONArray tkRatearray = JSONArray.fromObject(value); + if (tkRatearray != null) { + String start = tkRatearray.optJSONObject(0).optString("start"); + if (!StringUtil.isNullOrEmpty(start)) { + startTkRate = Double.parseDouble(start); + } + String end = tkRatearray.optJSONObject(0).optString("end"); + if (!StringUtil.isNullOrEmpty(end)) { + endTkRate = Double.parseDouble(end); + } + } + } + } else if ("tkRate2".equalsIgnoreCase(ty)) { + // 鑾峰彇瀵瑰簲鍙傛暟 + String value = configService.get("tkRate_range"); + if (!StringUtil.isNullOrEmpty(value)) { + JSONArray tkRatearray = JSONArray.fromObject(value); + if (tkRatearray != null) { + String start = tkRatearray.optJSONObject(1).optString("start"); + if (!StringUtil.isNullOrEmpty(start)) { + startTkRate = Double.parseDouble(start); + } + String end = tkRatearray.optJSONObject(1).optString("end"); + if (!StringUtil.isNullOrEmpty(end)) { + endTkRate = Double.parseDouble(end); + } + } + } + } else if ("tkRate3".equalsIgnoreCase(ty)) { + // 鑾峰彇瀵瑰簲鍙傛暟 + String value = configService.get("tkRate_range"); + if (!StringUtil.isNullOrEmpty(value)) { + JSONArray tkRatearray = JSONArray.fromObject(value); + if (tkRatearray != null) { + String start = tkRatearray.optJSONObject(2).optString("start"); + if (!StringUtil.isNullOrEmpty(start)) { + startTkRate = Double.parseDouble(start); + } + String end = tkRatearray.optJSONObject(2).optString("end"); + if (!StringUtil.isNullOrEmpty(end)) { + endTkRate = Double.parseDouble(end); + } + } + } + } else if ("tkRate4".equalsIgnoreCase(ty)) { + // 鑾峰彇瀵瑰簲鍙傛暟 + String value = configService.get("tkRate_range"); + if (!StringUtil.isNullOrEmpty(value)) { + JSONArray tkRatearray = JSONArray.fromObject(value); + if (tkRatearray != null) { + String start = tkRatearray.optJSONObject(3).optString("start"); + if (!StringUtil.isNullOrEmpty(start)) { + startTkRate = Double.parseDouble(start); + } + String end = tkRatearray.optJSONObject(3).optString("end"); + if (!StringUtil.isNullOrEmpty(end)) { + endTkRate = Double.parseDouble(end); + } + } + } + } else if ("tkRate5".equalsIgnoreCase(ty)) { + // 鑾峰彇瀵瑰簲鍙傛暟 + String value = configService.get("tkRate_range"); + if (!StringUtil.isNullOrEmpty(value)) { + JSONArray tkRatearray = JSONArray.fromObject(value); + if (tkRatearray != null) { + String start = tkRatearray.optJSONObject(4).optString("start"); + if (!StringUtil.isNullOrEmpty(start)) { + startTkRate = Double.parseDouble(start); + } + String end = tkRatearray.optJSONObject(4).optString("end"); + if (!StringUtil.isNullOrEmpty(end)) { + endTkRate = Double.parseDouble(end); + } + } + } + } } } @@ -819,4 +902,35 @@ return data; } + /** + * 璁剧疆鏌ヨ浣i噾姣斾緥鑼冨洿 + * @param i + * @param sf + */ + public void setSearchTkRate(int i, SearchFilter sf) { + // 鑾峰彇瀵瑰簲鍙傛暟 + String value = configService.get("tkRate_range"); + + if (!StringUtil.isNullOrEmpty(value)) { + + JSONArray tkRatearray = JSONArray.fromObject(value); + + if (tkRatearray != null) { + + String start = tkRatearray.optJSONObject(i).optString("start"); + + if (!StringUtil.isNullOrEmpty(start)) { + int tkRate = (int) (Float.parseFloat(start) * 100); + sf.setStartTkRate(tkRate); + } + + String end = tkRatearray.optJSONObject(i).optString("end"); + if (!StringUtil.isNullOrEmpty(end)) { + int tkRate = (int) (Float.parseFloat(end) * 100); + sf.setEndTkRate(tkRate); + } + } + + } + } } -- Gitblit v1.8.0