yujian
2019-01-29 591b4fc369befea2b0a290cb848d48c71064573c
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java
@@ -158,7 +158,7 @@
      map.put("method", "taobao.tbk.item.info.get");
      map.put("num_iids", id + "");
      String resultStr = TaoKeBaseUtil.baseRequestForThreeTimes(map, true);
//      System.out.println(resultStr);
      // System.out.println(resultStr);
      JSONObject data = JSONObject.fromObject(resultStr);
      // 商品下架
      if (data.optJSONObject("error_response") != null && data.optJSONObject("error_response").optInt("code") == 15
@@ -220,12 +220,21 @@
         if (item.optBoolean("free_shipment"))
            goods.setFreeShipment(1);
         System.out.println(item.optString("material_lib_type"));
         if (!StringUtil.isNullOrEmpty(item.optString("material_lib_type")))
            goods.setMaterialLibType(item.optInt("material_lib_type"));
         return goods;
      }
      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;
   }
   public static List<TaoBaoGoodsBrief> getBatchGoodsInfo(List<Long> listId)
@@ -325,9 +334,10 @@
            if (item.optBoolean("free_shipment"))
               goods.setFreeShipment(1);
            //if("1".equalsIgnoreCase(item.optString("material_lib_type")))
            //TaoKeTest.count++;
            if ("1".equalsIgnoreCase(item.optString("material_lib_type")))
               ;
            goodsList.add(goods);
         }
      }
@@ -891,16 +901,16 @@
   private static TaoBaoGoodsBrief parseWuLiaoItem(JSONObject item) {
      TaoBaoGoodsBrief goods = new TaoBaoGoodsBrief();
      goods.setPictUrl(item.optString("pict_url"));
      if (!StringUtil.isNullOrEmpty(item.optString("white_image"))) {
         goods.setPictUrlWhite(item.optString("white_image"));
      }
      goods.setAuctionId(item.optLong("num_iid"));
      goods.setAuctionUrl("https:" + item.optString("url"));
      goods.setBiz30day(item.optInt("volume"));
      goods.setCouponInfo(item.optString("coupon_info"));
      if (goods.getCouponInfo() != null)
         goods.setCouponInfo(goods.getCouponInfo().replace(".00", ""));
@@ -1469,25 +1479,41 @@
   }
   public static String getAccessToken(String code, String appKey, String appSecret) {
      Map<String, String> map = new HashMap<>();
      map.put("method", "taobao.top.auth.token.create");
      map.put("code", code);
      TaoKeAppInfo app = new TaoKeAppInfo();
      app.setAppKey(appKey);
      app.setAppSecret(appSecret);
      try {
         JSONObject json = TaoKeBaseUtil.baseRequest(map, app);
         if (json != null)
            return json.toString();
      } catch (TaoKeApiException e) {
         e.printStackTrace();
      }
      return null;
   }
   /**
    * 渠道邀请码
    * 
    * @param relationId
    * @return
    */
   public static String getInviteCode(Long relationId, String accessToken) {
   public static String getInviteCode(Long relationId, String accessToken, String appKey, String appSecret) {
      Map<String, String> map = new HashMap<>();
      map.put("method", "taobao.tbk.sc.invitecode.get");
      map.put("session", accessToken);
      map.put("relation_id", relationId + "");
      map.put("code_type", "2");
      map.put("relation_app", "返利券");
      map.put("code_type", "1");
      map.put("relation_app", "common");
      JSONObject resultJSON = null;
      try {
         TaoKeAppInfo app=new TaoKeAppInfo();
         app.setAppKey("24567001");
         app.setAppSecret("e26a8d0f8726883d44bf04742829b533");
         app.setAdzoneId("123123");
         TaoKeAppInfo app = new TaoKeAppInfo();
         app.setAppKey(appKey);
         app.setAppSecret(appSecret);
         resultJSON = TaoKeBaseUtil.baseRequest(map, app);
      } catch (TaoKeApiException e) {
         e.printStackTrace();
@@ -1496,9 +1522,134 @@
         return null;
      return null;
   }
   /**
    * 获取渠道邀请码
    *
    * @param accessToken
    * @param appKey
    * @param appSecret
    * @return
    */
   public static String getRootRelationInviteCode(String accessToken, String appKey, String appSecret) {
      Map<String, String> map = new HashMap<>();
      map.put("method", "taobao.tbk.sc.invitecode.get");
      map.put("session", accessToken);
      map.put("code_type", "1");
      map.put("relation_app", "common");
      JSONObject resultJSON = null;
      try {
         TaoKeAppInfo app = new TaoKeAppInfo();
         app.setAppKey(appKey);
         app.setAppSecret(appSecret);
         resultJSON = TaoKeBaseUtil.baseRequest(map, app);
      } catch (TaoKeApiException e) {
         e.printStackTrace();
      }
      if (resultJSON == null)
         return null;
      return null;
   }
   public static String getRootSpecialInviteCode(String accessToken, String appKey, String appSecret) {
      Map<String, String> map = new HashMap<>();
      map.put("method", "taobao.tbk.sc.invitecode.get");
      map.put("session", accessToken);
      map.put("code_type", "3");
      map.put("relation_app", "common");
      JSONObject resultJSON = null;
      try {
         TaoKeAppInfo app = new TaoKeAppInfo();
         app.setAppKey(appKey);
         app.setAppSecret(appSecret);
         resultJSON = TaoKeBaseUtil.baseRequest(map, app);
         return resultJSON.optJSONObject("tbk_sc_invitecode_get_response").optJSONObject("data")
               .optString("inviter_code");
      } catch (TaoKeApiException e) {
         e.printStackTrace();
      }
      if (resultJSON == null)
         return null;
      return null;
   }
   public static String getRelationId(String accessToken, String appKey, String appSecret) {
      Map<String, String> map = new HashMap<>();
      map.put("method", "taobao.tbk.sc.publisher.info.save");
      map.put("session", accessToken);
      map.put("inviter_code", "A2QnGL");
      map.put("info_type", "1");
      map.put("online_scene", "1");
      JSONObject resultJSON = null;
      try {
         TaoKeAppInfo app = new TaoKeAppInfo();
         app.setAppKey(appKey);
         app.setAppSecret(appSecret);
         resultJSON = TaoKeBaseUtil.baseRequest(map, app);
         return resultJSON.optJSONObject("tbk_sc_publisher_info_save_response").optJSONObject("data")
               .optString("relation_id");
      } catch (TaoKeApiException e) {
         e.printStackTrace();
      }
      return null;
   }
   public static String getSpecialId(String accessToken, String appKey, String appSecret) {
      Map<String, String> map = new HashMap<>();
      map.put("method", "taobao.tbk.sc.publisher.info.save");
      map.put("session", accessToken);
      map.put("inviter_code", "AA5ISJ");
      map.put("info_type", "1");
      map.put("online_scene", "1");
      JSONObject resultJSON = null;
      try {
         TaoKeAppInfo app = new TaoKeAppInfo();
         app.setAppKey(appKey);
         app.setAppSecret(appSecret);
         resultJSON = TaoKeBaseUtil.baseRequest(map, app);
         return resultJSON.optJSONObject("tbk_sc_publisher_info_save_response").optJSONObject("data")
               .optString("special_id");
      } catch (TaoKeApiException e) {
         e.printStackTrace();
      }
      return null;
   }
   public static void getTaoBaoOrder(String appKey, String appSecret) {
      Map<String, String> map = new HashMap<>();
      map.put("method", "taobao.tbk.order.get");
      map.put("fields",
            "tb_trade_parent_id,tb_trade_id,num_iid,item_title,item_num,price,pay_price,seller_nick,seller_shop_title,commission,commission_rate,unid,create_time,earning_time,tk_status,tk3rd_pub_id,tk3rd_site_id,tk3rd_adzone_id,relation_id,tb_trade_parent_id,tb_trade_id,num_iid,item_title,item_num,price,pay_price,seller_nick,seller_shop_title,commission,commission_rate,unid,create_time,earning_time,tk3rd_pub_id,tk3rd_site_id,tk3rd_adzone_id,special_id,click_time,relation_id,special_id");
      map.put("start_time", "2019-01-27 21:23:00");
      map.put("span", "1200");
      map.put("tk_status", "1");
      map.put("order_query_type","create_time");
      map.put("page_no", 1+"");
      map.put("page_size", 100+"");
      TaoKeAppInfo app = new TaoKeAppInfo();
      app.setAppKey(appKey);
      app.setAppSecret(appSecret);
      try {
         JSONObject json = TaoKeBaseUtil.baseRequest(map, app);
         System.out.println(json.toString());
      } catch (TaoKeApiException e) {
         e.printStackTrace();
      }
   }
   // AA5ISJ
   private static TaoBaoGoodsBrief parseWuLiaoItemFromMaterialId(JSONObject item) {
      TaoBaoGoodsBrief goods = new TaoBaoGoodsBrief();
      // 设置成320*320的图片尺寸