공지사항

- QueryProjection 사용
- QueryDSL을 통해 DTO로 바로 조회
This commit is contained in:
2025-02-09 22:54:45 +09:00
parent 04f2ac6815
commit 8fb1247279
4 changed files with 39 additions and 32 deletions

View File

@@ -5,8 +5,6 @@ import org.springframework.data.domain.Pageable
import org.springframework.data.repository.findByIdOrNull
import org.springframework.stereotype.Service
import org.springframework.transaction.annotation.Transactional
import java.time.ZoneId
import java.time.format.DateTimeFormatter
@Service
@Transactional(readOnly = true)
@@ -46,25 +44,11 @@ class ServiceNoticeService(private val repository: ServiceServiceNoticeRepositor
fun getNoticeList(pageable: Pageable, timezone: String): GetNoticeResponse {
val totalCount = repository.getNoticeTotalCount()
val noticeList = repository.getNoticeList(pageable)
.asSequence()
.map {
val createdAt = it.createdAt!!
.atZone(ZoneId.of("UTC"))
.withZoneSameInstant(ZoneId.of(timezone))
NoticeItem(
it.id!!,
it.title,
it.content,
createdAt.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))
)
}
.toList()
return GetNoticeResponse(totalCount, noticeList)
}
fun getLatestNotice(): NoticeTitleItem? {
fun getLatestNotice(): NoticeItem? {
return repository.getLatestNotice()
}
}