public ND.PolicyUploadService.DtoModel.CompleteUploadPolicy.CompleteUploadPolicyResponse SearchCompleteUploadPolicy() { CompleteUploadPolicyResponse rep = new CompleteUploadPolicyResponse(); UploadPolicyRecordLib uPolicyLib = new UploadPolicyRecordLib(); List <UploadPolicyRecord> lstUpload = uPolicyLib.GetModelList(" CreateTime> '" + DateTime.Now.ToString("yyyy-MM-dd") + " 0:00:00" + "'"); lstUpload.ForEach(x => { rep.CompleteUploadPolicyCollection.Add(new CompleteUploadPolicyDto() { CommisionMoney = x.CommisionMoney, CommsionPoint = x.CommsionPoint, PolicyId = x.PolicyId, PartenerPolicyId = x.PartenerPolicyId, PolicyType = x.PolicyType }); }); rep.ErrCode = PolicyService.Enums.ResultType.Sucess; return(rep); }
/// <summary> /// 保存回调结果 /// </summary> /// <param name="request"></param> /// <returns></returns> public SaveNotifyResponse SaveNotify(PolicyNotifyRequest request) { UpLoadRecordLib recLib = new UpLoadRecordLib(); UploadPolicyRecordLib policyLib = new UploadPolicyRecordLib(); UpLoadRecord rec = new UpLoadRecord(); rec.UploadFilePath = request.FileNamePath; rec.LastPolicyId = request.PolicyRec.LastPolicyId.ToString(); rec.LastUpdateTime = request.PolicyRec.LastUpdateTime.ToString("yyyy-MM-dd HH:mm:ss.fff"); rec.UploadType = request.UploadType.ToString(); rec.PurchaserType = request.Purchaser.ToString(); rec.ResponseParams = request.ResponseParams; rec.NotifyResult = request.NotifyResult; rec.CreateTime = DateTime.Now; rec.IsEnabled = 1; rec.Remark = request.Remark; rec.RequestParams = request.RequestParams; rec.OperName = request.OperName; rec.UploadCount = request.UploadCount; rec.BeforeLastPolicyId = request.BeforePolicyRec.LastPolicyId.ToString(); rec.BeforeLastUpdateTime = request.BeforePolicyRec.LastUpdateTime.ToString("yyyy-MM-dd HH:mm:ss.fff"); rec.PolicyType = (int)request.PolicyType; long r = recLib.Add(rec); if (r <= 0) { string name = "Qunar\\NotifyQunarPolicyIdsRecLog"; CoreHelper.SaveLastUpTimeAndId(string.Join(",", request.UploadPolicyIds.ToArray()), name); return(new SaveNotifyResponse { ErrCode = PolicyService.Enums.ResultType.Failed, ErrMsg = "保存回调结果失败:保存数据:" + JsonConvert.SerializeObject(rec) }); } List <string> lstSql = new List <string>(); foreach (KeyValuePair <string, string> item in request.UploadPolicyIds) { UploadPolicyRecord uPolicy = new UploadPolicyRecord(); uPolicy.CommisionMoney = request.CommisionMoney; uPolicy.CommsionPoint = request.CommisionPoint; uPolicy.Id = System.Guid.NewGuid(); uPolicy.UId = r; uPolicy.PolicyId = item.Key; uPolicy.PartenerPolicyId = item.Value; uPolicy.CreateTime = DateTime.Now; uPolicy.PolicyType = request.PolicyType.ToString(); lstSql.Add(policyLib.Add(uPolicy, false)); } if (lstSql.Count > 0) { int r2 = DbHelperSQL.ExecuteSqlTran(lstSql); if (r2 <= 0) { string name = "Qunar\\NotifyQunarPolicyIdsRecLog"; CoreHelper.SaveLastUpTimeAndId(DateTime.Now + ":保存上传政策id失败:" + string.Join(",", request.UploadPolicyIds.ToArray()), name); return(new SaveNotifyResponse { ErrCode = PolicyService.Enums.ResultType.Failed, ErrMsg = "保存回调结果失败:保存数据:" + JsonConvert.SerializeObject(rec) }); } } return(new SaveNotifyResponse { ErrCode = PolicyService.Enums.ResultType.Sucess, ErrMsg = "", UploadStatusId = r.ToString() }); }
public EmptyResponse UpdateNotify(UpdateNotifyRequest request) { try { UpLoadRecordLib recLib = new UpLoadRecordLib(); UploadPolicyRecordLib recPolicyLib = new UploadPolicyRecordLib(); PolicySyncRecLib syncLib = new PolicySyncRecLib(); request.UpdateStatusId = request.UpdateStatusId.Replace("\"", "").Replace("\\", ""); UpLoadRecord rec = recLib.GetModel(int.Parse(request.UpdateStatusId)); if (rec == null) { return(new EmptyResponse { ErrCode = PolicyService.Enums.ResultType.Failed, ErrMsg = "未找到此上传的记录!" }); } if (rec.OperName.ToLower() == "system") { if ((SuccessStatus)request.NotifyResult == SuccessStatus.Success) { recPolicyLib.BlukyUpdatePolicy(rec.Id.ToString(), true); recLib.Delete(rec.Id);//删除 } else { recPolicyLib.BlukyUpdatePolicy(rec.Id.ToString(), false); recLib.Delete(rec.Id);//删除 } return(new EmptyResponse { ErrCode = PolicyService.Enums.ResultType.Sucess }); } PurchaserType Purchaser = (PurchaserType)Enum.Parse(typeof(PurchaserType), rec.PurchaserType); UploadType uType = (UploadType)Enum.Parse(typeof(UploadType), rec.UploadType); #region 1.保存文件记录 if (request.IsSucess) { string timeAndId = Convert.ToDateTime(rec.LastUpdateTime).ToString("yyyy-MM-dd HH:mm:ss.fff") + "|" + rec.LastPolicyId.ToString(); // CoreHelper.CreateFile(System.Configuration.ConfigurationManager.AppSettings["NotifyErrLogPath"] + "\\" + System.Guid.NewGuid() + ".txt", "读取最后记录"+timeAndId);//创建文件 // File.WriteAllText("e://1.txt", timeAndId); string name = uType == UploadType.FullUpload ? rec.PurchaserType + "\\" + rec.PurchaserType + "FullPolicyRecLog" : rec.PurchaserType + "\\" + rec.PurchaserType + "IncrementPolicyRecLog"; CoreHelper.SaveLastUpTimeAndId(timeAndId, name); // CoreHelper.CreateFile(System.Configuration.ConfigurationManager.AppSettings["NotifyErrLogPath"] + "\\" + System.Guid.NewGuid() + ".txt", "保存最后记录成功");//创建文件 } #endregion #region 2.更新表中记录 rec.ResponseParams = request.ResponseParams; rec.NotifyResult = (int)request.NotifyResult; rec.FailedCount = request.NotifyResult == SuccessStatus.Failed ? rec.FailedCount + 1 : rec.FailedCount; rec.CompleteTime = DateTime.Now; rec.LastUpdateTime = DateTime.Now.ToString("yyyy-MM-dd") + " 0:00:00"; rec.LastPolicyId = "0"; bool r = recLib.Update(rec); if (!r) { return(new EmptyResponse { ErrCode = PolicyService.Enums.ResultType.Failed, ErrMsg = "更新记录失败!" }); } bool flag = false; if (request.NotifyResult == SuccessStatus.Failed || request.NotifyResult == SuccessStatus.Other) { flag = false; } else { flag = true; } recPolicyLib.BlukyUpdatePolicy(rec.Id.ToString(), flag); #endregion #region 3.批量更新已经上传完成的政策 if (request.IsSucess) { string selectSql = ""; int totalCount = 0; List <UploadPolicyRecord> lstUploadIds = recPolicyLib.GetModelList(" UId='" + rec.Id + "'"); List <string> lstAddPolicies = new List <string>(); lstUploadIds.ForEach(x => { lstAddPolicies.Add(x.PolicyId); }); //List<string> lstAddPolicies = rec.Remark.Split(',').ToList(); if (lstAddPolicies.Count > 0) { bool r2 = syncLib.BlukyUpdatePolicyUploaded(lstAddPolicies); if (!r) { return(new EmptyResponse { ErrCode = PolicyService.Enums.ResultType.Failed, ErrMsg = "批量把政策置为已上传失败!" }); } } } #endregion return(new EmptyResponse { ErrCode = PolicyService.Enums.ResultType.Sucess }); } catch (Exception ex) { return(new EmptyResponse { ErrCode = PolicyService.Enums.ResultType.Failed, ErrMsg = JsonConvert.SerializeObject(ex) }); } }