Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
27c6bb6
Merge pull request #15 from 1210so-openSW/dev
yaejinkong Aug 24, 2024
7c19b0b
[feat/#16] requestDto 추가
yaejinkong Aug 24, 2024
7b77055
[feat#16] responseDto 추가
yaejinkong Aug 24, 2024
de839d6
[feat/#16] repository 추가
yaejinkong Aug 24, 2024
247721d
[feat/#16] LicenseInfoService 인터페이스 추가
yaejinkong Aug 24, 2024
2729e33
[feat/#16] 자격증 저장 기능 구현
yaejinkong Aug 24, 2024
1f171d6
[feat/#16] 에러코드 추가
yaejinkong Aug 24, 2024
70bed68
[feat/#16] 자격증 정보 수정 기능 구현
yaejinkong Aug 24, 2024
9553b2d
[feat/#16] 자격증 조회 기능 구현
yaejinkong Aug 24, 2024
9510e59
[feat/#16] controller 추가
yaejinkong Aug 25, 2024
3bcf62b
[feat/#18] requestDto 추가
yaejinkong Aug 25, 2024
91fb78a
[refactor/#18] @Getter 추가
yaejinkong Aug 25, 2024
5b21b06
[feat/#18] responseDto 추가
yaejinkong Aug 25, 2024
1b6df70
[feat/#18] respository 추가
yaejinkong Aug 25, 2024
bd42fc4
Merge remote-tracking branch 'origin/feat/#16-license-info' into feat…
yaejinkong Aug 25, 2024
ef2eb74
[feat/#18] 서비스 인터페이스 추가
yaejinkong Aug 25, 2024
2bf365b
[feat/#18] 서비스 구현체 추가
yaejinkong Aug 25, 2024
f713c8f
[feat/#18] 훈련 저장 기능 구현
yaejinkong Aug 25, 2024
2501b00
[feat/#18] 에러 코드 추가
yaejinkong Aug 25, 2024
c81a6f8
[feat/#18] 훈련 수정 기능 구현
yaejinkong Aug 25, 2024
0b714f9
[refactor/#18] static 추가
yaejinkong Aug 25, 2024
d6ba4a0
[feat/#18] 훈련 조회 기능 구현
yaejinkong Aug 25, 2024
dd33d5b
[feat/#18] controller 추가
yaejinkong Aug 25, 2024
27609af
[feat/#20] requestDto 추가
yaejinkong Aug 25, 2024
9acdb20
[feat/#20] responseDto 추가
yaejinkong Aug 25, 2024
e4e3f4a
[feat/#20] repository 추가
yaejinkong Aug 25, 2024
66d7fb5
[refactor/#20] JpaRepository 상속 받도록 수정
yaejinkong Aug 25, 2024
5a1b315
[feat/#20] service 인터페이스 추가
yaejinkong Aug 25, 2024
a8ca848
[feat/#20] 개인정보 저장 기능 구현
yaejinkong Aug 25, 2024
2b487ac
[feat/#20] 에러코드 추가
yaejinkong Aug 25, 2024
ce6eab5
[feat/#20] 개인정보 수정 기능 구현
yaejinkong Aug 25, 2024
5e7cb94
[feat/#20] 개인정보 조회 기능 구현
yaejinkong Aug 25, 2024
d6c8c38
[feat/#20] controller 추가
yaejinkong Aug 25, 2024
987b6a8
[refactor/#20] email 필드 추가
yaejinkong Aug 25, 2024
4d4d898
[refactor/#20] @Getter 추가
yaejinkong Aug 25, 2024
de234b9
[refactor/#20] personalInfoRequest에서 getter 사용하도록 변경
yaejinkong Aug 25, 2024
4f28ee1
[refactor/#20] update 함수 수정
yaejinkong Aug 25, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
package com.il210so.server.controller;

import com.il210so.server.dto.request.licenseInfo.LicenseInfoRequest;
import com.il210so.server.dto.response.licenseInfo.LicenseInfoResponse;
import com.il210so.server.service.licenseInfo.LicenseInfoService;
import lombok.RequiredArgsConstructor;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
@RequiredArgsConstructor
@RequestMapping("/api/v1/members/{memberId}/resumes/{resumeId}/license-infos")
public class LicenseInfoController {

private final LicenseInfoService licenseInfoService;

@PostMapping
public ResponseEntity<Void> save(
@PathVariable("memberId") Long memberId,
@PathVariable("resumeId") Long resumeId,
@RequestBody LicenseInfoRequest licenseInfoRequest) {
licenseInfoService.save(licenseInfoRequest, memberId, resumeId);
return ResponseEntity.ok().build();
}

@PutMapping("/{licenseInfoId}")
public ResponseEntity<Void> edit(
@PathVariable("memberId") Long memberId,
@PathVariable("resumeId") Long resumeId,
@PathVariable("licenseInfoId") Long licenseInfoId,
@RequestBody LicenseInfoRequest licenseInfoRequest) {
licenseInfoService.edit(licenseInfoRequest, memberId, resumeId, licenseInfoId);
return ResponseEntity.ok().build();
}

@GetMapping
public List<LicenseInfoResponse> getLicenseInfos(
@PathVariable("memberId") Long memberId,
@PathVariable("resumeId") Long resumeId) {
return licenseInfoService.showLicenseInfos(memberId, resumeId);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
package com.il210so.server.controller;

import com.il210so.server.dto.request.personalInfo.PersonalInfoRequest;
import com.il210so.server.dto.response.personalInfo.PersonalInfoResponse;
import com.il210so.server.service.personalInfo.PersonalInfoService;
import lombok.RequiredArgsConstructor;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;

@RestController
@RequiredArgsConstructor
@RequestMapping("/api/v1/members/{memberId}/resumes/{resumeId}/personal-infos")
public class PersonalInfoController {

private final PersonalInfoService personalInfoService;

@PostMapping
public ResponseEntity<Void> save(
@PathVariable("memberId") Long memberId,
@PathVariable("resumeId") Long resumeId,
@RequestBody PersonalInfoRequest personalInfoRequest) {
personalInfoService.savePersonalInfo(personalInfoRequest, memberId, resumeId);
return ResponseEntity.ok().build();
}

@PutMapping
public ResponseEntity<Void> edit(
@PathVariable("memberId") Long memberId,
@PathVariable("resumeId") Long resumeId,
@RequestBody PersonalInfoRequest personalInfoRequest) {
personalInfoService.editPersonalInfo(personalInfoRequest, memberId, resumeId);
return ResponseEntity.ok().build();
}

@GetMapping
public PersonalInfoResponse getPersonalInfos(
@PathVariable("memberId") Long memberId,
@PathVariable("resumeId") Long resumeId) {
return personalInfoService.showPersonalInfos(memberId, resumeId);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
package com.il210so.server.controller;

import com.il210so.server.dto.request.trainingInfo.TrainingInfoRequest;
import com.il210so.server.dto.response.trainingInfo.TrainingInfoResponse;
import com.il210so.server.service.trainingInfo.TrainingInfoService;
import lombok.RequiredArgsConstructor;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
@RequiredArgsConstructor
@RequestMapping("/api/v1/members/{memberId}/resumes/{resumeId}/training-infos")
public class TrainingInfoController {

private final TrainingInfoService trainingInfoService;

@PostMapping
public ResponseEntity<Void> save(
@PathVariable("memberId") Long memberId,
@PathVariable("resumeId") Long resumeId,
@RequestBody TrainingInfoRequest trainingInfoRequest) {
trainingInfoService.save(trainingInfoRequest, memberId, resumeId);
return ResponseEntity.ok().build();
}

@PutMapping("/{trainingInfoId}")
public ResponseEntity<Void> edit(
@PathVariable("memberId") Long memberId,
@PathVariable("resumeId") Long resumeId,
@PathVariable("trainingInfoId") Long trainingInfoId,
@RequestBody TrainingInfoRequest trainingInfoRequest) {
trainingInfoService.edit(trainingInfoRequest, memberId, resumeId, trainingInfoId);
return ResponseEntity.ok().build();
}

@GetMapping
public List<TrainingInfoResponse> getTrainingInfos(
@PathVariable("memberId") Long memberId,
@PathVariable("resumeId") Long resumeId) {
return trainingInfoService.showTrainingInfos(memberId, resumeId);
}
}
12 changes: 12 additions & 0 deletions src/main/java/com/il210so/server/domain/LicenseInfo.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package com.il210so.server.domain;

import com.il210so.server.dto.response.licenseInfo.LicenseInfoResponse;
import jakarta.persistence.*;
import lombok.Builder;
import lombok.Getter;
Expand Down Expand Up @@ -43,4 +44,15 @@ public LicenseInfo(Long id, Member member, Resume resume, String licenseName, Lo
this.getDate = getDate;
this.agency = agency;
}

public LicenseInfo update(String licenseName, LocalDate getDate, String agency) {
return new LicenseInfo().builder()
.id(this.id)
.member(this.member)
.resume(this.resume)
.licenseName(licenseName)
.getDate(getDate)
.agency(agency)
.build();
}
}
20 changes: 19 additions & 1 deletion src/main/java/com/il210so/server/domain/PersonalInfo.java
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,9 @@ public class PersonalInfo {
@Column(name = "address", nullable = false)
private String address;

@Column(name = "email", nullable = false)
private String email;

@Column(name = "phone_number", nullable = false)
private String phoneNumber;

Expand All @@ -41,14 +44,29 @@ public PersonalInfo() {
}

@Builder
public PersonalInfo(Long id, Member member, Resume resume, String name, LocalDate bdate, String address, String phoneNumber, String emergencyPhone) {
public PersonalInfo(Long id, Member member, Resume resume, String name, LocalDate bdate, String address, String email, String phoneNumber, String emergencyPhone) {
this.id = id;
this.member = member;
this.resume = resume;
this.name = name;
this.bdate = bdate;
this.address = address;
this.email = email;
this.phoneNumber = phoneNumber;
this.emergencyPhone = emergencyPhone;
}

public PersonalInfo update(String name, LocalDate bdate, String address, String email, String phoneNumber, String emergencyPhone) {
return new PersonalInfo().builder()
.id(this.id)
.member(this.member)
.resume(this.resume)
.name(name)
.bdate(bdate)
.address(address)
.email(email)
.phoneNumber(phoneNumber)
.emergencyPhone(emergencyPhone)
.build();
}
}
13 changes: 13 additions & 0 deletions src/main/java/com/il210so/server/domain/TrainingInfo.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package com.il210so.server.domain;

import com.il210so.server.dto.request.trainingInfo.TrainingInfoRequest;
import jakarta.persistence.*;
import lombok.Builder;
import lombok.Getter;
Expand Down Expand Up @@ -47,4 +48,16 @@ public TrainingInfo(Long id, Member member, Resume resume, String trainingName,
this.trainingEndDate = trainingEndDate;
this.trainingAgency = trainingAgency;
}

public TrainingInfo update(String trainingName, YearMonth trainingStartDate, YearMonth trainingEndDate, String trainingAgency) {
return new TrainingInfo().builder()
.id(this.id)
.member(this.member)
.resume(this.resume)
.trainingName(trainingName)
.trainingStartDate(trainingStartDate)
.trainingEndDate(trainingEndDate)
.trainingAgency(trainingAgency)
.build();
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
package com.il210so.server.dto.request.licenseInfo;

import com.il210so.server.domain.LicenseInfo;
import com.il210so.server.domain.Member;
import com.il210so.server.domain.Resume;
import lombok.Getter;

import java.time.LocalDate;

@Getter
public class LicenseInfoRequest {
private String licenseName;
private LocalDate getDate;
private String agency;

public LicenseInfoRequest() {
}

public LicenseInfoRequest(String licenseName, LocalDate getDate, String agency) {
this.licenseName = licenseName;
this.getDate = getDate;
this.agency = agency;
}

public LicenseInfo toLicenseInfo(Member member, Resume resume) {
return new LicenseInfo().builder()
.member(member)
.resume(resume)
.licenseName(this.licenseName)
.getDate(this.getDate)
.agency(this.agency)
.build();
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
package com.il210so.server.dto.request.personalInfo;

import com.il210so.server.domain.Member;
import com.il210so.server.domain.PersonalInfo;
import com.il210so.server.domain.Resume;
import lombok.Getter;

import java.time.LocalDate;

@Getter
public class PersonalInfoRequest {
private String name;
private LocalDate bdate;
private String address;
private String email;
private String phoneNumber;
private String emergencyPhone;

public PersonalInfoRequest() {
}

public PersonalInfoRequest(String name, LocalDate bdate, String address, String email, String phoneNumber, String emergencyPhone) {
this.name = name;
this.bdate = bdate;
this.address = address;
this.email = email;
this.phoneNumber = phoneNumber;
this.emergencyPhone = emergencyPhone;
}

public PersonalInfo toPersonalInfo(Member member, Resume resume) {
return PersonalInfo.builder()
.member(member)
.resume(resume)
.name(this.name)
.bdate(this.bdate)
.address(this.address)
.email(this.email)
.phoneNumber(this.phoneNumber)
.emergencyPhone(this.emergencyPhone)
.build();
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
package com.il210so.server.dto.request.trainingInfo;

import com.il210so.server.domain.Member;
import com.il210so.server.domain.Resume;
import com.il210so.server.domain.TrainingInfo;
import lombok.Getter;

import java.time.YearMonth;

@Getter
public class TrainingInfoRequest {
private String trainingName;
private YearMonth trainingStartDate;
private YearMonth trainingEndDate;
private String trainingAgency;

public TrainingInfoRequest() {
}

public TrainingInfoRequest(String trainingName, YearMonth trainingStartDate, YearMonth trainingEndDate, String trainingAgency) {
this.trainingName = trainingName;
this.trainingStartDate = trainingStartDate;
this.trainingEndDate = trainingEndDate;
this.trainingAgency = trainingAgency;
}

public TrainingInfo toTrainingInfo(Member member, Resume resume) {
return new TrainingInfo().builder()
.member(member)
.resume(resume)
.trainingName(this.trainingName)
.trainingStartDate(this.trainingStartDate)
.trainingEndDate(this.trainingEndDate)
.trainingAgency(this.trainingAgency)
.build();
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
package com.il210so.server.dto.response.licenseInfo;

import com.il210so.server.domain.CareerInfo;
import com.il210so.server.domain.LicenseInfo;
import com.il210so.server.dto.response.careerInfo.CareerInfoResponse;
import lombok.Getter;

import java.time.LocalDate;
import java.util.List;
import java.util.stream.Collectors;

@Getter
public class LicenseInfoResponse {
private Long id;
private String licenseName;
private LocalDate getDate;
private String agency;

public LicenseInfoResponse(Long id, String licenseName, LocalDate getDate, String agency) {
this.id = id;
this.licenseName = licenseName;
this.getDate = getDate;
this.agency = agency;
}

public static LicenseInfoResponse from (LicenseInfo licenseInfo) {
return new LicenseInfoResponse(
licenseInfo.getId(),
licenseInfo.getLicenseName(),
licenseInfo.getGetDate(),
licenseInfo.getAgency()
);
}

public static List<LicenseInfoResponse> from(List<LicenseInfo> licenseInfos) {
return licenseInfos.stream()
.map(LicenseInfoResponse::from)
.collect(Collectors.toList());
}
}


Loading