Skip to content

Commit efaab42

Browse files
authored
Merge pull request #3 from FivePrincess/model
develop model class
2 parents c89c02d + 31fda6b commit efaab42

9 files changed

Lines changed: 407 additions & 148 deletions

File tree

Lines changed: 103 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,103 @@
1+
package main.java.com.example.model;
2+
3+
import java.util.Date;
4+
5+
public class Announcement {
6+
private Long announcementId;
7+
private String title;
8+
private String content;
9+
private Date startDate;
10+
private Date endDate;
11+
private int employeeNumber;
12+
private String contact;
13+
private String[] hashtag;
14+
15+
// GuestHouse와의 관계
16+
private GuestHouse guestHouse;
17+
18+
// Getters and Setters
19+
public Long getAnnouncementId() {
20+
return announcementId;
21+
}
22+
23+
public void setAnnouncementId(Long announcementId) {
24+
this.announcementId = announcementId;
25+
}
26+
27+
public String getTitle() {
28+
return title;
29+
}
30+
31+
public void setTitle(String title) {
32+
this.title = title;
33+
}
34+
35+
public String getContent() {
36+
return content;
37+
}
38+
39+
public void setContent(String content) {
40+
this.content = content;
41+
}
42+
43+
public Date getStartDate() {
44+
return startDate;
45+
}
46+
47+
public void setStartDate(Date startDate) {
48+
this.startDate = startDate;
49+
}
50+
51+
public Date getEndDate() {
52+
return endDate;
53+
}
54+
55+
public void setEndDate(Date endDate) {
56+
this.endDate = endDate;
57+
}
58+
59+
public int getEmployeeNumber() {
60+
return employeeNumber;
61+
}
62+
63+
public void setEmployeeNumber(int employeeNumber) {
64+
this.employeeNumber = employeeNumber;
65+
}
66+
67+
public String getContact() {
68+
return contact;
69+
}
70+
71+
public void setContact(String contact) {
72+
this.contact = contact;
73+
}
74+
75+
public String[] getHashtag() {
76+
return hashtag;
77+
}
78+
79+
public void setHashtag(String[] hashtag) {
80+
this.hashtag = hashtag;
81+
}
82+
83+
public GuestHouse getGuestHouse() {
84+
return guestHouse;
85+
}
86+
87+
public void setGuestHouse(GuestHouse guestHouse) {
88+
this.guestHouse = guestHouse;
89+
}
90+
91+
public void displayAnnouncementDetails() {
92+
System.out.println("Announcement Details:");
93+
System.out.println("ID: " + announcementId);
94+
System.out.println("Title: " + title);
95+
System.out.println("Content: " + content);
96+
System.out.println("Start Date: " + startDate);
97+
System.out.println("End Date: " + endDate);
98+
System.out.println("Employee Number: " + employeeNumber);
99+
System.out.println("Contact: " + contact);
100+
System.out.println("Hashtags: " + (hashtag != null ? String.join(", ", hashtag) : "No hashtags"));
101+
System.out.println("GuestHouse: " + (guestHouse != null ? guestHouse.getGuesthouseName() : "No GuestHouse"));
102+
}
103+
}
Lines changed: 39 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,18 @@
11
package main.java.com.example.model;
22

3+
import java.util.ArrayList;
4+
import java.util.List;
5+
36
public class Employee extends User {
47
private String employeeName;
5-
private int age;
6-
private String profile;
7-
private String mbti;
8-
private String instagram;
9-
private String[] hashtag;
8+
private String position;
9+
private String contact;
10+
11+
// EmployeeReview와의 1:N 관계
12+
private List<EmployeeReview> reviews = new ArrayList<>();
13+
14+
// Resume와의 1:N 관계
15+
private List<Resume> resumes = new ArrayList<>();
1016

1117
// Getters and Setters
1218
public String getEmployeeName() {
@@ -17,53 +23,52 @@ public void setEmployeeName(String employeeName) {
1723
this.employeeName = employeeName;
1824
}
1925

20-
public int getAge() {
21-
return age;
22-
}
23-
24-
public void setAge(int age) {
25-
this.age = age;
26-
}
27-
28-
public String getProfile() {
29-
return profile;
26+
public String getPosition() {
27+
return position;
3028
}
3129

32-
public void setProfile(String profile) {
33-
this.profile = profile;
30+
public void setPosition(String position) {
31+
this.position = position;
3432
}
3533

36-
public String getMbti() {
37-
return mbti;
34+
public String getContact() {
35+
return contact;
3836
}
3937

40-
public void setMbti(String mbti) {
41-
this.mbti = mbti;
38+
public void setContact(String contact) {
39+
this.contact = contact;
4240
}
4341

44-
public String getInstagram() {
45-
return instagram;
42+
public List<EmployeeReview> getReviews() {
43+
return reviews;
4644
}
4745

48-
public void setInstagram(String instagram) {
49-
this.instagram = instagram;
46+
public void addReview(EmployeeReview review) {
47+
reviews.add(review);
48+
review.setEmployee(this); // Employee 객체 설정
5049
}
5150

52-
public String[] getHashtag() {
53-
return hashtag;
51+
public List<Resume> getResumes() {
52+
return resumes;
5453
}
5554

56-
public void setHashtag(String[] hashtag) {
57-
this.hashtag = hashtag;
55+
public void addResume(Resume resume) {
56+
resumes.add(resume);
57+
resume.setEmployee(this); // Resume 객체와의 관계 설정
5858
}
5959

6060
@Override
6161
public void displayUserInfo() {
6262
System.out.println("Employee Name: " + employeeName);
63-
System.out.println("Age: " + age);
64-
System.out.println("Profile: " + profile);
65-
System.out.println("MBTI: " + mbti);
66-
System.out.println("Instagram: " + instagram);
67-
System.out.println("Hashtags: " + String.join(", ", hashtag));
63+
System.out.println("Position: " + position);
64+
System.out.println("Contact: " + contact);
65+
System.out.println("Resumes:");
66+
for (Resume resume : resumes) {
67+
System.out.println("- Resume ID: " + resume.getResumeId() + ", Title: " + resume.getTitle());
68+
}
69+
System.out.println("Reviews:");
70+
for (EmployeeReview review : reviews) {
71+
System.out.println("- Review ID: " + review.getReviewId() + ", Rating: " + review.getRating());
72+
}
6873
}
6974
}
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
package main.java.com.example.model;
2+
3+
public class EmployeeReview extends Review {
4+
private Employee employee; // Employee 객체 참조
5+
6+
// Getters and Setters
7+
public Employee getEmployee() {
8+
return employee;
9+
}
10+
11+
public void setEmployee(Employee employee) {
12+
this.employee = employee;
13+
}
14+
15+
// Override the abstract method
16+
@Override
17+
public void displayReviewDetails() {
18+
System.out.println("Employee Review Details:");
19+
System.out.println("Review ID: " + getReviewId());
20+
System.out.println("Employee: " + (employee != null ? employee.getEmployeeName() : "No Employee"));
21+
System.out.println("Rating: " + getRating());
22+
System.out.println("Content: " + getContent());
23+
System.out.println("Date: " + getDate());
24+
}
25+
}

src/main/java/com/example/model/Employer.java

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,16 @@
11
package main.java.com.example.model;
22

3+
import java.util.ArrayList;
4+
import java.util.List;
5+
36
public class Employer extends User {
47
private String employerName;
58
private String employerPhoneNumber;
69
private String businessLicenseNumber;
710

11+
// 일대다 관계: 여러 GuestHouse를 참조
12+
private List<GuestHouse> guestHouses = new ArrayList<>();
13+
814
// Getters and Setters
915
public String getEmployerName() {
1016
return employerName;
@@ -30,10 +36,23 @@ public void setBusinessLicenseNumber(String businessLicenseNumber) {
3036
this.businessLicenseNumber = businessLicenseNumber;
3137
}
3238

39+
public List<GuestHouse> getGuestHouses() {
40+
return guestHouses;
41+
}
42+
43+
public void addGuestHouse(GuestHouse guestHouse) {
44+
guestHouses.add(guestHouse);
45+
guestHouse.setEmployer(this); // Employer 객체 설정
46+
}
47+
3348
@Override
3449
public void displayUserInfo() {
3550
System.out.println("Employer Name: " + employerName);
3651
System.out.println("Phone Number: " + employerPhoneNumber);
3752
System.out.println("Business License Number: " + businessLicenseNumber);
53+
System.out.println("GuestHouses: ");
54+
for (GuestHouse guestHouse : guestHouses) {
55+
System.out.println("- " + guestHouse.getGuesthouseName());
56+
}
3857
}
3958
}

0 commit comments

Comments
 (0)