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
            }));
        }
Esempio n. 2
0
        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);
        }