public void UploadPolicy(SearchPolicyRequest request, List <string> lstQunarCodes) { UploadPolicyResponse rep = new UploadPolicyResponse(); switch (request.pType) { case PolicyService.Enums.PurchaserType.Qunar: { IUploadPolicy uplload = new QunarUpLoadPolicy(); uplload.OnWoking += uplload_OnWoking; QunarUploadPolicyRequest qunarRequest = new QunarUploadPolicyRequest() { FormatFilePath = ConfigurationManager.AppSettings["FormatQunarFilePath"].ToString(), //xml文件路径 FormatZipFilePath = ConfigurationManager.AppSettings["FormatQunarZipFilePath"].ToString(), //压缩包文件路径 //IsPrintSql = Convert.ToBoolean(ConfigurationManager.AppSettings["IsPrintSql"].ToString()), MaxTaskCount = int.Parse(ConfigurationManager.AppSettings["MaxTaskCount"].ToString()), PerTaskCount = int.Parse(ConfigurationManager.AppSettings["PerTaskCount"].ToString()), //PageSize = request.PageSize <= 0 ? 50 : request.PageSize, PolicyType = request.PolicyType, SqlWhere = request.SqlWhere, UploadType = request.UType, //QunarUpLoadUrl = ConfigurationManager.AppSettings["QunarUpLoadUrl"].ToString(), CommisionMoney = request.CommisionMoney == null ? 0 : request.CommisionMoney, CommsionPoint = request.CommsionPoint == null ? 0 : request.CommsionPoint, OperName = request.OperName, LstQunarCodes = lstQunarCodes, PageSize = request.PageSize, DefaultUploadConfig = CoreHelper.LoadQunarUploadConfig() }; if (request.UType == UploadType.Incremental) { rep = uplload.UpLoadIncrementPolicy(qunarRequest); } else if (request.UType == UploadType.FullUpload) { rep = uplload.UploadFullPolicy(qunarRequest); } } break; case PolicyService.Enums.PurchaserType.TaoBao: MessageBox.Show("暂未开通淘宝上传接口"); return; break; default: MessageBox.Show("未知的上传平台"); return; break; } MessageBox.Show("操作成功!"); }
public void UploadPolicy(List <Policies> lstPolicies, string queueName, string queueHost) { // Task.Factory.StartNew(() => //{ List <string> lstQunarCodes = CoreHelper.ReadQunarCodes(); QunarUploadConfigResponse config = CoreHelper.LoadQunarUploadConfig(); IUploadPolicy uplload = new QunarUpLoadPolicy(); uplload.OnWoking += uplload_OnWoking; QunarUploadPolicyRequest qunarRequest = new QunarUploadPolicyRequest() { FormatFilePath = ConfigurationManager.AppSettings["FormatQunarFilePath"].ToString(), //xml文件路径 FormatZipFilePath = ConfigurationManager.AppSettings["FormatQunarZipFilePath"].ToString(), //压缩包文件路径 MaxTaskCount = int.Parse(ConfigurationManager.AppSettings["MaxTaskCount"].ToString()), PerTaskCount = int.Parse(ConfigurationManager.AppSettings["PerTaskCount"].ToString()), PolicyType = QunarPolicyType.COMMON, SqlWhere = "", UploadType = UploadType.Incremental, //QunarUpLoadUrl = ConfigurationManager.AppSettings["QunarUpLoadUrl"].ToString(), CommisionMoney = 0, CommsionPoint = 0, OperName = "system", LstQunarCodes = lstQunarCodes, PageSize = 99999, PolicyDataOrgin = lstPolicies, DefaultUploadConfig = config }; UploadPolicyResponse rep = uplload.UpLoadIncrementPolicy(qunarRequest, false); if (rep.ErrCode == ResultType.Failed) { lstPolicies.ForEach(x => //统一加1 { x.Id += 1; }); new MessageQueueHelper().SendMsgToQueue(queueName, lstPolicies, MessagePriority.Normal, queueHost); ShowRunningLog(DateTime.Now + ":上传失败,更新失败次数并重新发回队列成功!"); } // }); }
/// <summary> /// 开始任务 /// </summary> /// <param name="timeSpan"></param> /// <returns></returns> public EmptyResponse StartWork(object request) { QunarUploadPolicyRequest qunarRequest = CoreHelper.ChangeToChild <object, QunarUploadPolicyRequest>(request); var task = Task <UploadPolicyResponse> .Factory.StartNew(() => { IUploadPolicy upload = new QunarUpLoadPolicy(); upload.OnWoking += upload_OnWoking; return(upload.UpLoadIncrementPolicy(qunarRequest)); }, ct.Token); Task.WaitAll(task); if (task.Result.ErrCode == PolicyService.Enums.ResultType.Failed) { return(new EmptyResponse { ErrCode = PolicyService.Enums.ResultType.Failed, ErrMsg = task.Result.ErrMsg, Excption = task.Result.Excption }); } return(new EmptyResponse { ErrCode = PolicyService.Enums.ResultType.Sucess, ErrMsg = "" }); }