public Wallet UpdateWalletPurchase(int userId, decimal balance) { using (var session = _dbSessionService.OpenSession()) { using (var transaction = session.BeginTransaction()) { var result = _walletQueryService.QueryWallets(session, userId); var resultArray = result[0]; if (resultArray.Balance - balance < 0) { throw new Exception("insufficient balance"); } resultArray.Balance = resultArray.Balance - balance; resultArray.Holdings = resultArray.Holdings + balance; session.SaveOrUpdate(resultArray); transaction.Commit(); return(result[0]); } } }
public Wallet GetUserInfo(int userId) { using (var session = _dbSessionService.OpenSession()) { using (var transaction = session.BeginTransaction()) { var result = session.QueryOver <Wallet>() .Where(w => w.UserId == userId) .List <Wallet>(); transaction.Commit(); return(result[0]); } } }
public Wallet UpdateWalletSale(int userId, decimal balance) { using (var session = _dbSessionService.OpenSession()) { using (var transaction = session.BeginTransaction()) { var result = _walletQueryService.QueryWallets(session, userId); result[0].Balance = result[0].Balance + balance; result[0].Holdings = result[0].Holdings - balance; session.SaveOrUpdate(result[0]); transaction.Commit(); return(result[0]); } } }
public Wallet GetUserId(int userId) { using (var session = _dbSessionService.OpenSession()) { using (var transaction = session.BeginTransaction()) { var wallet = new Wallet { UserId = userId }; ICriteria c = session.CreateCriteria <Wallet>(); c.Add(Restrictions.Eq("UserId", userId)); var result = c.UniqueResult <Wallet>(); transaction.Commit(); return(result); } } }
public void should_update_wallet_deposit_return() { var userId = TestData.GenerateRandomInt(); var balance = 100.90m; var session = Substitute.For <ISession>(); _dbSessionService.OpenSession().Returns(session); _walletQueryService.QueryWallets(Arg.Any <ISession>(), Arg.Any <int>()) .Returns(new List <Wallet> { new Wallet { UserId = userId, Balance = 10356.30m, Holdings = 300.65m } }); _sut.UpdateWalletSale(userId, balance); }
public User AuthorizeUser(string username, string password) { using (var session = _dbSessionService.OpenSession()) { using (var transaction = session.BeginTransaction()) { if (username == "" && password == "") { throw new Exception("empty username and password"); } if (username == "" && password != "") { throw new Exception("empty username"); } if (password == "" && username != "") { throw new Exception("empty password"); } var user = new User { Username = username, Password = password }; var query = session.CreateCriteria <User>() .Add(Restrictions.Like("Username", username)) .List <User>(); if (query.Count == 0) { throw new Exception("username doesn't exist"); } if (query[0].Password != password) { throw new Exception("wrong credentials"); } transaction.Commit(); return(query[0]); } } }
public User CreateNewUser(string username, string password) { using (var session = _dbSessionService.OpenSession()) { using (var transaction = session.BeginTransaction()) { if (username == "" && password == "") { throw new Exception("empty username and password"); } if (username == "" && password != "") { throw new Exception("empty username"); } if (password == "" && username != "") { throw new Exception("empty password"); } var result = session.QueryOver <User>() .Where(w => w.Username == username) .List <User>(); if (result.Count != 0) { throw new Exception("redundant username"); } var user = new User { Username = username, Password = password, CreatedDate = DateTime.Now, LastActiveAt = DateTime.Now }; session.Save(user); transaction.Commit(); return(user); } } }
public Session CreateNewSession(int userId) { using (var session = _dbSessionService.OpenSession()) { using (var transaction = session.BeginTransaction()) { var sessionData = new Session { UserId = userId, CreatedDate = DateTime.Now, }; session.Save(sessionData); transaction.Commit(); return(sessionData); } } }