public async Task<ActionResult> SubmitTransferToRipple(string account, decimal targetamount, string currency, decimal sourceAmount, string paypassword) { account = account.NullSafe().Trim(); if (Session[OUTSIDE_GATEWAY_ACCOUNT_INFO_KEY + account] != null && Session[OUTSIDE_GATEWAY_ACCOUNT_INFO_KEY + account] != null) { var rippleAccountInfo = (FederationResponse)Session[OUTSIDE_GATEWAY_ACCOUNT_INFO_KEY + account]; var pathInfos = Session[OUTSIDE_GATEWAY_ACCOUNT_PATHS + account] as List<List<object>>; try { var cmd = new CreateOutboundTransfer(PayWay.Ripple, rippleAccountInfo.UserAccount.Destination, currency, sourceAmount, targetamount, string.Empty, this.CurrentUser.UserID); this.CommandBus.Send(cmd); var cmd_ripple = new CreateRippleOutboundTx(rippleAccountInfo.UserAccount.Destination, rippleAccountInfo.UserAccount.DestinationTag.Value, currency, targetamount, sourceAmount, pathInfos); this.CommandBus.Send(cmd_ripple); return View("transferripplesuccess"); } catch (Exception ex) { Log.Error("submit to ripple error", ex); } } return View("Error"); }
public ActionResult SubmitOutboundPayment(PayWay payway, string account, decimal amount, string description) { var emailReg = new Regex(@"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$"); var mobileReg = new Regex("^1[3|5|7|8|][0-9]{9}$"); var qqReg = new Regex(@"^\d{5,10}$"); var result = false; var message = "无效的收款账户"; var accountInfo = default(FederationResponse); account = account.NullSafe().Trim(); if ((payway == PayWay.Alipay && (emailReg.IsMatch(account) || mobileReg.IsMatch(account))) || (payway == PayWay.Tenpay && (emailReg.IsMatch(account) || mobileReg.IsMatch(account) || qqReg.IsMatch(account)))) { var cmd = new CreateOutboundTransfer(payway, account, CurrencyType.CNY.ToString(), amount, amount, description.NullSafe().Trim(), this.CurrentUser.UserID); this.CommandBus.Send(cmd); return Redirect("~/transfertpp/{0}/confirm?orderid={1}".FormatWith(payway, cmd.Result)); } return View(); }