Initial commit2
This commit is contained in:
@@ -0,0 +1,13 @@
|
||||
package com.novayaplaneta.domain.usecase
|
||||
|
||||
import com.novayaplaneta.domain.repository.TaskRepository
|
||||
import javax.inject.Inject
|
||||
|
||||
class CompleteTaskUseCase @Inject constructor(
|
||||
private val repository: TaskRepository
|
||||
) {
|
||||
suspend operator fun invoke(taskId: String) {
|
||||
repository.completeTask(taskId)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
package com.novayaplaneta.domain.usecase
|
||||
|
||||
import com.novayaplaneta.domain.model.Schedule
|
||||
import com.novayaplaneta.domain.repository.ScheduleRepository
|
||||
import javax.inject.Inject
|
||||
|
||||
class CreateScheduleUseCase @Inject constructor(
|
||||
private val repository: ScheduleRepository
|
||||
) {
|
||||
suspend operator fun invoke(schedule: Schedule) {
|
||||
repository.createSchedule(schedule)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
package com.novayaplaneta.domain.usecase
|
||||
|
||||
import com.novayaplaneta.domain.model.Schedule
|
||||
import com.novayaplaneta.domain.repository.ScheduleRepository
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
import javax.inject.Inject
|
||||
|
||||
class GetSchedulesUseCase @Inject constructor(
|
||||
private val repository: ScheduleRepository
|
||||
) {
|
||||
operator fun invoke(userId: String): Flow<List<Schedule>> {
|
||||
return repository.getSchedules(userId)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
package com.novayaplaneta.domain.usecase
|
||||
|
||||
import com.novayaplaneta.domain.repository.AIRepository
|
||||
import javax.inject.Inject
|
||||
|
||||
class SendAIMessageUseCase @Inject constructor(
|
||||
private val repository: AIRepository
|
||||
) {
|
||||
suspend operator fun invoke(userId: String, message: String): Result<String> {
|
||||
return repository.sendMessage(userId, message)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user