Search in sources :

Example 1 with User

use of com.mapia.domain.User in project 2017-01-HUDI-MAC-CHAR by NHNNEXT.

the class LobbyController method waitingRoomPage.

@GetMapping("")
public String waitingRoomPage(HttpSession session, Model model) {
    if (!HttpSessionUtils.isLoginUser(session)) {
        return "redirect:/login";
    }
    User user = HttpSessionUtils.getUserFromSession(session);
    user.enterLobby();
    model.addAttribute("lobby", lobby);
    model.addAttribute("user", user);
    return "lobby";
}
Also used : User(com.mapia.domain.User) GetMapping(org.springframework.web.bind.annotation.GetMapping)

Example 2 with User

use of com.mapia.domain.User in project 2017-01-HUDI-MAC-CHAR by NHNNEXT.

the class ApiRoomController method exit.

@DeleteMapping("")
public RoomResult exit(HttpSession session) {
    User user = HttpSessionUtils.getUserFromSession(session);
    long id = exitUserFromRoom(user);
    return RoomResult.successToOutRoom(id);
}
Also used : User(com.mapia.domain.User)

Example 3 with User

use of com.mapia.domain.User in project 2017-01-HUDI-MAC-CHAR by NHNNEXT.

the class UserRepository method findUserByEmail.

public User findUserByEmail(String email) {
    String query = "SELECT * FROM User WHERE email = ?";
    List<User> resultUser;
    try {
        resultUser = jdbcTemplate.query(query, (rs, rowNum) -> {
            User user = new User();
            user.setId(rs.getLong("id"));
            user.setEmail(rs.getString("email"));
            user.setPassword(rs.getString("password"));
            user.setNickname(rs.getString("nickname"));
            return user;
        }, email);
    } catch (EmptyResultDataAccessException e) {
        log.error(e.getMessage());
        return null;
    }
    return resultUser.size() > 0 ? resultUser.get(0) : null;
}
Also used : List(java.util.List) User(com.mapia.domain.User) Logger(org.slf4j.Logger) LoggerFactory(org.slf4j.LoggerFactory) Autowired(org.springframework.beans.factory.annotation.Autowired) Repository(org.springframework.stereotype.Repository) EmptyResultDataAccessException(org.springframework.dao.EmptyResultDataAccessException) JdbcTemplate(org.springframework.jdbc.core.JdbcTemplate) User(com.mapia.domain.User) EmptyResultDataAccessException(org.springframework.dao.EmptyResultDataAccessException)

Example 4 with User

use of com.mapia.domain.User in project 2017-01-HUDI-MAC-CHAR by NHNNEXT.

the class ApiUserController method update.

@PutMapping("/user")
public UpdateUserResult update(HttpSession session, String nickname) {
    logger.debug("update nickname to {}", nickname);
    if (!HttpSessionUtils.isLoginUser(session)) {
        return UpdateUserResult.invalidAccess();
    }
    if (userRepository.findUserByNickname(nickname) != null) {
        return UpdateUserResult.nicknameExist();
    }
    User sessionedUser = (User) session.getAttribute(HttpSessionUtils.USER_SESSION_KEY);
    userRepository.updateUserNicknameByNickname(sessionedUser.getNickname(), nickname);
    User user = userRepository.findUserByNickname(nickname);
    session.setAttribute(HttpSessionUtils.USER_SESSION_KEY, user);
    return UpdateUserResult.ok(user);
}
Also used : User(com.mapia.domain.User) PutMapping(org.springframework.web.bind.annotation.PutMapping)

Example 5 with User

use of com.mapia.domain.User in project 2017-01-HUDI-MAC-CHAR by NHNNEXT.

the class ApiUserController method login.

@PostMapping("/login")
public LoginResult login(@RequestBody User loginUser, HttpSession session) {
    logger.debug("loginUser email : {}", loginUser.getEmail());
    User user = userRepository.findUserByEmail(loginUser.getEmail());
    if (user == null) {
        return LoginResult.emailNotFound("가입되지 않은 이메일입니다.");
    }
    if (!user.matchPassword(loginUser)) {
        return LoginResult.invalidPassword("잘못된 비밀번호입니다.");
    }
    user.setStatus(Status.LOBBY);
    session.setAttribute(HttpSessionUtils.USER_SESSION_KEY, user);
    return LoginResult.ok(user);
}
Also used : User(com.mapia.domain.User) PostMapping(org.springframework.web.bind.annotation.PostMapping)

Aggregations

User (com.mapia.domain.User)10 Room (com.mapia.domain.Room)2 List (java.util.List)2 Logger (org.slf4j.Logger)2 LoggerFactory (org.slf4j.LoggerFactory)2 Autowired (org.springframework.beans.factory.annotation.Autowired)2 EmptyResultDataAccessException (org.springframework.dao.EmptyResultDataAccessException)2 JdbcTemplate (org.springframework.jdbc.core.JdbcTemplate)2 Repository (org.springframework.stereotype.Repository)2 GameManager (com.mapia.game.GameManager)1 Test (org.junit.Test)1 GetMapping (org.springframework.web.bind.annotation.GetMapping)1 PostMapping (org.springframework.web.bind.annotation.PostMapping)1 PutMapping (org.springframework.web.bind.annotation.PutMapping)1