diff --git a/data/src/main/java/com/nto/data/models/cards/VisitCardWrapper.kt b/data/src/main/java/com/nto/data/models/cards/VisitCardWrapper.kt new file mode 100644 index 0000000..1bdd8cf --- /dev/null +++ b/data/src/main/java/com/nto/data/models/cards/VisitCardWrapper.kt @@ -0,0 +1,6 @@ +package com.nto.data.models.cards + +data class VisitCardWrapper( + val data: List?, + val isUnauthorized: Boolean = false +) diff --git a/data/src/main/java/com/nto/data/repository/DataRepository.kt b/data/src/main/java/com/nto/data/repository/DataRepository.kt index cf12964..d57f924 100644 --- a/data/src/main/java/com/nto/data/repository/DataRepository.kt +++ b/data/src/main/java/com/nto/data/repository/DataRepository.kt @@ -2,10 +2,13 @@ package com.nto.data.repository import com.nto.data.models.LoginResult import com.nto.data.models.UserDTO +import com.nto.data.models.cards.VisitCardDTO +import com.nto.data.models.cards.VisitCardWrapper interface DataRepository { suspend fun auth(login: String, password: String): LoginResult suspend fun saveToken(token: String) suspend fun getToken(): String suspend fun getInfo(): UserDTO + suspend fun getVisits(id: String?): VisitCardWrapper } \ No newline at end of file diff --git a/data/src/main/java/com/nto/data/repository/DataRepositoryImpl.kt b/data/src/main/java/com/nto/data/repository/DataRepositoryImpl.kt index 362ca37..28e550b 100644 --- a/data/src/main/java/com/nto/data/repository/DataRepositoryImpl.kt +++ b/data/src/main/java/com/nto/data/repository/DataRepositoryImpl.kt @@ -4,6 +4,7 @@ import android.content.Context import android.content.Context.MODE_PRIVATE import com.nto.data.models.LoginResult import com.nto.data.models.UserDTO +import com.nto.data.models.cards.VisitCardWrapper import com.nto.data.utils.Provider import dagger.hilt.android.qualifiers.ApplicationContext import okhttp3.Credentials @@ -34,4 +35,13 @@ class DataRepositoryImpl @Inject constructor(@ApplicationContext private val con else UserDTO(isError = true, isUnauthorized = result.code() == 403) } + override suspend fun getVisits(id: String): VisitCardWrapper { + val result = Provider.provideRetrofit().getVisits(getToken()).execute() + return if (result.isSuccessful) { + VisitCardWrapper(result.body()!!) + } else { + VisitCardWrapper(null, true) + } + } + } \ No newline at end of file diff --git a/data/src/main/java/com/nto/data/utils/RetrofitApi.kt b/data/src/main/java/com/nto/data/utils/RetrofitApi.kt index 620632d..7e1ba34 100644 --- a/data/src/main/java/com/nto/data/utils/RetrofitApi.kt +++ b/data/src/main/java/com/nto/data/utils/RetrofitApi.kt @@ -1,6 +1,7 @@ package com.nto.data.utils import com.nto.data.models.UserDTO +import com.nto.data.models.cards.VisitCardDTO import okhttp3.ResponseBody import retrofit2.Call import retrofit2.http.GET @@ -12,4 +13,7 @@ interface RetrofitApi { @GET("employee/info") fun getInfo(@Header("Authorization") token: String): Call + + @GET("visits/{login}/visits") + fun getVisits(@Header("Authorization") token: String): Call> } \ No newline at end of file