Skip to content

Commit

Permalink
[chore] entity 세팅
Browse files Browse the repository at this point in the history
  • Loading branch information
pkl0912 committed Aug 29, 2024
1 parent fb6216a commit 3765e7d
Show file tree
Hide file tree
Showing 19 changed files with 393 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
package com.example.letscareer.always.controller;

import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequiredArgsConstructor
@RequestMapping("/")
public class AlwaysController {
}
33 changes: 33 additions & 0 deletions src/main/java/com/example/letscareer/always/domain/Always.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
package com.example.letscareer.always.domain;

import com.example.letscareer.schedule.domain.Progress;
import com.example.letscareer.user.domain.User;
import jakarta.persistence.*;
import lombok.*;
import org.antlr.v4.runtime.misc.NotNull;

@Entity
@Getter
@Setter
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class Always {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long alwaysId;

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "userId")
@NotNull
private User user;

private String company;
private String department;

@Enumerated(EnumType.STRING)
private Progress progress;

private String url;

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
package com.example.letscareer.always.dto.request;

public record AlwaysRequest() {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
package com.example.letscareer.always.dto.response;

public record AlwaysResponse() {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package com.example.letscareer.always.repository;

import com.example.letscareer.always.domain.Always;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;

@Repository
public interface AlwaysRepository extends JpaRepository<Always, Long> {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package com.example.letscareer.always.service;

import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;

@Service
@RequiredArgsConstructor
public class AlwaysService {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
package com.example.letscareer.appealCareer.domain;


import com.example.letscareer.career.domain.Career;
import com.example.letscareer.stage.domain.Stage;
import jakarta.persistence.*;
import lombok.*;

@Entity
@Getter
@Setter
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class AppealCareer {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long appealCareerId;

@OneToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "stageIdd")
private Stage stage;

@OneToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "careeId")
private Career career;

}
39 changes: 39 additions & 0 deletions src/main/java/com/example/letscareer/career/domain/Career.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
package com.example.letscareer.career.domain;


import com.example.letscareer.user.domain.User;
import jakarta.persistence.*;
import lombok.*;
import org.antlr.v4.runtime.misc.NotNull;


@Entity
@Getter
@Setter
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class Career {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long careerId;

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "userId")
@NotNull
private User user;

private String title;

@Enumerated(EnumType.STRING)
private Category category;

@Lob //긴 텍스트 (TEXT)
private String situation;
@Lob
private String task;
@Lob
private String action;
@Lob
private String result;
}
11 changes: 11 additions & 0 deletions src/main/java/com/example/letscareer/career/domain/Category.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
package com.example.letscareer.career.domain;

import lombok.AllArgsConstructor;
import lombok.Getter;

@Getter
@AllArgsConstructor
public enum Category {
ACTIVITY("대외활동"), COMPETITION("공모전"), TASK("실무"), CERTIFICATION("자격증"), PROJECT("프로젝트"), OTHER("기타");
private final String value;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
package com.example.letscareer.int_review.domain;

import com.example.letscareer.stage.domain.Stage;
import jakarta.persistence.*;
import lombok.*;
import org.antlr.v4.runtime.misc.NotNull;

@Entity
@Getter
@Setter
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class IntReview {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long intReviewId;

@Lob
private String method;
@Lob
private String questions;
@Lob
private String feelings;

@OneToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "stageId")
@NotNull
private Stage stage;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
package com.example.letscareer.mid_review.domain;

import com.example.letscareer.stage.domain.Stage;
import jakarta.persistence.*;
import lombok.*;
import org.antlr.v4.runtime.misc.NotNull;

@Entity
@Getter
@Setter
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class MidReview {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long midReviewId;

@Lob
private String freeReview;
@Lob
private String goal;


@OneToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "stageId")
@NotNull
private Stage stage;
}
11 changes: 11 additions & 0 deletions src/main/java/com/example/letscareer/schedule/domain/Progress.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
package com.example.letscareer.schedule.domain;

import lombok.AllArgsConstructor;
import lombok.Getter;

@Getter
@AllArgsConstructor
public enum Progress {
PASS("최종 합격"), FAIL("최종 불합격"), DO("진행중");
private final String value;
}
31 changes: 31 additions & 0 deletions src/main/java/com/example/letscareer/schedule/domain/Schedule.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
package com.example.letscareer.schedule.domain;

import com.example.letscareer.user.domain.User;
import jakarta.persistence.*;
import lombok.*;
import org.antlr.v4.runtime.misc.NotNull;

@Entity
@Getter
@Setter
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class Schedule {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long scheduleId;

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "userId")
@NotNull
private User user;

private String company;
private String department;

@Enumerated(EnumType.STRING)
private Progress progress;

private String url;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
package com.example.letscareer.self_intro.domain;

import com.example.letscareer.stage.domain.Stage;
import com.example.letscareer.user.domain.User;
import jakarta.persistence.*;
import lombok.*;
import org.antlr.v4.runtime.misc.NotNull;

@Entity
@Getter
@Setter
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class SelfIntro {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long selfIntroId;

@Lob
private String content;

@OneToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "stageId")
@NotNull
private Stage stage;
}
43 changes: 43 additions & 0 deletions src/main/java/com/example/letscareer/stage/domain/Stage.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
package com.example.letscareer.stage.domain;

import com.example.letscareer.always.domain.Always;
import com.example.letscareer.schedule.domain.Schedule;
import jakarta.persistence.*;
import lombok.*;
import org.antlr.v4.runtime.misc.NotNull;
import org.hibernate.annotations.Check;

import java.time.LocalDateTime;
import java.util.Date;

@Entity
@Getter
@Setter
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Check(constraints = "(schedule_id IS NOT NULL AND always_id IS NULL) OR (schedule_id IS NULL AND always_id IS NOT NULL)")
public class Stage {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long stageId;

@ManyToOne(fetch = FetchType.LAZY, optional = true)
@JoinColumn(name = "schedule_id")
private Schedule schedule;

@ManyToOne(fetch = FetchType.LAZY, optional = true)
@JoinColumn(name = "always_id")
private Always always;

@Enumerated(EnumType.STRING)
private Type type;

private Date date;
private String midName;
private Integer order;

@Enumerated(EnumType.STRING)
private Status status;
}
11 changes: 11 additions & 0 deletions src/main/java/com/example/letscareer/stage/domain/Status.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
package com.example.letscareer.stage.domain;

import lombok.AllArgsConstructor;
import lombok.Getter;

@Getter
@AllArgsConstructor
public enum Status {
DO("준비 진행 중"), FIN ("진행 완료");
private final String value;
}
11 changes: 11 additions & 0 deletions src/main/java/com/example/letscareer/stage/domain/Type.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
package com.example.letscareer.stage.domain;

import lombok.AllArgsConstructor;
import lombok.Getter;

@Getter
@AllArgsConstructor
public enum Type {
DOC ("서류") , MID("중간"), INT("면접");
private final String value;
}
29 changes: 29 additions & 0 deletions src/main/java/com/example/letscareer/todo/domain/Todo.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
package com.example.letscareer.todo.domain;

import com.example.letscareer.user.domain.User;
import jakarta.persistence.*;
import lombok.*;
import org.antlr.v4.runtime.misc.NotNull;

@Entity
@Getter
@Setter
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class Todo {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long todoId;

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "userId")
@NotNull
private User user;

private String content;
private boolean isChecked; //boolean null 허용 안함



}
Loading

0 comments on commit 3765e7d

Please sign in to comment.