Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
67 commits
Select commit Hold shift + click to select a range
452c8fe
[FIX] 인기 소설 조회시 필드 추가
May 31, 2026
5eaf1be
[FIX] 피드 도메인에서 인기 피드 필드 제거
May 31, 2026
a81a572
Merge pull request #515 from Team-WSS/fix/#514
ljy1348 May 31, 2026
fb9302b
[REFACTOR] 지금 뜨는 글 장르 이미지가 아니라, 장르 값을 반환하도록 수정
GiJungPark Jun 8, 2026
3187145
[REFACTOR] 차단 ID 조회 시, 2번 SELECT가 아닌 1번의 SELECT로 대상 목록 조회하도록 수정
GiJungPark Jun 8, 2026
982f7c0
[REFACTOR] 지금 뜨는 글 조회 메서드 명을 알기 쉽게 변경
GiJungPark Jun 8, 2026
f0e007d
[REFACTOR] 장르 이미지 정책 변경으로 장르 이미지 url에서 장르 네임으로 반환값 변경
ljy1348 Jun 8, 2026
cb7d0b8
Merge pull request #518 from Team-WSS/refactor/#517
GiJungPark Jun 8, 2026
427fe19
Merge branch 'dev' of https://github.com/Team-WSS/WSS-Server into ref…
GiJungPark Jun 8, 2026
6da2026
[REFACTOR] 사용하지 않은 소스코드 삭제
GiJungPark Jun 8, 2026
2fe563e
Merge pull request #519 from Team-WSS/refactor#516
GiJungPark Jun 8, 2026
6d9d6b9
[REFACTOR] 지금 뜨는 글 API 반환 값에 소설 제목 추가
GiJungPark Jun 8, 2026
fde6024
Merge pull request #521 from Team-WSS/refactor#516
GiJungPark Jun 8, 2026
f1ca8e6
[REFACTOR] 지금 뜨는 글은 소설이 매핑된 피드만 포함되도록 수정
GiJungPark Jun 8, 2026
bacd710
Merge pull request #522 from Team-WSS/refactor#516
GiJungPark Jun 8, 2026
2bf2173
[FIX] 인기 키워드 조회시 로그인 체크 제거(permit all)
ljy1348 Jun 8, 2026
5fc3925
[REFACTOR] 오늘의 발견 조회시 novelGenres필드 제거(미사용)
ljy1348 Jun 8, 2026
7c4e1c5
[REFACTOR] 피드 생성 로직을 Application으로 이전
GiJungPark Jun 9, 2026
adcea73
[REFACTOR] 피드 업데이트 로직을 Application으로 이전
GiJungPark Jun 9, 2026
c7dcc0a
[REFACTOR] 피드 수정시 피드 작성자가 본인인지 확인하는 로직을 Service로 이전
GiJungPark Jun 9, 2026
252c873
[CHORE] FeedFindApplication을 Feed 패키지 내부로 이전
GiJungPark Jun 9, 2026
6534217
[REFACTOR] 피드 삭제 로직 Application으로 분리 및 벌크 DELETE로 좋아요 및 댓글 내역을 삭제하도록 수정
GiJungPark Jun 9, 2026
bdefe88
Merge pull request #524 from Team-WSS/fix/#523
GiJungPark Jun 9, 2026
0975348
[FIX] 개발 CI / CD 수정
GiJungPark Jun 10, 2026
f7c3e0e
Merge pull request #526 from Team-WSS/fix/#525
GiJungPark Jun 10, 2026
1d12b05
[FIX] Dockerfile 수정
GiJungPark Jun 10, 2026
33e3c1b
Merge pull request #527 from Team-WSS/fix/#525
GiJungPark Jun 10, 2026
4f8c55c
[FIX] 잘못 작성한 환경변수 명 수정
GiJungPark Jun 10, 2026
26f28d4
Merge pull request #528 from Team-WSS/fix/#525
GiJungPark Jun 10, 2026
d74b133
[FIX] 환경 변수를 전체 불러오고 파싱하도록 수정
GiJungPark Jun 10, 2026
3b09d75
Merge pull request #529 from Team-WSS/fix/#525
GiJungPark Jun 10, 2026
26014e0
[FIX] 환경 변수를 전체 불러오고 파싱하도록 수정
GiJungPark Jun 10, 2026
7692a33
Merge pull request #530 from Team-WSS/fix/#525
GiJungPark Jun 10, 2026
626969f
[FIX] 환경 변수를 전체 불러오고 파싱하도록 수정
GiJungPark Jun 10, 2026
994ea30
Merge pull request #531 from Team-WSS/fix/#525
GiJungPark Jun 10, 2026
c249db5
[FIX] 운영 Deploy 수정
GiJungPark Jun 10, 2026
50913fd
Merge pull request #532 from Team-WSS/fix/#525
GiJungPark Jun 10, 2026
e2f4c16
[REFACTOR] 피드 좋아요를 누른 경우 이벤트로 동작하도록 수정
GiJungPark Jun 11, 2026
86976c7
[FIX] /feeds/{feedId}/likes 에서 피드 접근 가능 여부를 필터에서 체크하는 부분 삭제
GiJungPark Jun 11, 2026
8fe4a82
[REFACTOR] 좋아요 취소 로직을 Application으로 이전
GiJungPark Jun 11, 2026
fef698d
[REFCATOR] Novel, User에 분산되어 있던 피드 로직을 피드 컨트롤러로 이전
GiJungPark Jun 11, 2026
333cc98
[REFACTOR] FeedService를 직접 호출하는 로직을 Application을 거치도록 변경
GiJungPark Jun 12, 2026
6ba21e1
[REFCATOR] 피드 단건 조회 로직 Application에서 Repository를 사용하지 않게 수정
GiJungPark Jun 13, 2026
a40b422
[REFACTOR] JPQL를 QueryDSL로 전환 및 의존성 분리
GiJungPark Jun 15, 2026
2a23b7f
[REFACTOR] 피드 조회시 발생하는 N+1 문제 Bulk SELECT로 수정
GiJungPark Jun 15, 2026
f8ffb28
[REFACTOR] 사용하지 않는 댓글 서비스 삭제
GiJungPark Jun 15, 2026
c6bc55b
[REFACTOR] Projection을 사용하는 쿼리 Repository 분리
GiJungPark Jun 15, 2026
5f0301c
[REFACTOR] 사용자 피드 조회시, JOIN 및 서브쿼리로 불러오도록 수정
GiJungPark Jun 15, 2026
dfb36e5
[REFACTOR] FeedFIndAPplication에서 사용하지 않는 Novel 로직 삭제
GiJungPark Jun 15, 2026
11bb69c
[REMOVE] 사용하지 않는 FeedService 삭제
GiJungPark Jun 15, 2026
6e2889a
[REMOVE] 사용하지 않는 ReportService 삭제
GiJungPark Jun 15, 2026
76ac14f
[FIX] PopularFeedService Transactional 누락건 수정
GiJungPark Jun 15, 2026
f59711a
[FIX] 비로그인한 사용자의 경우 사용자 프로필에서 비공개 게시글을 볼 수 있던 문제 수정
GiJungPark Jun 15, 2026
af8e0ce
[REFACTOR] 인기있는 피드 조회시, Novel까지 한번에 조회하도록 수정
GiJungPark Jun 15, 2026
782a376
[REFACTOR] 피드 전체 조회 / 인기글 조회 로직 분기 처리를 Service에서 Application으로 이전
GiJungPark Jun 15, 2026
d3487f5
[REFACTOR] 회원 탈퇴시, 피드의 UserId를 -1로 변경하는 로직을 이벤트로 리팩토링
GiJungPark Jun 15, 2026
bbf7100
[REFACTOR] Application에 작성된 이미지 업로드 로직을 Service로 이전 및 사용하지 않는 Reposit…
GiJungPark Jun 15, 2026
5a7001a
[RENAME] 사용하지 않는 관심글 로직 삭제
GiJungPark Jun 16, 2026
d9328ed
[REAFCTOR] List 반환에서 Slice 반환으로 변경 및 오래된 순 정렬시 피드 잘못 반환되던 쿼리 수정
GiJungPark Jun 16, 2026
613d313
[REFACTOR] Feed 로직을 Feed 패키지로 이전 및 getOwnedFeedOrException 인자 잘못 작성된 …
GiJungPark Jun 16, 2026
e4ec49a
[RENAME] 사용하지 않는 피드 카테고리 로직 삭제
GiJungPark Jun 17, 2026
ace3ce7
[REFACTOR] FeedFindApplication에서 사용하지 않는 서재 서비스 제거
GiJungPark Jun 17, 2026
851ff80
[REMOVE] feed 내에서 피드, 댓글, 신고 구분
GiJungPark Jun 17, 2026
67827ab
[FEAT] 소설 필터 검색 시 플랫폼 필터 추가
ljy1348 Jun 17, 2026
9cd2d76
[FIX] SearchNovelApplication.java 파일 빠진거 추가
ljy1348 Jun 17, 2026
99eccdd
Merge pull request #536 from Team-WSS/feat/#535
ljy1348 Jun 18, 2026
d3cede4
Merge pull request #534 from Team-WSS/refactor/#520
GiJungPark Jun 19, 2026
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
15 changes: 15 additions & 0 deletions .github/workflows/CD-develop.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,13 @@ jobs:
shell: bash

- name: Build with Gradle
env:
DEV_DB_NAME: ${{ secrets.DEV_DB_NAME }}
DEV_DB_PWD: ${{ secrets.DEV_DB_PWD }}
APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }}
DEV_APPLE_KEY_NAME: ${{ secrets.DEV_APPLE_KEY_NAME }}
S3_ACCESS_KEY: ${{ secrets.S3_ACCESS_KEY }}
S3_SECRET_KEY: ${{ secrets.S3_SECRET_KEY }}
run: ./gradlew build -x test -Dspring.profiles.active=dev
shell: bash

Expand All @@ -54,10 +61,18 @@ jobs:
steps:
- name: Run Docker container
uses: appleboy/ssh-action@master
env:
DEV_DB_NAME: ${{ secrets.DEV_DB_NAME }}
DEV_DB_PWD: ${{ secrets.DEV_DB_PWD }}
APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }}
DEV_APPLE_KEY_NAME: ${{ secrets.DEV_APPLE_KEY_NAME }}
S3_ACCESS_KEY: ${{ secrets.S3_ACCESS_KEY }}
S3_SECRET_KEY: ${{ secrets.S3_SECRET_KEY }}
with:
host: ${{ secrets.DEVELOP_SERVER_IP }}
username: ${{ secrets.DEVELOP_SERVER_USER }}
key: ${{ secrets.DEVELOP_SERVER_KEY }}
envs: DEV_DB_NAME,DEV_DB_PWD,APPLE_TEAM_ID,DEV_APPLE_KEY_NAME,S3_ACCESS_KEY,S3_SECRET_KEY
script: |
cd ~
./deploy.sh
15 changes: 15 additions & 0 deletions .github/workflows/CD.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,13 @@ jobs:
shell: bash

- name: Build with Gradle
env:
PROD_DB_NAME: ${{ secrets.PROD_DB_NAME }}
PROD_DB_PWD: ${{ secrets.PROD_DB_PWD }}
APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }}
PROD_APPLE_KEY_NAME: ${{ secrets.PROD_APPLE_KEY_NAME }}
S3_ACCESS_KEY: ${{ secrets.S3_ACCESS_KEY }}
S3_SECRET_KEY: ${{ secrets.S3_SECRET_KEY }}
run: ./gradlew build -x test -Dspring.profiles.active=prod
shell: bash

Expand All @@ -54,10 +61,18 @@ jobs:
steps:
- name: Run Docker container
uses: appleboy/ssh-action@master
env:
PROD_DB_NAME: ${{ secrets.PROD_DB_NAME }}
PROD_DB_PWD: ${{ secrets.PROD_DB_PWD }}
APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }}
PROD_APPLE_KEY_NAME: ${{ secrets.PROD_APPLE_KEY_NAME }}
S3_ACCESS_KEY: ${{ secrets.S3_ACCESS_KEY }}
S3_SECRET_KEY: ${{ secrets.S3_SECRET_KEY }}
with:
host: ${{ secrets.RELEASE_SERVER_IP }}
username: ${{ secrets.RELEASE_SERVER_USER }}
key: ${{ secrets.RELEASE_SERVER_KEY }}
envs: PROD_DB_NAME,PROD_DB_PWD,APPLE_TEAM_ID,PROD_APPLE_KEY_NAME,S3_ACCESS_KEY,S3_SECRET_KEY
script: |
cd ~
./deploy.sh
7 changes: 7 additions & 0 deletions .github/workflows/CI-develop.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,5 +30,12 @@ jobs:
shell: bash

- name: Build with Gradle
env:
DEV_DB_NAME: ${{ secrets.DEV_DB_NAME }}
DEV_DB_PWD: ${{ secrets.DEV_DB_PWD }}
APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }}
DEV_APPLE_KEY_NAME: ${{ secrets.DEV_APPLE_KEY_NAME }}
S3_ACCESS_KEY: ${{ secrets.S3_ACCESS_KEY }}
S3_SECRET_KEY: ${{ secrets.S3_SECRET_KEY }}
run: ./gradlew build -x test
shell: bash
9 changes: 8 additions & 1 deletion .github/workflows/CI.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,5 +30,12 @@ jobs:
shell: bash

- name: Build with Gradle
env:
PROD_DB_NAME: ${{ secrets.PROD_DB_NAME }}
PROD_DB_PWD: ${{ secrets.PROD_DB_PWD }}
APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }}
PROD_APPLE_KEY_NAME: ${{ secrets.PROD_APPLE_KEY_NAME }}
S3_ACCESS_KEY: ${{ secrets.S3_ACCESS_KEY }}
S3_SECRET_KEY: ${{ secrets.S3_SECRET_KEY }}
run: ./gradlew build -x test
shell: bash
shell: bash
5 changes: 4 additions & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,10 @@ FROM amd64/amazoncorretto:17
WORKDIR /app

COPY config-repo/ /app/config-repo/
RUN test -f /app/config-repo/application-dev.yml \
&& test -f /app/config-repo/application-prod.yml \
&& test -f /app/config-repo/application-common.yml

COPY ./build/libs/WSS-Server-0.0.1-SNAPSHOT.jar /app/websoso.jar

ENTRYPOINT ["java", "-Duser.timezone=Asia/Seoul", "-Dspring.profiles.active=${SPRING_PROFILES_ACTIVE}", "-jar", "websoso.jar"]
ENTRYPOINT ["java", "-Duser.timezone=Asia/Seoul", "-jar", "websoso.jar"]
Original file line number Diff line number Diff line change
Expand Up @@ -3,19 +3,21 @@
import static org.websoso.WSSServer.infrastructure.discord.DiscordWebhookMessageType.WITHDRAW;

import lombok.RequiredArgsConstructor;
import org.springframework.context.ApplicationEventPublisher;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.websoso.WSSServer.infrastructure.discord.DiscordMessageClient;
import org.websoso.WSSServer.infrastructure.discord.DiscordWebhookMessage;
import org.websoso.WSSServer.dto.user.WithdrawalRequest;
import org.websoso.WSSServer.feed.repository.CommentRepository;
import org.websoso.WSSServer.feed.repository.FeedRepository;
import org.websoso.WSSServer.feed.comment.repository.CommentRepository;
import org.websoso.WSSServer.feed.feed.repository.FeedRepository;
import org.websoso.WSSServer.oauth2.service.AppleService;
import org.websoso.WSSServer.oauth2.service.KakaoService;
import org.websoso.WSSServer.oauth2.repository.RefreshTokenRepository;
import org.websoso.WSSServer.notification.service.MessageFormatter;
import org.websoso.WSSServer.user.domain.User;
import org.websoso.WSSServer.user.domain.WithdrawalReason;
import org.websoso.WSSServer.user.event.WithdrawUserEvent;
import org.websoso.WSSServer.user.repository.UserRepository;
import org.websoso.WSSServer.user.repository.WithdrawalReasonRepository;

Expand All @@ -35,6 +37,8 @@ public class AccountApplication {
private final RefreshTokenRepository refreshTokenRepository;
private final KakaoService kakaoService;

private final ApplicationEventPublisher eventPublisher;

public void withdrawUser(User user, WithdrawalRequest withdrawalRequest) {
unlinkSocialAccount(user);

Expand All @@ -47,6 +51,10 @@ public void withdrawUser(User user, WithdrawalRequest withdrawalRequest) {
DiscordWebhookMessage.of(messageContent, WITHDRAW));

withdrawalReasonRepository.save(WithdrawalReason.create(withdrawalRequest.reason()));

eventPublisher.publishEvent(
WithdrawUserEvent.of(user.getUserId())
);
}

private void unlinkSocialAccount(User user) {
Expand All @@ -59,7 +67,6 @@ private void unlinkSocialAccount(User user) {

private void cleanupUserData(Long userId) {
refreshTokenRepository.deleteAll(refreshTokenRepository.findAllByUserId(userId));
feedRepository.updateUserToUnknown(userId);
commentRepository.updateUserToUnknown(userId);
userRepository.deleteById(userId);
}
Expand Down

This file was deleted.

This file was deleted.

Loading
Loading