From 69bee82b81626b82b7f39f0e459e4f56b1699b51 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期三, 13 三月 2019 12:02:16 +0800 Subject: [PATCH] 正式数据库修改 --- fanli/src/main/java/com/yeshi/fanli/controller/client/GoodsClassController.java | 192 +++++++++++++++++++++++------------------------ 1 files changed, 93 insertions(+), 99 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 cbfa149..b62e3c8 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,18 +4,18 @@ 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 net.sf.json.JSONArray; -import net.sf.json.JSONObject; - +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; +import org.yeshi.utils.JsonUtil; import com.google.gson.Gson; import com.google.gson.GsonBuilder; @@ -33,7 +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.exception.HongBaoManageException; +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; @@ -49,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; @@ -57,7 +58,9 @@ import com.yeshi.fanli.util.factory.MonitorFactory; import com.yeshi.fanli.util.taobao.TaoBaoUtil; import com.yeshi.fanli.util.taobao.TaoKeApiUtil; -import org.yeshi.utils.JsonUtil; + +import net.sf.json.JSONArray; +import net.sf.json.JSONObject; @Controller @RequestMapping("api/v1/class") @@ -110,6 +113,9 @@ @Resource private MonitorService monitorService; + @Resource(name = "taskExecutor") + private TaskExecutor executor; + /** * 鑾峰彇涓荤被鐩� * @@ -118,26 +124,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); + } /** @@ -158,35 +172,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("鏆傛棤鏁版嵁")); @@ -515,8 +532,8 @@ // 璁剧疆SearchFilter taoKeGoodsService.setSearchFilter(searchfilter, filter, order, startprice, endprice, fastFilter, totalSales); - - // 鐢ㄦ埛鏈緭鍏ユ渶楂樹环鏍兼椂 鏈�楂樹环鏍奸檺鍒�99999 + + // 鐢ㄦ埛鏈緭鍏ユ渶楂樹环鏍兼椂 鏈�楂樹环鏍奸檺鍒�99999 if (searchfilter.getEndPrice() == null) { searchfilter.setEndPrice(new BigDecimal(99999)); } @@ -628,6 +645,11 @@ } else { taoBaoGoodsBrief.setSalesCount(biz30day + ""); } + + // 鐧藉簳鍥炬祴璇� + // if + // (!StringUtil.isNullOrEmpty(taoBaoGoodsBrief.getPictUrlWhite())) + // taoBaoGoodsBrief.setPictUrl(taoBaoGoodsBrief.getPictUrlWhite()); array.add(gson.toJson(TaoBaoUtil.getTaoBaoGoodsBriefExtra(taoBaoGoodsBrief, proportion.toString(), null))); } @@ -798,10 +820,10 @@ */ private void setTaoBaoCouponHongBao(List<TaoBaoCoupon> taoBaoCoupons) { if (taoBaoCoupons.size() > 0) { - BigDecimal proportion= hongBaoManageService.getFanLiRate(); - + BigDecimal proportion = hongBaoManageService.getFanLiRate(); + for (TaoBaoCoupon taoBaoCoupon : taoBaoCoupons) { - BigDecimal hb = TaoBaoUtil.getCouponHongBaoInfo(taoBaoCoupon,proportion); + BigDecimal hb = TaoBaoUtil.getCouponHongBaoInfo(taoBaoCoupon, proportion); taoBaoCoupon.setHongbao(hb); } } @@ -809,59 +831,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<Map<String, Object>> listCache = goodsClassService.getClassListAllCache(system.getId()); + if (listCache == null) { + listCache = new ArrayList<Map<String, Object>>(); + } - List<GoodsClass> goodsClassList = new ArrayList<GoodsClass>(); - for (SuperGoodsClass superGoodsClass : superGoodsClassList) { - GoodsClass goodsClass = superGoodsClass.getGoodsClass(); - goodsClassList.add(goodsClass); - } + JSONObject data = new JSONObject(); + data.put("categoryList", listCache); - JSONArray array = new JSONArray(); + out.print(JsonUtil.loadTrueResult(data)); - 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); + } 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