UserController with Repository Pattern