From 43362240e4f061f137729a7fb8cf4d1b0e899241 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期六, 19 十月 2019 18:20:08 +0800 Subject: [PATCH] 淘宝双11预售商品添加修改 --- fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java | 252 +++++++++++++++++++++++++------------------------- 1 files changed, 127 insertions(+), 125 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java index 4c9a9ff..dab6bd4 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java @@ -141,77 +141,97 @@ .optJSONArray("n_tbk_item"); if (array != null && array.size() > 0) { JSONObject item = array.optJSONObject(0); - TaoBaoGoodsBrief goods = new TaoBaoGoodsBrief(); - goods.setAuctionId(item.optLong("num_iid")); - goods.setAuctionUrl(item.optString("item_url")); - goods.setBiz30day(item.optInt("volume")); - if (item.optJSONObject("small_images") != null) { - JSONArray imgArray = item.optJSONObject("small_images").optJSONArray("string"); - if (imgArray != null) { - List<String> imgList = new ArrayList<>(); - for (int n = 0; n < imgArray.size(); n++) { - imgList.add(imgArray.optString(n)); - } - goods.setImgList(imgList); - } - } - goods.setTitle(item.optString("title")); - goods.setUserType(item.optInt("user_type")); - goods.setZkPrice(new BigDecimal(item.optString("zk_final_price"))); - goods.setReservePrice(new BigDecimal(item.optString("zk_final_price"))); - goods.setAuctionUrl(item.optString("item_url")); - goods.setProvcity(item.optString("provcity")); - goods.setPictUrl(item.optString("pict_url")); - goods.setShopTitle(item.optString("nick")); - goods.setSellerId(item.optLong("seller_id")); - - String optString = item.optString("shop_dsr"); - if (!StringUtil.isNullOrEmpty(optString)) { - goods.setShopDsr(new Integer(optString)); - } - - String ratesum = item.optString("ratesum"); - if (!StringUtil.isNullOrEmpty(ratesum)) { - goods.setRatesum(new Integer(ratesum)); - } - - if (item.optBoolean("is_prepay")) - goods.setIsPrepay(1); - - if (item.optBoolean("i_rfd_rate")) - goods.setRfdRate(1); - - if (item.optBoolean("h_good_rate")) - goods.setGoodRate(1); - - if (item.optBoolean("h_pay_rate30")) - goods.setPayRate30(1); - - if (item.optBoolean("free_shipment")) - goods.setFreeShipment(1); - - if (!StringUtil.isNullOrEmpty(item.optString("material_lib_type"))) { - try { - String materialLibType = item.optString("material_lib_type"); - goods.setMaterialLibType(Integer.parseInt(materialLibType.split(",")[0])); - } catch (Exception e) { - goods.setMaterialLibType(0); - } - - } else - goods.setMaterialLibType(0); - - return goods; + return parseSimpleGoodsInfo(item); } return null; } - public String convertSpecialGoodsLink(Long auctionId, TaoKeAppInfo app) { - Map<String, String> map = new HashMap<>(); - map.put("method", "taobao.tbk.coupon.convert"); - map.put("item_id", auctionId + ""); - String resultStr = TaoKeBaseUtil.baseRequestForThreeTimes(map, app); - return resultStr; + private static TaoBaoGoodsBrief parseSimpleGoodsInfo(JSONObject item) { + TaoBaoGoodsBrief goods = new TaoBaoGoodsBrief(); + goods.setAuctionId(item.optLong("num_iid")); + goods.setAuctionUrl(item.optString("item_url")); + goods.setBiz30day(item.optInt("volume")); + if (item.optJSONObject("small_images") != null) { + JSONArray imgArray = item.optJSONObject("small_images").optJSONArray("string"); + if (imgArray != null) { + List<String> imgList = new ArrayList<>(); + for (int n = 0; n < imgArray.size(); n++) { + imgList.add(imgArray.optString(n)); + } + goods.setImgList(imgList); + } + } + goods.setTitle(item.optString("title")); + goods.setUserType(item.optInt("user_type")); + goods.setZkPrice(new BigDecimal(item.optString("zk_final_price"))); + goods.setReservePrice(new BigDecimal(item.optString("zk_final_price"))); + goods.setAuctionUrl(item.optString("item_url")); + goods.setProvcity(item.optString("provcity")); + goods.setPictUrl(item.optString("pict_url")); + goods.setShopTitle(item.optString("nick")); + goods.setSellerId(item.optLong("seller_id")); + + String optString = item.optString("shop_dsr"); + if (!StringUtil.isNullOrEmpty(optString)) { + goods.setShopDsr(new Integer(optString)); + } + + String ratesum = item.optString("ratesum"); + if (!StringUtil.isNullOrEmpty(ratesum)) { + goods.setRatesum(new Integer(ratesum)); + } + + if (item.optBoolean("is_prepay")) + goods.setIsPrepay(1); + + if (item.optBoolean("i_rfd_rate")) + goods.setRfdRate(1); + + if (item.optBoolean("h_good_rate")) + goods.setGoodRate(1); + + if (item.optBoolean("h_pay_rate30")) + goods.setPayRate30(1); + + if (item.optBoolean("free_shipment")) + goods.setFreeShipment(1); + + if (!StringUtil.isNullOrEmpty(item.optString("material_lib_type"))) { + try { + String materialLibType = item.optString("material_lib_type"); + goods.setMaterialLibType(Integer.parseInt(materialLibType.split(",")[0])); + } catch (Exception e) { + goods.setMaterialLibType(0); + } + + } else + goods.setMaterialLibType(0); + + goods = loadYuShouInfo(goods, item); + return goods; + } + + private static TaoBaoGoodsBrief loadYuShouInfo(TaoBaoGoodsBrief goods, JSONObject item) { + if (goods != null && item != null) { + // 棰勫敭鐩稿叧瑙f瀽 + goods.setYsylClickUrl(item.optString("ysyl_click_url")); + if (!StringUtil.isNullOrEmpty(item.optString("ysyl_commission_rate"))) + goods.setYsylCommissionRate(new BigDecimal(item.optString("ysyl_commission_rate"))); + goods.setYsylTljFace(item.optString("ysyl_tlj_face")); + goods.setYsylTljSendTime(item.optString("ysyl_tlj_send_time")); + goods.setYsylTljUseEndTime(item.optString("ysyl_tlj_use_end_time")); + goods.setYsylTljUseStartTime(item.optString("ysyl_tlj_use_start_time")); + + goods.setPresaleDeposit(item.optString("presale_deposit")); + goods.setPresaleDiscountFeeText(item.optString("presale_discount_fee_text")); + goods.setPresaleEndTime(item.optString("presale_end_time")); + goods.setPresaleStartTime(item.optString("presale_start_time")); + goods.setPresaleTailEndTime(item.optString("presale_tail_end_time")); + goods.setPresaleTailStartTime(item.optString("presale_tail_start_time")); + + return goods; + } + return goods; } public static List<TaoBaoGoodsBrief> getBatchGoodsInfo(List<Long> listId) @@ -260,67 +280,10 @@ if (array != null && array.size() > 0) { for (int i = 0; i < array.size(); i++) { - - TaoBaoGoodsBrief goods = new TaoBaoGoodsBrief(); - JSONObject item = array.optJSONObject(i); - - goods.setAuctionId(item.optLong("num_iid")); - goods.setAuctionUrl(item.optString("item_url")); - goods.setBiz30day(item.optInt("volume")); - if (item.optJSONObject("small_images") != null) { - JSONArray imgArray = item.optJSONObject("small_images").optJSONArray("string"); - if (imgArray != null) { - List<String> imgList = new ArrayList<>(); - for (int n = 0; n < imgArray.size(); n++) { - imgList.add(imgArray.optString(n)); - } - goods.setImgList(imgList); - } - } - goods.setTitle(item.optString("title")); - goods.setUserType(item.optInt("user_type")); - goods.setZkPrice(new BigDecimal(item.optString("zk_final_price"))); - goods.setReservePrice(new BigDecimal(item.optString("zk_final_price"))); - goods.setAuctionUrl(item.optString("item_url")); - goods.setProvcity(item.optString("provcity")); - goods.setPictUrl(item.optString("pict_url")); - goods.setShopTitle(item.optString("nick")); - - String optString = item.optString("shop_dsr"); - if (!StringUtil.isNullOrEmpty(optString)) { - goods.setShopDsr(new Integer(optString)); - } - - String ratesum = item.optString("ratesum"); - if (!StringUtil.isNullOrEmpty(ratesum)) { - goods.setRatesum(new Integer(ratesum)); - } - - if (item.optBoolean("is_prepay")) - goods.setIsPrepay(1); - - if (item.optBoolean("i_rfd_rate")) - goods.setRfdRate(1); - - if (item.optBoolean("h_good_rate")) - goods.setGoodRate(1); - - if (item.optBoolean("h_pay_rate30")) - goods.setPayRate30(1); - - if (item.optBoolean("free_shipment")) - goods.setFreeShipment(1); - - if ("1".equalsIgnoreCase(item.optString("material_lib_type"))) - goods.setMaterialLibType(1); - else - goods.setMaterialLibType(0); - - goodsList.add(goods); + goodsList.add(parseSimpleGoodsInfo(item)); } } - return goodsList; } @@ -953,6 +916,7 @@ if (!StringUtil.isNullOrEmpty(item.optString("reserve_price"))) goods.setReservePrice(new BigDecimal(item.optString("reserve_price"))); goods.setTotalFee(new BigDecimal("0")); + goods = loadYuShouInfo(goods, item); return goods; } @@ -1723,6 +1687,7 @@ if (!StringUtil.isNullOrEmpty(tkRate)) { goods.setTkRate(new BigDecimal(tkRate)); } + goods = loadYuShouInfo(goods, resultJSON); return goods; } catch (Exception e) { e.printStackTrace(); @@ -1882,6 +1847,7 @@ goods.setReservePrice(new BigDecimal(0)); goods.setTotalFee(new BigDecimal("0")); goods.setPictUrlWhite(item.optString("white_image")); + goods = loadYuShouInfo(goods, item); return goods; } @@ -2108,6 +2074,42 @@ } return null; } + + /** + * 瀹樻柟娲诲姩鎺ㄥ箍 + * + * @param adZoneId + * -骞垮憡浣� + * @param promotionSceneId-娲诲姩ID + * @param relationId + * -娓犻亾ID + * @return + */ + public static String officialActivityConvert(String adZoneId, String promotionSceneId, String relationId) { + Map<String, String> map = new HashMap<>(); + map.put("method", "taobao.tbk.activitylink.get"); + map.put("adzone_id", adZoneId); + map.put("promotion_scene_id", promotionSceneId); + if (relationId != null) + map.put("relation_id", relationId); + TaoKeAppInfo app = new TaoKeAppInfo(); + app.setAppKey(TaoBaoConstant.TAOBAO_AUTH_APPKEY); + app.setAppSecret(TaoBaoConstant.TAOBAO_AUTH_APPSECRET); + try { + String result = TaoKeBaseUtil.baseRequestForThreeTimes(map, app); + JSONObject json = JSONObject.fromObject(result); + if (json != null) { + json = json.optJSONObject("tbk_activitylink_get_response"); + if (json.optInt("result_code") == 200) { + return json.optString("data"); + } + } + } catch (Exception e) { + e.printStackTrace(); + } + return null; + } + } class QuanInfo { -- Gitblit v1.8.0