public IActionResult MellatResponse(string RefId = "", string ResCode = "", string SaleOrderId = "", string SaleReferenceId = "") { try { order order = this.repository.GetOrder(Int32.Parse(SaleOrderId)); //repository.AddLogToOrder(order, "MellatResponse rescode=" + ResCode + "&saleorderid=" + SaleOrderId + "&SaleReferenceId=" + SaleReferenceId); if (ResCode != "0") { throw new Exception(Mellat.TranslateMessage(ResCode)); } this.mellatService.VerifyResult(order, SaleReferenceId); this.repository.SetOrderBankReference(order, SaleReferenceId); this.repository.ChangeOrderStatus(order, (int)orderStatuses.payed); //try //{ // this.mellatService.SettleRequest(order); //} //catch (Exception ex) //{ // //AddMessage(ex.Message, "Info"); //} this.hookManager.HookFired("orderCompleted", order.user, order); this.hookManager.HookFired("paymentCompleted", order.user, order); return(View("Completed", order)); } catch (Exception ex) { return(View("error", ex.Message)); } }
public MellatService(repository repository, IHttpContextAccessor httpContextAccessor) { this.repository = repository; this.httpContextAccessor = httpContextAccessor; Mellat = new Mellat { terminalId = Int64.Parse(this.repository.GetSetting("mellatTerminalId")), userName = this.repository.GetSetting("mellatUserName"), password = this.repository.GetSetting("mellatPassword") }; }