Skip to content

Commit 0594b6b

Browse files
committed
refactor(recruit-board): Center -> NewCenter, UserCommonAttribute에 따른 조회 로직 변경
1 parent 23e1e5c commit 0594b6b

File tree

2 files changed

+20
-18
lines changed

2 files changed

+20
-18
lines changed

src/main/java/com/somemore/domains/recruitboard/repository/RecruitBoardRepositoryImpl.java

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
import com.querydsl.core.types.dsl.BooleanExpression;
1111
import com.querydsl.jpa.impl.JPAQuery;
1212
import com.querydsl.jpa.impl.JPAQueryFactory;
13-
import com.somemore.domains.center.domain.QCenter;
13+
import com.somemore.center.domain.QNEWCenter;
1414
import com.somemore.domains.location.domain.QLocation;
1515
import com.somemore.domains.location.utils.GeoUtils;
1616
import com.somemore.domains.recruitboard.domain.QRecruitBoard;
@@ -22,6 +22,7 @@
2222
import com.somemore.domains.recruitboard.repository.mapper.RecruitBoardDetail;
2323
import com.somemore.domains.recruitboard.repository.mapper.RecruitBoardWithCenter;
2424
import com.somemore.domains.recruitboard.repository.mapper.RecruitBoardWithLocation;
25+
import com.somemore.user.domain.QUserCommonAttribute;
2526
import java.time.LocalDateTime;
2627
import java.util.List;
2728
import java.util.Optional;
@@ -44,7 +45,8 @@ public class RecruitBoardRepositoryImpl implements RecruitBoardRepository {
4445

4546
private static final QRecruitBoard recruitBoard = QRecruitBoard.recruitBoard;
4647
private static final QLocation location = QLocation.location;
47-
private static final QCenter center = QCenter.center;
48+
private static final QNEWCenter center = QNEWCenter.nEWCenter;
49+
private static final QUserCommonAttribute userCommonAttribute = QUserCommonAttribute.userCommonAttribute;
4850

4951
@Override
5052
public RecruitBoard save(RecruitBoard recruitBoard) {
@@ -79,8 +81,7 @@ public Optional<RecruitBoardWithLocation> findWithLocationById(Long id) {
7981
RecruitBoardWithLocation result = queryFactory
8082
.select(getRecruitBoardWithLocationConstructorExpression())
8183
.from(recruitBoard)
82-
.join(location)
83-
.on(recruitBoard.locationId.eq(location.id))
84+
.join(location).on(recruitBoard.locationId.eq(location.id))
8485
.where(exp)
8586
.fetchOne();
8687

@@ -104,6 +105,7 @@ public Page<RecruitBoardWithCenter> findAllWithCenter(RecruitBoardSearchConditio
104105
.from(recruitBoard)
105106
.where(exp)
106107
.join(center).on(recruitBoard.centerId.eq(center.id))
108+
.join(userCommonAttribute).on(center.userId.eq(userCommonAttribute.userId))
107109
.offset(pageable.getOffset())
108110
.limit(pageable.getPageSize())
109111
.orderBy(toOrderSpecifiers(pageable.getSort()))
@@ -113,7 +115,8 @@ public Page<RecruitBoardWithCenter> findAllWithCenter(RecruitBoardSearchConditio
113115
.select(recruitBoard.count())
114116
.from(recruitBoard)
115117
.where(exp)
116-
.join(center).on(recruitBoard.centerId.eq(center.id));
118+
.join(center).on(recruitBoard.centerId.eq(center.id))
119+
.join(userCommonAttribute).on(center.userId.eq(userCommonAttribute.userId));
117120

118121
return PageableExecutionUtils.getPage(content, pageable, countQuery::fetchOne);
119122
}
@@ -133,6 +136,7 @@ public Page<RecruitBoardDetail> findAllNearby(RecruitBoardNearByCondition condit
133136
.from(recruitBoard)
134137
.join(location).on(recruitBoard.locationId.eq(location.id))
135138
.join(center).on(recruitBoard.centerId.eq(center.id))
139+
.join(userCommonAttribute).on(center.userId.eq(userCommonAttribute.userId))
136140
.where(exp)
137141
.offset(pageable.getOffset())
138142
.limit(pageable.getPageSize())
@@ -144,6 +148,7 @@ public Page<RecruitBoardDetail> findAllNearby(RecruitBoardNearByCondition condit
144148
.from(recruitBoard)
145149
.join(location).on(recruitBoard.locationId.eq(location.id))
146150
.join(center).on(recruitBoard.centerId.eq(center.id))
151+
.join(userCommonAttribute).on(center.userId.eq(userCommonAttribute.userId))
147152
.where(exp);
148153

149154
return PageableExecutionUtils.getPage(content, pageable, countQuery::fetchOne);
@@ -223,7 +228,8 @@ public long updateStatusToClosedForDateRange(LocalDateTime startTime,
223228
}
224229

225230
@Override
226-
public long updateStatusToCompletedForDateRange(LocalDateTime startTime, LocalDateTime endTime) {
231+
public long updateStatusToCompletedForDateRange(LocalDateTime startTime,
232+
LocalDateTime endTime) {
227233
return queryFactory.update(recruitBoard)
228234
.set(recruitBoard.recruitStatus, COMPLETED)
229235
.where(
@@ -415,7 +421,7 @@ private OrderSpecifier<?>[] toOrderSpecifiers(Sort sort) {
415421

416422
private static ConstructorExpression<RecruitBoardWithCenter> getRecruitBoardWithCenterConstructorExpression() {
417423
return Projections.constructor(RecruitBoardWithCenter.class,
418-
recruitBoard, center.name);
424+
recruitBoard, userCommonAttribute.name);
419425
}
420426

421427
private static ConstructorExpression<RecruitBoardWithLocation> getRecruitBoardWithLocationConstructorExpression() {
@@ -425,7 +431,8 @@ private static ConstructorExpression<RecruitBoardWithLocation> getRecruitBoardWi
425431

426432
private static ConstructorExpression<RecruitBoardDetail> getRecruitBoardDetailConstructorExpression() {
427433
return Projections.constructor(RecruitBoardDetail.class,
428-
recruitBoard, location.address, location.latitude, location.longitude, center.name);
434+
recruitBoard, location.address, location.latitude, location.longitude,
435+
userCommonAttribute.name);
429436
}
430437

431438
// private List<RecruitBoardDocument> convertEntityToDocuments(List<RecruitBoard> recruitBoards) {

src/main/java/com/somemore/domains/recruitboard/service/RecruitBoardQueryService.java

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.somemore.domains.recruitboard.service;
22

3-
import com.somemore.domains.center.usecase.query.CenterQueryUseCase;
3+
import static com.somemore.global.exception.ExceptionMessage.NOT_EXISTS_RECRUIT_BOARD;
4+
45
import com.somemore.domains.recruitboard.domain.RecruitBoard;
56
import com.somemore.domains.recruitboard.dto.condition.RecruitBoardNearByCondition;
67
import com.somemore.domains.recruitboard.dto.condition.RecruitBoardSearchCondition;
@@ -14,23 +15,19 @@
1415
import com.somemore.domains.recruitboard.repository.mapper.RecruitBoardWithLocation;
1516
import com.somemore.domains.recruitboard.usecase.RecruitBoardQueryUseCase;
1617
import com.somemore.global.exception.BadRequestException;
18+
import java.util.List;
19+
import java.util.UUID;
1720
import lombok.RequiredArgsConstructor;
1821
import org.springframework.data.domain.Page;
1922
import org.springframework.stereotype.Service;
2023
import org.springframework.transaction.annotation.Transactional;
2124

22-
import java.util.List;
23-
import java.util.UUID;
24-
25-
import static com.somemore.global.exception.ExceptionMessage.NOT_EXISTS_RECRUIT_BOARD;
26-
2725
@RequiredArgsConstructor
2826
@Transactional(readOnly = true)
2927
@Service
3028
public class RecruitBoardQueryService implements RecruitBoardQueryUseCase {
3129

3230
private final RecruitBoardRepository recruitBoardRepository;
33-
private final CenterQueryUseCase centerQueryUseCase;
3431

3532
@Override
3633
public RecruitBoard getById(Long id) {
@@ -70,9 +67,7 @@ public Page<RecruitBoardDetailResponseDto> getRecruitBoardsNearby(
7067

7168
@Override
7269
public Page<RecruitBoardResponseDto> getRecruitBoardsByCenterId(UUID centerId,
73-
RecruitBoardSearchCondition condition) {
74-
centerQueryUseCase.validateCenterExists(centerId);
75-
70+
RecruitBoardSearchCondition condition) {
7671
Page<RecruitBoard> boards = recruitBoardRepository.findAllByCenterId(centerId, condition);
7772
return boards.map(RecruitBoardResponseDto::from);
7873
}

0 commit comments

Comments
 (0)