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); } }
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); } }
public Uri GetHostedSubscriptionPaymentPageUrl(PlanSubscription subscription) { if (subscription == null) throw new ArgumentNullException("subscription"); return new Uri(chargifyConnect.GetSubscriptionUpdateURL(subscription.ChargifySubscriptionID)); }
public void CancelSubscription(PlanSubscription planSubscription, string cancellationMessage) { if (planSubscription == null) throw new ArgumentNullException("planSubscription"); chargifyConnect.DeleteSubscription(planSubscription.ChargifySubscriptionID, cancellationMessage); }
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(); } }
public string InsertSubscription(PlanSubscription subscription) { context.PlanSubscriptions.Add(subscription); context.SaveChangesAsync(); return(subscription.Id.ToString()); }