public void Handle(AddTableCommand command) { if (UnitOfWork.AnyActual <Table>(x => x.Title == command.Title)) { throw new InvalidOperationException("Table with the same name exists."); } var login = command.Title; var secondHash = _passwordManager.CreateSecondHash(login, command.Password); var addedUser = UnitOfWork.Add(new User() { SecondHash = secondHash, Login = login }); UnitOfWork.Add(new Table { Title = command.Title, Description = command.Description, User = addedUser }); }
public void Handle(AddWaiterCommand command) { if (UnitOfWork.AnyActual <Waiter>(x => x.User.Login == command.Login)) { throw new InvalidOperationException("Waiter with the same login exists."); } var secondHash = _passwordManager.CreateSecondHash(command.Login, command.Password); var addedUser = UnitOfWork.Add(new User() { SecondHash = secondHash, Login = command.Login }); UnitOfWork.Add(new Waiter() { FirstName = command.FirstName, LastName = command.LastName, User = addedUser }); }