From be67478cae6bf9308f15949a21e7d0a57a3f0ecb Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期四, 16 七月 2020 15:37:31 +0800 Subject: [PATCH] dubbo集成修改 --- fanli/src/main/java/com/yeshi/fanli/controller/admin/TaoBaoGoodsBriefAdminController.java | 140 ++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 126 insertions(+), 14 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..d7a34a3 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 @@ -10,6 +10,7 @@ import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; +import com.yeshi.fanli.entity.accept.AdminAcceptData; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.yeshi.utils.JsonUtil; @@ -22,20 +23,22 @@ import com.yeshi.fanli.entity.common.AdminUser; import com.yeshi.fanli.entity.taobao.PidUser; import com.yeshi.fanli.entity.taobao.SearchFilter; -import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief; +import com.yeshi.goods.facade.entity.taobao.TaoBaoGoodsBrief; 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.entity.taobao.TaobaoMeterial; +import com.yeshi.goods.facade.entity.taobao.dataoke.DaTaoKeDetailV2; 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.tag.PageEntity; +import com.yeshi.goods.facade.service.DaTaoKeGoodsDetailV2Service; +import com.yeshi.common.entity.PageEntity; import com.yeshi.fanli.util.Constant; -import com.yeshi.fanli.util.MoneyBigDecimalUtil; +import org.yeshi.utils.MoneyBigDecimalUtil; import com.yeshi.fanli.util.StringUtil; import com.yeshi.fanli.util.taobao.TaoBaoUtil; import com.yeshi.fanli.util.taobao.TaoKeApiUtil; @@ -62,6 +65,9 @@ @Resource private TaoBaoClassService taoBaoClassService; + + @Resource + private DaTaoKeGoodsDetailV2Service daTaoKeGoodsDetailV2Service; /** * @@ -82,11 +88,11 @@ * @param out */ @RequestMapping(value = "queryOnSale") - public void queryOnSale(String callback, Integer pageIndex, Integer pageSize, String key, Long tbClassId, - Integer startPrice, Integer endPrice, String startTkRate, String endTkRate, Integer sort, Integer istmall, - Integer hasCoupon, Integer baoYou, Integer startDsr, Integer overseas, Integer needPrepay, - Integer includePayRate30, Integer includeGoodRate, Integer includeRfdRate, Integer npxLevel, String cid, - PrintWriter out) { + public void queryOnSale(AdminAcceptData acceptData, String callback, Integer pageIndex, Integer pageSize, String key, Long tbClassId, + Integer startPrice, Integer endPrice, String startTkRate, String endTkRate, Integer sort, Integer istmall, + Integer hasCoupon, Integer baoYou, Integer startDsr, Integer overseas, Integer needPrepay, + Integer includePayRate30, Integer includeGoodRate, Integer includeRfdRate, Integer npxLevel, String cid, + PrintWriter out) { try { // 鏌ヨ鐗╂枡 @@ -238,7 +244,7 @@ * @param out */ @RequestMapping(value = "addTBGoodsFactory") - public void addTBGoodsFactory(String callback, Integer pageIndex, Integer pageSize, String key, Long tbClassId, + public void addTBGoodsFactory(AdminAcceptData acceptData,String callback, Integer pageIndex, Integer pageSize, String key, Long tbClassId, Integer startPrice, Integer endPrice, String startTkRate, String endTkRate, Integer sort, Integer istmall, Integer hasCoupon, Integer baoYou, Integer startDsr, Integer overseas, Integer needPrepay, Integer includePayRate30, Integer includeGoodRate, Integer includeRfdRate, Integer npxLevel, @@ -450,7 +456,7 @@ if (!islink) { /* 娣樺疂鐗╂枡鎼滅储 */ - result = TaoKeApiUtil.searchWuLiao(filter); + result = TaoKeApiUtil.searchWuLiao(filter,null,null); } else { /* 鍟嗗搧閾炬帴鎼滅储 */ TaoBaoGoodsBrief searchGoodsDetail = TaoKeApiUtil.searchGoodsDetail(auctionId); @@ -487,7 +493,7 @@ * @param out */ @RequestMapping(value = "searchAlimamaWeb") - public void searchAlimamaWeb(String callback, Integer pageIndex, Integer pageSize, String key, Integer startPrice, + public void searchAlimamaWeb(AdminAcceptData acceptData,String callback, Integer pageIndex, Integer pageSize, String key, Integer startPrice, Integer endPrice, String startTkRate, String endTkRate, Integer sort, Integer istmall, Integer hasCoupon, Integer searchType, Integer baoYou, String startBiz30day, String catIds, PrintWriter out) { @@ -705,7 +711,7 @@ * @param out */ @RequestMapping(value = "getNavList") - public void getNavList(String callback, PrintWriter out) { + public void getNavList(AdminAcceptData acceptData,String callback, PrintWriter out) { try { @@ -764,7 +770,7 @@ * @param out */ @RequestMapping(value = "searchMaterial") - public void searchMaterial(String callback, Integer pageIndex, Integer pageSize, String subName, String superName, + public void searchMaterial(AdminAcceptData acceptData,String callback, Integer pageIndex, Integer pageSize, String subName, String superName, PrintWriter out) { try { @@ -896,9 +902,115 @@ } } + + + 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(AdminAcceptData acceptData,String callback, Integer pageIndex, Integer pageSize, String key, Long cid, + PrintWriter out) { + try { + key = StringUtil.isNullOrEmpty(key) ? "" : key; + List<DaTaoKeDetailV2> list = daTaoKeGoodsDetailV2Service.listSearchByTitleWithCid(key, cid, pageIndex, + pageSize); + long count = daTaoKeGoodsDetailV2Service.countSearchByTitleWithCid(key, cid); + List<TaoBaoGoodsBrief> goodsList = new ArrayList<>(); + for (DaTaoKeDetailV2 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) { + public void getQiangGou(AdminAcceptData acceptData,String callback, Integer pageIndex, PrintWriter out) { try { -- Gitblit v1.8.0