From 261609854ff8c912d70b12809153f1efc28e76ce Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期一, 11 三月 2019 17:21:07 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- fanli/src/main/java/com/yeshi/fanli/controller/client/GoodsClassController.java | 177 ++++++++++++++++++++++++++++------------------------------- 1 files changed, 84 insertions(+), 93 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/GoodsClassController.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/GoodsClassController.java index 0fe5e63..5570bcc 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/client/GoodsClassController.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/GoodsClassController.java @@ -4,12 +4,14 @@ import java.math.BigDecimal; import java.util.ArrayList; import java.util.HashMap; +import java.util.Iterator; import java.util.List; import java.util.Map; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; +import org.springframework.core.task.TaskExecutor; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; @@ -31,6 +33,7 @@ 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.entity.taobao.TaoBaoWeiQuanOrder; import com.yeshi.fanli.log.LogHelper; import com.yeshi.fanli.service.inter.config.SystemService; import com.yeshi.fanli.service.inter.goods.ClassRecommendGoodsService; @@ -46,6 +49,7 @@ import com.yeshi.fanli.service.inter.lable.QualityGoodsService; import com.yeshi.fanli.service.inter.lable.TaoKeGoodsService; import com.yeshi.fanli.service.inter.monitor.MonitorService; +import com.yeshi.fanli.util.CMQManager; import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.RedisManager; import com.yeshi.fanli.util.StringUtil; @@ -108,7 +112,11 @@ @Resource private MonitorService monitorService; - + + @Resource(name = "taskExecutor") + private TaskExecutor executor; + + /** * 鑾峰彇涓荤被鐩� * @@ -117,26 +125,34 @@ */ @RequestMapping(value = "getgoodsclass", method = RequestMethod.POST) public void getGoodsClass(AcceptData acceptData, PrintWriter out) { - System system = systemService.getSystemCache(acceptData.getPlatform(), acceptData.getPackages()); - if (system == null) { - out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); - return; + + try { + System system = systemService.getSystemCache(acceptData.getPlatform(), acceptData.getPackages()); + if (system == null) { + out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); + return; + } + + List<GoodsClass> goodsClassList = goodsClassService.getListClassCache(system.getId()); + if (goodsClassList == null || goodsClassList.size() == 0) { + out.print(JsonUtil.loadFalseResult("鏆傛棤鏁版嵁")); + return; + } + + JSONObject data = new JSONObject(); + data.put("count", goodsClassList.size()); + data.put("goodsClassList", goodsClassList); + + out.print(JsonUtil.loadTrueResult(data)); + } catch (Exception e) { + out.print(JsonUtil.loadFalseResult("鑾峰彇澶辫触")); + try { + LogHelper.errorDetailInfo(e); + } catch (Exception e1) { + e1.printStackTrace(); + } } - List<SuperGoodsClass> superGoodsClassList = superGoodsClassService.getSuperGoodsClassBySystemId(system.getId()); - if (superGoodsClassList == null || superGoodsClassList.size() == 0) { - out.print(JsonUtil.loadFalseResult("鏆傛棤鏁版嵁")); - return; - } - List<GoodsClass> goodsClassList = new ArrayList<GoodsClass>(); - for (SuperGoodsClass superGoodsClass : superGoodsClassList) { - GoodsClass goodsClass = superGoodsClass.getGoodsClass(); - goodsClassList.add(goodsClass); - } - JSONObject data = new JSONObject(); - data.put("count", goodsClassList.size()); - data.put("goodsClassList", goodsClassList); - String result = JsonUtil.loadTrueResult(data); - out.print(result); + } /** @@ -157,35 +173,38 @@ return; } - if ("android".equalsIgnoreCase(acceptData.getPlatform())) { - Long androidClick = goodsClass.getAndroidClick(); - if (androidClick != null) { - goodsClass.setAndroidClick(androidClick + 1); - } else { - goodsClass.setAndroidClick(1L); - } - } else if ("ios".equalsIgnoreCase(acceptData.getPlatform())) { - Long iosClick = goodsClass.getIosClick(); - if (iosClick != null) { - goodsClass.setIosClick(iosClick + 1); - } else { - goodsClass.setIosClick(1L); - } - } - goodsClassService.updateByPrimaryKeySelective(goodsClass); - List<GoodsSubClass> goodsSubClassList = goodsSubClassService.getSubClassCache(gcid, 1); - - if (goodsSubClassList == null || goodsSubClassList.size() == 0) { - out.print(JsonUtil.loadFalseResult("鏆傛棤鏁版嵁")); - return; + if (goodsSubClassList == null) { + goodsSubClassList = new ArrayList<GoodsSubClass>(); } JSONObject data = new JSONObject(); data.put("count", goodsSubClassList.size()); data.put("goodsSecondClassList", JsonUtil.getApiCommonGson().toJson(goodsSubClassList)); - out.print(JsonUtil.loadTrueResult(data)); + + // 鏇存柊鍒嗙被鐐瑰嚮娆℃暟 + executor.execute(new Runnable() { + @Override + public void run() { + if ("android".equalsIgnoreCase(acceptData.getPlatform())) { + Long androidClick = goodsClass.getAndroidClick(); + if (androidClick != null) { + goodsClass.setAndroidClick(androidClick + 1); + } else { + goodsClass.setAndroidClick(1L); + } + } else if ("ios".equalsIgnoreCase(acceptData.getPlatform())) { + Long iosClick = goodsClass.getIosClick(); + if (iosClick != null) { + goodsClass.setIosClick(iosClick + 1); + } else { + goodsClass.setIosClick(1L); + } + } + goodsClassService.updateByPrimaryKeySelective(goodsClass); + } + }); } catch (Exception e) { out.print(JsonUtil.loadFalseResult("鏆傛棤鏁版嵁")); @@ -808,59 +827,31 @@ @RequestMapping(value = { "getcategory" }, method = { org.springframework.web.bind.annotation.RequestMethod.POST }) public void getcategory(AcceptData acceptData, PrintWriter out) { - com.yeshi.fanli.entity.system.System system = this.systemService.getSystemCache(acceptData.getPlatform(), - acceptData.getPackages()); - if (system == null) { - out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); - return; - } + try { + com.yeshi.fanli.entity.system.System system = this.systemService.getSystemCache(acceptData.getPlatform(), + acceptData.getPackages()); + if (system == null) { + out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); + return; + } - List<SuperGoodsClass> superGoodsClassList = this.superGoodsClassService - .getSuperGoodsClassBySystemId(system.getId().longValue()); - if ((superGoodsClassList == null) || (superGoodsClassList.size() == 0)) { - out.print(JsonUtil.loadFalseResult("鏆傛棤鏁版嵁")); - return; - } - - List<GoodsClass> goodsClassList = new ArrayList<GoodsClass>(); - for (SuperGoodsClass superGoodsClass : superGoodsClassList) { - GoodsClass goodsClass = superGoodsClass.getGoodsClass(); - goodsClassList.add(goodsClass); - } - - JSONArray array = new JSONArray(); - - Gson gson = new GsonBuilder().create(); - - if (goodsClassList.size() > 0) { - for (GoodsClass goodsClass : goodsClassList) { - goodsClass.setKey(null); - goodsClass.setCreatetime(0L); - goodsClass.setSearchParam(null); - goodsClass.setIosClick(null); - goodsClass.setAndroidClick(null); - - JSONObject data = new JSONObject(); - data.put("gclass", goodsClass); - long gcid = goodsClass.getId(); - try { - List<GoodsSubClass> subClassList = this.goodsSubClassService.getSubClassCache(Long.valueOf(gcid), - Integer.valueOf(1)); - if ((subClassList == null) || (subClassList.size() == 0)) { - subClassList = new ArrayList<GoodsSubClass>(); - } - data.put("subList", gson.toJson(subClassList)); - } catch (Exception e) { - e.printStackTrace(); - } - - array.add(data); + List<Map<String, Object>> listCache = goodsClassService.getClassListAllCache(system.getId()); + if (listCache == null) { + listCache = new ArrayList<Map<String,Object>>(); + } + + JSONObject data = new JSONObject(); + data.put("categoryList", listCache); + + out.print(JsonUtil.loadTrueResult(data)); + + } catch (Exception e) { + out.print(JsonUtil.loadFalseResult("鑾峰彇澶辫触")); + try { + LogHelper.errorDetailInfo(e); + } catch (Exception e1) { + e1.printStackTrace(); } } - - JSONObject data = new JSONObject(); - data.put("categoryList", array); - - out.print(JsonUtil.loadTrueResult(data)); } } -- Gitblit v1.8.0