2022-09-20 03:10:29 +00:00
|
|
|
|
using Api.Framework.Cps;
|
|
|
|
|
using Api.Framework.Enums;
|
|
|
|
|
using Api.Framework.Model;
|
|
|
|
|
using Api.Framework.Tools;
|
|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using System.Text;
|
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
using CsharpHttpHelper;
|
|
|
|
|
using System.IO;
|
|
|
|
|
using Api.Framework.SDK;
|
|
|
|
|
using Api.Framework.Timers;
|
|
|
|
|
using System.Threading;
|
2022-11-21 09:50:35 +00:00
|
|
|
|
using Api.Framework.Utils;
|
2022-09-20 03:10:29 +00:00
|
|
|
|
|
|
|
|
|
namespace Api.Framework
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Cps管理端
|
|
|
|
|
/// </summary>
|
|
|
|
|
public class CpsClient
|
|
|
|
|
{
|
|
|
|
|
static CpsClient()
|
|
|
|
|
{
|
2022-11-21 09:50:35 +00:00
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
RefreshCps();
|
|
|
|
|
GuideMembers = new List<fl_cps_member>();
|
|
|
|
|
GuideMembers.Add(new fl_cps_member() { abnormal_tip = SwitchType.关闭, cpstype = CpsType.多多进宝, is_download = SwitchType.关闭, is_valid = true, logintime = DateTime.Now, online = true, username = "1929015", usernick = "w", cookies = "1929015_24223399" });//吴嘉华
|
|
|
|
|
GuideMembers.Add(new fl_cps_member() { abnormal_tip = SwitchType.关闭, cpstype = CpsType.多多进宝, is_download = SwitchType.关闭, is_valid = true, logintime = DateTime.Now, online = true, username = "8701005", usernick = "zyy", cookies = "8701005_194371009" });//张谊玉
|
2023-04-06 01:07:55 +00:00
|
|
|
|
//GuideMembers.Add(new fl_cps_member() { abnormal_tip = SwitchType.关闭, cpstype = CpsType.多多进宝, is_download = SwitchType.关闭, is_valid = true, logintime = DateTime.Now, online = true, username = "15528847", usernick = "zl", cookies = "15528847_194372142" });//周雷
|
2022-11-21 09:50:35 +00:00
|
|
|
|
GuideMembers.Add(new fl_cps_member() { abnormal_tip = SwitchType.关闭, cpstype = CpsType.多多进宝, is_download = SwitchType.关闭, is_valid = true, logintime = DateTime.Now, online = true, username = "8364424", usernick = "zcg", cookies = "8364424_194372426" });//钟成刚
|
|
|
|
|
GuideMembers.Add(new fl_cps_member() { abnormal_tip = SwitchType.关闭, cpstype = CpsType.多多进宝, is_download = SwitchType.关闭, is_valid = true, logintime = DateTime.Now, online = true, username = "15529092", usernick = "lcr", cookies = "15529092_194372782" });//廖春容
|
2023-04-06 01:07:55 +00:00
|
|
|
|
//GuideMembers.Add(new fl_cps_member() { abnormal_tip = SwitchType.关闭, cpstype = CpsType.多多进宝, is_download = SwitchType.关闭, is_valid = true, logintime = DateTime.Now, online = true, username = "15529109", usernick = "yc", cookies = "15529109_194373136" });//杨灿
|
2022-11-21 09:50:35 +00:00
|
|
|
|
GuideMembers.Add(new fl_cps_member() { abnormal_tip = SwitchType.关闭, cpstype = CpsType.多多进宝, is_download = SwitchType.关闭, is_valid = true, logintime = DateTime.Now, online = true, username = "15531182", usernick = "lxy", cookies = "15531182_194378363" });//李馨雨
|
2023-04-06 01:07:55 +00:00
|
|
|
|
GuideMembers.Add(new fl_cps_member() { abnormal_tip = SwitchType.关闭, cpstype = CpsType.多多进宝, is_download = SwitchType.关闭, is_valid = true, logintime = DateTime.Now, online = true, username = "32388767", usernick = "yc", cookies = "32388767_194373136" });//李洁
|
2022-11-21 09:50:35 +00:00
|
|
|
|
}
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
{
|
|
|
|
|
LogHelper.GetSingleObj().Error("初始化异常", ex.Message);
|
|
|
|
|
throw;
|
|
|
|
|
}
|
2022-09-20 03:10:29 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 软件登录的cps集合
|
|
|
|
|
/// </summary>
|
|
|
|
|
public static List<fl_cps_member> Members { get; private set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 公共的Cps集合
|
|
|
|
|
/// </summary>
|
|
|
|
|
internal static List<fl_cps_member> GuideMembers { get; private set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 刷新cps缓存
|
|
|
|
|
/// </summary>
|
|
|
|
|
public static void RefreshCps()
|
|
|
|
|
{
|
|
|
|
|
Members = ApiClient.GetSession().Find<fl_cps_member>("select * from fl_cps_member");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 创建拼多多API请求
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="member">cps对象</param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
public static PinduoduoApi CreatePinduoduoRequest(fl_cps_member member)
|
|
|
|
|
{
|
|
|
|
|
if (member != null && member.cpstype != CpsType.多多进宝) throw new Exception("CreatePinduoduoRequest 失败,您当前账号类型为:" + member.cpstype);
|
|
|
|
|
return new PinduoduoApi(member);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 创建一个阿里妈妈API请求
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="member">cps对象</param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
public static AlimamaApi CreateAlimamaRequest(fl_cps_member member)
|
|
|
|
|
{
|
|
|
|
|
if (member.cpstype != CpsType.阿里妈妈) throw new Exception("CreateAlimamaRequest 失败,您当前账号类型为:" + member.cpstype);
|
|
|
|
|
return new AlimamaApi(member);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 创建一个京东联盟API请求
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="member">cps对象</param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
public static JingdongApi CreateJingdongRequest(fl_cps_member member)
|
|
|
|
|
{
|
|
|
|
|
if (member.cpstype != CpsType.京东联盟) throw new Exception("CreateJingdongRequest 失败,您当前账号类型为:" + member.cpstype);
|
|
|
|
|
return new JingdongApi(member);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 创建一个唯品联盟API请求
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="member">cps对象</param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
public static WeipinhuiApi CreateWeipinhuiRequest(fl_cps_member member)
|
|
|
|
|
{
|
|
|
|
|
if (member.cpstype != CpsType.唯品联盟) throw new Exception("CreateWeipinhuiRequest 失败,您当前账号类型为:" + member.cpstype);
|
|
|
|
|
return new WeipinhuiApi(member);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 创建一个苏宁易购API请求
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="member">cps对象</param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
public static SuNingApi CreateSuNingRequest(fl_cps_member member)
|
|
|
|
|
{
|
|
|
|
|
if (member.cpstype != CpsType.苏宁易购) throw new Exception("CreateSuNingRequest 失败,您当前账号类型为:" + member.cpstype);
|
|
|
|
|
return new SuNingApi(member);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 创建一个抖音联盟API请求
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="member">cps对象</param>
|
|
|
|
|
/// <returns></returns>
|
2022-12-28 09:10:01 +00:00
|
|
|
|
public static DouyinApiV2 CreateDouyinRequest(fl_cps_member member)
|
2022-09-20 03:10:29 +00:00
|
|
|
|
{
|
|
|
|
|
if (member != null && member.cpstype != CpsType.抖音联盟) throw new Exception("CreateDouyinRequest 失败,您当前账号类型为:" + member.cpstype);
|
2023-04-06 01:07:55 +00:00
|
|
|
|
//return new DouyinApiV2(member);
|
2022-12-28 09:10:01 +00:00
|
|
|
|
return new DouyinApiV2(member);
|
2022-09-20 03:10:29 +00:00
|
|
|
|
}
|
|
|
|
|
|
2023-04-06 01:07:55 +00:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// 创建一个抖音联盟API请求
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="member">cps对象</param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
public static DouyinApiV3 CreateDouyinRequestV3(fl_cps_member member)
|
|
|
|
|
{
|
|
|
|
|
if (member != null && member.cpstype != CpsType.抖客联盟) throw new Exception("CreateDouyinRequest 失败,您当前账号类型为:" + member.cpstype);
|
|
|
|
|
//return new DouyinApiV2(member);
|
|
|
|
|
return new DouyinApiV3(member);
|
|
|
|
|
}
|
|
|
|
|
|
2022-09-20 03:10:29 +00:00
|
|
|
|
public static KuaiShouApi CreateKuaiShouRequest(fl_cps_member member)
|
|
|
|
|
{
|
|
|
|
|
if (member.cpstype != CpsType.快手联盟) throw new Exception("CreateDouyinRequest 失败,您当前账号类型为:" + member.cpstype);
|
|
|
|
|
return new KuaiShouApi(member);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// cps登录
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="type">需要登录cps类型</param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
public static fl_cps_member Login(CpsType type)
|
|
|
|
|
{
|
|
|
|
|
// MiniblinkNet.WebView.PerformCookieCommand( MiniblinkNet.wkeCookieCommand.ClearAllCookies);
|
|
|
|
|
|
|
|
|
|
fl_cps_member member = null;
|
|
|
|
|
|
|
|
|
|
switch (type)
|
|
|
|
|
{
|
|
|
|
|
case CpsType.唯品联盟:
|
|
|
|
|
{
|
|
|
|
|
var form = new weipinhui_form_login();
|
|
|
|
|
form.ShowDialog();
|
|
|
|
|
member = form.member;
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
//登录拼多多
|
|
|
|
|
case CpsType.多多进宝:
|
|
|
|
|
{
|
|
|
|
|
var form = new pinduoduo_form_login();
|
|
|
|
|
form.ShowDialog();
|
|
|
|
|
member = form.member;
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
case CpsType.阿里妈妈:
|
|
|
|
|
{
|
|
|
|
|
//清理Cookies
|
|
|
|
|
Tools.Util.SuppressWininetBehavior();
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
var CookiesFile = HttpExtend.MapFile("cookies.dat");
|
|
|
|
|
if (File.Exists(CookiesFile)) File.Delete(CookiesFile);
|
|
|
|
|
}
|
|
|
|
|
catch (Exception)
|
|
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
//开始登陆
|
|
|
|
|
var login = new alimama_form_login();
|
|
|
|
|
login.ShowDialog();
|
|
|
|
|
member = login.Member;
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
case CpsType.京东联盟:
|
|
|
|
|
{
|
|
|
|
|
var form = new jingdong_form_login();
|
|
|
|
|
form.ShowDialog();
|
|
|
|
|
member = form.member;
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
case CpsType.抖音联盟:
|
|
|
|
|
{
|
|
|
|
|
var form = new douyin_form_login();
|
|
|
|
|
form.ShowDialog();
|
|
|
|
|
member = form.Member;
|
|
|
|
|
break;
|
|
|
|
|
}
|
2023-04-06 01:07:55 +00:00
|
|
|
|
case CpsType.抖客联盟:
|
|
|
|
|
{
|
|
|
|
|
var form = new douke_form_login();
|
|
|
|
|
form.ShowDialog();
|
|
|
|
|
member = form.Member;
|
|
|
|
|
break;
|
|
|
|
|
}
|
2022-09-20 03:10:29 +00:00
|
|
|
|
case CpsType.苏宁易购:
|
|
|
|
|
{
|
|
|
|
|
var form = new suning_form_login1();
|
|
|
|
|
form.ShowDialog();
|
|
|
|
|
member = form.member;
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
case CpsType.快手联盟:
|
|
|
|
|
{
|
|
|
|
|
var form = new kuaishou_form_login();
|
|
|
|
|
form.ShowDialog();
|
|
|
|
|
member = form.member;
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (member != null)
|
|
|
|
|
{
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
switch (type)
|
|
|
|
|
{
|
|
|
|
|
case CpsType.阿里妈妈:
|
|
|
|
|
new AlimamaApi(member).RefToken();
|
|
|
|
|
break;
|
|
|
|
|
case CpsType.多多进宝:
|
|
|
|
|
new PinduoduoApi(member).RefToken();
|
|
|
|
|
break;
|
|
|
|
|
case CpsType.唯品联盟:
|
|
|
|
|
new WeipinhuiApi(member).RefToken();
|
|
|
|
|
break;
|
|
|
|
|
case CpsType.快手联盟:
|
|
|
|
|
new KuaiShouApi(member).RefToken();
|
|
|
|
|
break;
|
|
|
|
|
case CpsType.京东联盟:
|
|
|
|
|
//new JingdongApi(member).RefToken();
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
catch (Exception)
|
|
|
|
|
{ }
|
|
|
|
|
|
|
|
|
|
var session = ApiClient.GetSession();
|
|
|
|
|
session.SaveOrUpdate(member);
|
|
|
|
|
return member;
|
|
|
|
|
}
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// cps选择推广位
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="type">cps类型</param>
|
|
|
|
|
/// <param name="isalone"></param>
|
|
|
|
|
/// <param name="isgroup"></param>
|
|
|
|
|
/// <param name="isactivity"></param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
public static object SelectTuiguangwei(CpsType type, bool isalone = true, bool isgroup = false, bool isactivity = false)
|
|
|
|
|
{
|
|
|
|
|
switch (type)
|
|
|
|
|
{
|
|
|
|
|
case CpsType.阿里妈妈:
|
|
|
|
|
{
|
|
|
|
|
var f = new alimama_form_select_tgw(isalone, isgroup, isactivity);
|
|
|
|
|
f.ShowDialog();
|
|
|
|
|
if (f.Tuiguangwei != null)
|
|
|
|
|
return f.Tuiguangwei;
|
|
|
|
|
else
|
|
|
|
|
return f.AdzoneGroup;
|
|
|
|
|
}
|
|
|
|
|
case CpsType.多多进宝:
|
|
|
|
|
{
|
|
|
|
|
var f = new pinduoduo_form_select_tgw();
|
|
|
|
|
f.ShowDialog();
|
|
|
|
|
return f.Tuiguangwei;
|
|
|
|
|
}
|
|
|
|
|
case CpsType.京东联盟:
|
|
|
|
|
{
|
|
|
|
|
var f = new jingdong_form_select_tgw();
|
|
|
|
|
f.ShowDialog();
|
|
|
|
|
return f.Tuiguangwei;
|
|
|
|
|
}
|
|
|
|
|
case CpsType.唯品联盟:
|
|
|
|
|
{
|
|
|
|
|
var f = new weipinhui_form_select_tgw();
|
|
|
|
|
f.ShowDialog();
|
|
|
|
|
return f.Tuiguangwei;
|
|
|
|
|
}
|
|
|
|
|
case CpsType.抖音联盟:
|
|
|
|
|
{
|
|
|
|
|
var f = new douyin_form_select_tgw();
|
|
|
|
|
f.ShowDialog();
|
|
|
|
|
return f.Tuiguangwei;
|
|
|
|
|
}
|
2023-04-06 01:07:55 +00:00
|
|
|
|
case CpsType.抖客联盟:
|
|
|
|
|
{
|
|
|
|
|
var f = new douke_form_select_tgw();
|
|
|
|
|
f.ShowDialog();
|
|
|
|
|
return f.Tuiguangwei;
|
|
|
|
|
}
|
2022-09-20 03:10:29 +00:00
|
|
|
|
case CpsType.苏宁易购:
|
|
|
|
|
{
|
|
|
|
|
var f = new suning_form_select_tgw();
|
|
|
|
|
f.ShowDialog();
|
|
|
|
|
return f.Tuiguangwei;
|
|
|
|
|
}
|
|
|
|
|
case CpsType.快手联盟:
|
|
|
|
|
{
|
|
|
|
|
var f = new kuaishou_form_select_tgw();
|
|
|
|
|
f.ShowDialog();
|
|
|
|
|
return f.Tuiguangwei;
|
|
|
|
|
}
|
|
|
|
|
//case CpsType.考拉联盟:
|
|
|
|
|
// {
|
|
|
|
|
// var f = new laola_form_select_tgw();
|
|
|
|
|
// f.ShowDialog();
|
|
|
|
|
// return f.Tuiguangwei;
|
|
|
|
|
// }
|
|
|
|
|
default:
|
|
|
|
|
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 更新订单
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="type">cps类型</param>
|
|
|
|
|
/// <param name="startTime">开始时间</param>
|
|
|
|
|
/// <param name="endTime">结束时间</param>
|
|
|
|
|
/// <param name="order_id">订单id</param>
|
|
|
|
|
public static void UpdateOrder(CpsType type, DateTime startTime, DateTime endTime, string order_id)
|
|
|
|
|
{
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
switch (type)
|
|
|
|
|
{
|
|
|
|
|
case CpsType.阿里妈妈:
|
|
|
|
|
{
|
|
|
|
|
var timer = TimerTask.GetTimer<DownAlimamaTimer>() as DownAlimamaTimer;
|
|
|
|
|
timer.UpdateOrder(startTime, endTime, order_id);
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
case CpsType.多多进宝:
|
|
|
|
|
{
|
|
|
|
|
var timer = TimerTask.GetTimer<DownPinduoduoTimer>() as DownPinduoduoTimer;
|
|
|
|
|
timer.UpdateOrder(startTime, endTime, order_id);
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
case CpsType.京东联盟:
|
|
|
|
|
{
|
|
|
|
|
var timer = TimerTask.GetTimer<DownJingdongTimer>() as DownJingdongTimer;
|
|
|
|
|
timer.UpdateOrder(startTime, order_id);
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
case CpsType.唯品联盟:
|
|
|
|
|
{
|
|
|
|
|
var timer = TimerTask.GetTimer<DownWeipinhuiTimer>() as DownWeipinhuiTimer;
|
|
|
|
|
timer.UpdateOrder(startTime, endTime, order_id);
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
//case CpsType.抖音联盟:
|
|
|
|
|
// {
|
|
|
|
|
// var timer = TimerTask.GetTimer<DownDouyinTimer>() as DownDouyinTimer;
|
|
|
|
|
// timer.UpdateOrder(startTime, endTime, order_id);
|
|
|
|
|
// break;
|
|
|
|
|
// }
|
|
|
|
|
case CpsType.苏宁易购:
|
|
|
|
|
{
|
|
|
|
|
var timer = TimerTask.GetTimer<DownSuningTimer>() as DownSuningTimer;
|
|
|
|
|
timer.UpdateOrder(startTime, endTime, order_id);
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
case CpsType.快手联盟:
|
|
|
|
|
{
|
|
|
|
|
var timer = TimerTask.GetTimer<DownKuaiShouTimer>() as DownKuaiShouTimer;
|
|
|
|
|
timer.UpdateOrder(startTime, endTime);
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
catch { }
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
internal static string _key { get; set; }
|
|
|
|
|
internal static int _appid { get; set; }
|
2022-10-26 15:01:01 +00:00
|
|
|
|
internal static string _host
|
|
|
|
|
{
|
|
|
|
|
get { return ApiClient.Setting.SystemConfig.cps_server_api; }
|
|
|
|
|
//set;
|
|
|
|
|
}
|
2022-09-20 03:10:29 +00:00
|
|
|
|
internal static void SetEnckey(int appid, string host, string key)
|
|
|
|
|
{
|
2022-10-26 15:01:01 +00:00
|
|
|
|
//_host = host;
|
2022-09-20 03:10:29 +00:00
|
|
|
|
_appid = appid;
|
|
|
|
|
_key = key;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 像服务器发送数据包
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="method"></param>
|
|
|
|
|
/// <param name="target"></param>
|
|
|
|
|
/// <param name="param"></param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
internal static object SendServer(string method, string target, object param)
|
|
|
|
|
{
|
|
|
|
|
AuthEndpoint end = new AuthEndpoint()
|
|
|
|
|
{
|
|
|
|
|
Appid = CpsClient._appid,
|
|
|
|
|
Enckey = CpsClient._key,
|
|
|
|
|
Host = CpsClient._host + "/api/" + target + "/send_data",
|
|
|
|
|
Method = method
|
|
|
|
|
};
|
|
|
|
|
if (param != null)
|
|
|
|
|
{
|
|
|
|
|
var _param = param.GetType().GetProperties();
|
|
|
|
|
foreach (var item in _param)
|
|
|
|
|
{
|
|
|
|
|
end.Param[item.Name] = item.GetValue(param);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
HttpHelper http = new HttpHelper();
|
|
|
|
|
for (int i = 0; i < 3; i++)
|
|
|
|
|
{
|
|
|
|
|
var result = http.SendData(end);
|
|
|
|
|
if (result != null)
|
|
|
|
|
{
|
|
|
|
|
if (!result.ok) throw new Exception(result.message.ToString());
|
|
|
|
|
return result.message;
|
|
|
|
|
}
|
|
|
|
|
Thread.Sleep(50);
|
|
|
|
|
}
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|