From 513619c830b3fe99b1349bc9ed5cd75912f510c9 Mon Sep 17 00:00:00 2001 From: dbfgml20 Date: Mon, 29 Sep 2025 15:56:50 +0900 Subject: [PATCH] =?UTF-8?q?refactor:=20Job=20=EB=8F=84=EB=A9=94=EC=9D=B8?= =?UTF-8?q?=20=EC=97=94=ED=8B=B0=ED=8B=B0=20@Setter=20=EC=A0=9C=EA=B1=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/back/domain/job/job/entity/Job.java | 12 ++++++++---- .../com/back/domain/job/job/entity/JobAlias.java | 11 +++++++++-- .../com/back/domain/job/job/service/JobService.java | 2 +- 3 files changed, 18 insertions(+), 7 deletions(-) diff --git a/back/src/main/java/com/back/domain/job/job/entity/Job.java b/back/src/main/java/com/back/domain/job/job/entity/Job.java index a4e04d32..ec53f1ad 100644 --- a/back/src/main/java/com/back/domain/job/job/entity/Job.java +++ b/back/src/main/java/com/back/domain/job/job/entity/Job.java @@ -4,13 +4,13 @@ import jakarta.persistence.*; import lombok.Getter; import lombok.NoArgsConstructor; -import lombok.Setter; +import java.util.ArrayList; import java.util.List; @Entity @Table(name = "job") -@Getter @Setter +@Getter @NoArgsConstructor public class Job extends BaseEntity { @Column(name = "name", nullable = false, unique = true) @@ -20,15 +20,19 @@ public class Job extends BaseEntity { private String description; @OneToMany(mappedBy = "job", cascade = CascadeType.ALL) - private List aliases; + private List aliases = new ArrayList<>(); public Job(String name, String description) { this.name = name; this.description = description; + this.aliases = new ArrayList<>(); } public void addAlias(JobAlias alias) { + if (aliases == null) { + aliases = new ArrayList<>(); + } aliases.add(alias); - alias.setJob(this); + alias.linkToJob(this); } } diff --git a/back/src/main/java/com/back/domain/job/job/entity/JobAlias.java b/back/src/main/java/com/back/domain/job/job/entity/JobAlias.java index 25997c3b..e394a845 100644 --- a/back/src/main/java/com/back/domain/job/job/entity/JobAlias.java +++ b/back/src/main/java/com/back/domain/job/job/entity/JobAlias.java @@ -4,11 +4,10 @@ import jakarta.persistence.*; import lombok.Getter; import lombok.NoArgsConstructor; -import lombok.Setter; @Entity @Table(name = "job_alias") -@Getter @Setter +@Getter @NoArgsConstructor public class JobAlias extends BaseEntity { @Column(name = "name", nullable = false, unique = true) @@ -22,4 +21,12 @@ public JobAlias(String name) { this.name = name; this.job = null; // 기본적으로 연결된 Job이 없음 (pending 상태) } + + public void linkToJob(Job job) { + this.job = job; + } + + public boolean isPending() { + return this.job == null; + } } diff --git a/back/src/main/java/com/back/domain/job/job/service/JobService.java b/back/src/main/java/com/back/domain/job/job/service/JobService.java index 0a6b8614..2425ba69 100644 --- a/back/src/main/java/com/back/domain/job/job/service/JobService.java +++ b/back/src/main/java/com/back/domain/job/job/service/JobService.java @@ -28,7 +28,7 @@ public Job create(String name, String description) { @Transactional public JobAlias createAlias(Job job, String aliasName) { JobAlias alias = new JobAlias(aliasName); - alias.setJob(job); + job.addAlias(alias); return jobAliasRepository.save(alias); } }