public bool Add(string connectionString, ApiModels.Account account) { if (account != null) { var transactionsRepo = new TransactionsRepository(); var transactions = transactionsRepo.GetEntities(connectionString, account.Id); using (var context = new AccountsDatabase(connectionString)) { if (account.Id == null) { context.Accounts.Add(new Entities.Account() { Amount = account.Amount, Name = account.Name, Number = account.Number, Id = Guid.NewGuid(), Transactions = transactions }); } else { context.Accounts.Single(a => a.Id == account.Id).Name = account.Name; } context.SaveChanges(); return(true); } } return(false); }
public bool Add(string connectionString, ApiModels.Transaction transaction, Guid id) { if (transaction != null) { using (var context = new AccountsDatabase(connectionString)) { var accountsRepo = new AccountsRepository(); var account = accountsRepo.GetAccount(connectionString, id); account.Amount += transaction.Amount; if (!accountsRepo.Update(connectionString, account)) { return(false); } context.Transactions.Add(new Entities.Transaction() { Amount = transaction.Amount, Date = transaction.Date, AccountId = account.Id, Id = Guid.NewGuid() }); context.SaveChanges(); return(true); } } return(false); }
public bool Delete(string connectionString, Guid id) { using (var context = new AccountsDatabase(connectionString)) { var entity = context.Accounts.Single(a => a.Id == id); context.Accounts.Remove(entity); context.SaveChanges(); return(true); } }
public bool Update(string connectionString, ApiModels.Account account) { if (account != null) { using (var context = new AccountsDatabase(connectionString)) { var entity = context.Accounts.Single(a => a.Id == account.Id); entity.Name = account.Name; context.SaveChanges(); return(true); } } return(false); }