public override IResponseMessageBase OnEvent_BatchJobResultRequest(RequestMessageEvent_Batch_Job_Result requestMessage) { LogManager.GetLogger(this.GetType()).Debug("RequestMessageEvent_Batch_Job_Result Enter"); if (requestMessage.BatchJob != null && requestMessage.BatchJob.ErrCode == 0) { //根据返回的JobId查导入的Result. object ret = null; switch (requestMessage.BatchJob.JobType) { case "sync_user": case "replace_user": var ret1 = MailListApi.BatchJobStatus <List <JobResultObjectUser> >(GetToken(0), requestMessage.BatchJob.JobId); ret = ret1.result.OrderByDescending(t => t.errcode).ToList(); break; case "invite_user": var ret2 = MailListApi.BatchJobStatus <List <JobResultObjectInvite> >(GetToken(0), requestMessage.BatchJob.JobId); ret = ret2.result.OrderByDescending(t => t.errcode).ToList(); break; case "replace_party": var ret3 = MailListApi.BatchJobStatus <List <JobResultObjectParty> >(GetToken(0), requestMessage.BatchJob.JobId); ret = ret3.result.OrderByDescending(t => t.errcode).ToList(); break; } string json = JsonHelper.ToJson(ret); //errocode为0代表异步任务成功 更新表状态 var jobLog = _batchJobLogService.GetLogByJobId(requestMessage.BatchJob.JobId); jobLog.Result = json; jobLog.Status = 1; _batchJobLogService.Repository.Update(jobLog); } else { string msg = requestMessage.BatchJob == null ? "BatchJobInfo is null" : requestMessage.BatchJob.ErrMsg; LogManager.GetLogger(this.GetType()).Debug("BatchUser Result Call Back - Error Msg=" + msg); } return(new ResponseMessageBase()); }
/// <summary> /// 获取批量操作的状态 /// </summary> /// <param name="media_id"></param> /// <param name="OPType"></param> /// <returns></returns> public ActionResult GetStatus(string media_id, int?OPType) { var ret = MailListApi.BatchJobStatus <JobResultObjectUser>(GetToken(), media_id); return(Json(ret, JsonRequestBehavior.AllowGet)); }