public async Task <IActionResult> Update(SubscriptionForm subscription, int virtualAccountId) { subscription.VirtualAccountId = virtualAccountId; await _subscriptionService.Update(subscription); return(View("Index", await _subscriptionService.GetAll(virtualAccountId))); }
public static async Task <IActionResult> Run( [HttpTrigger(AuthorizationLevel.Anonymous, "post")] HttpRequest request, ILogger log, ExecutionContext context) { var config = Config.CreateFrom(context); if (!config.IsValid(out var configErrorMessage)) { return(new BadRequestErrorMessageResult(configErrorMessage)); } var form = SubscriptionForm.CreateFrom(request); if (!form.IsValid(out string errors)) { return(new BadRequestErrorMessageResult(errors)); } try { StripeConfiguration.SetApiKey(config.StripeApiSecretKey); await CreateCustomerSubscriptionAtStripe(form); return(new RedirectResult(config.SubscriptionSuccessUrl)); } catch { return(new RedirectResult(config.SubscriptionFailureUrl)); } }
public IActionResult Subscription() { if (!User.Identity.IsAuthenticated) { return(RedirectToAction("Login", "Account")); } SubscriptionType defaultType = db.SubscriptionTypes.FirstOrDefault(s => s.Name == "Бесплатно"); List <SubscriptionType> subscriptionTypes = db.SubscriptionTypes .OrderBy(t => t.Price) .Except(new SubscriptionType[] { defaultType }) .ToList(); List <string> subscriptionTypeNames = subscriptionTypes.Select(x => x.Name).ToList(); SubscriptionForm form = new SubscriptionForm { SubscriptionTypes = new SelectList(subscriptionTypeNames) }; SubscriptionInputViewModel sivm = new SubscriptionInputViewModel { SubscriptionForm = form, SubscriptionTypes = subscriptionTypes }; return(View(sivm)); }
public async Task <IActionResult> Create(SubscriptionForm subscription) { subscription.AddedDate = DateTime.Now; await _subscriptionService.Create(subscription); var viewModel = new SubscriptionListViewModel() { VirtualAccountId = subscription.VirtualAccountId, Subscriptions = await _subscriptionService.GetAll(subscription.VirtualAccountId) }; return(PartialView("_SubscriptionList", viewModel)); }
public async Task <int> Create(SubscriptionForm form) { try { var newEntity = _mapper.Map <DaoSubscription>(form); var createdEntry = _context.Subscriptions.Add(newEntity); await _context.SaveChangesAsync(); return(createdEntry.Entity.Id); } catch (Exception e) { throw new RepositoryException(typeof(DaoSubscription).Name, eRepositoryExceptionType.Create); } }
public async void IsBankAccountCreatePossible() { var form = new SubscriptionForm() { Name = "Internet", Amount = 15.20, AddedDate = DateTime.Now, ExpirationDate = DateTime.Now, FrequncyMonth = 3, VirtualAccountId = 1, }; var result = await _subscriptionService.Create(form); Assert.NotEqual(0, result); }
private void AddSubscription() { SubscriptionForm form = new SubscriptionForm(); if (form.ShowDialog(this) == DialogResult.OK) { Subscription subscription = new Subscription { NameService = form.NameService, Description = form.Description }; logic.AddSubscription(subscription); UpdateSubscriptionsGrid(); } }
private void EditSelectedSubscription() { if (ctlSubscriptionGrid.SelectedCells.Count > 0) { Subscription subscription = (Subscription)ctlSubscriptionGrid.SelectedCells[0].OwningRow.DataBoundItem; SubscriptionForm form = new SubscriptionForm(subscription); if (form.ShowDialog(this) == DialogResult.OK) { subscription.NameService = form.NameService; subscription.Description = form.Description; logic.UpdateSubscription(subscription); } } UpdateUsersGrid(); UpdateSubscriptionsGrid(); }
public async Task <int> Update(SubscriptionForm form) { try { var updateEntity = this._mapper.Map <DaoSubscription>(form); var updated = await _context.Subscriptions.FirstOrDefaultAsync(_ => _.Id == updateEntity.Id); _context.Entry(updated).CurrentValues.SetValues(updateEntity); await _context.SaveChangesAsync(); return(updated.Id); } catch (Exception e) { throw new RepositoryException(typeof(DaoSubscription).Name, eRepositoryExceptionType.Update); } }
private static async Task <string> CreateCustomerSubscriptionAtStripe(SubscriptionForm subscriptionForm) { var customer = await new StripeCustomerService() .CreateAsync(new StripeCustomerCreateOptions { Email = subscriptionForm.StripeEmail, SourceToken = subscriptionForm.StripeToken }); var subscription = await new StripeSubscriptionService().CreateAsync(customer.Id, new StripeSubscriptionCreateOptions { Items = new List <StripeSubscriptionItemOption> { new StripeSubscriptionItemOption { PlanId = subscriptionForm.PlanId } } }); return(subscription.Id); }
private void EnsureShowAndPlaceNonChartWindow(NonChartWindowSettings wndSets) { var wnd = MdiChildren.FirstOrDefault(c => c is IMdiNonChartWindow && ((IMdiNonChartWindow)c).WindowCode == wndSets.Window); if (wnd == null) { // создать окно if (wndSets.Window == NonChartWindowSettings.WindowCode.Account) { wnd = new AccountMonitorForm { MdiParent = this } } ; else if (wndSets.Window == NonChartWindowSettings.WindowCode.RobotTest) { wnd = new RoboTesterForm(); ((RoboTesterForm)wnd).OnRobotResultsBoundToCharts += OnRobotResultsBoundToCharts; } else if (wndSets.Window == NonChartWindowSettings.WindowCode.Profit) { wnd = new AccountTradeResultsForm { InstantCalculation = false } } ; else if (wndSets.Window == NonChartWindowSettings.WindowCode.Chat) { wnd = new ChatForm(); } else if (wndSets.Window == NonChartWindowSettings.WindowCode.Quotes) { wnd = new QuoteTableForm(); } else if (wndSets.Window == NonChartWindowSettings.WindowCode.Subscription) { wnd = new SubscriptionForm(); } else if (wndSets.Window == NonChartWindowSettings.WindowCode.WebBrowser) { wnd = new BrowserForm(); } else if (wndSets.Window == NonChartWindowSettings.WindowCode.RiskForm) { wnd = new RiskSetupForm(); } else if (wndSets.Window == NonChartWindowSettings.WindowCode.WalletForm) { wnd = new WalletForm(); } SetupNonMdiForm((IMdiNonChartWindow)wnd); wnd.Show(); } else { wnd.Focus(); } // установить окну положенные размеры wnd.Location = wndSets.WindowPos; wnd.Size = wndSets.WindowSize; wnd.WindowState = (FormWindowState)Enum.Parse(typeof(FormWindowState), wndSets.WindowState); ((IMdiNonChartWindow)wnd).WindowInnerTabPageIndex = wndSets.CurrentTabIndex; }
public Task <int> Update(SubscriptionForm form) { return(_subscriptionRepository.Update(form)); }