public bool IsEditionExist(string name, string id) { var edition = _repository.AsNoTracking().FirstOrDefault(x => x.Name.ToLower() == name.ToLower()); if (edition != null && edition.Id != id) { return(true); } return(false); }
public string CreateTenantSubscription(TenantViewModel model, string tenantId, string companyId, string branchId, bool isLifeTimeSubscription) { var status = isLifeTimeSubscription ? SubscriptionStatus.Active : SubscriptionStatus.AwaitingPayment; var paymentStatus = isLifeTimeSubscription ? SubscriptionPaymentStatus.Paid : SubscriptionPaymentStatus.Unpaid; bool isPaymentCompleted = false; var edition = _editionRepository.AsNoTracking().SingleOrDefault(x => x.Id == model.EditionId); if (edition != null && edition.Name == StaticEdition.Trial) { status = SubscriptionStatus.Trial; paymentStatus = SubscriptionPaymentStatus.Paid; isPaymentCompleted = true; } var subscription = new Subscription { Id = Guid.NewGuid().ToString(), Created = model.Created, CreatedBy = model.CreatedBy, Modified = model.Modified, ModifiedBy = model.ModifiedBy, Active = model.Active, TenantId = tenantId, CompanyId = companyId, EditionId = model.EditionId, Package = model.Package, PackageMonthlyPrice = model.PackageMonthlyPrice, PackageMonth = model.PackageMonth, NoOfShowroom = model.NoOfShowroom, Price = model.Price, PackageDiscountPercentage = model.PackageDiscountPercentage, PackageDiscountAmount = model.PackageDiscountAmount, PackageCharge = model.PackageCharge, ExpireOn = model.SubscriptionEndTime, RenewedOn = null, Status = status, PaymentStatus = paymentStatus, IsPaymentCompleted = isPaymentCompleted }; _subscriptionRepository.CreateAsHost(subscription); _subscriptionRepository.Commit(); return(subscription.Id); }