admin
2021-07-05 2f071296b9e1d7a3aa6b6f3818196aaa40af3300
facade-lijin/src/main/java/com/ks/lijin/utils/taobao/TaoKeApiUtil.java
@@ -1,6 +1,7 @@
package com.ks.lijin.utils.taobao;
import com.google.gson.Gson;
import com.ks.lijin.exception.*;
import com.ks.lijin.pojo.DTO.taobao.*;
import com.ks.lijin.pojo.PageEntity;
@@ -80,18 +81,56 @@
                            throw new LiJinAccountException(LiJinAccountException.CODE_TLJ_NO_MONEY, "官方玩法钱包余额不足");
                        case "ASSET_ACCOUNT_BALANCE_NOT_ENOUGH":
                            throw new LiJinAccountException(LiJinAccountException.CODE_TLJ_NO_MONEY, "账户预算不足");
                        case "FAIL_CHECK_MEMBER_DAILY_SEND_ITEM_ABOVE_LIMIT_ERROR":
                            throw new LiJinAccountException(LiJinAccountException.CODE_TLJ_NO_GOODS, "今日商品创建数已超上限,请您明日再试");
                        case "FAIL_CHECK_ITEM_DAILY_SEND_NUM_CHECK_ERROR":
                            throw new LiJinGoodsException(LiJinGoodsException.CODE_GOODS_CREATED_FULL, "今日该商品淘礼金创建数已超上限,请您明日再试");
                        case "FAIL_CHECK_TLJ_MIN_FACE_ERROR":
                            throw new LiJinAmountException(LiJinAmountException.CODE_LIJIN_AMOUNT_OUTOFRANGE, msgInfo);
                        default:
                            throw new LiJinException(Integer.parseInt(msgCode), root.toString());
                            throw new LiJinException(1, root.toString());
                    }
                }
            }
        } catch (LiJinException e) {
            throw e;
        }
        return null;
    }
    /**
     * 淘礼金报告
     *
     * @param rightsId
     * @param app
     * @return
     * @throws LiJinAccountException
     * @throws LiJinAmountException
     * @throws LiJinException
     * @throws LiJinGoodsException
     */
    public static TaoLiJinReportDTO taolijinReport(String rightsId, TaoKeAppInfo app) {
        Map<String, String> map = new HashMap<>();
        map.put("method", "taobao.tbk.dg.vegas.tlj.instance.report");
        map.put("rights_id", rightsId);
        String result = baseRequestForThreeTimes(map, app);
        JSONObject json = JSONObject.fromObject(result);
        System.out.println(json);
        JSONObject root = json.optJSONObject("tbk_dg_vegas_tlj_instance_report_response");
        if (root != null && root.optJSONObject("result") != null) {
            if (root.optJSONObject("result").optBoolean("success")) {
                JSONObject modelJson = root.optJSONObject("result").optJSONObject("model");
                TaoLiJinReportDTO dto = new Gson().fromJson(modelJson.toString(), TaoLiJinReportDTO.class);
                return dto;
            } else {
                // 日志记录  TODO
            }
        }
        return null;
    }
@@ -238,7 +277,7 @@
                String key = keys.next();
                url += String.format("%s=%s&", key, URLEncoder.encode(params.get(key), "UTF-8"));
            }
            System.out.println("淘客请求连接:"+url);
            System.out.println("淘客请求连接:" + url);
            GetMethod method = new GetMethod(url);
            // 3S的响应超时
            HttpConnectionManagerParams hparams = new HttpConnectionManagerParams();
@@ -581,6 +620,25 @@
        return goods;
    }
    public static Date getTaoBaoSystemTime() {
        Map<String, String> map = new HashMap<>();
        map.put("method", "taobao.time.get");
        try {
            JSONObject json = TaoKeBaseUtil.baseRequest(map, false);
            String time = json.optJSONObject("time_get_response").optString("time");
            return new Date(TimeUtil.convertToTimeTemp(time, "yyyy-MM-dd HH:mm:ss"));
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }
    public static void main(String[] args) {
        TaoLiJinReportDTO dto = taolijinReport("eC2%2FoV8gigdzVO5CvuRDjDVC0SEP1L7d", new TaoKeAppInfo("27743325", "527a23554f71557d7b786bc479fcd5fe"));
        System.out.println(dto);
    }
}