From 1938f2d562f5e5bc7d7a8abfc2620987eaa0a1cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9E=84=EA=B0=80=EB=9E=8C?= <84944117+ImGaram@users.noreply.github.com> Date: Mon, 18 Sep 2023 11:00:48 +0900 Subject: [PATCH] =?UTF-8?q?:sparkles:=20::=20self=20study=20use=20case=20?= =?UTF-8?q?=EC=83=9D=EC=84=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../self_study/CancelSelfStudyUseCase.kt | 12 +++++++++ .../self_study/ChangeSelfStudyLimitUseCase.kt | 18 +++++++++++++ .../self_study/CheckSelfStudyUseCase.kt | 20 +++++++++++++++ .../self_study/GetSelfStudyInfoUseCase.kt | 12 +++++++++ .../self_study/GetSelfStudyListUseCase.kt | 12 +++++++++ .../SearchSelfStudyStudentUseCase.kt | 25 +++++++++++++++++++ .../usecase/self_study/SelfStudyUseCase.kt | 12 +++++++++ 7 files changed, 111 insertions(+) create mode 100644 domain/src/main/java/com/msg/domain/usecase/self_study/CancelSelfStudyUseCase.kt create mode 100644 domain/src/main/java/com/msg/domain/usecase/self_study/ChangeSelfStudyLimitUseCase.kt create mode 100644 domain/src/main/java/com/msg/domain/usecase/self_study/CheckSelfStudyUseCase.kt create mode 100644 domain/src/main/java/com/msg/domain/usecase/self_study/GetSelfStudyInfoUseCase.kt create mode 100644 domain/src/main/java/com/msg/domain/usecase/self_study/GetSelfStudyListUseCase.kt create mode 100644 domain/src/main/java/com/msg/domain/usecase/self_study/SearchSelfStudyStudentUseCase.kt create mode 100644 domain/src/main/java/com/msg/domain/usecase/self_study/SelfStudyUseCase.kt diff --git a/domain/src/main/java/com/msg/domain/usecase/self_study/CancelSelfStudyUseCase.kt b/domain/src/main/java/com/msg/domain/usecase/self_study/CancelSelfStudyUseCase.kt new file mode 100644 index 00000000..5bb31ab6 --- /dev/null +++ b/domain/src/main/java/com/msg/domain/usecase/self_study/CancelSelfStudyUseCase.kt @@ -0,0 +1,12 @@ +package com.msg.domain.usecase.self_study + +import com.msg.domain.repository.SelfStudyRepository +import javax.inject.Inject + +class CancelSelfStudyUseCase @Inject constructor( + private val selfStudyRepository: SelfStudyRepository +) { + suspend operator fun invoke(role: String) = kotlin.runCatching { + selfStudyRepository.cancelSelfStudy(role = role) + } +} \ No newline at end of file diff --git a/domain/src/main/java/com/msg/domain/usecase/self_study/ChangeSelfStudyLimitUseCase.kt b/domain/src/main/java/com/msg/domain/usecase/self_study/ChangeSelfStudyLimitUseCase.kt new file mode 100644 index 00000000..10f177c5 --- /dev/null +++ b/domain/src/main/java/com/msg/domain/usecase/self_study/ChangeSelfStudyLimitUseCase.kt @@ -0,0 +1,18 @@ +package com.msg.domain.usecase.self_study + +import com.msg.domain.repository.SelfStudyRepository +import javax.inject.Inject + +class ChangeSelfStudyLimitUseCase @Inject constructor( + private val selfStudyRepository: SelfStudyRepository +) { + suspend operator fun invoke( + role: String, + limit: Int + ) = kotlin.runCatching { + selfStudyRepository.changeSelfStudyLimit( + role = role, + limit = limit + ) + } +} \ No newline at end of file diff --git a/domain/src/main/java/com/msg/domain/usecase/self_study/CheckSelfStudyUseCase.kt b/domain/src/main/java/com/msg/domain/usecase/self_study/CheckSelfStudyUseCase.kt new file mode 100644 index 00000000..26a91aa4 --- /dev/null +++ b/domain/src/main/java/com/msg/domain/usecase/self_study/CheckSelfStudyUseCase.kt @@ -0,0 +1,20 @@ +package com.msg.domain.usecase.self_study + +import com.msg.domain.repository.SelfStudyRepository +import javax.inject.Inject + +class CheckSelfStudyUseCase @Inject constructor( + private val selfStudyRepository: SelfStudyRepository +) { + suspend operator fun invoke( + role: String, + memberId: Long, + selfStudyCheck: Boolean + ) = kotlin.runCatching { + selfStudyRepository.checkSelfStudy( + role = role, + memberId = memberId, + selfStudyCheck = selfStudyCheck + ) + } +} \ No newline at end of file diff --git a/domain/src/main/java/com/msg/domain/usecase/self_study/GetSelfStudyInfoUseCase.kt b/domain/src/main/java/com/msg/domain/usecase/self_study/GetSelfStudyInfoUseCase.kt new file mode 100644 index 00000000..5a081b27 --- /dev/null +++ b/domain/src/main/java/com/msg/domain/usecase/self_study/GetSelfStudyInfoUseCase.kt @@ -0,0 +1,12 @@ +package com.msg.domain.usecase.self_study + +import com.msg.domain.repository.SelfStudyRepository +import javax.inject.Inject + +class GetSelfStudyInfoUseCase @Inject constructor( + private val selfStudyRepository: SelfStudyRepository +) { + suspend operator fun invoke(role: String) = kotlin.runCatching { + selfStudyRepository.getSelfStudyInfo(role = role) + } +} \ No newline at end of file diff --git a/domain/src/main/java/com/msg/domain/usecase/self_study/GetSelfStudyListUseCase.kt b/domain/src/main/java/com/msg/domain/usecase/self_study/GetSelfStudyListUseCase.kt new file mode 100644 index 00000000..127014ca --- /dev/null +++ b/domain/src/main/java/com/msg/domain/usecase/self_study/GetSelfStudyListUseCase.kt @@ -0,0 +1,12 @@ +package com.msg.domain.usecase.self_study + +import com.msg.domain.repository.SelfStudyRepository +import javax.inject.Inject + +class GetSelfStudyListUseCase @Inject constructor( + private val selfStudyRepository: SelfStudyRepository +) { + suspend operator fun invoke(role: String) = kotlin.runCatching { + selfStudyRepository.getSelfStudyList(role = role) + } +} \ No newline at end of file diff --git a/domain/src/main/java/com/msg/domain/usecase/self_study/SearchSelfStudyStudentUseCase.kt b/domain/src/main/java/com/msg/domain/usecase/self_study/SearchSelfStudyStudentUseCase.kt new file mode 100644 index 00000000..44946f74 --- /dev/null +++ b/domain/src/main/java/com/msg/domain/usecase/self_study/SearchSelfStudyStudentUseCase.kt @@ -0,0 +1,25 @@ +package com.msg.domain.usecase.self_study + +import com.msg.domain.repository.SelfStudyRepository +import javax.inject.Inject + +class SearchSelfStudyStudentUseCase @Inject constructor( + private val selfStudyRepository: SelfStudyRepository +) { + suspend operator fun invoke( + role: String, + name: String?, + gender: String?, + classNum: String?, + grade: Int? + ) = kotlin.runCatching { + selfStudyRepository.searchSelfStudyStudent( + role = role, + name = name, + gender = gender, + classNum = classNum, + grade = grade + + ) + } +} \ No newline at end of file diff --git a/domain/src/main/java/com/msg/domain/usecase/self_study/SelfStudyUseCase.kt b/domain/src/main/java/com/msg/domain/usecase/self_study/SelfStudyUseCase.kt new file mode 100644 index 00000000..08182fcd --- /dev/null +++ b/domain/src/main/java/com/msg/domain/usecase/self_study/SelfStudyUseCase.kt @@ -0,0 +1,12 @@ +package com.msg.domain.usecase.self_study + +import com.msg.domain.repository.SelfStudyRepository +import javax.inject.Inject + +class SelfStudyUseCase @Inject constructor( + private val selfStudyRepository: SelfStudyRepository +) { + suspend operator fun invoke(role: String) = kotlin.runCatching { + selfStudyRepository.selfStudy(role = role) + } +} \ No newline at end of file