From e6b74392b054fbf4fd2dfcce6546230fde842db2 Mon Sep 17 00:00:00 2001 From: changha Date: Sat, 25 Nov 2023 19:50:22 +0900 Subject: [PATCH] =?UTF-8?q?feat=20:=20=EC=96=B4=EB=93=9C=EB=AF=BC=20?= =?UTF-8?q?=EB=8F=99=EC=95=84=EB=A6=AC=20=EC=9D=B4=EB=AF=B8=EC=A7=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../back/dto/ClubProfileUpdateDto.java | 23 +++++++++++++++++ .../java/com/donggram/back/entity/Club.java | 25 +++++++++++++++++++ .../donggram/back/service/AdminService.java | 4 +++ 3 files changed, 52 insertions(+) create mode 100644 src/main/java/com/donggram/back/dto/ClubProfileUpdateDto.java diff --git a/src/main/java/com/donggram/back/dto/ClubProfileUpdateDto.java b/src/main/java/com/donggram/back/dto/ClubProfileUpdateDto.java new file mode 100644 index 0000000..29eb052 --- /dev/null +++ b/src/main/java/com/donggram/back/dto/ClubProfileUpdateDto.java @@ -0,0 +1,23 @@ +package com.donggram.back.dto; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Getter; +import lombok.NoArgsConstructor; + +@Getter +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class ClubProfileUpdateDto { + + private Long clubId; + private String college; + private String division; + private String clubName; + private String clubCreated; + private String content; + private String recruitmentPeriod; + private boolean isRecruitment; + private String writer; +} diff --git a/src/main/java/com/donggram/back/entity/Club.java b/src/main/java/com/donggram/back/entity/Club.java index 4b3b529..c859026 100644 --- a/src/main/java/com/donggram/back/entity/Club.java +++ b/src/main/java/com/donggram/back/entity/Club.java @@ -1,5 +1,8 @@ package com.donggram.back.entity; +import com.donggram.back.dto.ClubDetailsDto; +import com.donggram.back.dto.ClubProfileUpdateDto; +import com.donggram.back.dto.ProfileUpdateDto; import com.fasterxml.jackson.annotation.JsonIgnore; import lombok.AllArgsConstructor; import lombok.Builder; @@ -10,6 +13,7 @@ import javax.persistence.*; import java.time.LocalDate; import java.util.ArrayList; +import java.util.Collections; import java.util.List; @Entity @@ -38,6 +42,10 @@ public class Club { @Column(name = "CLUB_RECRUITMENT_PERIOD") private String recruitment_period; + @OneToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "imageClub_id") + private ImageClub imageClub; + //일대다, 양방향 @JsonIgnore @OneToMany(mappedBy = "club") @@ -56,4 +64,21 @@ public void updateClubJoinList(ClubJoin clubJoin){ this.clubJoinList.add(clubJoin); } + public void setImageClub(ImageClub imageClub) { + this.imageClub = imageClub; + } + + public void updateClubProfile(ClubProfileUpdateDto clubProfileUpdateDto) { + this.clubName = clubProfileUpdateDto.getClubName(); +// this.college = clubProfileUpdateDto.getCollege(); +// this.division = clubProfileUpdateDto.getDivision(); +// +// +// +// // 역할 정보를 업데이트 +// if (profileUpdateDto.getRole() != null) { +// this.roles.clear(); // 기존 역할 정보 모두 삭제 +// this.roles.addAll(Collections.singleton(profileUpdateDto.getRole())); // 새로운 역할 정보 추가 +// } + } } diff --git a/src/main/java/com/donggram/back/service/AdminService.java b/src/main/java/com/donggram/back/service/AdminService.java index 32a85cd..1b9a1ac 100644 --- a/src/main/java/com/donggram/back/service/AdminService.java +++ b/src/main/java/com/donggram/back/service/AdminService.java @@ -139,6 +139,7 @@ public ResponseDto getAllClubs() { @Transactional public ResponseDto getClubDetails(Long clubId){ Optional clubRequestOptional = clubRequestRepository.findById(clubId); + System.out.println(clubId); if (clubRequestOptional.isPresent()) { // 동아리 가져옴 @@ -152,6 +153,7 @@ public ResponseDto getClubDetails(Long clubId){ .content(clubRequest.getContent()) .college(clubRequest.getCollege()) .division(clubRequest.getDivision()) + .ClubImage(clubRequest.getImageClub().getUrl()) .isRecruitment(clubRequest.isRecruitment()) .writer(clubRequest.getMember().getName()) .recruitmentPeriod(clubRequest.getRecruitment_period()) @@ -198,6 +200,8 @@ public ResponseDto approve(Long clubId) { .clubCreated(clubRequest.getClub_created()) .build(); + club.setImageClub(clubRequest.getImageClub()); + clubRepository.save(club); ClubJoin clubJoin = ClubJoin.builder()