public void Get_Customer() { using var dbContext = new TinyBankDBContext(GetDBOptions().Options); var customers = dbContext.Set <Customer>() .Where(c => c.VatNumber == "123456789") .ToList(); }
public void Add_New_Transaction_To_Account() { var config = new ConfigurationBuilder() .SetBasePath($"{AppDomain.CurrentDomain.BaseDirectory}") .AddJsonFile("appsettings.json", false) .Build(); var connString = config.ReadAppConfiguration(); var options = new DbContextOptionsBuilder <TinyBankDBContext>(); options.UseSqlServer(connString.ConnString, options => { options.MigrationsAssembly("TinyBank"); }); using var dbContext = new TinyBankDBContext(options.Options); var savedCustomer = dbContext.Set <Customer>() .Where(c => c.CustBankID == "032846778") .SingleOrDefault(); Assert.NotNull(savedCustomer); var savedAccount = dbContext.Set <Accounts>() .Where(a => a.AccountNumber == "1558642182") .SingleOrDefault(); Assert.NotNull(savedAccount); savedAccount.Transactions.Add(new Transaction() { Amount = 150.0m, TransDescr = "Tablet purchase", Type = TransactionType.Credit }); dbContext.Update(savedAccount); dbContext.SaveChanges(); }
public Result <Accounts> GetAccountbyID(int accountID) { var account = _dBContext.Set <Accounts>() .Where(a => a.AccountsId == accountID) //.Include(c => c.Cards) .SingleOrDefault(); if (account != null) { return(new Result <Accounts>() { Code = ResultCodes.Success, Data = account }); } else { return(new Result <Accounts>() { Code = ResultCodes.NotFound, Message = $"Account ID {accountID} not found!" }); } }
public void Add_New_Account_To_Customer() { var config = new ConfigurationBuilder() .SetBasePath($"{AppDomain.CurrentDomain.BaseDirectory}") .AddJsonFile("appsettings.json", false) .Build(); var connString = config.ReadAppConfiguration(); var options = new DbContextOptionsBuilder <TinyBankDBContext>(); options.UseSqlServer(connString.ConnString, options => { options.MigrationsAssembly("TinyBank"); }); using var dbContext = new TinyBankDBContext(options.Options); var savedCustomer = dbContext.Set <Customer>() .Where(c => c.CustBankID == "032846778") .SingleOrDefault(); Assert.NotNull(savedCustomer); savedCustomer.Accounts.Add(new Accounts() { State = AccountStateTypes.Active, AccountDescription = "My Personal Account", AccountNumber = "1558642123", Currency = "EUR", Balance = 1800.0m }); dbContext.Update(savedCustomer); dbContext.SaveChanges(); }
/// <summary> /// Adds a new customer /// </summary> /// <param name="options">RegisterCustomerOptions</param> /// <returns> /// Result.Code should be Success(200) /// Check Result.Code and Result.Message to get more details about possible errors /// </returns> public Result <Customer> Register(RegisterCustomerOptions options) { if (string.IsNullOrWhiteSpace(options.Name)) { return new Result <Customer>() { Code = ResultCodes.BadRequest, Message = $"Customer name is empty!" } } ; if (string.IsNullOrWhiteSpace(options.SureName)) { return new Result <Customer>() { Code = ResultCodes.BadRequest, Message = $"Customer sure name is empty!" } } ; var validVatNumber = IsValidVatNumber(options.CountryCode, options.VATNumber); if (!validVatNumber.IsSuccess()) { return(new Result <Customer>() { Code = validVatNumber.Code, Message = validVatNumber.Message }); } if (_dbContext.Set <Customer>() .Any(c => c.VatNumber == options.VATNumber)) { return(new Result <Customer>() { Code = ResultCodes.BadRequest, Message = $"Specific Vat Number {options.VATNumber} already exists!" }); } var customer = new Customer() { Name = options.Name, SureName = options.SureName, VatNumber = options.VATNumber, CustBankID = options.CustomerBankID, CustType = options.CustType, Address = options.Address }; _dbContext.Add <Customer>(customer); _dbContext.SaveChanges(); return(new Result <Customer>() { Code = ResultCodes.Success, Data = customer }); }