diff --git a/src/main/java/org/fontory/fontorybe/font/domain/Font.java b/src/main/java/org/fontory/fontorybe/font/domain/Font.java index 6c9d597..e304e10 100644 --- a/src/main/java/org/fontory/fontorybe/font/domain/Font.java +++ b/src/main/java/org/fontory/fontorybe/font/domain/Font.java @@ -83,20 +83,40 @@ public Font update(FontUpdateDTO fontUpdateDTO) { .build(); } - public Font updateProgress(FontProgressUpdateDTO fontProgressUpdateDTO) { - return Font.builder() - .name(this.getName()) - .example(this.getExample()) - .id(this.id) - .status(fontProgressUpdateDTO.getStatus()) - .downloadCount(this.downloadCount) - .bookmarkCount(this.bookmarkCount) - .ttf(this.ttf) - .woff(this.woff) - .memberId(this.memberId) - .templateURL(this.templateURL) - .createdAt(this.createdAt) - .updatedAt(this.updatedAt) - .build(); + public Font updateProgress(FontProgressUpdateDTO fontProgressUpdateDTO, Long fontId) { + String ttf = "https://fontory-font.s3.ap-northeast-2.amazonaws.com/" + fontId + ".ttf"; + String woff = "https://fontory-font.s3.ap-northeast-2.amazonaws.com/" + fontId + ".woff"; + + if (fontProgressUpdateDTO.getStatus() == FontStatus.DONE) { + return Font.builder() + .name(this.getName()) + .example(this.getExample()) + .id(this.id) + .status(fontProgressUpdateDTO.getStatus()) + .downloadCount(this.downloadCount) + .bookmarkCount(this.bookmarkCount) + .ttf(ttf) + .woff(woff) + .memberId(this.memberId) + .templateURL(this.templateURL) + .createdAt(this.createdAt) + .updatedAt(this.updatedAt) + .build(); + } else { + return Font.builder() + .name(this.getName()) + .example(this.getExample()) + .id(this.id) + .status(fontProgressUpdateDTO.getStatus()) + .downloadCount(this.downloadCount) + .bookmarkCount(this.bookmarkCount) + .ttf(this.ttf) + .woff(this.woff) + .memberId(this.memberId) + .templateURL(this.templateURL) + .createdAt(this.createdAt) + .updatedAt(this.updatedAt) + .build(); + } } } diff --git a/src/main/java/org/fontory/fontorybe/font/infrastructure/entity/FontStatus.java b/src/main/java/org/fontory/fontorybe/font/infrastructure/entity/FontStatus.java index 443d7e2..133d732 100644 --- a/src/main/java/org/fontory/fontorybe/font/infrastructure/entity/FontStatus.java +++ b/src/main/java/org/fontory/fontorybe/font/infrastructure/entity/FontStatus.java @@ -7,7 +7,8 @@ @AllArgsConstructor public enum FontStatus { PROGRESS("제작 중"), - DONE("제작 완료"); + DONE("제작 완료"), + FAILED("제작 실패"); private final String key; } diff --git a/src/main/java/org/fontory/fontorybe/font/service/FontServiceImpl.java b/src/main/java/org/fontory/fontorybe/font/service/FontServiceImpl.java index dc1cd62..334c0bf 100644 --- a/src/main/java/org/fontory/fontorybe/font/service/FontServiceImpl.java +++ b/src/main/java/org/fontory/fontorybe/font/service/FontServiceImpl.java @@ -277,7 +277,7 @@ public Font updateProgress(Long fontId, FontProgressUpdateDTO fontProgressUpdate log.info("Service executing: Updating font ID: {}", fontId); Font targetFont = getOrThrowById(fontId); - Font updatedFont = fontRepository.save(targetFont.updateProgress(fontProgressUpdateDTO)); + Font updatedFont = fontRepository.save(targetFont.updateProgress(fontProgressUpdateDTO, fontId)); log.info("Service completed: Font ID: {} updated successfully", fontId); return updatedFont; }