Skip to content

Commit 729de1c

Browse files
committed
Merge branch 'develop'
2 parents 3a12141 + a7c0b5f commit 729de1c

File tree

14 files changed

+70
-34
lines changed

14 files changed

+70
-34
lines changed

src/main/kotlin/dsm/pick2024/domain/application/service/QueryFloorApplicationService.kt

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ import dsm.pick2024.domain.application.port.out.QueryAllApplicationPort
77
import dsm.pick2024.domain.application.port.out.QueryApplicationPort
88
import dsm.pick2024.domain.application.presentation.dto.response.QueryApplicationResponse
99
import dsm.pick2024.domain.classroom.exception.FloorNotFoundException
10-
import org.joda.time.LocalDate
1110
import org.springframework.stereotype.Service
1211
import org.springframework.transaction.annotation.Transactional
1312

@@ -19,16 +18,11 @@ class QueryFloorApplicationService(
1918

2019
@Transactional(readOnly = true)
2120
override fun queryFloorAndStatusApplication(floor: Int, status: Status): List<QueryApplicationResponse> {
22-
val today = LocalDate.now().dayOfWeek
23-
2421
val applications = when (floor) {
2522
2, 3, 4 -> {
26-
val filteredClassrooms = if (today == 2 || today == 5) {
27-
queryApplicationPort.queryApplicationWithAttendance(floor)
28-
} else {
23+
val filterClassroomList =
2924
queryApplicationPort.findByFloorAndApplicationKind(floor, ApplicationKind.APPLICATION)
30-
}
31-
filteredClassrooms.filter { it.status == status }
25+
filterClassroomList.filter { it.status == status }
3226
}
3327
5 -> {
3428
queryAllApplicationPort.findAllByStatusAndApplicationKind(status, ApplicationKind.APPLICATION)

src/main/kotlin/dsm/pick2024/domain/attendance/enums/AttendanceStatus.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,6 @@ enum class AttendanceStatus {
77
DISALLOWED, // 무단
88
PICNIC, // 현체
99
EMPLOYMENT, // 취업
10-
GO_HOME //귀가
10+
GO_HOME, //귀가
11+
DROPOUT //자퇴
1112
}

src/main/kotlin/dsm/pick2024/domain/attendance/persistence/AttendancePersistenceAdapter.kt

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package dsm.pick2024.domain.attendance.persistence
33
import com.querydsl.jpa.impl.JPAQueryFactory
44
import dsm.pick2024.domain.attendance.domain.Attendance
55
import dsm.pick2024.domain.attendance.entity.QAttendanceJpaEntity
6+
import dsm.pick2024.domain.attendance.enums.AttendanceStatus
67
import dsm.pick2024.domain.attendance.mapper.AttendanceMapper
78
import dsm.pick2024.domain.attendance.persistence.repository.AttendanceRepository
89
import dsm.pick2024.domain.attendance.port.out.AttendancePort
@@ -27,11 +28,15 @@ class AttendancePersistenceAdapter(
2728

2829
override fun findAll() = attendanceJpaRepository.findAll().map { attendanceMapper.toDomain(it) }
2930

30-
override fun findByFloor(floor: Int): List<Attendance>? = attendanceJpaRepository.findByFloor(floor).map {
31-
attendanceMapper.toDomain(
32-
it
33-
)
34-
}
31+
override fun findByFloor(floor: Int): List<Attendance>? =
32+
jpaQueryFactory
33+
.selectFrom(QAttendanceJpaEntity.attendanceJpaEntity)
34+
.where(
35+
QAttendanceJpaEntity.attendanceJpaEntity.floor.eq(floor),
36+
QAttendanceJpaEntity.attendanceJpaEntity.period6.ne(AttendanceStatus.DROPOUT)
37+
)
38+
.fetch()
39+
.map { attendanceMapper.toDomain(it) }
3540

3641
override fun findByGradeAndClassNum(
3742
grade: Int,
@@ -40,7 +45,8 @@ class AttendancePersistenceAdapter(
4045
.selectFrom(QAttendanceJpaEntity.attendanceJpaEntity)
4146
.where(
4247
QAttendanceJpaEntity.attendanceJpaEntity.grade.eq(grade),
43-
QAttendanceJpaEntity.attendanceJpaEntity.classNum.eq(classNum)
48+
QAttendanceJpaEntity.attendanceJpaEntity.classNum.eq(classNum),
49+
QAttendanceJpaEntity.attendanceJpaEntity.period6.ne(AttendanceStatus.DROPOUT)
4450
)
4551
.fetch()
4652
.map { attendanceMapper.toDomain(it) }
@@ -49,7 +55,8 @@ class AttendancePersistenceAdapter(
4955
jpaQueryFactory
5056
.selectFrom(QAttendanceJpaEntity.attendanceJpaEntity)
5157
.where(
52-
QAttendanceJpaEntity.attendanceJpaEntity.club.eq(club)
58+
QAttendanceJpaEntity.attendanceJpaEntity.club.eq(club),
59+
QAttendanceJpaEntity.attendanceJpaEntity.period6.ne(AttendanceStatus.DROPOUT)
5360
)
5461
.fetch()
5562
.map { attendanceMapper.toDomain(it) }

src/main/kotlin/dsm/pick2024/domain/attendance/service/QueryClubAttendanceService.kt

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -39,19 +39,19 @@ class QueryClubAttendanceService(
3939
classNum = it.classNum,
4040
num = it.num,
4141
status = returnStatus,
42-
classroomName = classroomName!!
42+
classroomName = classroomName
4343
)
4444
}.sortedWith(
4545
compareBy({ it.grade }, { it.classNum }, { it.num })
4646
)
4747
}
4848
private fun returnStatus(period: Int, attendance: Attendance): AttendanceStatus {
4949
return when (period) {
50-
6 -> attendance!!.period6
51-
7 -> attendance!!.period7
52-
8 -> attendance!!.period8
53-
9 -> attendance!!.period9
54-
10 -> attendance!!.period10
50+
6 -> attendance.period6
51+
7 -> attendance.period7
52+
8 -> attendance.period8
53+
9 -> attendance.period9
54+
10 -> attendance.period10
5555
else -> throw InvalidPeriodException
5656
}
5757
}

src/main/kotlin/dsm/pick2024/domain/attendance/service/ResetAttendanceService.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ class ResetAttendanceService(
3535

3636
private fun getStatus(currentStatus: AttendanceStatus) =
3737
when (currentStatus) {
38-
AttendanceStatus.PICNIC, AttendanceStatus.EMPLOYMENT -> currentStatus
38+
AttendanceStatus.DROPOUT, AttendanceStatus.PICNIC, AttendanceStatus.EMPLOYMENT -> currentStatus
3939
else -> AttendanceStatus.ATTENDANCE
4040
}
4141
}

src/main/kotlin/dsm/pick2024/domain/schedule/persistence/SchedulePersistenceAdapter.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,4 +56,8 @@ class SchedulePersistenceAdapter(
5656
val entities = schedule.map { scheduleMapper.toEntity(it) }
5757
scheduleRepository.saveAll(entities)
5858
}
59+
60+
override fun deleteAll() {
61+
scheduleRepository.deleteAll()
62+
}
5963
}

src/main/kotlin/dsm/pick2024/domain/schedule/persistence/repository/ScheduleRepository.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,4 +15,6 @@ interface ScheduleRepository : Repository<ScheduleJpaEntity, UUID> {
1515
fun saveAll(entity: Iterable<ScheduleJpaEntity>)
1616

1717
fun findAllByDate(date: LocalDate): List<ScheduleJpaEntity>?
18+
19+
fun deleteAll()
1820
}
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
package dsm.pick2024.domain.schedule.port.`in`
22

33
interface SaveScheduleUseCase {
4-
fun saveNeisInfoToDatabase(start: String, end: String)
4+
fun saveNeisInfoToDatabase()
55
}

src/main/kotlin/dsm/pick2024/domain/schedule/port/out/DeleteSchedulePort.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,6 @@ import java.util.UUID
44

55
interface DeleteSchedulePort {
66
fun deleteById(id: UUID)
7+
8+
fun deleteAll()
79
}

src/main/kotlin/dsm/pick2024/domain/schedule/presentation/ScheduleController.kt

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -68,10 +68,7 @@ class ScheduleController(
6868

6969
@Operation(summary = "나이스 학사일정 저장 api")
7070
@PostMapping("/save")
71-
fun saveSchedule(
72-
@RequestParam(name = "start") start: String,
73-
@RequestParam(name = "end") end: String
74-
) = scheduleUseCase.saveNeisInfoToDatabase(start, end)
71+
fun saveSchedule() = scheduleUseCase.saveNeisInfoToDatabase()
7572

7673
@Operation(summary = "일 별 학사일정조회 api")
7774
@GetMapping("/date")

0 commit comments

Comments
 (0)