From cdd852f8e8eff7eb2e8f7c3fceaa955b9fc3f9d3 Mon Sep 17 00:00:00 2001 From: yujian <yujian@123.com> Date: 星期一, 29 七月 2019 10:46:32 +0800 Subject: [PATCH] 订单商品类型处理 --- fanli/src/main/java/com/yeshi/fanli/controller/client/v2/RecommendControllerV2.java | 142 ++++++++++++++++++++++++++++++++++------------- 1 files changed, 103 insertions(+), 39 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/RecommendControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/RecommendControllerV2.java index 65a9148..2265263 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/RecommendControllerV2.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/RecommendControllerV2.java @@ -6,30 +6,29 @@ import java.util.Calendar; import java.util.Collections; import java.util.List; -import java.util.Map; -import java.util.regex.Matcher; -import java.util.regex.Pattern; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; 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 org.yeshi.utils.taobao.TbImgUtil; import com.google.gson.Gson; import com.google.gson.GsonBuilder; +import com.yeshi.fanli.dto.jd.JDFilter; +import com.yeshi.fanli.dto.jd.JDSearchFilter; +import com.yeshi.fanli.dto.jd.JDSearchResult; +import com.yeshi.fanli.dto.pdd.PDDGoodsDetail; +import com.yeshi.fanli.dto.pdd.PDDGoodsResult; import com.yeshi.fanli.entity.accept.AcceptData; import com.yeshi.fanli.entity.bus.homemodule.SwiperPicture; import com.yeshi.fanli.entity.bus.lable.QualityFactory; import com.yeshi.fanli.entity.common.JumpDetailV2; -import com.yeshi.fanli.entity.taobao.SearchFilter; +import com.yeshi.fanli.entity.jd.JDGoods; import com.yeshi.fanli.entity.taobao.TLJBuyGoods; import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief; import com.yeshi.fanli.entity.taobao.TaoBaoSearchResult; -import com.yeshi.fanli.entity.taobao.dataoke.DaTaoKeDetail; import com.yeshi.fanli.log.LogHelper; import com.yeshi.fanli.service.inter.common.JumpDetailV2Service; import com.yeshi.fanli.service.inter.config.ConfigService; @@ -43,14 +42,17 @@ import com.yeshi.fanli.service.inter.lable.QualityGoodsService; import com.yeshi.fanli.service.inter.monitor.MonitorService; 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.RedisManager; import com.yeshi.fanli.util.StringUtil; import com.yeshi.fanli.util.TaoBaoConstant; -import com.yeshi.fanli.util.Utils; import com.yeshi.fanli.util.VersionUtil; import com.yeshi.fanli.util.factory.MonitorFactory; import com.yeshi.fanli.util.factory.goods.GoodsDetailVOFactory; +import com.yeshi.fanli.util.jd.JDApiUtil; +import com.yeshi.fanli.util.jd.JDUtil; +import com.yeshi.fanli.util.pinduoduo.PinDuoDuoApiUtil; import com.yeshi.fanli.util.taobao.TaoBaoUtil; import com.yeshi.fanli.util.taobao.TaoKeApiUtil; import com.yeshi.fanli.vo.goods.GoodsDetailVO; @@ -293,8 +295,7 @@ * @param out */ @RequestMapping(value = "getGoodList") - public void getGoodList(AcceptData acceptData, Integer goodsType, Integer page, - HttpServletRequest request, PrintWriter out) { + public void getGoodList(AcceptData acceptData, Integer goodsType, Integer page, HttpServletRequest request, PrintWriter out) { if (goodsType == null || page == null) { out.print(JsonUtil.loadFalseResult("鍙傛暟淇℃伅涓嶆甯�")); @@ -307,39 +308,15 @@ } if (goodsType == Constant.SOURCE_TYPE_JD) { - + getIndexJDGoods(acceptData, page, out); + return; } if (goodsType == Constant.SOURCE_TYPE_PDD) { - + searchPDDGoods(acceptData, page, out); + return; } - - List<QualityFactory> listQuery = qualityGoodsService.listFreeGoods((page - 1) * 20, 20); - if (listQuery == null) { - listQuery = new ArrayList<QualityFactory>(); - } - - JSONArray array = new JSONArray(); - if (listQuery.size() > 0) { - Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder()) - .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create(); - - BigDecimal fanLiRate = hongBaoManageService.getFanLiRate(); - BigDecimal shareRate = hongBaoManageService.getShareRate(); - for (QualityFactory qualityFactory : listQuery) { - TaoBaoGoodsBrief goods = qualityFactory.getTaoBaoGoodsBrief(); - if (goods == null) { - continue; - } - array.add(gson.toJson(GoodsDetailVOFactory.convertTaoBao(goods, null, fanLiRate, shareRate))); - } - } - long count = qualityGoodsService.countFreeGoods(); - - JSONObject root = new JSONObject(); - root.put("count", count); - root.put("list", array); - out.print(JsonUtil.loadTrueResult(root)); + out.print(JsonUtil.loadFalseResult("鍟嗗搧绫诲瀷閿欒")); } @@ -488,4 +465,91 @@ out.print(JsonUtil.loadTrueResult(data)); } + + + + /** + * 浜笢棣栭〉鍟嗗搧 + * @param acceptData + * @param page + * @param out + */ + private void getIndexJDGoods(AcceptData acceptData, int page, PrintWriter out) { + JDSearchResult result = null; + String way = configService.get("jd_api_search_key"); + if ("1".equals(way)) { + JDFilter filterAPI = new JDFilter(); + filterAPI.setPageIndex(page); + filterAPI.setPageSize(20); + result = JDApiUtil.queryByKey(filterAPI); + } else { + // 缃戦〉鐖彇 + JDSearchFilter jdfilter = new JDSearchFilter(); + jdfilter.setPageNo(page); + jdfilter.setPageSize(Constant.PAGE_SIZE); + result = JDUtil.searchByKey(jdfilter); + } + + long count = 0; + JSONObject data = new JSONObject(); + JSONArray array = new JSONArray(); + if (result != null) { + PageEntity pageEntity = result.getPageEntity(); + if (pageEntity != null) { + count = pageEntity.getTotalCount(); + } + + List<JDGoods> goodsList = result.getGoodsList(); + if (goodsList != null && goodsList.size() > 0) { + BigDecimal fanLiRate = hongBaoManageService.getFanLiRate(); + BigDecimal shareRate = hongBaoManageService.getShareRate(); + Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder()) + .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create(); + for (JDGoods goods : goodsList) { + GoodsDetailVO goodsDetailVO = GoodsDetailVOFactory.convertJDGoods(goods, null, fanLiRate, + shareRate); + array.add(gson.toJson(goodsDetailVO)); + } + } + } + + data.put("list", array); + data.put("count", count); + out.print(JsonUtil.loadTrueResult(data)); + } + + + /** + * 鐖嗘鎺掕鍟嗗搧-瀹炴椂鐑攢姒� + * @param acceptData + * @param page + * @param out + */ + private void searchPDDGoods(AcceptData acceptData, int page, PrintWriter out) { + PDDGoodsResult result = PinDuoDuoApiUtil.getTopList(PinDuoDuoApiUtil.PID_FANLI, page-1, Constant.PAGE_SIZE, 1); + + int count = 0; + JSONArray array = new JSONArray(); + if (result != null) { + count = result.getTotalCount(); + Gson gson = JsonUtil.getApiCommonGson(); + List<PDDGoodsDetail> goodsList = result.getGoodsList(); + if (goodsList != null && goodsList.size() > 0) { + BigDecimal fanLiRate = hongBaoManageService.getFanLiRate(); + BigDecimal shareRate = hongBaoManageService.getShareRate(); + + for (PDDGoodsDetail goods : goodsList) { + GoodsDetailVO goodsDetailVO = GoodsDetailVOFactory.convertPDDGoods(goods, null, fanLiRate, + shareRate); + array.add(gson.toJson(goodsDetailVO)); + } + } + } + + JSONObject data = new JSONObject(); + data.put("list", array); + data.put("count", count); + out.print(JsonUtil.loadTrueResult(data)); + } + } -- Gitblit v1.8.0