public bool QRImageLoaded(SingleFieldRequest <string> request) { var task = LogableTask.NewTask("QRImageLoaded"); try { ShowTimeOut = false; task.Log(MethodBase.GetCurrentMethod(), TraceLevel.Info, "received request"); ServerHelper.GetResponse <string>("MobileCash/" + MethodBase.GetCurrentMethod().Name, request, false); var startTimeSpan = TimeSpan.Zero; var periodTimeSpan = TimeSpan.FromSeconds(3); this.FindTrx = new System.Threading.Timer((e) => { if (this.ElapsedDisplayTime > this.TotalQRCodeDisplayTime) { this.FindTrx.Dispose(); //navigate to error } else { StagedTrxDetails getQRTrxDetails = this.GetQRTrxDetails(new SingleFieldRequest <string> { Data = request.Data }); if (getQRTrxDetails.TrxFound) { Console.WriteLine(getQRTrxDetails.TrxFound); this.Amount = getQRTrxDetails.Amount; this.RefNo = getQRTrxDetails.refNo; navigationManager.NavigateTo(STCPayUrls.ShowTrxDetailsPageUrl); this.FindTrx.Dispose(); } else { this.ElapsedDisplayTime = this.ElapsedDisplayTime + 3; } } } , null, startTimeSpan, periodTimeSpan); return(true); } catch (Exception ex) { task.Log(MethodBase.GetCurrentMethod(), TraceLevel.Error, ex); return(false); } finally { task.EndTask(); } }
public bool SendingDispenseReq([FromBody] SingleFieldRequest <string> request) { var task = LogableTask.NewTask("SendingDispenseReq"); try { task.Log(MethodBase.GetCurrentMethod(), TraceLevel.Info, "received request"); ServerHelper.GetResponse <string>("MobileCash/" + MethodBase.GetCurrentMethod().Name, request, false); return(true); } catch (Exception ex) { task.Log(MethodBase.GetCurrentMethod(), TraceLevel.Error, ex); return(false); } finally { task.EndTask(); } }
public StagedTrxDetails GetQRTrxDetails(SingleFieldRequest <string> qrCodeSeqNoReq) { var task = LogableTask.NewTask("GetQRTrxDetails"); try { task.Log(MethodBase.GetCurrentMethod(), TraceLevel.Info, "received request"); var trxDetails = ServerHelper.GetResponse <StagedTrxDetails>("MobileCash/" + MethodBase.GetCurrentMethod().Name, new SingleFieldRequest <string> { Data = qrCodeSeqNoReq.Data }, false); if (trxDetails.Success && trxDetails.Data.HasError == false) { if (trxDetails.Data.TrxFound) { UserSession.CurrentSession.QRCodeSeqNo = trxDetails.Data.SeqNo; } return(trxDetails.Data); } else { return new StagedTrxDetails { TrxFound = false } }; } catch (Exception ex) { task.Log(MethodBase.GetCurrentMethod(), TraceLevel.Error, ex); return(new StagedTrxDetails { TrxFound = false }); } finally { task.EndTask(); } }