From c5c6d40edef756ca0600bcdef100c32108a3b4bb Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期二, 14 五月 2019 16:21:29 +0800 Subject: [PATCH] 添加大淘客搜索 --- fanli/src/main/java/com/yeshi/fanli/controller/admin/TaoBaoGoodsBriefAdminController.java | 111 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 111 insertions(+), 0 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/admin/TaoBaoGoodsBriefAdminController.java b/fanli/src/main/java/com/yeshi/fanli/controller/admin/TaoBaoGoodsBriefAdminController.java index c38b880..f94907f 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/admin/TaoBaoGoodsBriefAdminController.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/admin/TaoBaoGoodsBriefAdminController.java @@ -27,12 +27,14 @@ import com.yeshi.fanli.entity.taobao.TaoBaoSearchResult; import com.yeshi.fanli.entity.taobao.TaoBaoUnionConfig; import com.yeshi.fanli.entity.taobao.TaobaoMeterial; +import com.yeshi.fanli.entity.taobao.dataoke.DaTaoKeDetail; import com.yeshi.fanli.service.inter.goods.GoodsClassService; import com.yeshi.fanli.service.inter.goods.TaoBaoClassService; import com.yeshi.fanli.service.inter.goods.TaoBaoGoodsBriefService; import com.yeshi.fanli.service.inter.lable.QualityFactoryService; import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService; import com.yeshi.fanli.service.inter.taobao.TaobaoMeterialService; +import com.yeshi.fanli.service.inter.taobao.dataoke.DaTaoKeGoodsDetailService; import com.yeshi.fanli.tag.PageEntity; import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.MoneyBigDecimalUtil; @@ -62,6 +64,9 @@ @Resource private TaoBaoClassService taoBaoClassService; + + @Resource + private DaTaoKeGoodsDetailService daTaoKeGoodsDetailService; /** * @@ -896,6 +901,112 @@ } } + + + private List<Map<String, Object>> filterTaoBaoGoodsWithQulity(List<TaoBaoGoodsBrief> goodsList) { + + // 鎻掑叆鍟嗗搧闆嗗悎 + List<Long> listAuctionId = new ArrayList<Long>(); + for (TaoBaoGoodsBrief goodsBrief : goodsList) { + listAuctionId.add(goodsBrief.getAuctionId()); + } + + // 楠岃瘉鏄惁瀛樺湪鏁版嵁搴� + List<QualityFactory> listHas = qualityFactoryService.listQueryByAuctionId(listAuctionId); + + List<Map<String, Object>> listmap = new ArrayList<Map<String, Object>>(); + + for (TaoBaoGoodsBrief taoBaoGoodsBrief : goodsList) { + taoBaoGoodsBrief.setId(null); + + Map<String, Object> map = new HashMap<String, Object>(); + + map.put("pictUrl", taoBaoGoodsBrief.getPictUrl()); + map.put("title", taoBaoGoodsBrief.getTitle()); + map.put("auctionId", taoBaoGoodsBrief.getAuctionId()); + map.put("auctionUrl", taoBaoGoodsBrief.getAuctionUrl()); + map.put("zkPrice", taoBaoGoodsBrief.getZkPrice()); + map.put("biz30day", taoBaoGoodsBrief.getBiz30day()); + map.put("couponInfo", taoBaoGoodsBrief.getCouponInfo()); + map.put("couponTotalCount", taoBaoGoodsBrief.getCouponTotalCount()); + map.put("couponLeftCount", taoBaoGoodsBrief.getCouponLeftCount()); + map.put("couponEffectiveEndTime", taoBaoGoodsBrief.getCouponEffectiveEndTime()); + map.put("tkRate", taoBaoGoodsBrief.getTkRate()); + + // 鏉ユ簮 0 鏃� 1娣樺疂 2 浜笢 + map.put("goodsSource", 1); + + /* 鍒稿悗浠�--璁$畻 */ + BigDecimal couponPrice = TaoBaoUtil.getAfterUseCouplePrice(taoBaoGoodsBrief); + map.put("couponPrice", couponPrice); + + /* 棰勮鏀剁泭锛� 鍏徃銆佺敤鎴� */ + BigDecimal tkRate = taoBaoGoodsBrief.getTkRate(); + BigDecimal zkPrice = taoBaoGoodsBrief.getZkPrice(); + BigDecimal profit = MoneyBigDecimalUtil.mul(tkRate, zkPrice); + // 璁$畻缁撴灉 + BigDecimal estimateProfit = MoneyBigDecimalUtil.div(profit, new BigDecimal("100")); + + // 棰勮鏀剁泭 + map.put("estimateProfit", estimateProfit); + + int existence = 0; + + /* 鏌ヨ鍟嗗搧鏄惁宸插瓨鍦ㄥ晢鍝佺簿閫夊簱涓� */ + Long localAuctionId = taoBaoGoodsBrief.getAuctionId(); + if (localAuctionId != null) { + if (listHas != null && listHas.size() > 0) { + for (QualityFactory selectionGoods : listHas) { + TaoBaoGoodsBrief hasgoodsBrief = selectionGoods.getTaoBaoGoodsBrief(); + Long hasId = hasgoodsBrief.getAuctionId(); + if (localAuctionId.equals(hasId) || localAuctionId == hasId) { + existence = 1; // 瀛樺湪鍟嗗搧涓� + } + } + } + } + + map.put("isExistence", existence); + + listmap.add(map); + } + + return listmap; + + } + + + @RequestMapping(value = "searchDaTaoKe") + public void searchDaTaoKe(String callback, Integer pageIndex, Integer pageSize, String key, Long cid, + PrintWriter out) { + try { + key = StringUtil.isNullOrEmpty(key) ? "" : key; + List<DaTaoKeDetail> list = daTaoKeGoodsDetailService.listSearchByTitleWithCid(key, cid, pageIndex, + pageSize); + long count = daTaoKeGoodsDetailService.countSearchByTitleWithCid(key, cid); + List<TaoBaoGoodsBrief> goodsList = new ArrayList<>(); + for (DaTaoKeDetail detail : list) { + goodsList.add(TaoBaoUtil.convert(detail)); + } + + List<Map<String, Object>> listmap = filterTaoBaoGoodsWithQulity(goodsList); + + PageEntity pe = new PageEntity(pageIndex, pageSize, (int) count,(int)(count%pageSize==0?count/pageSize:count/pageSize+1)); + JSONObject data = new JSONObject(); + GsonBuilder gsonBuilder = new GsonBuilder(); + gsonBuilder.serializeNulls(); // 閲嶇偣 + Gson gson = gsonBuilder.setDateFormat("yyyy-MM-dd").create(); + + data.put("pe", pe); + data.put("listGoods", gson.toJson(listmap)); + + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data)); + + } catch (Exception e) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏌ヨ寮傚父")); + e.printStackTrace(); + } + } @RequestMapping(value = "getQiangGou") public void getQiangGou(String callback, Integer pageIndex, PrintWriter out) { -- Gitblit v1.8.0