| | |
| | | import com.yeshi.fanli.dto.pdd.PDDGoodsDetail;
|
| | | import com.yeshi.fanli.dto.pdd.PDDGoodsResult;
|
| | | import com.yeshi.fanli.dto.pdd.PDDSearchFilter;
|
| | | import com.yeshi.fanli.dto.vip.VIPSearchFilter;
|
| | | import com.yeshi.fanli.dto.vip.VIPSearchResult;
|
| | | import com.yeshi.fanli.dto.vip.goods.VIPGoodsInfo;
|
| | | import com.yeshi.fanli.entity.accept.AcceptData;
|
| | | import com.yeshi.fanli.entity.goods.CommonGoods;
|
| | | import com.yeshi.fanli.entity.jd.JDGoods;
|
| | |
| | | import com.yeshi.fanli.util.taobao.SearchFilterUtil;
|
| | | import com.yeshi.fanli.util.taobao.TaoBaoUtil;
|
| | | import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
|
| | | import com.yeshi.fanli.util.vipshop.VipShopApiUtil;
|
| | | import com.yeshi.fanli.vo.brand.BrandInfoVO;
|
| | | import com.yeshi.fanli.vo.brand.TaoBaoShopVO;
|
| | | import com.yeshi.fanli.vo.common.JumpDetailContentVO;
|
| | |
| | |
|
| | | @Resource
|
| | | private JumpDetailV2Service jumpDetailV2Service;
|
| | | |
| | |
|
| | | @Resource
|
| | | private OrderHongBaoMoneyComputeService orderHongBaoMoneyComputeService;
|
| | |
|
| | |
| | |
|
| | | Gson gson = JsonUtil.getApiCommonGson();
|
| | | data.put("title", "智能搜索");
|
| | | |
| | | |
| | |
|
| | | int state = 0;
|
| | | if (result.getFirstGoods() != null && result.getFirstGoods().getGoodsId() != null) {
|
| | | state = 2;
|
| | | data.put("stateDesc", "选择搜券或转链");
|
| | | JSONObject params = new JSONObject();
|
| | | params.put("id", result.getFirstGoods().getGoodsId()+"");
|
| | | params.put("id", result.getFirstGoods().getGoodsId() + "");
|
| | | params.put("from", "转链");
|
| | | if (result.getFirstGoods().getGoodsType() == Constant.SOURCE_TYPE_TAOBAO) {
|
| | | view = new JumpDetailContentVO();
|
| | |
| | | return;
|
| | | }
|
| | |
|
| | | /*-------- 唯品会商品 ------*/
|
| | | if (goodsType.intValue() == Constant.SOURCE_TYPE_VIP) {
|
| | | searchVIPGoods(acceptData, searchkey, page, filter, order, out);
|
| | | return;
|
| | | }
|
| | |
|
| | | /*-------- 淘宝商品 -------*/
|
| | | searchTaoBaoGoods(acceptData, searchkey, page, filter, order, out);
|
| | |
|
| | | }
|
| | |
|
| | | /**
|
| | |
| | | data.put("count", count);
|
| | | out.print(JsonUtil.loadTrueResult(data));
|
| | | }
|
| | |
|
| | | /**
|
| | | * 搜索唯品会商品
|
| | | * @Title: searchVIPGoods
|
| | | * @Description: |
| | | * @param acceptData
|
| | | * @param key
|
| | | * @param page
|
| | | * @param filter
|
| | | * @param order
|
| | | * @param out |
| | | * void 返回类型
|
| | | * @throws
|
| | | */
|
| | | private void searchVIPGoods(AcceptData acceptData, String key, Integer page, String filter, Integer order,
|
| | | PrintWriter out) {
|
| | | VIPSearchFilter searchFilter = new VIPSearchFilter();
|
| | | searchFilter.setKeyword(key);
|
| | | searchFilter.setPage(page);
|
| | | searchFilter.setPageSize(Constant.PAGE_SIZE);
|
| | |
|
| | | if (order != null) {
|
| | | int sort = order.intValue();
|
| | | switch (sort) {
|
| | | case 2: // 价格—desc
|
| | | searchFilter.setFieldName("price");
|
| | | searchFilter.setOrder(1);
|
| | | break;
|
| | | case 3: // 价格—asc
|
| | | searchFilter.setFieldName("price");
|
| | | searchFilter.setOrder(0);
|
| | | break;
|
| | | case 4: // 折扣—desc
|
| | | searchFilter.setFieldName("discount");
|
| | | searchFilter.setOrder(1);
|
| | | break;
|
| | | case 5: // 折扣—aec
|
| | | searchFilter.setFieldName("discount");
|
| | | searchFilter.setOrder(0);
|
| | | break;
|
| | | default: // 综合排序
|
| | | break;
|
| | | }
|
| | | }
|
| | |
|
| | | if (!StringUtil.isNullOrEmpty(filter)) {
|
| | | JSONObject jsonfilter = JSONObject.fromObject(filter);
|
| | | String minPrice = jsonfilter.optString("minPrice");
|
| | | if (!StringUtil.isNullOrEmpty(minPrice)) {
|
| | | searchFilter.setPriceStart(minPrice);
|
| | | }
|
| | |
|
| | | String maxPrice = jsonfilter.optString("maxPrice");
|
| | | if (!StringUtil.isNullOrEmpty(maxPrice)) {
|
| | | searchFilter.setPriceEnd(maxPrice);
|
| | | }
|
| | | }
|
| | |
|
| | | int count = 0;
|
| | | JSONObject data = new JSONObject();
|
| | | JSONArray array = new JSONArray();
|
| | |
|
| | | VIPSearchResult result = VipShopApiUtil.search(searchFilter);
|
| | | if (result != null) {
|
| | | count = result.getTotal();
|
| | | Gson gson = JsonUtil.getApiCommonGson();
|
| | | List<VIPGoodsInfo> goodsList = result.getGoodsList();
|
| | | if (goodsList != null && goodsList.size() > 0) {
|
| | | ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
|
| | | acceptData.getVersion());
|
| | |
|
| | | for (VIPGoodsInfo goods : goodsList) {
|
| | | GoodsDetailVO goodsDetailVO = GoodsDetailVOFactory.convertVIPGoods(goods, paramsDTO);
|
| | | array.add(gson.toJson(goodsDetailVO));
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | data.put("result", array);
|
| | | data.put("count", count);
|
| | | out.print(JsonUtil.loadTrueResult(data));
|
| | | }
|
| | | }
|