yj
2020-03-06 207dc8655711cddac2653e18b51e58a88dba2084
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java
@@ -169,6 +169,8 @@
      goods.setPictUrl(item.optString("pict_url"));
      goods.setShopTitle(item.optString("nick"));
      goods.setSellerId(item.optLong("seller_id"));
      goods.setRootCategoryName(item.optString("cat_name"));
      goods.setLeafName(item.optString("cat_leaf_name"));
      String optString = item.optString("shop_dsr");
      if (!StringUtil.isNullOrEmpty(optString)) {
@@ -205,6 +207,9 @@
      } else
         goods.setMaterialLibType(0);
      goods.setRootCategoryName(item.optString("cat_name"));
      goods.setLeafName(item.optString("cat_leaf_name"));
      goods = loadYuShouInfo(goods, item);
      return goods;
@@ -315,29 +320,37 @@
            }
         }
      // 再从淘宝联盟网页搜索
      filter.setKey(goods.getAuctionUrl());
      TaoBaoSearchResult searchResult = TaoBaoUtil.searchFromAlimamaWeb(filter, null);
      if (searchResult != null && searchResult.getTaoBaoGoodsBriefs() != null
            && searchResult.getTaoBaoGoodsBriefs().size() > 0) {
         for (TaoBaoGoodsBrief g : searchResult.getTaoBaoGoodsBriefs()) {
            if (g.getAuctionId().longValue() == goods.getAuctionId()) {
               g.setImgList(goods.getImgList());
               goods = g;
               if ("无".equalsIgnoreCase(goods.getCouponInfo()))
                  goods.setCouponInfo(null);
               return goods;
      // 从转链搜索
      TaoBaoGoodsBrief newGoods = specialConvertCoupon(goods.getAuctionId(),
            new TaoKeAppInfo(TaoBaoConstant.TAOBAO_AUTH_APPKEY, TaoBaoConstant.TAOBAO_AUTH_APPSECRET,
                  TaoBaoConstant.TAOBAO_SPECIAL_PID_DEFAULT));
      if (newGoods != null) {
         goods.setTkRate(newGoods.getTkRate());
         if (!StringUtil.isNullOrEmpty(newGoods.getCouponInfo())) {
            List<BigDecimal> couponInfo = TaoBaoCouponUtil.getCouponInfo(newGoods.getCouponInfo());
            if (couponInfo != null && couponInfo.size() > 1) {
               goods.setCouponStartFee(couponInfo.get(0));
               goods.setCouponAmount(couponInfo.get(1));
               goods.setCouponEffectiveStartTime(newGoods.getCouponEffectiveStartTime());
               goods.setCouponEffectiveEndTime(newGoods.getCouponEffectiveEndTime());
               goods.setCouponLeftCount(newGoods.getCouponLeftCount());
               goods.setCouponTotalCount(newGoods.getCouponTotalCount());
               goods.setCouponInfo(newGoods.getCouponInfo());
            }
         }
         return goods;
      } else {
         goods.setCouponAmount(new BigDecimal("0"));
         goods.setTkMktStatus("1");
         goods.setTkRate(new BigDecimal("0"));
         goods.setReservePrice(new BigDecimal(0));
         goods.setTkCommFee(new BigDecimal(0));
         return goods;
      }
      TaoKeLogHelper.error(null, "没有搜索到详情:" + id);
      goods.setCouponAmount(new BigDecimal("0"));
      goods.setTkMktStatus("1");
      goods.setTkRate(new BigDecimal("0"));
      goods.setReservePrice(new BigDecimal(0));
      goods.setTkCommFee(new BigDecimal(0));
      return goods;
   }
   /**
@@ -384,29 +397,36 @@
            }
         }
      // 再从淘宝联盟网页搜索
      filter.setKey(goods.getAuctionUrl());
      TaoBaoSearchResult searchResult = TaoBaoUtil.searchFromAlimamaWeb(filter, null);
      if (searchResult != null && searchResult.getTaoBaoGoodsBriefs() != null
            && searchResult.getTaoBaoGoodsBriefs().size() > 0) {
         for (TaoBaoGoodsBrief g : searchResult.getTaoBaoGoodsBriefs()) {
            if (g.getAuctionId().longValue() == goods.getAuctionId()) {
               g.setImgList(goods.getImgList());
               goods = g;
               if ("无".equalsIgnoreCase(goods.getCouponInfo()))
                  goods.setCouponInfo(null);
               return goods;
      // 从转链搜索
      TaoBaoGoodsBrief newGoods = specialConvertCoupon(goods.getAuctionId(),
            new TaoKeAppInfo(TaoBaoConstant.TAOBAO_AUTH_APPKEY, TaoBaoConstant.TAOBAO_AUTH_APPSECRET,
                  TaoBaoConstant.TAOBAO_SPECIAL_PID_DEFAULT));
      if (newGoods != null) {
         goods.setTkRate(newGoods.getTkRate());
         if (!StringUtil.isNullOrEmpty(newGoods.getCouponInfo())) {
            List<BigDecimal> couponInfo = TaoBaoCouponUtil.getCouponInfo(newGoods.getCouponInfo());
            if (couponInfo != null && couponInfo.size() > 1) {
               goods.setCouponStartFee(couponInfo.get(0));
               goods.setCouponAmount(couponInfo.get(1));
               goods.setCouponEffectiveStartTime(newGoods.getCouponEffectiveStartTime());
               goods.setCouponEffectiveEndTime(newGoods.getCouponEffectiveEndTime());
               goods.setCouponLeftCount(newGoods.getCouponLeftCount());
               goods.setCouponTotalCount(newGoods.getCouponTotalCount());
               goods.setCouponInfo(newGoods.getCouponInfo());
            }
         }
      }
      TaoKeLogHelper.error(null, "没有搜索到详情:" + id);
      goods.setCouponAmount(new BigDecimal("0"));
      goods.setTkMktStatus("1");
      goods.setTkRate(new BigDecimal("0"));
      goods.setReservePrice(new BigDecimal(0));
      goods.setTkCommFee(new BigDecimal(0));
      return goods;
         return goods;
      } else {
         goods.setCouponAmount(new BigDecimal("0"));
         goods.setTkMktStatus("1");
         goods.setTkRate(new BigDecimal("0"));
         goods.setReservePrice(new BigDecimal(0));
         goods.setTkCommFee(new BigDecimal(0));
         return goods;
      }
   }
   /**
@@ -1621,6 +1641,7 @@
      map.put("adzone_id", sts[3]);
      try {
         String result = TaoKeBaseUtil.baseRequestForThreeTimes(map, app);
         System.out.println(result);
         JSONObject json = JSONObject.fromObject(result);
         JSONObject resultJSON = json.optJSONObject("tbk_coupon_convert_response").optJSONObject("result")
               .optJSONObject("results");
@@ -1631,6 +1652,17 @@
         if (!StringUtil.isNullOrEmpty(resultJSON.optString("coupon_info"))) {
            goods.setCouponLink(couponLink);
            goods.setCouponInfo(resultJSON.optString("coupon_info"));
            if (!StringUtil.isNullOrEmpty(resultJSON.optString("coupon_total_count"))) {
               goods.setCouponTotalCount(Integer.parseInt(resultJSON.optString("coupon_total_count")));
            }
            if (!StringUtil.isNullOrEmpty(resultJSON.optString("coupon_remain_count"))) {
               goods.setCouponLeftCount(Integer.parseInt(resultJSON.optString("coupon_remain_count")));
            }
            goods.setCouponEffectiveStartTime(resultJSON.optString("coupon_start_time"));
            goods.setCouponEffectiveEndTime(resultJSON.optString("coupon_end_time"));
         }
         String tkRate = resultJSON.optString("max_commission_rate");
         if (!StringUtil.isNullOrEmpty(tkRate)) {