From 265e7fc98dfa0ac37bcc95a105e42546ffb3d094 Mon Sep 17 00:00:00 2001 From: yujian <yujian@123.com> Date: 星期三, 15 五月 2019 12:11:17 +0800 Subject: [PATCH] 品牌店铺优选查询大淘客商品 --- fanli/src/main/java/com/yeshi/fanli/controller/client/BrandController.java | 141 +++++++++++++++++++++++++++++++--------------- 1 files changed, 94 insertions(+), 47 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/BrandController.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/BrandController.java index 63ca51b..dccb7e6 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/client/BrandController.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/BrandController.java @@ -18,19 +18,21 @@ import com.yeshi.fanli.entity.accept.AcceptData; import com.yeshi.fanli.entity.brand.BrandClass; import com.yeshi.fanli.entity.brand.TaoBaoShopHistory; -import com.yeshi.fanli.entity.bus.lable.QualityFactory; import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief; import com.yeshi.fanli.entity.taobao.TaoBaoShop; +import com.yeshi.fanli.entity.taobao.dataoke.DaTaoKeDetail; import com.yeshi.fanli.exception.taobao.TaoKeApiException; import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException; import com.yeshi.fanli.service.inter.brand.BrandClassService; import com.yeshi.fanli.service.inter.brand.BrandClassShopService; import com.yeshi.fanli.service.inter.brand.TaoBaoShopHistoryService; +import com.yeshi.fanli.service.inter.goods.TaoBaoGoodsBriefService; import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService; -import com.yeshi.fanli.service.inter.lable.QualityGoodsService; import com.yeshi.fanli.service.inter.taobao.TaoBaoShopService; +import com.yeshi.fanli.service.inter.taobao.dataoke.DaTaoKeGoodsService; import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.StringUtil; +import com.yeshi.fanli.util.ThreadUtil; import com.yeshi.fanli.util.taobao.TaoBaoUtil; import com.yeshi.fanli.util.taobao.TaoKeApiUtil; @@ -56,9 +58,13 @@ @Resource private HongBaoManageService manageService; + @Resource - private QualityGoodsService qualityGoodsService; + private TaoBaoGoodsBriefService taoBaoGoodsBriefService; + @Resource + private DaTaoKeGoodsService daTaoKeGoodsService; + /** * 鑾峰彇鍝佺墝鍒嗙被 * @@ -84,26 +90,6 @@ } } - /** - * 娣诲姞瓒宠抗 - * - * @param acceptData - * @param out - */ - @RequestMapping(value = "addHistory", method = RequestMethod.POST) - public void addHistory(AcceptData acceptData, Long sid, Long uid, PrintWriter out) { - try { - if (sid == null || sid == 0) { - out.print(JsonUtil.loadFalseResult("搴楅摵id涓虹┖")); - return; - } - taoBaoShopHistoryService.addHistory(sid, uid, acceptData.getDevice()); - out.print(JsonUtil.loadTrueResult("璁板綍鎴愬姛")); - } catch (Exception e) { - out.print(JsonUtil.loadFalseResult("璁板綍澶辫触")); - e.printStackTrace(); - } - } /** @@ -137,6 +123,15 @@ @RequestMapping(value = "getHistory", method = RequestMethod.POST) public void getHistory(AcceptData acceptData, Integer page, Long uid, Integer type, PrintWriter out) { try { + if (type == null) { + out.print(JsonUtil.loadFalseResult("绫诲瀷涓嶆纭�")); + return; + } + + if (page == null || page < 1) { + page = 1; + } + int pageSize; if (type == 1) { pageSize = 4; @@ -164,13 +159,29 @@ for (TaoBaoShopHistory history : listHistory) { TaoBaoShop taoBaoShop = history.getTaoBaoShop(); if (taoBaoShop != null) { + + String shopLink = taoBaoShop.getShopLink(); + if (StringUtil.isNullOrEmpty(shopLink)) { + taoBaoShop.setShopLink(TaoBaoUtil.getShopLink(taoBaoShop.getId())); + } + + String shopNameCustom = taoBaoShop.getShopNameCustom(); + if (!StringUtil.isNullOrEmpty(shopNameCustom)) { + taoBaoShop.setShopName(shopNameCustom); + } + + String shopIconCustom = taoBaoShop.getShopIconCustom(); + if (!StringUtil.isNullOrEmpty(shopIconCustom)) { + taoBaoShop.setShopIcon(shopIconCustom); + } + list.add(taoBaoShop); } } } JSONObject data = new JSONObject(); - data.put("count", list.size()); + data.put("count", count); data.put("list", JsonUtil.getApiCommonGson().toJson(list)); out.print(JsonUtil.loadTrueResult(data)); @@ -207,33 +218,74 @@ * @param out */ @RequestMapping(value = "getShopInfo", method = RequestMethod.POST) - public void getShopInfo(AcceptData acceptData, Integer page, Long sid, PrintWriter out) { + public void getShopInfo(AcceptData acceptData, Integer page, Long sid, Long uid, PrintWriter out) { try { + if (sid == null) { + out.print(JsonUtil.loadFalseResult("缂哄け搴楅摵id")); + return; + } + JSONObject data = new JSONObject(); if (page == 1) { TaoBaoShop taoBaoShop = taoBaoShopService.selectByPrimaryKey(sid); if (taoBaoShop == null) { out.print(JsonUtil.loadFalseResult("搴楅摵淇℃伅鑾峰彇澶辫触")); + return; } - taoBaoShop.setShopLink(TaoBaoUtil.getShopLink(taoBaoShop.getId())); - data.put("shop", taoBaoShop); + String shopLink = taoBaoShop.getShopLink(); + if (StringUtil.isNullOrEmpty(shopLink)) { + taoBaoShop.setShopLink(TaoBaoUtil.getShopLink(taoBaoShop.getId())); + } + + String shopNameCustom = taoBaoShop.getShopNameCustom(); + if (!StringUtil.isNullOrEmpty(shopNameCustom)) { + taoBaoShop.setShopName(shopNameCustom); + } + + String shopIconCustom = taoBaoShop.getShopIconCustom(); + if (!StringUtil.isNullOrEmpty(shopIconCustom)) { + taoBaoShop.setShopIcon(shopIconCustom); + } + data.put("shop", JsonUtil.getApiCommonGson().toJson(taoBaoShop)); + + + ThreadUtil.run(new Runnable() { + public void run() { + // 娣诲姞瓒宠抗 + taoBaoShopHistoryService.addHistory(sid, uid, acceptData.getDevice()); + } + }); } - int pageSize = Constant.PAGE_SIZE; - List<QualityFactory> listQuery = qualityGoodsService.listByShopId((page - 1) * pageSize, pageSize, sid); + + // 鍟嗗搧鍒楄〃淇℃伅 + int pageSize = 50; + List<TaoBaoGoodsBrief> listGoodsBrief = new ArrayList<TaoBaoGoodsBrief>(); + + // 鍏堟煡璇㈠ぇ娣樺鏁版嵁 + List<DaTaoKeDetail> listDaTaoKe = daTaoKeGoodsService.listBySellerId(0, pageSize, sid); + if (listDaTaoKe != null && listDaTaoKe.size() > 0) { + for (DaTaoKeDetail daTaoKe: listDaTaoKe) { + listGoodsBrief.add(TaoBaoUtil.convert(daTaoKe)); + } + } + + // 涓嶈冻50鏉℃暟鎹�佹煡璇㈢簿閫夊簱 + if (listGoodsBrief.size() < pageSize) { + int needCount = pageSize- listGoodsBrief.size(); + List<TaoBaoGoodsBrief> listGoods = taoBaoGoodsBriefService.listByShopId(0, needCount, sid); + if (listGoods != null && listGoods.size() > 0) { + listGoodsBrief.addAll(listGoods); + } + } + - long count = 0; JSONArray array = new JSONArray(); - if (listQuery != null && listQuery.size() > 0) { + if (listGoodsBrief.size() > 0) { List<Long> listGid = new ArrayList<Long>(); - for (QualityFactory qualityFactory : listQuery) { - TaoBaoGoodsBrief taoBaoGoodsBrief = qualityFactory.getTaoBaoGoodsBrief(); - if (taoBaoGoodsBrief == null) { - continue; - } + for (TaoBaoGoodsBrief taoBaoGoodsBrief : listGoodsBrief) { listGid.add(taoBaoGoodsBrief.getAuctionId()); } - // API缃戠粶鎺ュ彛楠岃瘉鏄惁鍦ㄥ敭 List<TaoBaoGoodsBrief> listTaoKeGoods = null; try { @@ -245,17 +297,13 @@ } catch (Exception e) { e.printStackTrace(); } + Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder()) .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create(); - BigDecimal proportion = manageService.getFanLiRate(); - for (QualityFactory selectionGoods : listQuery) { - TaoBaoGoodsBrief taoBaoGoodsBrief = selectionGoods.getTaoBaoGoodsBrief(); - if (taoBaoGoodsBrief == null) { - continue; - } - + + for (TaoBaoGoodsBrief taoBaoGoodsBrief : listGoodsBrief) { if (listTaoKeGoods != null && listTaoKeGoods.size() > 0) { boolean stateSale = false; // 榛樿鍋滃敭 Long goodsId = taoBaoGoodsBrief.getAuctionId(); @@ -266,16 +314,15 @@ break; } } - if (!stateSale) { continue; } } array.add(gson.toJson(TaoBaoUtil.getTaoBaoGoodsBriefExtra(taoBaoGoodsBrief, proportion.toString(), null))); } - count = qualityGoodsService.countByShopId(sid); } - data.put("count", count); + + data.put("count", array.size()); data.put("list", array); out.print(JsonUtil.loadTrueResult(data)); } catch (Exception e) { -- Gitblit v1.8.0