Merge remote-tracking branch 'origin/master'

# Conflicts:
#	presentation/src/main/java/com/nto/presentation/screens/profileScreen/ProfileScreen.kt
This commit is contained in:
Nikolay Odegov 2025-02-19 14:22:36 +03:00
commit 9f3e4369fc
4 changed files with 23 additions and 0 deletions

View File

@ -0,0 +1,6 @@
package com.nto.data.models.cards
data class VisitCardWrapper(
val data: List<VisitCardDTO>?,
val isUnauthorized: Boolean = false
)

View File

@ -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
}

View File

@ -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)
}
}
}

View File

@ -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<UserDTO>
@GET("visits/{login}/visits")
fun getVisits(@Header("Authorization") token: String): Call<List<VisitCardDTO>>
}