From 41fb052a89362b7a571511f7576f35cceeb2b57d Mon Sep 17 00:00:00 2001 From: Jeffrey Podmayer Date: Wed, 27 Mar 2024 18:01:28 -0700 Subject: [PATCH 1/2] Updated Tag schema - domain, repo, service closes #518 --- .../com/coderscampus/cp/domain/Checkin.java | 5 +++ .../java/com/coderscampus/cp/domain/Tag.java | 33 +++++++++++++++++++ .../cp/repository/TagRepository.java | 9 +++++ .../coderscampus/cp/service/TagService.java | 7 ++++ 4 files changed, 54 insertions(+) create mode 100644 src/main/java/com/coderscampus/cp/domain/Tag.java create mode 100644 src/main/java/com/coderscampus/cp/repository/TagRepository.java create mode 100644 src/main/java/com/coderscampus/cp/service/TagService.java diff --git a/src/main/java/com/coderscampus/cp/domain/Checkin.java b/src/main/java/com/coderscampus/cp/domain/Checkin.java index d220726c..ae6a0def 100644 --- a/src/main/java/com/coderscampus/cp/domain/Checkin.java +++ b/src/main/java/com/coderscampus/cp/domain/Checkin.java @@ -4,6 +4,8 @@ import java.time.Instant; import java.time.LocalDateTime; +import java.util.ArrayList; +import java.util.List; @Entity public class Checkin { @@ -28,6 +30,9 @@ public class Checkin { @JoinColumn(name = "student_id") private Student student; + @OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL) + private List tag = new ArrayList(); + // ID public Long getId() { return id; diff --git a/src/main/java/com/coderscampus/cp/domain/Tag.java b/src/main/java/com/coderscampus/cp/domain/Tag.java new file mode 100644 index 00000000..8238f65b --- /dev/null +++ b/src/main/java/com/coderscampus/cp/domain/Tag.java @@ -0,0 +1,33 @@ +package com.coderscampus.cp.domain; + +import jakarta.persistence.*; + +@Entity +public class Tag { + @Id + @GeneratedValue(strategy = GenerationType.AUTO) + private Long id; + + @Column(nullable = false, unique = true) + private String name; + + @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL) + @JoinColumn(name = "checkin_id") + private Checkin checkin; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return "Tag{" + + "id=" + id + + ", name='" + name + '\'' + + '}'; + } +} diff --git a/src/main/java/com/coderscampus/cp/repository/TagRepository.java b/src/main/java/com/coderscampus/cp/repository/TagRepository.java new file mode 100644 index 00000000..28e1c597 --- /dev/null +++ b/src/main/java/com/coderscampus/cp/repository/TagRepository.java @@ -0,0 +1,9 @@ +package com.coderscampus.cp.repository; + +import com.coderscampus.cp.domain.Tag; +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.stereotype.Repository; + +@Repository +public interface TagRepository extends JpaRepository { +} diff --git a/src/main/java/com/coderscampus/cp/service/TagService.java b/src/main/java/com/coderscampus/cp/service/TagService.java new file mode 100644 index 00000000..d9992a93 --- /dev/null +++ b/src/main/java/com/coderscampus/cp/service/TagService.java @@ -0,0 +1,7 @@ +package com.coderscampus.cp.service; + +import org.springframework.stereotype.Service; + +@Service +public class TagService { +} From 1f2e9db6a730179b6a23c7f88e0b6aac96ea9675 Mon Sep 17 00:00:00 2001 From: Sarah Lagares Date: Thu, 28 Mar 2024 14:29:44 -0400 Subject: [PATCH 2/2] Added getter/setter and toString to Tag and CheckIn domain --- .../com/coderscampus/cp/domain/Checkin.java | 30 ++++----- .../java/com/coderscampus/cp/domain/Tag.java | 66 +++++++++++-------- 2 files changed, 52 insertions(+), 44 deletions(-) diff --git a/src/main/java/com/coderscampus/cp/domain/Checkin.java b/src/main/java/com/coderscampus/cp/domain/Checkin.java index ae6a0def..6e72d468 100644 --- a/src/main/java/com/coderscampus/cp/domain/Checkin.java +++ b/src/main/java/com/coderscampus/cp/domain/Checkin.java @@ -160,25 +160,19 @@ public String getComment() { public void setComment(String comment) { this.comment = comment; } - + + public List getTag() { + return tag; + } + public void setTag(List tag) { + this.tag = tag; + } @Override public String toString() { - return "Checkin{" + - "id=" + id + - ", uid='" + uid + '\'' + - ", date=" + date + - ", nextAssignment=" + nextAssignment + - ", blockers=" + blockers + - ", blockerDescription='" + blockerDescription + '\'' + - ", isSetUp=" + isSetUp + - ", available=" + available + - ", role=" + role + - ", startTime=" + startTime + - ", endTime=" + endTime + - ", codingType=" + codingType + - ", issueNumber=" + issueNumber + - ", comment='" + comment + '\'' + - ", student=" + student + - '}'; + return "Checkin [id=" + id + ", uid=" + uid + ", date=" + date + ", nextAssignment=" + nextAssignment + + ", blockers=" + blockers + ", blockerDescription=" + blockerDescription + ", isSetUp=" + isSetUp + + ", available=" + available + ", role=" + role + ", startTime=" + startTime + ", endTime=" + endTime + + ", codingType=" + codingType + ", issueNumber=" + issueNumber + ", comment=" + comment + ", student=" + + student + ", tag=" + tag + "]"; } } diff --git a/src/main/java/com/coderscampus/cp/domain/Tag.java b/src/main/java/com/coderscampus/cp/domain/Tag.java index 8238f65b..f6cc44a5 100644 --- a/src/main/java/com/coderscampus/cp/domain/Tag.java +++ b/src/main/java/com/coderscampus/cp/domain/Tag.java @@ -4,30 +4,44 @@ @Entity public class Tag { - @Id - @GeneratedValue(strategy = GenerationType.AUTO) - private Long id; - - @Column(nullable = false, unique = true) - private String name; - - @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL) - @JoinColumn(name = "checkin_id") - private Checkin checkin; - - public Long getId() { - return id; - } - - public void setId(Long id) { - this.id = id; - } - - @Override - public String toString() { - return "Tag{" + - "id=" + id + - ", name='" + name + '\'' + - '}'; - } + @Id + @GeneratedValue(strategy = GenerationType.AUTO) + private Long id; + + @Column(nullable = false, unique = true) + private String name; + + @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL) + @JoinColumn(name = "checkin_id") + private Checkin checkin; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Checkin getCheckin() { + return checkin; + } + + public void setCheckin(Checkin checkin) { + this.checkin = checkin; + } + + @Override + public String toString() { + return "Tag [id=" + id + ", name=" + name + ", checkin=" + checkin + "]"; + } + }