Skip to content

Commit

Permalink
Refactor: #107 CRLF 변경
Browse files Browse the repository at this point in the history
  • Loading branch information
tinon1004 committed Apr 26, 2024
1 parent fb16ee5 commit c0bb80d
Show file tree
Hide file tree
Showing 20 changed files with 627 additions and 620 deletions.
11 changes: 6 additions & 5 deletions src/main/java/com/ajou/hertz/common/dto/CoordinateDto.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package com.ajou.hertz.common.dto;

import com.ajou.hertz.common.entity.Coordinate;

import lombok.AccessLevel;
import lombok.AllArgsConstructor;
import lombok.Getter;
Expand All @@ -11,10 +12,10 @@
@Getter
public class CoordinateDto {

private String lat;
private String lng;
private String lat;
private String lng;

public static CoordinateDto from(Coordinate coordinate) {
return new CoordinateDto(coordinate.getLat(), coordinate.getLng());
}
public static CoordinateDto from(Coordinate coordinate) {
return new CoordinateDto(coordinate.getLat(), coordinate.getLng());
}
}
29 changes: 15 additions & 14 deletions src/main/java/com/ajou/hertz/common/dto/FullAddressDto.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package com.ajou.hertz.common.dto;

import com.ajou.hertz.common.entity.FullAddress;

import lombok.AccessLevel;
import lombok.AllArgsConstructor;
import lombok.Getter;
Expand All @@ -11,19 +12,19 @@
@Getter
public class FullAddressDto {

private String sido;
private String sgg;
private String lotNumberAddress;
private String roadAddress;
private String detailAddress;
private String sido;
private String sgg;
private String lotNumberAddress;
private String roadAddress;
private String detailAddress;

public static FullAddressDto from(FullAddress fullAddress) {
return new FullAddressDto(
fullAddress.getSido(),
fullAddress.getSgg(),
fullAddress.getLotNumberAddress(),
fullAddress.getRoadAddress(),
fullAddress.getDetailAddress()
);
}
public static FullAddressDto from(FullAddress fullAddress) {
return new FullAddressDto(
fullAddress.getSido(),
fullAddress.getSgg(),
fullAddress.getLotNumberAddress(),
fullAddress.getRoadAddress(),
fullAddress.getDetailAddress()
);
}
}
Original file line number Diff line number Diff line change
@@ -1,26 +1,30 @@
package com.ajou.hertz.common.dto.request;

import com.ajou.hertz.common.entity.Coordinate;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import lombok.*;
import lombok.AccessLevel;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

@AllArgsConstructor(access = AccessLevel.PROTECTED)
@NoArgsConstructor(access = AccessLevel.PROTECTED)
@Setter
@Getter
public class CoordinateRequest {

@Schema(description = "위도", example = "37.123456")
@NotBlank
private String lat;

@Schema(description = "경도", example = "127.123456")
@NotBlank
private String lng;
@Schema(description = "위도", example = "37.123456")
@NotBlank
private String lat;

@Schema(description = "경도", example = "127.123456")
@NotBlank
private String lng;

public Coordinate toEntity() {
return new Coordinate(lat, lng);
}
public Coordinate toEntity() {
return new Coordinate(lat, lng);
}
}
Original file line number Diff line number Diff line change
@@ -1,25 +1,30 @@
package com.ajou.hertz.common.dto.request;

import com.ajou.hertz.common.entity.FullAddress;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import lombok.*;
import lombok.AccessLevel;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

@AllArgsConstructor(access = AccessLevel.PROTECTED)
@NoArgsConstructor(access = AccessLevel.PROTECTED)
@Setter
@Getter
public class FullAddressRequest {

@Schema(description = "전체 주소", example = "서울특별시 강남구 역삼동 123-45")
@NotBlank
private String fullAddress;
@Schema(description = "전체 주소", example = "서울특별시 강남구 역삼동 123-45")
@NotBlank
private String fullAddress;

@Schema(description = "상세주소", example = "아주 빌딩 2층")
@NotBlank
private String detailAddress;
@Schema(description = "상세주소", example = "아주 빌딩 2층")
@NotBlank
private String detailAddress;

public FullAddress toEntity() {
return FullAddress.of(fullAddress, detailAddress);
}
public FullAddress toEntity() {
return FullAddress.of(fullAddress, detailAddress);
}
}
8 changes: 4 additions & 4 deletions src/main/java/com/ajou/hertz/common/entity/Coordinate.java
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,9 @@
@Embeddable
public class Coordinate {

@Column(nullable = false)
private String lat;
@Column(nullable = false)
private String lat;

@Column(nullable = false)
private String lng;
@Column(nullable = false)
private String lng;
}
73 changes: 37 additions & 36 deletions src/main/java/com/ajou/hertz/common/entity/FullAddress.java
Original file line number Diff line number Diff line change
@@ -1,66 +1,67 @@
package com.ajou.hertz.common.entity;

import java.util.Arrays;

import com.ajou.hertz.common.exception.InvalidAddressFormatException;

import jakarta.persistence.Column;
import jakarta.persistence.Embeddable;
import lombok.AccessLevel;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;

import java.util.Arrays;

@AllArgsConstructor(access = AccessLevel.PRIVATE)
@NoArgsConstructor(access = AccessLevel.PROTECTED)
@Getter
@Embeddable
public class FullAddress {

@Column(nullable = false)
private String sido;
@Column(nullable = false)
private String sido;

@Column(nullable = false)
private String sgg;
@Column(nullable = false)
private String sgg;

private String lotNumberAddress;
private String lotNumberAddress;

private String roadAddress;
private String roadAddress;

@Column(nullable = false)
private String detailAddress;
@Column(nullable = false)
private String detailAddress;

public static FullAddress of(String fullAddress, String detailAddress) {
public static FullAddress of(String fullAddress, String detailAddress) {

String[] parsedAddress = fullAddress.split(" ");
String[] parsedAddress = fullAddress.split(" ");

if (parsedAddress.length < 2) {
throw new InvalidAddressFormatException(fullAddress);
if (parsedAddress.length < 2) {
throw new InvalidAddressFormatException(fullAddress);

}
}

String sido = parsedAddress[0];
StringBuilder sggBuilder = new StringBuilder();
String lotNumberAddress = null;
String roadAddress = null;
String sido = parsedAddress[0];
StringBuilder sggBuilder = new StringBuilder();
String lotNumberAddress = null;
String roadAddress = null;

int num;
for (num = 1; num < parsedAddress.length; num++) {
if (parsedAddress[num].matches(".*[동면읍소로길]$")) {
break;
}
sggBuilder.append(parsedAddress[num]).append(" ");
}
int num;
for (num = 1; num < parsedAddress.length; num++) {
if (parsedAddress[num].matches(".*[동면읍소로길]$")) {
break;
}
sggBuilder.append(parsedAddress[num]).append(" ");
}

String sgg = sggBuilder.toString().trim();
String sgg = sggBuilder.toString().trim();

if (parsedAddress.length > num) {
if (fullAddress.matches(".+[로길].+")) {
roadAddress = String.join(" ", Arrays.copyOfRange(parsedAddress, num, parsedAddress.length));
} else {
lotNumberAddress = String.join(" ", Arrays.copyOfRange(parsedAddress, num, parsedAddress.length));
}
}
if (parsedAddress.length > num) {
if (fullAddress.matches(".+[로길].+")) {
roadAddress = String.join(" ", Arrays.copyOfRange(parsedAddress, num, parsedAddress.length));
} else {
lotNumberAddress = String.join(" ", Arrays.copyOfRange(parsedAddress, num, parsedAddress.length));
}
}

return new FullAddress(sido, sgg, lotNumberAddress, roadAddress, detailAddress);
}
return new FullAddress(sido, sgg, lotNumberAddress, roadAddress, detailAddress);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -20,51 +20,51 @@
@Getter
public enum CustomExceptionType {

MULTIPART_FILE_NOT_READABLE(1000, "파일을 읽을 수 없습니다. 올바른 파일인지 다시 확인 후 요청해주세요."),
IO_PROCESSING(1001, "입출력 처리 중 오류가 발생했습니다."),
SEND_MESSAGE(1002, "문자 발송 과정에서 알 수 없는 에러가 발생했습니다."),
MULTIPART_FILE_NOT_READABLE(1000, "파일을 읽을 수 없습니다. 올바른 파일인지 다시 확인 후 요청해주세요."),
IO_PROCESSING(1001, "입출력 처리 중 오류가 발생했습니다."),
SEND_MESSAGE(1002, "문자 발송 과정에서 알 수 없는 에러가 발생했습니다."),

/**
* 로그인, 인증 관련 예외
*/
ACCESS_DENIED(2000, "접근이 거부되었습니다."),
UNAUTHORIZED(2001, "유효하지 않은 인증 정보로 인해 인증 과정에서 문제가 발생하였습니다."),
TOKEN_VALIDATE(2002, "유효하지 않은 token입니다. Token 값이 잘못되었거나 만료되어 유효하지 않은 경우로 token 갱신이 필요합니다."),
PASSWORD_MISMATCH(2003, "비밀번호가 일치하지 않습니다."),
USER_AUTH_CODE_NOT_FOUND(2004, "본인 인증 코드 발행 이력을 찾을 수 없습니다. 인증 코드가 만료되었거나 잘못된 코드가 전송되었을 수 있습니다. 다시 시도해주세요."),
INVALID_AUTH_CODE(2005, "유효하지 않은 인증 코드 또는 전화번호입니다. 인증 코드가 만료되었거나 잘못된 정보가 전송되었을 수 있습니다. 다시 시도해주세요."),
/**
* 로그인, 인증 관련 예외
*/
ACCESS_DENIED(2000, "접근이 거부되었습니다."),
UNAUTHORIZED(2001, "유효하지 않은 인증 정보로 인해 인증 과정에서 문제가 발생하였습니다."),
TOKEN_VALIDATE(2002, "유효하지 않은 token입니다. Token 값이 잘못되었거나 만료되어 유효하지 않은 경우로 token 갱신이 필요합니다."),
PASSWORD_MISMATCH(2003, "비밀번호가 일치하지 않습니다."),
USER_AUTH_CODE_NOT_FOUND(2004, "본인 인증 코드 발행 이력을 찾을 수 없습니다. 인증 코드가 만료되었거나 잘못된 코드가 전송되었을 수 있습니다. 다시 시도해주세요."),
INVALID_AUTH_CODE(2005, "유효하지 않은 인증 코드 또는 전화번호입니다. 인증 코드가 만료되었거나 잘못된 정보가 전송되었을 수 있습니다. 다시 시도해주세요."),

/**
* 유저 관련 예외
*/
USER_EMAIL_DUPLICATION(2200, "이미 사용 중인 이메일입니다."),
USER_NOT_FOUND_BY_ID(2201, "일치하는 회원을 찾을 수 없습니다."),
USER_NOT_FOUND_BY_EMAIL(2202, "일치하는 회원을 찾을 수 없습니다."),
USER_PHONE_DUPLICATION(2203, "이미 사용 중인 전화번호입니다."),
USER_KAKAO_UID_DUPLICATION(2204, "이미 가입한 계정입니다."),
USER_NOT_FOUND_BY_KAKAO_UID(2205, "일치하는 회원을 찾을 수 없습니다."),
USER_NOT_FOUND_BY_PHONE(2206, "일치하는 회원을 찾을 수 없습니다."),
/**
* 유저 관련 예외
*/
USER_EMAIL_DUPLICATION(2200, "이미 사용 중인 이메일입니다."),
USER_NOT_FOUND_BY_ID(2201, "일치하는 회원을 찾을 수 없습니다."),
USER_NOT_FOUND_BY_EMAIL(2202, "일치하는 회원을 찾을 수 없습니다."),
USER_PHONE_DUPLICATION(2203, "이미 사용 중인 전화번호입니다."),
USER_KAKAO_UID_DUPLICATION(2204, "이미 가입한 계정입니다."),
USER_NOT_FOUND_BY_KAKAO_UID(2205, "일치하는 회원을 찾을 수 없습니다."),
USER_NOT_FOUND_BY_PHONE(2206, "일치하는 회원을 찾을 수 없습니다."),

KAKAO_CLIENT(10000, "카카오 서버와의 통신 중 오류가 발생했습니다."),
KAKAO_CLIENT(10000, "카카오 서버와의 통신 중 오류가 발생했습니다."),

/**
* 주소 관련 예외
*/
INVALID_ADDRESS_FORMAT(2400, "주소 형식이 올바르지 않습니다."),
/**
* 주소 관련 예외
*/
INVALID_ADDRESS_FORMAT(2400, "주소 형식이 올바르지 않습니다."),

/**
* 악기 관련 예외
*/
INSTRUMENT_NOT_FOUND_BY_ID(2600, "일치하는 매물 정보를 찾을 수 없습니다."),
INSTRUMENT_DELETE_PERMISSION_DENIED(2601, "악기 매물을 삭제할 권한이 없습니다. 매물은 판매자 본인만 삭제할 수 있습니다."),
INSTRUMENT_UPDATE_PERMISSION_DENIED(2602, "악기 매물 정보를 수정할 권한이 없습니다. 매물 정보는 판매자 본인만 수정할 수 있습니다."),
UNEXPECTED_LINK_IN_INSTRUMENT_DESCRIPTION(2603, "악기 설명에는 링크(URL)를 첨부할 수 없습니다. 링크 정보를 제거한 후 다시 시도하세요."),
/**
* 악기 관련 예외
*/
INSTRUMENT_NOT_FOUND_BY_ID(2600, "일치하는 매물 정보를 찾을 수 없습니다."),
INSTRUMENT_DELETE_PERMISSION_DENIED(2601, "악기 매물을 삭제할 권한이 없습니다. 매물은 판매자 본인만 삭제할 수 있습니다."),
INSTRUMENT_UPDATE_PERMISSION_DENIED(2602, "악기 매물 정보를 수정할 권한이 없습니다. 매물 정보는 판매자 본인만 수정할 수 있습니다."),
UNEXPECTED_LINK_IN_INSTRUMENT_DESCRIPTION(2603, "악기 설명에는 링크(URL)를 첨부할 수 없습니다. 링크 정보를 제거한 후 다시 시도하세요."),

/**
* 합주실 관련 예외
*/
UNEXPECTED_LINK_IN_PRACTICEROOM_DESCRIPTION(2800, "합주실 관련 설명에는 링크(URL)를 첨부할 수 없습니다. 링크 정보를 제거한 후 다시 시도하세요.");
/**
* 합주실 관련 예외
*/
UNEXPECTED_LINK_IN_PRACTICEROOM_DESCRIPTION(2800, "합주실 관련 설명에는 링크(URL)를 첨부할 수 없습니다. 링크 정보를 제거한 후 다시 시도하세요.");

private final Integer code;
private final String message;
private final Integer code;
private final String message;
}
Loading

0 comments on commit c0bb80d

Please sign in to comment.