SmsQueryServiceImpl.java
package com.deveagles.be15_deveagles_be.features.messages.query.service.impl;
import com.deveagles.be15_deveagles_be.common.dto.PagedResult;
import com.deveagles.be15_deveagles_be.common.exception.BusinessException;
import com.deveagles.be15_deveagles_be.common.exception.ErrorCode;
import com.deveagles.be15_deveagles_be.features.messages.query.dto.response.SmsDetailResponse;
import com.deveagles.be15_deveagles_be.features.messages.query.dto.response.SmsListResponse;
import com.deveagles.be15_deveagles_be.features.messages.query.repository.SmsQueryRepository;
import com.deveagles.be15_deveagles_be.features.messages.query.service.SmsQueryService;
import lombok.RequiredArgsConstructor;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.stereotype.Service;
@Service
@RequiredArgsConstructor
public class SmsQueryServiceImpl implements SmsQueryService {
private final SmsQueryRepository smsQueryRepository;
@Override
public PagedResult<SmsListResponse> getSmsList(Long shopId, Pageable pageable) {
Page<SmsListResponse> page = smsQueryRepository.findSmsListByShopId(shopId, pageable);
return PagedResult.from(page);
}
@Override
public SmsDetailResponse getSmsDetail(Long shopId, Long messageId) {
return smsQueryRepository
.findSmsDetailByIdAndShopId(messageId, shopId)
.orElseThrow(() -> new BusinessException(ErrorCode.SMS_NOT_FOUND));
}
}