Skip to content

Commit 42c464e

Browse files
committed
feat: 폰트 영어 이름 추가
1 parent 9bbdc55 commit 42c464e

File tree

5 files changed

+39
-37
lines changed

5 files changed

+39
-37
lines changed

src/main/java/org/fontory/fontorybe/font/controller/dto/FontCreateDTO.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,10 @@ public class FontCreateDTO {
1616
@Size(min = 2, max = 30, message = "폰트 이름은 2자 이상 30자 이하로 입력해주세요.")
1717
private String name;
1818

19+
@NotBlank(message = "폰트 영어 이름은 필수 입력 값입니다.")
20+
@Size(min = 2, max = 30, message = "폰트 이름은 2자 이상 30자 이하로 입력해주세요.")
21+
private String engName;
22+
1923
@NotBlank(message = "폰트 예시는 필수 입력 값입니다.")
2024
@Size(min = 10, max = 255, message = "폰트 예시는 10자 이상 255자 이하로 입력해주세요.")
2125
private String example;

src/main/java/org/fontory/fontorybe/font/controller/dto/FontUpdateDTO.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,6 @@
88
@Getter
99
@Builder
1010
public class FontUpdateDTO {
11-
@NotBlank(message = "폰트 이름은 필수 입력 값입니다.")
12-
@Size(min = 2, max = 30, message = "폰트 이름은 2자 이상 30자 이하로 입력해주세요.")
13-
private String name;
14-
1511
@NotBlank(message = "폰트 예시는 필수 입력 값입니다.")
1612
@Size(min = 10, max = 255, message = "폰트 예시는 10자 이상 255자 이하로 입력해주세요.")
1713
private String example;

src/main/java/org/fontory/fontorybe/font/domain/Font.java

Lines changed: 19 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@ public class Font {
2222

2323
private String name;
2424

25+
private String engName;
26+
2527
private FontStatus status;
2628

2729
private String example;
@@ -53,6 +55,7 @@ public void increaseDownloadCount() {
5355
public static Font from(FontCreateDTO fontCreateDTO, Long memberId, String key) {
5456
return Font.builder()
5557
.name(fontCreateDTO.getName())
58+
.engName(fontCreateDTO.getEngName())
5659
.status(FontStatus.PROGRESS)
5760
.example(fontCreateDTO.getExample())
5861
.key(key)
@@ -64,7 +67,8 @@ public static Font from(FontCreateDTO fontCreateDTO, Long memberId, String key)
6467

6568
public Font update(FontUpdateDTO fontUpdateDTO) {
6669
return Font.builder()
67-
.name(fontUpdateDTO.getName())
70+
.name(this.name)
71+
.engName(this.engName)
6872
.example(fontUpdateDTO.getExample())
6973
.id(this.id)
7074
.status(this.status)
@@ -77,34 +81,19 @@ public Font update(FontUpdateDTO fontUpdateDTO) {
7781
.build();
7882
}
7983

80-
public Font updateProgress(FontProgressUpdateDTO fontProgressUpdateDTO, Long fontId) {
81-
82-
if (fontProgressUpdateDTO.getStatus() == FontStatus.DONE) {
83-
return Font.builder()
84-
.name(this.name)
85-
.example(this.example)
86-
.id(this.id)
87-
.status(fontProgressUpdateDTO.getStatus())
88-
.downloadCount(this.downloadCount)
89-
.bookmarkCount(this.bookmarkCount)
90-
.key(this.key)
91-
.memberId(this.memberId)
92-
.createdAt(this.createdAt)
93-
.updatedAt(this.updatedAt)
94-
.build();
95-
} else {
96-
return Font.builder()
97-
.name(this.name)
98-
.example(this.example)
99-
.id(this.id)
100-
.status(fontProgressUpdateDTO.getStatus())
101-
.downloadCount(this.downloadCount)
102-
.bookmarkCount(this.bookmarkCount)
103-
.key(this.key)
104-
.memberId(this.memberId)
105-
.createdAt(this.createdAt)
106-
.updatedAt(this.updatedAt)
107-
.build();
108-
}
84+
public Font updateProgress(FontProgressUpdateDTO fontProgressUpdateDTO) {
85+
return Font.builder()
86+
.name(this.name)
87+
.engName(this.engName)
88+
.example(this.example)
89+
.id(this.id)
90+
.status(fontProgressUpdateDTO.getStatus())
91+
.downloadCount(this.downloadCount)
92+
.bookmarkCount(this.bookmarkCount)
93+
.key(this.key)
94+
.memberId(this.memberId)
95+
.createdAt(this.createdAt)
96+
.updatedAt(this.updatedAt)
97+
.build();
10998
}
11099
}

src/main/java/org/fontory/fontorybe/font/infrastructure/entity/FontEntity.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,8 @@ public class FontEntity extends BaseEntity {
3131

3232
private String name;
3333

34+
private String engName;
35+
3436
@Enumerated(EnumType.STRING)
3537
private FontStatus status;
3638

@@ -49,6 +51,7 @@ public Font toModel() {
4951
return Font.builder()
5052
.id(id)
5153
.name(name)
54+
.engName(engName)
5255
.status(status)
5356
.example(example)
5457
.downloadCount(downloadCount)
@@ -64,6 +67,7 @@ public static FontEntity from(Font font) {
6467
return FontEntity.builder()
6568
.id(font.getId())
6669
.name(font.getName())
70+
.engName(font.getEngName())
6771
.status(font.getStatus())
6872
.example(font.getExample())
6973
.downloadCount(font.getDownloadCount())

src/main/java/org/fontory/fontorybe/font/service/FontServiceImpl.java

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -105,8 +105,8 @@ public FontUpdateResponse update(Long memberId, Long fontId, FontUpdateDTO fontU
105105
Font targetFont = getOrThrowById(fontId);
106106

107107
checkFontOwnership(member.getId(), targetFont.getMemberId());
108-
checkContainsBadWord(fontUpdateDTO.getName(), fontUpdateDTO.getExample());
109-
108+
checkContainsBadWord(fontUpdateDTO.getExample());
109+
110110
Font updatedFont = fontRepository.save(targetFont.update(fontUpdateDTO));
111111
String woff2Url = cloudStorageService.getWoff2Url(updatedFont.getKey());
112112

@@ -316,7 +316,7 @@ public FontUpdateResponse updateProgress(Long fontId, FontProgressUpdateDTO font
316316
log.info("Service executing: Updating font ID: {}", fontId);
317317
Font targetFont = getOrThrowById(fontId);
318318

319-
Font updatedFont = fontRepository.save(targetFont.updateProgress(fontProgressUpdateDTO, fontId));
319+
Font updatedFont = fontRepository.save(targetFont.updateProgress(fontProgressUpdateDTO));
320320
String woff2Url = cloudStorageService.getWoff2Url(updatedFont.getKey());
321321

322322
if (fontProgressUpdateDTO.getStatus() == FontStatus.DONE) {
@@ -383,4 +383,13 @@ private void checkContainsBadWord(String name, String example) {
383383
throw new FontContainsBadWordException();
384384
}
385385
}
386+
387+
private void checkContainsBadWord(String example) {
388+
log.debug("Service detail: Checking bad word: example={}", example);
389+
390+
if (badWordFiltering.blankCheck(example)) {
391+
log.warn("Service warning: Font contains bad word: example={}", example);
392+
throw new FontContainsBadWordException();
393+
}
394+
}
386395
}

0 commit comments

Comments
 (0)