コード例 #1
0
        public async Task EditSubscriptionAsync(SubscriptionsInputViewModel subscriptions)
        {
            var subs = this.repositorySubscription.All().FirstOrDefault(x => x.Id == subscriptions.Id);

            if (subs != null)
            {
                this.repositorySubscription.Delete(subs);

                subs = new Subscription
                {
                    Id        = subscriptions.Id,
                    Name      = subscriptions.Name,
                    ImageUrl  = subscriptions.ImageUrl,
                    Price     = subscriptions.Price,
                    CreatedOn = DateTime.UtcNow,
                    IsActive  = subscriptions.IsActive,
                };

                if (subscriptions.Discount == null)
                {
                    subs.Discount = 0;
                }
                else
                {
                    subs.Discount = subscriptions.Discount;
                }

                await this.repositorySubscription.AddAsync(subs);
            }

            await this.repositorySubscription.SaveChangesAsync();
        }
コード例 #2
0
        public async Task <IActionResult> AddSubscription(SubscriptionsInputViewModel subscriptions)
        {
            if (!this.ModelState.IsValid)
            {
                return(this.View(subscriptions));
            }

            await this.adminServices.AddNewSubscriptionAsync(subscriptions);

            return(this.Redirect("/AdminPanel/Admin"));
        }
コード例 #3
0
        public async Task <IActionResult> DeleteSubscription(int id, SubscriptionsInputViewModel subscriptions)
        {
            if (id != subscriptions.Id)
            {
                return(this.NotFound());
            }

            if (!this.ModelState.IsValid)
            {
                this.ModelState.AddModelError(string.Empty, "Sorry we cannot delete this Item!");
            }

            await this.adminServices.DeleteSubscriptionAsync(subscriptions);

            return(this.Redirect("/AdminPanel/Admin"));
        }
コード例 #4
0
        public async Task <IActionResult> EditSubscription(int id, SubscriptionsInputViewModel subscriptions)
        {
            if (id != subscriptions.Id)
            {
                return(this.NotFound());
            }

            if (!this.ModelState.IsValid)
            {
                return(this.View(subscriptions));
            }

            await this.adminServices.EditSubscriptionAsync(subscriptions);

            return(this.Redirect("/AdminPanel/Admin"));
        }
コード例 #5
0
        public async Task DeleteSubscriptionAsync(SubscriptionsInputViewModel subscriptions)
        {
            var currentUserSubscription = await this.repositoryUserSubscription.All().FirstOrDefaultAsync(x => x.SubscriptionId == subscriptions.Id);

            if (currentUserSubscription != null)
            {
                this.repositoryUserSubscription.Delete(currentUserSubscription);
            }

            var subs = this.repositorySubscription.All().FirstOrDefault(x => x.Id == subscriptions.Id);

            if (subs != null)
            {
                this.repositorySubscription.Delete(subs);
            }

            await this.repositoryUserSubscription.SaveChangesAsync();

            await this.repositorySubscription.SaveChangesAsync();
        }
コード例 #6
0
        public async Task AddNewSubscriptionAsync(SubscriptionsInputViewModel subscriptions)
        {
            var newSubscription = new Subscription()
            {
                Name      = subscriptions.Name,
                ImageUrl  = subscriptions.ImageUrl,
                Price     = subscriptions.Price,
                CreatedOn = DateTime.UtcNow,
                IsActive  = subscriptions.IsActive,
            };

            if (subscriptions.Discount == null)
            {
                newSubscription.Discount = 0;
            }
            else
            {
                newSubscription.Discount = subscriptions.Discount;
            }

            await this.repositorySubscription.AddAsync(newSubscription);

            await this.repositorySubscription.SaveChangesAsync();
        }