@@ -3,33 +3,25 @@ package dsm.pick2024.domain.attendance.service
33import dsm.pick2024.domain.attendance.port.`in`.QueryClassAllAttendanceUseCase
44import dsm.pick2024.domain.attendance.port.out.QueryAttendancePort
55import dsm.pick2024.domain.attendance.presentation.dto.response.QueryAllAttendanceResponse
6- import dsm.pick2024.domain.classroom.port.`in`.ClassroomFinderUseCase
7- import org.springframework.dao.EmptyResultDataAccessException
6+ import dsm.pick2024.domain.classroom.port.out.QueryClassroomPort
87import org.springframework.stereotype.Service
98import org.springframework.transaction.annotation.Transactional
109
1110@Service
1211class QueryClassAllAttendanceService (
1312 private val queryAttendancePort : QueryAttendancePort ,
14- private val classroomFinderUseCase : ClassroomFinderUseCase
13+ private val queryClassroomPort : QueryClassroomPort
1514) : QueryClassAllAttendanceUseCase {
1615 @Transactional(readOnly = true )
1716 override fun queryClassAllAttendance (grade : Int , classNum : Int ) =
1817 queryAttendancePort.findByGradeAndClassNum(grade, classNum)
19- .map { it ->
18+ .map {
2019 val userId = it.userId
21- val classroomName = try {
22- val classroom = classroomFinderUseCase.findOKClassroomOrThrow(userId)
23- classroom.classroomName ? : " "
24- } catch (e: EmptyResultDataAccessException ) {
25- " "
26- }
20+ val classroomName = queryClassroomPort.findOKClassroom(userId)?.classroomName ? : " "
2721
28- with (it) {
29- QueryAllAttendanceResponse (
30- it,
31- classroomName
32- )
33- }
22+ QueryAllAttendanceResponse (
23+ it,
24+ classroomName
25+ )
3426 }.distinctBy { it.id }.sortedWith(compareBy { it.num })
3527}
0 commit comments