Skip to content

Commit

Permalink
[feat] 로그인한 사용자가 해당 도시 보관했는지 확인 서비스 로직 구현
Browse files Browse the repository at this point in the history
related to: #127
  • Loading branch information
jo0oy committed Jan 26, 2024
1 parent 152bc7e commit aaf59ae
Showing 1 changed file with 22 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
import com.haejwo.tripcometrue.domain.store.dto.request.CityStoreRequestDto;
import com.haejwo.tripcometrue.domain.store.dto.request.PlaceStoreRequestDto;
import com.haejwo.tripcometrue.domain.store.dto.request.TripRecordStoreRequestDto;
import com.haejwo.tripcometrue.domain.store.dto.response.CheckCityStoredResponseDto;
import com.haejwo.tripcometrue.domain.store.dto.response.CityStoreResponseDto;
import com.haejwo.tripcometrue.domain.store.dto.response.PlaceStoreResponseDto;
import com.haejwo.tripcometrue.domain.store.dto.response.TripRecordStoreResponseDto;
Expand All @@ -30,6 +31,8 @@
import com.haejwo.tripcometrue.global.springsecurity.PrincipalDetails;
import jakarta.transaction.Transactional;
import java.util.List;
import java.util.Objects;

import lombok.RequiredArgsConstructor;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
Expand Down Expand Up @@ -143,6 +146,25 @@ public void unstoreTripRecord(PrincipalDetails principalDetails, Long tripRecord
tripRecordStoreRepository.delete(tripRecordStore);
}

public CheckCityStoredResponseDto checkCityStoredByLoginMember(PrincipalDetails principalDetails, Long cityId) {

if (Objects.isNull(principalDetails.getMember())) {
return CheckCityStoredResponseDto.builder()
.isStored(false)
.build();
}

Long memberId = principalDetails.getMember().getId();

return CheckCityStoredResponseDto.builder()
.isStored(
cityStoreRepository
.findByMemberIdAndCityId(memberId, cityId)
.isPresent()
)
.build();
}

public Page<CityStoreResponseDto> getStoredCities(PrincipalDetails principalDetails, Pageable pageable) {
Page<CityStore> storedCities = cityStoreRepository.findByMember(principalDetails.getMember(), pageable);
return storedCities.map(CityStoreResponseDto::fromEntity);
Expand Down

0 comments on commit aaf59ae

Please sign in to comment.