public async Task <IActionResult> Index(SubscriptionsRequest model) { var result = await _subscriptionService.GetSubscriptionsAsync(model.Type, model.Page, model.MaxPerPage); var subscriptions = new PaginatedList <Subscription>(result.Data, result.Pagination.Total, result.Pagination.Page, result.Pagination.MaxPerPage); return(View(new SubscriptionsResponse { Subscriptions = subscriptions })); }
public object UpdateSubscriptions(int SubscriptionID, [FromBody] SubscriptionsRequest bus) { SubscriptionsResponse bdr = new SubscriptionsResponse(); try { using (var context = new DepContextSC()) { string tokenforCall = ""; Subscriptions bd = context.Subscriptions.Where(bus => bus.Id == SubscriptionID).FirstOrDefault(); bd.Serviceid = bus.Serviceid; bd.IntermediaryCode = bus.IntermediaryCode; bd.Status = bus.Status; context.SaveChanges(); if (bd.Status.ToLower() != "active") { if (context.TempCache.Any(o => o.keyitem == "notificationtoken")) { TempCache scr = context.TempCache.Where(bus => bus.keyitem == "notificationtoken").FirstOrDefault(); tokenforCall = scr.valueitem; } else { tokenforCall = GetNewNotificationToken(); }; string msg = "A subscription status was changed - IntermediaryCode: " + bd.IntermediaryCode + " with ServiceID: " + bd.Serviceid.ToString(); if (SendEmailNotification(tokenforCall, msg, "Subscription cancellation") == "valadationfail") { tokenforCall = GetNewNotificationToken(); SendEmailNotification(tokenforCall, msg, "Subscription cancellation"); } ; } bdr.subscriptiondata = context.Subscriptions.Where(bus => bus.Id == SubscriptionID).ToList(); } } catch (Exception e) { Serilog.Log.Information("UpdateSubscriptionsError: " + e.Message); bdr.error = e.Message; // throw new Exception(); } return(bdr); }