Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
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
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ bin/

### IntelliJ IDEA ###
.env
.oci-keys/
.idea
*.iws
*.iml
Expand Down

This file was deleted.

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -35,15 +35,6 @@ public record StudentCouncilLoginResponse(
String majorName,

@Schema(description = "학생회 이름", example = "가천대학교 총학생회")
String councilName,

@Schema(description = "학생회 닉네임", example = "CUBE")
String councilNickname,

@Schema(description = "학생회 프로필 이미지 url", example = "https://www.example.com.png")
String councilProfileImageUrl,

@Schema(description = "학생회 대표자 이름", example = "한승현")
String councilPresident
String councilName
) {
}

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,8 @@
import org.springframework.stereotype.Component;

import com.campus.campus.domain.council.application.dto.request.StudentCouncilSignUpRequest;
import com.campus.campus.domain.council.application.dto.response.StudentCouncilChangeProfileImageResponse;
import com.campus.campus.domain.council.application.dto.response.StudentCouncilFindIdResponse;
import com.campus.campus.domain.council.application.dto.response.StudentCouncilLoginResponse;
import com.campus.campus.domain.council.application.dto.response.StudentCouncilNicknameResponse;
import com.campus.campus.domain.council.domain.entity.StudentCouncil;
import com.campus.campus.domain.school.domain.entity.College;
import com.campus.campus.domain.school.domain.entity.Major;
Expand All @@ -17,7 +15,7 @@

@Component
@RequiredArgsConstructor
public class StudentCouncilMapper {
public class StudentCouncilLoginMapper {
private final SecurityConfig securityConfig;

public StudentCouncil createStudentCouncil(StudentCouncilSignUpRequest studentCouncilSignUpRequest, School school,
Expand Down Expand Up @@ -49,10 +47,7 @@ public StudentCouncilLoginResponse toStudentCouncilLoginResponse(StudentCouncil
studentCouncil.getSchool().getSchoolName(),
studentCouncil.getCollege() != null ? studentCouncil.getCollege().getCollegeName() : null,
studentCouncil.getMajor() != null ? studentCouncil.getMajor().getMajorName() : null,
studentCouncil.getCouncilName(),
studentCouncil.getCouncilNickname(),
studentCouncil.getCouncilProfileImageUrl(),
studentCouncil.getCouncilPresident()
studentCouncil.getCouncilName()
);
}

Expand All @@ -61,20 +56,4 @@ public StudentCouncilFindIdResponse toStudentCouncilFindIdResponse(String loginI
loginId
);
}

public StudentCouncilNicknameResponse toStudentCouncilNicknameResponse(StudentCouncil studentCouncil) {
return new StudentCouncilNicknameResponse(
studentCouncil.getCouncilNickname(),
studentCouncil.getCouncilName()
);
}

public StudentCouncilChangeProfileImageResponse toStudentCouncilChangeProfileImageResponse(
StudentCouncil studentCouncil) {
return new StudentCouncilChangeProfileImageResponse(
studentCouncil.getId(),
studentCouncil.getCouncilName(),
studentCouncil.getCouncilProfileImageUrl()
);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
import com.campus.campus.domain.council.application.exception.PrecautionNotAgreeException;
import com.campus.campus.domain.council.application.exception.SignupEmailNotFoundException;
import com.campus.campus.domain.council.application.exception.StudentCouncilNotFoundException;
import com.campus.campus.domain.council.application.mapper.StudentCouncilMapper;
import com.campus.campus.domain.council.application.mapper.StudentCouncilLoginMapper;
import com.campus.campus.domain.council.application.util.CouncilNameGenerator;
import com.campus.campus.domain.council.domain.entity.StudentCouncil;
import com.campus.campus.domain.council.domain.repository.StudentCouncilRepository;
Expand Down Expand Up @@ -58,7 +58,7 @@ public class CouncilLoginService {
private final SchoolRepository schoolRepository;
private final CollegeRepository collegeRepository;
private final MajorRepository majorRepository;
private final StudentCouncilMapper studentCouncilMapper;
private final StudentCouncilLoginMapper studentCouncilLoginMapper;
private final EmailVerificationRepository emailVerificationRepository;
private final JwtProvider jwtProvider;
private final SecurityConfig securityConfig;
Expand Down Expand Up @@ -90,7 +90,7 @@ public void signUp(StudentCouncilSignUpRequest studentCouncilSignUpRequest) {

CouncilScope scope = validateCouncilScope(studentCouncilSignUpRequest, school);

StudentCouncil studentCouncil = studentCouncilMapper.createStudentCouncil(
StudentCouncil studentCouncil = studentCouncilLoginMapper.createStudentCouncil(
studentCouncilSignUpRequest, school, scope.college, scope.major);

String councilName = councilNameGenerator.buildCouncilName(studentCouncil);
Expand Down Expand Up @@ -122,7 +122,7 @@ public StudentCouncilLoginResponse login(StudentCouncilLoginRequest studentCounc
redisTokenService.setRefreshToken("COUNCIL", String.valueOf(studentCouncil.getId()), refreshToken,
refreshTokenExpirationSeconds);

return studentCouncilMapper.toStudentCouncilLoginResponse(studentCouncil, accessToken, refreshToken);
return studentCouncilLoginMapper.toStudentCouncilLoginResponse(studentCouncil, accessToken, refreshToken);
}

@Transactional
Expand All @@ -139,7 +139,7 @@ public StudentCouncilFindIdResponse findId(String email) {

emailVerification.use();

return studentCouncilMapper.toStudentCouncilFindIdResponse(studentCouncil.getLoginId());
return studentCouncilLoginMapper.toStudentCouncilFindIdResponse(studentCouncil.getLoginId());
}

@Transactional
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,11 @@

import com.campus.campus.domain.council.application.dto.request.StudentCouncilChangeEmailRequest;
import com.campus.campus.domain.council.application.dto.request.StudentCouncilChangePasswordRequest;
import com.campus.campus.domain.council.application.dto.request.StudentCouncilChangeProfileImageRequest;
import com.campus.campus.domain.council.application.dto.request.StudentCouncilNicknameRequest;
import com.campus.campus.domain.council.application.dto.response.StudentCouncilChangeProfileImageResponse;
import com.campus.campus.domain.council.application.dto.response.StudentCouncilNicknameResponse;
import com.campus.campus.domain.council.application.exception.EmailAlreadyExistsException;
import com.campus.campus.domain.council.application.exception.NewPasswordConfirmNotMatchException;
import com.campus.campus.domain.council.application.exception.NewPasswordIsCurrentPasswordException;
import com.campus.campus.domain.council.application.exception.PasswordNotCorrectException;
import com.campus.campus.domain.council.application.exception.StudentCouncilNotFoundException;
import com.campus.campus.domain.council.application.mapper.StudentCouncilMapper;
import com.campus.campus.domain.council.domain.entity.StudentCouncil;
import com.campus.campus.domain.council.domain.repository.StudentCouncilRepository;
import com.campus.campus.domain.mail.application.exception.EmailVerificationNotFoundException;
Expand All @@ -33,7 +28,6 @@ public class CouncilService {
private final StudentCouncilRepository studentCouncilRepository;
private final EmailVerificationRepository emailVerificationRepository;
private final SecurityConfig securityConfig;
private final StudentCouncilMapper studentCouncilMapper;

@Transactional
public void changeEmail(Long councilId, StudentCouncilChangeEmailRequest studentCouncilChangeEmailRequest) {
Expand Down Expand Up @@ -82,32 +76,6 @@ public void changePassword(Long councilId,
studentCouncilRepository.save(studentCouncil);
}

@Transactional
public StudentCouncilNicknameResponse changeCouncilNickname(Long councilId,
StudentCouncilNicknameRequest studentCouncilNicknameRequest) {
StudentCouncil studentCouncil = studentCouncilRepository
.findByIdAndManagerApprovedIsTrueAndDeletedAtIsNull(councilId)
.orElseThrow(StudentCouncilNotFoundException::new);

studentCouncil.updateCouncilNickname(studentCouncilNicknameRequest.councilNickname());
studentCouncilRepository.save(studentCouncil);

return studentCouncilMapper.toStudentCouncilNicknameResponse(studentCouncil);
}

@Transactional
public StudentCouncilChangeProfileImageResponse changeCouncilProfileImage(Long councilId,
StudentCouncilChangeProfileImageRequest studentCouncilChangeProfileImageRequest) {
StudentCouncil studentCouncil = studentCouncilRepository
.findByIdAndManagerApprovedIsTrueAndDeletedAtIsNull(councilId)
.orElseThrow(StudentCouncilNotFoundException::new);

studentCouncil.updateCouncilProfileImage(studentCouncilChangeProfileImageRequest.councilProfileImageUrl());
studentCouncilRepository.save(studentCouncil);

return studentCouncilMapper.toStudentCouncilChangeProfileImageResponse(studentCouncil);
}

private EmailVerification getVerifiedChangeEmail(Long councilId, String email) {
EmailVerification emailVerification = emailVerificationRepository
.findTopByEmailAndVerificationTypeAndCouncilIdOrderByEmailVerificationIdDesc(email,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -117,4 +117,4 @@ public void updateCouncilPresident(String president) {
public void managerApprove() {
this.managerApproved = true;
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -44,4 +44,11 @@ Optional<StudentCouncil> findByIdWithDetailsAndManagerApprovedIsTrueAndDeletedAt
boolean existsByEmailAndDeletedAtIsNotNull(String email);

boolean existsByLoginIdAndManagerApprovedIsTrueAndDeletedAtIsNull(String loginId);

Optional<StudentCouncil> findByMajor_MajorId(Long majorId);

Optional<StudentCouncil> findByCollege_CollegeId(Long collegeId);

Optional<StudentCouncil> findBySchool_SchoolId(Long schoolId);

}
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,6 @@

import com.campus.campus.domain.council.application.dto.request.StudentCouncilChangeEmailRequest;
import com.campus.campus.domain.council.application.dto.request.StudentCouncilChangePasswordRequest;
import com.campus.campus.domain.council.application.dto.request.StudentCouncilChangeProfileImageRequest;
import com.campus.campus.domain.council.application.dto.request.StudentCouncilNicknameRequest;
import com.campus.campus.domain.council.application.dto.response.StudentCouncilChangeProfileImageResponse;
import com.campus.campus.domain.council.application.dto.response.StudentCouncilNicknameResponse;
import com.campus.campus.domain.council.application.service.CouncilService;
import com.campus.campus.global.annotation.CurrentCouncilId;
import com.campus.campus.global.common.response.CommonResponse;
Expand Down Expand Up @@ -44,25 +40,4 @@ public CommonResponse<Void> changePassword(@CurrentCouncilId Long councilId,

return CommonResponse.success(StudentCouncilResponseCode.CHANGE_PASSWORD_SUCCESS);
}

@PatchMapping("/change/nickname")
@Operation(summary = "학생회 닉네임 변경")
public CommonResponse<StudentCouncilNicknameResponse> changeNickname(@CurrentCouncilId Long councilId,
@Valid @RequestBody StudentCouncilNicknameRequest studentCouncilNicknameRequest) {
StudentCouncilNicknameResponse response = councilService.changeCouncilNickname(councilId,
studentCouncilNicknameRequest);

return CommonResponse.success(StudentCouncilResponseCode.CHANGE_NICKNAME_SUCCESS, response);
}

@PatchMapping("/change/image")
@Operation(summary = "학생회 프로필 이미지 변경")
public CommonResponse<StudentCouncilChangeProfileImageResponse> changeProfileImage(
@CurrentCouncilId Long councilId,
@Valid @RequestBody StudentCouncilChangeProfileImageRequest studentCouncilChangeProfileImageRequest) {
StudentCouncilChangeProfileImageResponse response = councilService.changeCouncilProfileImage(councilId,
studentCouncilChangeProfileImageRequest);

return CommonResponse.success(StudentCouncilResponseCode.CHANGE_PROFILE_IMAGE_SUCCESS, response);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,6 @@ public enum StudentCouncilResponseCode implements ResponseCodeInterface {
FIND_PASSWORD_SUCCESS(200, HttpStatus.OK, "비밀번호 재설정에 성공했습니다."),
CHANGE_EMAIL_SUCCESS(200, HttpStatus.OK, "이메일 변경에 성공했습니다."),
CHANGE_PASSWORD_SUCCESS(200, HttpStatus.OK, "비밀번호 변경에 성공했습니다."),
CHANGE_NICKNAME_SUCCESS(200, HttpStatus.OK, "학생회 닉네임 변경에 성공했습니다."),
CHANGE_PROFILE_IMAGE_SUCCESS(200,HttpStatus.OK,"학생회 프로필 이미지 변경에 성공했습니다."),
COUNCIL_WITHDRAW_SUCCESS(200, HttpStatus.OK, "학생회 회원탈퇴에 성공했습니다.");

private final int code;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,6 @@ public record GetPostForUserResponse(

boolean isLiked,

boolean isEnded,

List<String> images
) {
}
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ public record PostListItemResponse(
LocalDateTime endDateTime,
String thumbnailImageUrl,
ThumbnailIcon thumbnailIcon,
boolean liked,
boolean isEnded
boolean liked
) {
}
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package com.campus.campus.domain.councilpost.application.mapper;

import java.time.LocalDateTime;
import java.time.ZoneId;
import java.util.Collections;
import java.util.List;

Expand Down Expand Up @@ -32,11 +31,7 @@
@Component
@RequiredArgsConstructor
public class StudentCouncilPostMapper {
private static final ZoneId KST = ZoneId.of("Asia/Seoul");

public PostListItemResponse toPostListItemResponse(StudentCouncilPost post, boolean isLiked) {
LocalDateTime now = LocalDateTime.now(KST);

return new PostListItemResponse(
post.getId(),
post.getCategory(),
Expand All @@ -46,8 +41,7 @@ public PostListItemResponse toPostListItemResponse(StudentCouncilPost post, bool
post.isEvent() ? post.getStartDateTime() : post.getEndDateTime(),
post.getThumbnailImageUrl(),
post.getThumbnailIcon(),
isLiked,
post.isClosed(now)
isLiked
);
}

Expand Down Expand Up @@ -140,9 +134,7 @@ public GetPostDetailResponse toGetPostDetailResponse(StudentCouncilPost post, Li

public GetPostForUserResponse toGetPostForUserResponse(StudentCouncilPost post, List<String> images,
Long currentUserId, boolean isLiked) {
LocalDateTime now = LocalDateTime.now(KST);
var writer = post.getWriter();

var builder = GetPostForUserResponse.builder()
.id(post.getId())
.writerId(writer.getId())
Expand All @@ -155,7 +147,6 @@ public GetPostForUserResponse toGetPostForUserResponse(StudentCouncilPost post,
.thumbnailImageUrl(post.getThumbnailImageUrl())
.thumbnailIcon(post.getThumbnailIcon())
.isLiked(isLiked)
.isEnded(post.isClosed(now))
.images(images != null ? images : Collections.emptyList());

if (post.isEvent()) {
Expand Down
Loading
Loading