public void UpdateSubscriptionAvailability(Subscription subscription)
 {
     using (var context = new DataMapperContext())
     {
         context.Subscriptions.Attach(subscription);
         var entry = context.Entry(subscription);
         entry.Property(u => u.Available).IsModified = true;
         context.SaveChanges();
     }
 }
 public void AddCurrencyRate(CurrencyRate currencyRate, Currency currency)
 {
     using (var context = new DataMapperContext())
     {
         context.Currencies.Attach(currency);
         context.CurrencieRates.Attach(currencyRate);
         context.Entry(currency).Collection(c => c.CurrencyRates).Load();
         context.CurrencieRates.Add(currencyRate);
         context.SaveChanges();
     }
 }
예제 #3
0
 public void AddMinute(Minute minute, MinuteType minuteType)
 {
     using (var context = new DataMapperContext())
     {
         context.MinuteTypes.Attach(minuteType);
         context.Minutes.Attach(minute);
         context.Entry(minuteType).Collection(c => c.Minutes).Load();
         context.Minutes.Add(minute);
         context.SaveChanges();
     }
 }
예제 #4
0
 public void AddMessage(Message message, MessageType messageType)
 {
     using (var context = new DataMapperContext())
     {
         context.MessageTypes.Attach(messageType);
         context.Messages.Attach(message);
         context.Entry(messageType).Collection(c => c.Messages).Load();
         context.Messages.Add(message);
         context.SaveChanges();
     }
 }
 public void AddContract(Contract contract, Customer customer, Subscription subscription)
 {
     using (var context = new DataMapperContext())
     {
         context.Subscriptions.Attach(subscription);
         context.Customers.Attach(customer);
         context.Contracts.Attach(contract);
         context.Entry(subscription).Collection(c => c.Contracts).Load();
         context.Entry(customer).Collection(c => c.Contracts).Load();
         context.Contracts.Add(contract);
         context.SaveChanges();
     }
 }
 public void AddSubscription(Subscription subscription, SubscriptionType subType, Currency currency)
 {
     using (var context = new DataMapperContext())
     {
         context.SubscriptionTypes.Attach(subType);
         context.Currencies.Attach(currency);
         context.Subscriptions.Attach(subscription);
         context.Entry(subType).Collection(c => c.Subscriptions).Load();
         context.Entry(currency).Collection(c => c.Subscriptions).Load();
         context.Subscriptions.Add(subscription);
         context.SaveChanges();
     }
 }
 public void DropContractByName(Contract contract, Customer customer, Subscription subscription)
 {
     using (var context = new DataMapperContext())
     {
         var sub = context.Subscriptions.Find(subscription.SubscriptionId);
         var cus = context.Customers.Find(customer.CustomerId);
         var con = context.Contracts.Find(contract.ContractId);
         context.Entry(sub).Collection("Contracts").Load();
         context.Entry(cus).Collection("Contracts").Load();
         sub.Contracts.Remove(con);
         cus.Contracts.Remove(con);
         context.Contracts.Attach(con);
         context.Contracts.Remove(con);
         context.SaveChanges();
     }
 }
예제 #8
0
        public void DropSubscriptionType(string subscriptionTypeName)
        {
            SubscriptionType subType = GetSubscriptionTypeByName(subscriptionTypeName);

            if (subType == null)
            {
                throw new EntityDoesNotExistException("Invalid Subscription Type Name.");
            }

            using (var context = new DataMapperContext())
            {
                context.SubscriptionTypes.Attach(subType);
                context.SubscriptionTypes.Remove(subType);
                context.SaveChanges();
            }
        }
        public void DropCustomerByCNP(string cnp)
        {
            Customer customer = GetCustomerByCNP(cnp);

            if (customer == null)
            {
                throw new EntityDoesNotExistException("Invalid CNP.");
            }

            using (var context = new DataMapperContext())
            {
                context.Customers.Attach(customer);
                context.Customers.Remove(customer);
                context.SaveChanges();
            }
        }
예제 #10
0
        public void DropCurrency(string currencyName)
        {
            Currency currency = GetCurrencyByName(currencyName);

            if (currency == null)
            {
                throw new EntityDoesNotExistException("Invalid Currency Name.");
            }

            using (var context = new DataMapperContext())
            {
                context.Currencies.Attach(currency);
                context.Currencies.Remove(currency);
                context.SaveChanges();
            }
        }
예제 #11
0
        public void DropMinuteType(string minuteTypeName)
        {
            MinuteType minuteType = GetMinuteTypeByName(minuteTypeName);

            if (minuteType == null)
            {
                throw new EntityDoesNotExistException("Invalid Minute Type Name.");
            }

            using (var context = new DataMapperContext())
            {
                context.MinuteTypes.Attach(minuteType);
                context.MinuteTypes.Remove(minuteType);
                context.SaveChanges();
            }
        }
 public void DropSubscriptionByName(Subscription subscription, SubscriptionType subscriptionType, Currency currency)
 {
     using (var context = new DataMapperContext())
     {
         var subType = context.SubscriptionTypes.Find(subscriptionType.SubscriptionTypeId);
         var cur     = context.Currencies.Find(currency.CurrencyId);
         var sub     = context.Subscriptions.Find(subscription.SubscriptionId);
         context.Entry(subType).Collection("Subscriptions").Load();
         context.Entry(cur).Collection("Subscriptions").Load();
         subType.Subscriptions.Remove(sub);
         cur.Subscriptions.Remove(sub);
         context.Subscriptions.Attach(sub);
         context.Subscriptions.Remove(sub);
         context.SaveChanges();
     }
 }
        public void DropCurrencyRate(string currencyRateMonth, Currency currency)
        {
            CurrencyRate currencyRate = GetCurrencyRateByMonth(currencyRateMonth, currency);

            if (currencyRate == null)
            {
                throw new EntityDoesNotExistException("Invalid Currency Rate.");
            }

            using (var context = new DataMapperContext())
            {
                var currencyVar     = context.Currencies.Find(currency.CurrencyId);
                var currencyRateVar = context.CurrencieRates.Find(currencyRate.CurrencyRateId);
                context.Entry(currencyVar).Collection("CurrencyRates").Load();
                currencyVar.CurrencyRates.Remove(currencyRateVar);
                context.CurrencieRates.Attach(currencyRateVar);
                context.CurrencieRates.Remove(currencyRateVar);
                context.SaveChanges();
            }
        }
예제 #14
0
        public void DropMinute(int id, MinuteType minuteType)
        {
            Minute minute = GetMinuteById(id, minuteType);

            if (minute == null)
            {
                throw new EntityDoesNotExistException("Invalid ID.");
            }

            using (var context = new DataMapperContext())
            {
                var minType = context.MinuteTypes.Find(minuteType.MinuteTypeId);
                var min     = context.Minutes.Find(minute.MinuteId);
                context.Entry(minType).Collection("Minutes").Load();
                minType.Minutes.Remove(min);
                context.Minutes.Attach(min);
                context.Minutes.Remove(min);
                context.SaveChanges();
            }
        }
예제 #15
0
        public void DropMessage(int id, MessageType messageType)
        {
            Message message = GetMessageById(id, messageType);

            if (message == null)
            {
                throw new EntityDoesNotExistException("Invalid ID.");
            }

            using (var context = new DataMapperContext())
            {
                var mesType = context.MessageTypes.Find(messageType.MessageTypeId);
                var mes     = context.Messages.Find(message.MessageId);
                context.Entry(mesType).Collection("Messages").Load();
                mesType.Messages.Remove(mes);
                context.Messages.Attach(mes);
                context.Messages.Remove(mes);
                context.SaveChanges();
            }
        }