Skip to content

Commit b4736be

Browse files
authored
Merge pull request #115 from 9oormthon-univ/feat/#110
#110 Feat: 사용자와 연관된 로드맵 삭제
2 parents b5efe69 + 56a6517 commit b4736be

File tree

3 files changed

+24
-1
lines changed

3 files changed

+24
-1
lines changed

src/main/java/next/career/domain/roadmap/controller/RoadmapController.java

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@
2323
@RequestMapping("/roadmap")
2424
public class RoadmapController {
2525

26-
private final JobService jobService;
2726
private final RoadmapService roadmapService;
2827

2928
// 맞춤형 로드맵 추천
@@ -175,6 +174,16 @@ public ApiResponse<RoadmapDto.RoadmapActionRecommendResponse> recommendRoadmapAc
175174
return ApiResponse.success(response);
176175
}
177176

177+
@DeleteMapping
178+
@Operation(
179+
summary = "로드맵 삭제",
180+
description = "해당 사용자에게 연관된 로드맵 및 관련 항목을 전부 삭제합니다."
181+
)
182+
public ApiResponse<?> deleteRoadmap(
183+
@AuthenticationPrincipal AuthDetails authDetails
184+
) {
185+
roadmapService.deleteRoadmap(authDetails.getUser());
186+
return ApiResponse.success("로드맵이 성공적으로 삭제되었습니다.");
178187
@PostMapping("/certification")
179188
@Operation(
180189
summary = "사용자 맞춤형 AI 자격증 추천",

src/main/java/next/career/domain/roadmap/service/RoadmapService.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -156,4 +156,10 @@ public void updateRoadmapCategory(Long roadmapId, String category) {
156156

157157
roadMap.updateCategory(category);
158158
}
159+
160+
@Transactional
161+
public void deleteRoadmap(Member member) {
162+
member.clearRoadMapList();
163+
member.clearRoadMapInput();
164+
}
159165
}

src/main/java/next/career/domain/user/entity/Member.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -126,4 +126,12 @@ public void createMemberDetail(MemberDetail memberDetail1) {
126126
public void updateMemberOccupation(MemberOccupation memberOccupation) {
127127
this.memberOccupationList.add(memberOccupation);
128128
}
129+
130+
public void clearRoadMapInput() {
131+
this.roadmapInput = null;
132+
}
133+
134+
public void clearRoadMapList() {
135+
this.roadMapList.clear();
136+
}
129137
}

0 commit comments

Comments
 (0)