admin
2019-08-27 fe879975a3e8a0a1aa280fb839e02d159bfbcff8
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeOrderApiUtil.java
@@ -40,16 +40,19 @@
    * @param appSecret
    * @return
    */
   private static List<TaoBaoOrder> getTaoBaoSpecialOrder(String startTime, int span, int page, String appKey,
         String appSecret) {
   private static List<TaoBaoOrder> getTaoBaoSpecialOrder(String startTime, int span, int page, int tkStatus,
         String appKey, String appSecret) {
      OrderQuery orderQuery = new OrderQuery();
      orderQuery.startTime = startTime;
      orderQuery.tkStatus = 1;
      orderQuery.tkStatus = tkStatus;
      orderQuery.orderScene = 3;
      orderQuery.pageNo = page;
      orderQuery.pageSize = 100;
      orderQuery.span = span;
      orderQuery.orderQueryType = "create_time";
      if (tkStatus == TK_STATUS_SETTLEMENT)
         orderQuery.orderQueryType = "settle_time";
      else
         orderQuery.orderQueryType = "create_time";
      return queryTaoBaoOrder(orderQuery, appKey, appSecret);
   }
@@ -62,12 +65,15 @@
    * @param appSecret
    * @return
    */
   private static List<TaoBaoOrder> getTaoBaoSpecialThirdOrder(String startTime, int span, int page, String appKey,
         String appSecret) {
   private static List<TaoBaoOrder> getTaoBaoSpecialThirdOrder(String startTime, int span, int page, int tkStatus,
         String appKey, String appSecret) {
      OrderQuery orderQuery = new OrderQuery();
      orderQuery.startTime = startTime;
      orderQuery.tkStatus = 1;
      orderQuery.orderQueryType = "create_time";
      orderQuery.tkStatus = tkStatus;
      if (tkStatus == TK_STATUS_SETTLEMENT)
         orderQuery.orderQueryType = "settle_time";
      else
         orderQuery.orderQueryType = "create_time";
      orderQuery.orderScene = 3;
      orderQuery.pageNo = page;
      orderQuery.pageSize = 100;
@@ -84,14 +90,17 @@
    * @param appSecret
    * @return
    */
   private static List<TaoBaoOrder> getTaoBaoRelationOrder(String startTime, int span, int page, String appKey,
         String appSecret) {
   private static List<TaoBaoOrder> getTaoBaoRelationOrder(String startTime, int span, int page, int tkStatus,
         String appKey, String appSecret) {
      OrderQuery orderQuery = new OrderQuery();
      orderQuery.startTime = startTime;
      orderQuery.span = span;
      orderQuery.tkStatus = 1;
      orderQuery.orderQueryType = "create_time";
      orderQuery.tkStatus = tkStatus;
      if (tkStatus == TK_STATUS_SETTLEMENT)
         orderQuery.orderQueryType = "settle_time";
      else
         orderQuery.orderQueryType = "create_time";
      orderQuery.orderScene = 2;
      orderQuery.pageNo = page;
      orderQuery.pageSize = 100;
@@ -107,13 +116,16 @@
    * @param appSecret
    * @return
    */
   private static List<TaoBaoOrder> getTaoBaoRelationThirdOrder(String startTime, int span, int page, String appKey,
         String appSecret) {
   private static List<TaoBaoOrder> getTaoBaoRelationThirdOrder(String startTime, int span, int page, int tkStatus,
         String appKey, String appSecret) {
      OrderQuery orderQuery = new OrderQuery();
      orderQuery.startTime = startTime;
      orderQuery.span = span;
      orderQuery.tkStatus = 1;
      orderQuery.orderQueryType = "create_time";
      orderQuery.tkStatus = tkStatus;
      if (tkStatus == TK_STATUS_SETTLEMENT)
         orderQuery.orderQueryType = "settle_time";
      else
         orderQuery.orderQueryType = "create_time";
      orderQuery.orderScene = 2;
      orderQuery.pageNo = page;
      orderQuery.pageSize = 100;
@@ -129,18 +141,21 @@
    * @param appSecret
    * @return
    */
   public static List<TaoBaoOrder> getTaoBaoAllOrder(String startTime, String appKey, String appSecret) {
   public static List<TaoBaoOrder> getTaoBaoAllOrder(String startTime, String appKey, String appSecret, int tkStatus) {
      return getTaoBaoAllOrder(startTime, 1200, 1, appKey, appSecret);
      return getTaoBaoAllOrder(startTime, 1200, 1, tkStatus, appKey, appSecret);
   }
   public static List<TaoBaoOrder> getTaoBaoAllOrder(String startTime, int span, int page, String appKey,
   public static List<TaoBaoOrder> getTaoBaoAllOrder(String startTime, int span, int page, int tkStatus, String appKey,
         String appSecret) {
      OrderQuery orderQuery = new OrderQuery();
      orderQuery.startTime = startTime;
      orderQuery.span = span;
      orderQuery.tkStatus = 1;
      orderQuery.orderQueryType = "create_time";
      orderQuery.tkStatus = tkStatus;
      if (tkStatus == TK_STATUS_SETTLEMENT)
         orderQuery.orderQueryType = "settle_time";
      else
         orderQuery.orderQueryType = "create_time";
      orderQuery.orderScene = 1;
      orderQuery.pageNo = page;
      orderQuery.pageSize = 100;
@@ -158,13 +173,16 @@
    * @param appSecret
    * @return
    */
   public static List<TaoBaoOrder> getTaoBaoThirdAllOrder(String startTime, int span, int page, String appKey,
         String appSecret) {
   public static List<TaoBaoOrder> getTaoBaoThirdAllOrder(String startTime, int span, int page, int tkStatus,
         String appKey, String appSecret) {
      OrderQuery orderQuery = new OrderQuery();
      orderQuery.startTime = startTime;
      orderQuery.span = span;
      orderQuery.tkStatus = 1;
      orderQuery.orderQueryType = "create_time";
      orderQuery.tkStatus = tkStatus;
      if (tkStatus == TK_STATUS_SETTLEMENT)
         orderQuery.orderQueryType = "settle_time";
      else
         orderQuery.orderQueryType = "create_time";
      orderQuery.orderScene = 1;
      orderQuery.pageNo = page;
      orderQuery.pageSize = 100;
@@ -204,13 +222,14 @@
      for (int i = 0; i < count; i++) {
         int totalSpanOrderCount = 0;
         List<TaoBaoPunishOrder> spanOrderList = new ArrayList<>();
         long startT = startTime + i * span*1000;
         long startT = startTime + i * span * 1000;
         data.put("start_time", TimeUtil.getGernalTime(startT, "yyyy-MM-dd HH:mm:ss"));
         data.put("span", 1800 + "");
         map.put("af_order_option", data.toString());
         try {
            JSONObject json = TaoKeBaseUtil.baseRequest(map, app);
            JSONObject dataJson = json.optJSONObject("tbk_dg_punish_order_get_response").optJSONObject("result").optJSONObject("data");
            JSONObject dataJson = json.optJSONObject("tbk_dg_punish_order_get_response").optJSONObject("result")
                  .optJSONObject("data");
            JSONArray array = dataJson.optJSONObject("results").optJSONArray("result");
            if (array != null)
               for (int n = 0; n < array.size(); n++) {
@@ -375,14 +394,14 @@
      return orderList;
   }
   private static List<TaoBaoOrder> getSpecialOrder(long startTime, int span) {
   private static List<TaoBaoOrder> getSpecialOrder(long startTime, int span, int tkStatus) {
      int page = 1;
      String startTimeStr = TimeUtil.getGernalTime(startTime, "yyyy-MM-dd HH:mm:ss");
      List<TaoBaoOrder> orderList = getTaoBaoSpecialOrder(startTimeStr, span, page, TaoBaoConstant.TAOBAO_AUTH_APPKEY,
            TaoBaoConstant.TAOBAO_AUTH_APPSECRET);
      List<TaoBaoOrder> orderList = getTaoBaoSpecialOrder(startTimeStr, span, page, tkStatus,
            TaoBaoConstant.TAOBAO_AUTH_APPKEY, TaoBaoConstant.TAOBAO_AUTH_APPSECRET);
      while (orderList.size() == 100 * page) {
         page++;
         List<TaoBaoOrder> tempOrderList = getTaoBaoSpecialOrder(startTimeStr, span, page,
         List<TaoBaoOrder> tempOrderList = getTaoBaoSpecialOrder(startTimeStr, span, page, tkStatus,
               TaoBaoConstant.TAOBAO_AUTH_APPKEY, TaoBaoConstant.TAOBAO_AUTH_APPSECRET);
         if (tempOrderList != null && tempOrderList.size() > 0)
            orderList.addAll(tempOrderList);
@@ -397,14 +416,14 @@
    * @param span
    * @return
    */
   private static List<TaoBaoOrder> getThirdTSpecialOrder(long startTime, int span) {
   private static List<TaoBaoOrder> getThirdTSpecialOrder(long startTime, int span, int tkStatus) {
      int page = 1;
      String startTimeStr = TimeUtil.getGernalTime(startTime, "yyyy-MM-dd HH:mm:ss");
      List<TaoBaoOrder> orderList = getTaoBaoSpecialThirdOrder(startTimeStr, span, page,
      List<TaoBaoOrder> orderList = getTaoBaoSpecialThirdOrder(startTimeStr, span, page, tkStatus,
            TaoBaoConstant.TAOBAO_AUTH_APPKEY, TaoBaoConstant.TAOBAO_AUTH_APPSECRET);
      while (orderList.size() == 100 * page) {
         page++;
         List<TaoBaoOrder> tempOrderList = getTaoBaoSpecialThirdOrder(startTimeStr, span, page,
         List<TaoBaoOrder> tempOrderList = getTaoBaoSpecialThirdOrder(startTimeStr, span, page, tkStatus,
               TaoBaoConstant.TAOBAO_AUTH_APPKEY, TaoBaoConstant.TAOBAO_AUTH_APPSECRET);
         if (tempOrderList != null && tempOrderList.size() > 0)
            orderList.addAll(tempOrderList);
@@ -412,14 +431,14 @@
      return orderList;
   }
   private static List<TaoBaoOrder> getRelationOrder(long startTime, int span) {
   private static List<TaoBaoOrder> getRelationOrder(long startTime, int span, int tkStatus) {
      int page = 1;
      String startTimeStr = TimeUtil.getGernalTime(startTime, "yyyy-MM-dd HH:mm:ss");
      List<TaoBaoOrder> orderList = getTaoBaoRelationOrder(startTimeStr, span, page,
      List<TaoBaoOrder> orderList = getTaoBaoRelationOrder(startTimeStr, span, page, tkStatus,
            TaoBaoConstant.TAOBAO_AUTH_APPKEY, TaoBaoConstant.TAOBAO_AUTH_APPSECRET);
      while (orderList.size() == 100 * page) {
         page++;
         List<TaoBaoOrder> tempOrderList = getTaoBaoRelationOrder(startTimeStr, span, page,
         List<TaoBaoOrder> tempOrderList = getTaoBaoRelationOrder(startTimeStr, span, page, tkStatus,
               TaoBaoConstant.TAOBAO_AUTH_APPKEY, TaoBaoConstant.TAOBAO_AUTH_APPSECRET);
         if (tempOrderList != null && tempOrderList.size() > 0)
            orderList.addAll(tempOrderList);
@@ -427,14 +446,14 @@
      return orderList;
   }
   private static List<TaoBaoOrder> getThirdRelationOrder(long startTime, int span) {
   private static List<TaoBaoOrder> getThirdRelationOrder(long startTime, int span, int tkStatus) {
      int page = 1;
      String startTimeStr = TimeUtil.getGernalTime(startTime, "yyyy-MM-dd HH:mm:ss");
      List<TaoBaoOrder> orderList = getTaoBaoRelationThirdOrder(startTimeStr, span, page,
      List<TaoBaoOrder> orderList = getTaoBaoRelationThirdOrder(startTimeStr, span, page, tkStatus,
            TaoBaoConstant.TAOBAO_AUTH_APPKEY, TaoBaoConstant.TAOBAO_AUTH_APPSECRET);
      while (orderList.size() == 100 * page) {
         page++;
         List<TaoBaoOrder> tempOrderList = getTaoBaoRelationThirdOrder(startTimeStr, span, page,
         List<TaoBaoOrder> tempOrderList = getTaoBaoRelationThirdOrder(startTimeStr, span, page, tkStatus,
               TaoBaoConstant.TAOBAO_AUTH_APPKEY, TaoBaoConstant.TAOBAO_AUTH_APPSECRET);
         if (tempOrderList != null && tempOrderList.size() > 0)
            orderList.addAll(tempOrderList);
@@ -449,7 +468,7 @@
    * @param endTime
    * @return
    */
   public static List<TaoBaoOrder> getSpecialOrder(long startTime, long endTime) {
   public static List<TaoBaoOrder> getSpecialOrder(long startTime, long endTime, int tkStatus) {
      List<TaoBaoOrder> orderList = new ArrayList<>();
      long span = (endTime - startTime) % 1000 == 0 ? (endTime - startTime) / 1000 : (endTime - startTime) / 1000 + 1;
      int count = (int) (span / 1200);
@@ -463,7 +482,7 @@
            if (s < 60)
               s = 60;
         }
         List<TaoBaoOrder> tempOrderList = getSpecialOrder(startT, s);
         List<TaoBaoOrder> tempOrderList = getSpecialOrder(startT, s, tkStatus);
         if (tempOrderList != null && tempOrderList.size() > 0)
            orderList.addAll(tempOrderList);
      }
@@ -477,7 +496,7 @@
    * @param endTime
    * @return
    */
   public static List<TaoBaoOrder> getThirdSpecialOrder(long startTime, long endTime) {
   public static List<TaoBaoOrder> getThirdSpecialOrder(long startTime, long endTime, int tkStatus) {
      List<TaoBaoOrder> orderList = new ArrayList<>();
      long span = (endTime - startTime) % 1000 == 0 ? (endTime - startTime) / 1000 : (endTime - startTime) / 1000 + 1;
      int count = (int) (span / 1200);
@@ -491,7 +510,7 @@
            if (s < 60)
               s = 60;
         }
         List<TaoBaoOrder> tempOrderList = getThirdTSpecialOrder(startT, s);
         List<TaoBaoOrder> tempOrderList = getThirdTSpecialOrder(startT, s, tkStatus);
         if (tempOrderList != null && tempOrderList.size() > 0)
            orderList.addAll(tempOrderList);
      }
@@ -505,7 +524,7 @@
    * @param endTime
    * @return
    */
   public static List<TaoBaoOrder> getRelationOrder(long startTime, long endTime) {
   public static List<TaoBaoOrder> getRelationOrder(long startTime, long endTime, int tkStatus) {
      List<TaoBaoOrder> orderList = new ArrayList<>();
      long span = (endTime - startTime) % 1000 == 0 ? (endTime - startTime) / 1000 : (endTime - startTime) / 1000 + 1;
      int count = (int) (span / 1200);
@@ -519,7 +538,7 @@
            if (s < 60)
               s = 60;
         }
         List<TaoBaoOrder> tempOrderList = getRelationOrder(startT, s);
         List<TaoBaoOrder> tempOrderList = getRelationOrder(startT, s, tkStatus);
         if (tempOrderList != null && tempOrderList.size() > 0)
            orderList.addAll(tempOrderList);
      }
@@ -533,7 +552,7 @@
    * @param endTime
    * @return
    */
   public static List<TaoBaoOrder> getThirdRelationOrder(long startTime, long endTime) {
   public static List<TaoBaoOrder> getThirdRelationOrder(long startTime, long endTime, int tkStatus) {
      List<TaoBaoOrder> orderList = new ArrayList<>();
      long span = (endTime - startTime) % 1000 == 0 ? (endTime - startTime) / 1000 : (endTime - startTime) / 1000 + 1;
      int count = (int) (span / 1200);
@@ -547,7 +566,7 @@
            if (s < 60)
               s = 60;
         }
         List<TaoBaoOrder> tempOrderList = getThirdRelationOrder(startT, s);
         List<TaoBaoOrder> tempOrderList = getThirdRelationOrder(startT, s, tkStatus);
         if (tempOrderList != null && tempOrderList.size() > 0)
            orderList.addAll(tempOrderList);
      }
@@ -560,6 +579,7 @@
      orderQuery.orderQueryType = "settle_time";
      orderQuery.orderScene = 1;
      orderQuery.pageSize = 100;
      orderQuery.tkStatus=TK_STATUS_SETTLEMENT;
      int page = 1;
      orderQuery.pageNo = page;
      if (third)
@@ -618,18 +638,20 @@
      return orderList;
   }
   public static WeiQuanOrderResult getTaoBaoRelationWeiQuanOrderList(Date startTime, int page, boolean third) {
   public static WeiQuanOrderResult getTaoBaoRelationWeiQuanOrderList(Date startTime, int searchType, int page,
         boolean third) {
      return getRelationAndSpecialWeiQuanOrderList(startTime, page, third, 1);
      return getRelationAndSpecialWeiQuanOrderList(startTime, searchType, page, third, 1);
   }
   public static WeiQuanOrderResult getTaoBaoSpecialWeiQuanOrderList(Date startTime, int page, boolean third) {
   public static WeiQuanOrderResult getTaoBaoSpecialWeiQuanOrderList(Date startTime, int searchType, int page,
         boolean third) {
      return getRelationAndSpecialWeiQuanOrderList(startTime, page, third, 2);
      return getRelationAndSpecialWeiQuanOrderList(startTime, searchType, page, third, 2);
   }
   private static WeiQuanOrderResult getRelationAndSpecialWeiQuanOrderList(Date startTime, int page, boolean third,
         int bizType) {
   private static WeiQuanOrderResult getRelationAndSpecialWeiQuanOrderList(Date startTime, int searchType, int page,
         boolean third, int bizType) {
      WeiQuanOrderResult finalResult = new WeiQuanOrderResult();
      List<TaoBaoWeiQuanOrder> list = new ArrayList<>();
@@ -638,7 +660,7 @@
      map.put("method", "taobao.tbk.relation.refund");
      JSONObject option = new JSONObject();
      option.put("search_type", 1);
      option.put("search_type", searchType);
      option.put("refund_type", third ? 2 : 1);
      option.put("start_time", TimeUtil.getGernalTime(startTime.getTime(), "yyyy-MM-dd HH:mm:ss"));
      option.put("page_no", page);
@@ -659,49 +681,50 @@
         int count = results.optInt("total_count");
         finalResult.totalCount = count;
         JSONArray array = results.optJSONArray("result");
         for (int i = 0; i < array.size(); i++) {
            JSONObject item = array.optJSONObject(i);
            TaoBaoWeiQuanOrder order = new TaoBaoWeiQuanOrder();
            order.setGoodsName(item.optString("tb_auction_title"));
            BigDecimal fanMoney = new BigDecimal(0);
            if (!StringUtil.isNullOrEmpty(item.optString("tk_subsidy_fee_refund3rd_pub"))) {
               fanMoney.add(new BigDecimal(item.optString("tk_subsidy_fee_refund3rd_pub")));
            }
            if (!StringUtil.isNullOrEmpty(item.optString("tk_commission_fee_refund3rd_pub"))) {
               fanMoney.add(new BigDecimal(item.optString("tk_commission_fee_refund3rd_pub")));
            }
            if (!StringUtil.isNullOrEmpty(item.optString("tk_subsidy_fee_refund_pub"))) {
               fanMoney.add(new BigDecimal(item.optString("tk_subsidy_fee_refund_pub")));
            }
            if (!StringUtil.isNullOrEmpty(item.optString("tk_commission_fee_refund_pub"))) {
               fanMoney.add(new BigDecimal(item.optString("tk_commission_fee_refund_pub")));
            }
         if (array != null)
            for (int i = 0; i < array.size(); i++) {
               JSONObject item = array.optJSONObject(i);
               TaoBaoWeiQuanOrder order = new TaoBaoWeiQuanOrder();
               order.setGoodsName(item.optString("tb_auction_title"));
               BigDecimal fanMoney = new BigDecimal(0);
               if (!StringUtil.isNullOrEmpty(item.optString("tk_subsidy_fee_refund3rd_pub"))) {
                  fanMoney = fanMoney.add(new BigDecimal(item.optString("tk_subsidy_fee_refund3rd_pub")));
               }
               if (!StringUtil.isNullOrEmpty(item.optString("tk_commission_fee_refund3rd_pub"))) {
                  fanMoney = fanMoney.add(new BigDecimal(item.optString("tk_commission_fee_refund3rd_pub")));
               }
               if (!StringUtil.isNullOrEmpty(item.optString("tk_subsidy_fee_refund_pub"))) {
                  fanMoney = fanMoney.add(new BigDecimal(item.optString("tk_subsidy_fee_refund_pub")));
               }
               if (!StringUtil.isNullOrEmpty(item.optString("tk_commission_fee_refund_pub"))) {
                  fanMoney = fanMoney.add(new BigDecimal(item.optString("tk_commission_fee_refund_pub")));
               }
            if (fanMoney.compareTo(new BigDecimal(0)) == 0)
               fanMoney = null;
               if (fanMoney.compareTo(new BigDecimal(0)) == 0)
                  fanMoney = null;
            order.setFanMoney(fanMoney);
            order.setJieSuanTime(
                  new Date(TimeUtil.convertToTimeTemp(item.optString("earning_time"), "yyyy-MM-dd HH:mm:ss")));
            if (!StringUtil.isNullOrEmpty(item.optString("refund_fee")))
               order.setMoney(new BigDecimal(item.optString("refund_fee")));
            order.setOrderId(item.optString("tb_trade_parent_id"));
            order.setOrderItemId(item.optString("tb_trade_id"));
            int state = item.optInt("refund_status");
            if (state == 4)
               order.setState("维权创建");
            else if (state == 2)
               order.setState("维权成功");
            else if (state == 3)
               order.setState("维权失败");
               order.setFanMoney(fanMoney);
               order.setJieSuanTime(new Date(
                     TimeUtil.convertToTimeTemp(item.optString("earning_time"), "yyyy-MM-dd HH:mm:ss")));
               if (!StringUtil.isNullOrEmpty(item.optString("refund_fee")))
                  order.setMoney(new BigDecimal(item.optString("refund_fee")));
               order.setOrderId(item.optString("tb_trade_parent_id"));
               order.setOrderItemId(item.optString("tb_trade_id"));
               int state = item.optInt("refund_status");
               if (state == 4)
                  order.setState("维权创建");
               else if (state == 2)
                  order.setState("维权成功");
               else if (state == 3)
                  order.setState("维权失败");
            if (!StringUtil.isNullOrEmpty(item.optString("tk_refund_suit_time")))
               order.setWeiQuanFinishTime(new Date(
                     TimeUtil.convertToTimeTemp(item.optString("tk_refund_suit_time"), "yyyy-MM-dd HH:mm:ss")));
            order.setWeiQuanTime(
                  new Date(TimeUtil.convertToTimeTemp(item.optString("tk_refund_time"), "yyyy-MM-dd HH:mm:ss")));
            list.add(order);
         }
               if (!StringUtil.isNullOrEmpty(item.optString("tk_refund_suit_time")))
                  order.setWeiQuanFinishTime(new Date(TimeUtil
                        .convertToTimeTemp(item.optString("tk_refund_suit_time"), "yyyy-MM-dd HH:mm:ss")));
               order.setWeiQuanTime(new Date(
                     TimeUtil.convertToTimeTemp(item.optString("tk_refund_time"), "yyyy-MM-dd HH:mm:ss")));
               list.add(order);
            }
      } catch (Exception e) {
         e.printStackTrace();