コード例 #1
0
        public PlanSubscription ChangeSubscription(PlanSubscription subscription, string planID)
        {
            if (subscription == null) throw new ArgumentNullException("subscription");
            if (string.IsNullOrWhiteSpace(planID)) throw new ArgumentException(@"Must not be empty", "planID");

            var existingSubscription = GetCurrentSubscription(subscription.Account.ID);
            if (existingSubscription.Plan.IsPaid)
            {
                var editedSubscription = chargifyConnect.EditSubscriptionProduct(existingSubscription.ChargifySubscriptionID, planID);
                return Mapper.MapSubscription(editedSubscription);
            }
            else
            {
                var editedSubscription = chargifyConnect.EditSubscriptionProduct(subscription.ChargifySubscriptionID, planID);
                return Mapper.MapSubscription(editedSubscription);
            }
        }
コード例 #2
0
        public bool UpdateSubscription(PlanSubscription subscription)
        {
            context.Entry(subscription).Property(x => x.PlanId).IsModified              = true;
            context.Entry(subscription).Property(x => x.SubscriptionDate).IsModified    = true;
            context.Entry(subscription).Property(x => x.SubscriptionEndDate).IsModified = true;

            var result = context.SaveChanges();

            if (result > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
コード例 #3
0
        public Uri GetHostedSubscriptionPaymentPageUrl(PlanSubscription subscription)
        {
            if (subscription == null) throw new ArgumentNullException("subscription");

            return new Uri(chargifyConnect.GetSubscriptionUpdateURL(subscription.ChargifySubscriptionID));
        }
コード例 #4
0
        public void CancelSubscription(PlanSubscription planSubscription, string cancellationMessage)
        {
            if (planSubscription == null) throw new ArgumentNullException("planSubscription");

            chargifyConnect.DeleteSubscription(planSubscription.ChargifySubscriptionID, cancellationMessage);
        }
コード例 #5
0
ファイル: DbInitializer.cs プロジェクト: AbiyHailu/FarmIT
        public static void Initialize(AdminContext admincontext)
        {
            admincontext.Database.EnsureCreated();

            if (!admincontext.Companys.Where(e => e.UserType == "Manager").Any())
            {
                var companys = new Company[]
                {
                    new Company {
                        Name = "Flower1", UserType = "Manager", Emailaddress = "*****@*****.**", Password = "******", Phone = "123456"
                    },
                    new Company {
                        Name = "Flower2", UserType = "Manager", Emailaddress = "*****@*****.**", Password = "******", Phone = "123456"
                    },
                    new Company {
                        Name = "Flower3", UserType = "Manager", Emailaddress = "*****@*****.**", Password = "******", Phone = "123456"
                    },
                    new Company {
                        Name = "Flower4", UserType = "Manager", Emailaddress = "*****@*****.**", Password = "******", Phone = "123456"
                    }
                };

                foreach (Company c in companys)
                {
                    admincontext.Companys.Add(c);
                }
                admincontext.SaveChanges();
            }

            if (!admincontext.Plans.Any())
            {
                var plans = new Plan[]
                {
                    new Plan {
                        PlanName = "Store"
                    },
                    new Plan {
                        PlanName = "Human Resource"
                    },
                    new Plan {
                        PlanName = "Protection"
                    },
                    new Plan {
                        PlanName = "Pack House"
                    },
                    new Plan {
                        PlanName = "Fertigatin"
                    },
                    new Plan {
                        PlanName = "Field Management"
                    },
                    new Plan {
                        PlanName = "Scout"
                    },
                };

                foreach (Plan s in plans)
                {
                    admincontext.Plans.Add(s);
                }
                admincontext.SaveChanges();
            }
            ;

            if (!admincontext.PlanSubscriptions.Any())
            {
                var subscriptions = new PlanSubscription[]
                {
                    new PlanSubscription {
                        CompanyId = new Guid("c0bc9d2d-856e-4821-cc8b-08d867999975"), PlanId = new Guid("10d6f392-18f3-4e02-ca31-08d867999de9"), SubscriptionDate = new DateTime(2020, 6, 23), SubscriptionEndDate = new DateTime(2020, 7, 23)
                    },
                    new PlanSubscription {
                        CompanyId = new Guid("c0bc9d2d-856e-4821-cc8b-08d867999975"), PlanId = new Guid("fcec75db-cbc5-4fc7-ca33-08d867999de9"), SubscriptionDate = new DateTime(2020, 5, 23), SubscriptionEndDate = new DateTime(2020, 7, 10)
                    },
                };

                foreach (PlanSubscription s in subscriptions)
                {
                    admincontext.PlanSubscriptions.Add(s);
                }
                admincontext.SaveChanges();
            }


            if (!admincontext.Companys.Where(e => e.UserType == "Admin").Any())
            {
                var companys = new Company[]
                {
                    new Company {
                        Name = "IT4Flower1", UserType = "Admin", Emailaddress = "*****@*****.**", Password = "******", Phone = "123456"
                    }
                };

                foreach (Company c in companys)
                {
                    admincontext.Companys.Add(c);
                }
                admincontext.SaveChanges();
            }
            if (!admincontext.Users.Any())
            {
                var users = new User[]
                {
                    new User {
                        Emailaddress = "*****@*****.**", Phone = "123456", FirstName = "Abiy1", LastName = "Sahle", Password = "******"
                    },
                    new User {
                        Emailaddress = "*****@*****.**", Phone = "123456", FirstName = "Abiy2", LastName = "Sahle", Password = "******"
                    },
                    new User {
                        Emailaddress = "*****@*****.**", Phone = "123456", FirstName = "Abiy3", LastName = "Sahle", Password = "******"
                    },
                    new User {
                        Emailaddress = "*****@*****.**", Phone = "123456", FirstName = "Abiy4", LastName = "Sahle", Password = "******"
                    },
                    new User {
                        Emailaddress = "*****@*****.**", Phone = "123456", FirstName = "Abiy5", LastName = "Sahle", Password = "******"
                    },
                    new User {
                        Emailaddress = "*****@*****.**", Phone = "123456", FirstName = "Abiy6", LastName = "Sahle", Password = "******"
                    },
                };

                foreach (User u in users)
                {
                    admincontext.Users.Add(u);
                }
                admincontext.SaveChanges();
            }
        }
コード例 #6
0
 public string InsertSubscription(PlanSubscription subscription)
 {
     context.PlanSubscriptions.Add(subscription);
     context.SaveChangesAsync();
     return(subscription.Id.ToString());
 }