public ActionResult CheckDzero() { string tradeNo = TQuery.GetString("tradeNo"); respModel <respCheckDzeroModel> result = new respModel <respCheckDzeroModel>(); if (string.IsNullOrEmpty(tradeNo)) { result.backState = -100; result.message = ""; } else { result = MiShuaDepository.CheckDzero(Convert.ToInt32(tradeNo), Utility.Const.Logic.Platform.系统); } return(View(result)); }
private bool WithDrawHandle() { bool flag = false; if (listViewPayRecord != null && listViewPayRecord.Count > 0) { while (listViewPayRecord.Count > 0) { var item = listViewPayRecord[0]; Logic.ChannelType Channel = (Logic.ChannelType)item.ChannelType; ResultModel result = new ResultModel(); result.backState = -100; string msg = ""; switch (Channel) { case Logic.ChannelType.易宝: msg = "支付失败"; var yeepayResult = YeepayDepository.TradeReviceQuery(item.RequestId.ToString(), (int)Logic.Platform.系统); if (yeepayResult.backState == 0 && yeepayResult.tradeReceives.Count > 0 && yeepayResult.tradeReceives[0].status == "SUCCESS") { result.backState = 0; msg = "支付成功"; } break; case Logic.ChannelType.荣邦科技积分: case Logic.ChannelType.荣邦3: msg = "支付失败"; var masgettResult = MasgetDepository.PaymentjournalGet(item.RequestId, (int)Logic.Platform.系统, Channel); if (masgettResult.backState == 0 && masgettResult.data.respcode == 2) { result.backState = 0; msg = "支付成功"; } break; case Logic.ChannelType.荣邦科技无积分: break; case Logic.ChannelType.腾付通: var TengResult = TengDepository.PayDebitQuery(item.RequestId, (int)Logic.Platform.系统); if (TengResult.backState == 0 && TengResult.status == "3") { result.backState = 0; msg = "支付成功"; } else { msg = TengResult.respMsg; } break; case Logic.ChannelType.米刷: var mishuaResult = MiShuaDepository.CheckDzero(item.RequestId, Logic.Platform.系统); if (mishuaResult.backState == 0 && mishuaResult.Data.status == "00" && mishuaResult.Data.qfStatus == "SUCCESS") { result.backState = 0; msg = "支付成功"; } break; default: break; } bool f = false; //Logs.WriteLog($"处理数据:{JsonConvert.SerializeObject(result)}", "d:\\Log\\自动处理", "资金队列"); //处理数据 f = payRecordDao.UpdateState(item.ID, result.backState == 0 ? 10 : -1, msg); if (f) { //交易成功回调 UsersDepository.NoticeSuccess(item.ID, item.UserId); int num = Convert.ToInt32(_tbxWithDrawSuccess.Text); num++; _tbxWithDrawSuccess.Text = num.ToString(); } else { int num = Convert.ToInt32(_tbxWithDrawFail.Text); num++; _tbxWithDrawFail.Text = num.ToString(); } listViewPayRecord.Remove(item); Thread.Sleep(ConfigInfo.theadTime); } } else { //两小时前的数据被处理 listViewPayRecord = viewPayRecordDao.GetQuery(10, " State not in(10,-1) and DATEDIFF(HOUR,CTime,GETDATE())>2 ", null, "order by id asc"); if (listViewPayRecord != null && listViewPayRecord.Count > 0) { return(WithDrawHandle()); } } return(flag); }