Skip to content

Commit

Permalink
Feat: 회원가입 및 로그인 Response 객체 변경
Browse files Browse the repository at this point in the history
Related to: #5
  • Loading branch information
crayon committed Apr 7, 2022
1 parent 045a6ba commit 4636bb6
Show file tree
Hide file tree
Showing 9 changed files with 313 additions and 5 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
package com.moodstation.springboot.entity;

import static com.querydsl.core.types.PathMetadataFactory.*;

import com.querydsl.core.types.dsl.*;

import com.querydsl.core.types.PathMetadata;
import javax.annotation.processing.Generated;
import com.querydsl.core.types.Path;


/**
* QBaseEntity is a Querydsl query type for BaseEntity
*/
@Generated("com.querydsl.codegen.DefaultSupertypeSerializer")
public class QBaseEntity extends EntityPathBase<BaseEntity> {

private static final long serialVersionUID = 250843950L;

public static final QBaseEntity baseEntity = new QBaseEntity("baseEntity");

public final DateTimePath<java.time.LocalDateTime> created_at = createDateTime("created_at", java.time.LocalDateTime.class);

public final DateTimePath<java.time.LocalDateTime> updated_at = createDateTime("updated_at", java.time.LocalDateTime.class);

public QBaseEntity(String variable) {
super(BaseEntity.class, forVariable(variable));
}

public QBaseEntity(Path<? extends BaseEntity> path) {
super(path.getType(), path.getMetadata());
}

public QBaseEntity(PathMetadata metadata) {
super(BaseEntity.class, metadata);
}

}

58 changes: 58 additions & 0 deletions src/main/generated/com/moodstation/springboot/entity/QKeyword.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
package com.moodstation.springboot.entity;

import static com.querydsl.core.types.PathMetadataFactory.*;

import com.querydsl.core.types.dsl.*;

import com.querydsl.core.types.PathMetadata;
import javax.annotation.processing.Generated;
import com.querydsl.core.types.Path;
import com.querydsl.core.types.dsl.PathInits;


/**
* QKeyword is a Querydsl query type for Keyword
*/
@Generated("com.querydsl.codegen.DefaultEntitySerializer")
public class QKeyword extends EntityPathBase<Keyword> {

private static final long serialVersionUID = -845355249L;

private static final PathInits INITS = PathInits.DIRECT2;

public static final QKeyword keyword = new QKeyword("keyword");

public final StringPath content = createString("content");

public final NumberPath<Long> id = createNumber("id", Long.class);

public final StringPath isShare = createString("isShare");

public final QUser user;

public final QUserPost userPost;

public QKeyword(String variable) {
this(Keyword.class, forVariable(variable), INITS);
}

public QKeyword(Path<? extends Keyword> path) {
this(path.getType(), path.getMetadata(), PathInits.getFor(path.getMetadata(), INITS));
}

public QKeyword(PathMetadata metadata) {
this(metadata, PathInits.getFor(metadata, INITS));
}

public QKeyword(PathMetadata metadata, PathInits inits) {
this(Keyword.class, metadata, inits);
}

public QKeyword(Class<? extends Keyword> type, PathMetadata metadata, PathInits inits) {
super(type, metadata, inits);
this.user = inits.isInitialized("user") ? new QUser(forProperty("user")) : null;
this.userPost = inits.isInitialized("userPost") ? new QUserPost(forProperty("userPost"), inits.get("userPost")) : null;
}

}

43 changes: 43 additions & 0 deletions src/main/generated/com/moodstation/springboot/entity/QPostImg.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
package com.moodstation.springboot.entity;

import static com.querydsl.core.types.PathMetadataFactory.*;

import com.querydsl.core.types.dsl.*;

import com.querydsl.core.types.PathMetadata;
import javax.annotation.processing.Generated;
import com.querydsl.core.types.Path;


/**
* QPostImg is a Querydsl query type for PostImg
*/
@Generated("com.querydsl.codegen.DefaultEntitySerializer")
public class QPostImg extends EntityPathBase<PostImg> {

private static final long serialVersionUID = -422179799L;

public static final QPostImg postImg = new QPostImg("postImg");

public final StringPath fileFullPath = createString("fileFullPath");

public final StringPath filePath = createString("filePath");

public final NumberPath<Long> id = createNumber("id", Long.class);

public final StringPath imgName = createString("imgName");

public QPostImg(String variable) {
super(PostImg.class, forVariable(variable));
}

public QPostImg(Path<? extends PostImg> path) {
super(path.getType(), path.getMetadata());
}

public QPostImg(PathMetadata metadata) {
super(PostImg.class, metadata);
}

}

49 changes: 49 additions & 0 deletions src/main/generated/com/moodstation/springboot/entity/QUser.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
package com.moodstation.springboot.entity;

import static com.querydsl.core.types.PathMetadataFactory.*;

import com.querydsl.core.types.dsl.*;

import com.querydsl.core.types.PathMetadata;
import javax.annotation.processing.Generated;
import com.querydsl.core.types.Path;


/**
* QUser is a Querydsl query type for User
*/
@Generated("com.querydsl.codegen.DefaultEntitySerializer")
public class QUser extends EntityPathBase<User> {

private static final long serialVersionUID = 988423269L;

public static final QUser user = new QUser("user");

public final DateTimePath<java.time.LocalDateTime> createdAt = createDateTime("createdAt", java.time.LocalDateTime.class);

public final StringPath email = createString("email");

public final NumberPath<Long> id = createNumber("id", Long.class);

public final StringPath nickname = createString("nickname");

public final StringPath password = createString("password");

public final EnumPath<com.moodstation.springboot.enums.RoleType> role = createEnum("role", com.moodstation.springboot.enums.RoleType.class);

public final DateTimePath<java.time.LocalDateTime> updatedAt = createDateTime("updatedAt", java.time.LocalDateTime.class);

public QUser(String variable) {
super(User.class, forVariable(variable));
}

public QUser(Path<? extends User> path) {
super(path.getType(), path.getMetadata());
}

public QUser(PathMetadata metadata) {
super(User.class, metadata);
}

}

Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
package com.moodstation.springboot.entity;

import static com.querydsl.core.types.PathMetadataFactory.*;

import com.querydsl.core.types.dsl.*;

import com.querydsl.core.types.PathMetadata;
import javax.annotation.processing.Generated;
import com.querydsl.core.types.Path;
import com.querydsl.core.types.dsl.PathInits;


/**
* QUserPost is a Querydsl query type for UserPost
*/
@Generated("com.querydsl.codegen.DefaultEntitySerializer")
public class QUserPost extends EntityPathBase<UserPost> {

private static final long serialVersionUID = -1225951579L;

private static final PathInits INITS = PathInits.DIRECT2;

public static final QUserPost userPost = new QUserPost("userPost");

public final StringPath color = createString("color");

public final StringPath content = createString("content");

public final NumberPath<Long> id = createNumber("id", Long.class);

public final QPostImg postImg;

public final DatePath<java.time.LocalDate> regDate = createDate("regDate", java.time.LocalDate.class);

public final QUser user;

public QUserPost(String variable) {
this(UserPost.class, forVariable(variable), INITS);
}

public QUserPost(Path<? extends UserPost> path) {
this(path.getType(), path.getMetadata(), PathInits.getFor(path.getMetadata(), INITS));
}

public QUserPost(PathMetadata metadata) {
this(metadata, PathInits.getFor(metadata, INITS));
}

public QUserPost(PathMetadata metadata, PathInits inits) {
this(UserPost.class, metadata, inits);
}

public QUserPost(Class<? extends UserPost> type, PathMetadata metadata, PathInits inits) {
super(type, metadata, inits);
this.postImg = inits.isInitialized("postImg") ? new QPostImg(forProperty("postImg")) : null;
this.user = inits.isInitialized("user") ? new QUser(forProperty("user")) : null;
}

}

Original file line number Diff line number Diff line change
@@ -1,35 +1,52 @@
package com.moodstation.springboot.controller;

import com.moodstation.springboot.dto.Message;
import com.moodstation.springboot.dto.request.CheckEmailDto;
import com.moodstation.springboot.dto.request.CheckNicknameDto;
import com.moodstation.springboot.dto.request.LoginDto;
import com.moodstation.springboot.dto.response.LoginResponse;
import com.moodstation.springboot.dto.response.UserData;
import com.moodstation.springboot.dto.request.SignupDto;
import com.moodstation.springboot.enums.ErrorCode;
import com.moodstation.springboot.enums.StatusEnum;
import com.moodstation.springboot.exception.ConflictExecption;
import com.moodstation.springboot.service.AuthService;
import com.moodstation.springboot.service.UserService;
import lombok.RequiredArgsConstructor;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.validation.Valid;
import java.nio.charset.Charset;

@RequiredArgsConstructor
@RestController
@RequestMapping("/auth")
public class UserApiController {

private final UserService userService;
private final AuthService authService;

// 회원가입
@PostMapping("/signup")
public Long signup(@RequestBody @Valid SignupDto signupDto) {
public ResponseEntity<Message> signup(@RequestBody @Valid SignupDto signupDto) {
UserData body = authService.signup(signupDto);
return body.getId();
Message message = new Message();
HttpHeaders headers = new HttpHeaders();

headers.setContentType(new MediaType("application", "json", Charset.forName("UTF-8")));

message.setStatus(StatusEnum.OK);
message.setMessage("회원가입 성공");
message.setData(body);

return new ResponseEntity<>(message, headers, HttpStatus.OK);
}

// 회원가입 이메일 중복 체크
Expand All @@ -53,8 +70,16 @@ public Boolean nicknameCheck(@RequestBody CheckNicknameDto checkNicknameDto) {

// 로그인
@PostMapping("/login")
public LoginResponse login(@RequestBody LoginDto loginDto) {
public ResponseEntity<Message> login(@RequestBody LoginDto loginDto) {
LoginResponse body = authService.login(loginDto);
return body;
Message message = new Message();
HttpHeaders headers = new HttpHeaders();

headers.setContentType(new MediaType("application", "json", Charset.forName("UTF-8")));

message.setStatus(StatusEnum.OK);
message.setMessage("로그인 성공");
message.setData(body);
return new ResponseEntity<>(message, headers, HttpStatus.OK);
}
}
18 changes: 18 additions & 0 deletions src/main/java/com/moodstation/springboot/dto/Message.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
package com.moodstation.springboot.dto;

import com.moodstation.springboot.enums.StatusEnum;
import lombok.Data;

@Data
public class Message {

private StatusEnum status;
private String message;
private Object data;

public Message() {
this.status = StatusEnum.BAD_REQUEST;
this.data = null;
this.message = null;
}
}
16 changes: 16 additions & 0 deletions src/main/java/com/moodstation/springboot/enums/StatusEnum.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
package com.moodstation.springboot.enums;

public enum StatusEnum {
OK(200, "OK"),
BAD_REQUEST(400, "BAD_REQUEST"),
NOT_FOUND(404, "NOT_FOUND"),
INTERNAL_SERVER_ERROR(500, "INTERNAL_SERVER_ERROR");

int statusCode;
String code;

StatusEnum(int statusCode, String code) {
this.statusCode = statusCode;
this.code = code;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ public Boolean isTokenExpired(String token) {

// Request의 Header에서 token 값을 가져옵니다. "ACCESS-TOKEN" : 토큰값
public String resolveToken(HttpServletRequest request) {
return request.getHeader("ACCESS-TOKEN");
return request.getHeader("accessToken");
}

// 토큰의 유효성 + 만료일자 확인
Expand Down

0 comments on commit 4636bb6

Please sign in to comment.