private async void btu_createTask_Click(object sender, RoutedEventArgs e) { if (MainWindow.curAccount != null) { if (taskInfo != null) { CreateTaskInfo cti = new CreateTaskInfo { path = "/media/sda1/onecloud/tddownload", tasks = new List <CreateTask> { new CreateTask { name = taskInfo.name, url = taskInfo.url, filesize = 0 } } }; var ctk = await CreateTask(MainWindow.curAccount, cti); Close(); MessageBox.Show(ctk, "提示"); } } }
private async void btu_createTask_Click(object sender, RoutedEventArgs e) { if (MainWindow.curAccount != null) { if (taskInfo != null) { CreateTaskInfo cti = new CreateTaskInfo { path = tbx_savePath.Text.Trim(), tasks = new List <CreateTask> { new CreateTask { name = taskInfo.name, url = taskInfo.url, filesize = 0 } } }; var ctk = await CreateTask(MainWindow.curAccount, cti); Close(); MessageBox.Show(ctk, "提示"); } } }
async Task <int> CreateTask(string phone, CreateTaskInfo cti) { HttpMessage resp = await ApiHelper.CreateTask(phone, cti); switch (resp.statusCode) { case HttpStatusCode.OK: if (resp.data == null) { return(-1); } var r = resp.data as CreateTaskResponse; if (r.rtn == 0) { return(0); } else { Debug.WriteLine($"CreateTask-出错({r.rtn})"); } return(r.rtn); default: Debug.WriteLine("CreateTask-网络异常错误!"); return(-1); } }
public void Execute(CreateTaskInfo taskInfo) { if (taskInfo == null) { return; } if (taskInfo.CreateType == ECreateType.Index) { CreateChannel(taskInfo.PublishmentSystemID); } else if (taskInfo.CreateType == ECreateType.Channel) { CreateChannel(taskInfo.ChannelID); } else if (taskInfo.CreateType == ECreateType.Content) { var nodeInfo = NodeManager.GetNodeInfo(PublishmentSystemId, taskInfo.ChannelID); var tableStyle = NodeManager.GetTableStyle(PublishmentSystemInfo, nodeInfo); var tableName = NodeManager.GetTableName(PublishmentSystemInfo, nodeInfo); CreateContent(tableStyle, tableName, taskInfo.ChannelID, taskInfo.ContentID); } else if (taskInfo.CreateType == ECreateType.AllContent) { CreateContents(taskInfo.ChannelID); } else if (taskInfo.CreateType == ECreateType.File) { CreateFile(taskInfo.TemplateID); } }
public bool IsExists(CreateTaskInfo info) { if (info == null) { return(false); } var exists = false; const string sqlString = @"SELECT ID FROM siteserver_CreateTask WHERE CreateType = @CreateType AND PublishmentSystemID = @PublishmentSystemID AND ChannelID = @ChannelID AND ContentID = @ContentID AND TemplateID = @TemplateID"; var parms = new IDataParameter[] { GetParameter(ParmCreateType, EDataType.NVarChar, 50, ECreateTypeUtils.GetValue(info.CreateType)), GetParameter(ParmPublishmentSystemId, EDataType.Integer, info.PublishmentSystemID), GetParameter(ParmChannelId, EDataType.Integer, info.ChannelID), GetParameter(ParmContentId, EDataType.Integer, info.ContentID), GetParameter(ParmTemplateId, EDataType.Integer, info.TemplateID), }; using (var rdr = ExecuteReader(sqlString, parms)) { if (rdr.Read() && !rdr.IsDBNull(0)) { exists = true; } rdr.Close(); } return(exists); }
public void Insert(CreateTaskInfo info) { const string sqlString = "INSERT INTO siteserver_CreateTask (CreateType, PublishmentSystemID, ChannelID, ContentID, TemplateID) VALUES (@CreateType, @PublishmentSystemID, @ChannelID, @ContentID, @TemplateID)"; var parms = new IDataParameter[] { GetParameter(ParmCreateType, EDataType.NVarChar, 50, ECreateTypeUtils.GetValue(info.CreateType)), GetParameter(ParmPublishmentSystemId, EDataType.Integer, info.PublishmentSystemID), GetParameter(ParmChannelId, EDataType.Integer, info.ChannelID), GetParameter(ParmContentId, EDataType.Integer, info.ContentID), GetParameter(ParmTemplateId, EDataType.Integer, info.TemplateID), }; ExecuteNonQuery(sqlString, parms); ServiceManager.ClearIsPendingCreateCache(); }
public List <CreateTaskInfo> GetList(int publishmentSystemId, int totalNum) { var list = new List <CreateTaskInfo>(); if (publishmentSystemId > 0) { //string sqlString = // $"SELECT TOP {totalNum} ID, CreateType, PublishmentSystemID, ChannelID, ContentID, TemplateID FROM siteserver_CreateTask WHERE PublishmentSystemID = @PublishmentSystemID ORDER BY ID DESC"; var sqlString = SqlUtils.GetTopSqlString("siteserver_CreateTask", "ID, CreateType, PublishmentSystemID, ChannelID, ContentID, TemplateID", "WHERE PublishmentSystemID = @PublishmentSystemID ORDER BY ID DESC", totalNum); var parms = new IDataParameter[] { GetParameter(ParmPublishmentSystemId, EDataType.Integer, publishmentSystemId) }; using (var rdr = ExecuteReader(sqlString, parms)) { while (rdr.Read()) { var i = 0; var info = new CreateTaskInfo(GetInt(rdr, i++), ECreateTypeUtils.GetEnumType(GetString(rdr, i++)), GetInt(rdr, i++), GetInt(rdr, i++), GetInt(rdr, i++), GetInt(rdr, i)); list.Add(info); } rdr.Close(); } } else { //string sqlString = // $"SELECT TOP {totalNum} ID, CreateType, PublishmentSystemID, ChannelID, ContentID, TemplateID FROM siteserver_CreateTask ORDER BY ID DESC"; var sqlString = SqlUtils.GetTopSqlString("siteserver_CreateTask", "ID, CreateType, PublishmentSystemID, ChannelID, ContentID, TemplateID", "ORDER BY ID DESC", totalNum); using (var rdr = ExecuteReader(sqlString)) { while (rdr.Read()) { var i = 0; var info = new CreateTaskInfo(GetInt(rdr, i++), ECreateTypeUtils.GetEnumType(GetString(rdr, i++)), GetInt(rdr, i++), GetInt(rdr, i++), GetInt(rdr, i++), GetInt(rdr, i)); list.Add(info); } rdr.Close(); } } return(list); }
public CreateTaskInfo GetLastPendingTask() { CreateTaskInfo info = null; //var sqlString = "SELECT TOP 1 ID, CreateType, PublishmentSystemID, ChannelID, ContentID, TemplateID FROM siteserver_CreateTask ORDER BY ID"; var sqlString = SqlUtils.GetTopSqlString("siteserver_CreateTask", "ID, CreateType, PublishmentSystemID, ChannelID, ContentID, TemplateID", "ORDER BY ID", 1); using (var rdr = ExecuteReader(sqlString)) { if (rdr.Read()) { var i = 0; info = new CreateTaskInfo(GetInt(rdr, i++), ECreateTypeUtils.GetEnumType(GetString(rdr, i++)), GetInt(rdr, i++), GetInt(rdr, i++), GetInt(rdr, i++), GetInt(rdr, i)); } rdr.Close(); } return(info); }
/// <summary> /// 一次获取多个任务 /// </summary> /// <param name="topNum"></param> /// <returns></returns> public List <CreateTaskInfo> GetLastPendingTasks(int topNum) { List <CreateTaskInfo> list = null; var sqlString = SqlUtils.GetTopSqlString("siteserver_CreateTask", "ID, CreateType, PublishmentSystemID, ChannelID, ContentID, TemplateID", "ORDER BY ID", topNum); using (var rdr = ExecuteReader(sqlString)) { while (rdr.Read()) { var i = 0; var info = new CreateTaskInfo(GetInt(rdr, i++), ECreateTypeUtils.GetEnumType(GetString(rdr, i++)), GetInt(rdr, i++), GetInt(rdr, i++), GetInt(rdr, i++), GetInt(rdr, i)); list.Add(info); } rdr.Close(); } return(list); }
async Task <string> CreateTask(string phone, CreateTaskInfo cti) { HttpMessage resp = await ApiHelper.CreateTask(phone, cti); switch (resp.statusCode) { case HttpStatusCode.OK: if (resp.data == null) { return("添加失败!服务器返回的数据为空"); } var r = resp.data as CreateTaskResponse; if (r.rtn == 0) { if (r.tasks != null && r.tasks.Count > 0) { var t = r.tasks[0]; if (t.result == 0) { return($"任务{t.name}添加成功!"); } else { var tmsg = t.msg == "repeat_task" ? "已经存在相同的任务!无法重复添加" : t.msg; return($"添加失败!\n错误码:{t.result}\n错误原因:{tmsg}"); } } else { return("添加失败!服务器返回的结果为空"); } } else { Debug.WriteLine($"CreateTask-出错({r.rtn})"); return("添加失败!网络请求错误"); } default: Debug.WriteLine("CreateTask-网络异常错误!"); return("添加失败!网络异常错误");; } }
/// <summary> /// 创建云添加任务 /// </summary> /// <param name="phone"></param> /// <param name="cti"></param> /// <returns></returns> public static async Task <HttpMessage> CreateTask(string phone, CreateTaskInfo cti) { var client = GetClient(phone); var sessionid = GetCookie(client, apiAccountUrl, "sessionid"); var userid = GetCookie(client, apiAccountUrl, "userid"); var json = JsonHelper.Serialize(cti); var purl = System.Web.HttpUtility.UrlEncode(json, Encoding.UTF8); Debug.WriteLine("purl=" + purl); var resp = await Task.Run(() => { client.BaseUrl = new Uri(apiRemoteDlUrl); var request = new RestRequest($"createTask?pid={GetPeerID(phone)}&v=2&ct=32", Method.POST); request.AddParameter("sessionid", sessionid, ParameterType.Cookie); request.AddParameter("userid", userid, ParameterType.Cookie); request.AddParameter("text/plain", purl, ParameterType.RequestBody); return(client.Execute(request)); }); var message = new HttpMessage { statusCode = resp.StatusCode }; if (resp.StatusCode == HttpStatusCode.OK) { Debug.WriteLine("CreateTask:" + resp.Content); var root = JsonHelper.Deserialize <CreateTaskResponse>(resp.Content); message.data = root; } else { Debug.WriteLine(resp.Content); message.data = resp.Content; } return(message); }