diff --git a/app/src/main/java/ru/myitschool/work/data/user/UserNetworkDataSource.kt b/app/src/main/java/ru/myitschool/work/data/user/UserNetworkDataSource.kt
index 2c68b00..ecf8c9f 100644
--- a/app/src/main/java/ru/myitschool/work/data/user/UserNetworkDataSource.kt
+++ b/app/src/main/java/ru/myitschool/work/data/user/UserNetworkDataSource.kt
@@ -4,6 +4,7 @@ import android.util.Log
 import io.ktor.client.call.body
 import io.ktor.client.request.get
 import io.ktor.client.request.header
+import io.ktor.client.request.patch
 import io.ktor.client.statement.bodyAsText
 import io.ktor.http.HttpHeaders
 import io.ktor.http.HttpStatusCode
@@ -46,4 +47,17 @@ class UserNetworkDataSource {
         }
 
     }
+    suspend fun enter(value : Long, login : String): Result<Boolean> = withContext(Dispatchers.IO) {
+        runCatching {
+            val result = client.patch("$SERVER_ADDRESS/api/open") {
+                header(HttpHeaders.Authorization, token)
+
+            }
+            Log.d("result", "${result.status}")
+            if (result.status != HttpStatusCode.OK) {
+                error("Status ${result.status}")
+            }
+            result.body<Boolean>()
+        }
+    }
 }
\ No newline at end of file
diff --git a/app/src/main/java/ru/myitschool/work/data/user/UserRepoImpl.kt b/app/src/main/java/ru/myitschool/work/data/user/UserRepoImpl.kt
index 71cc30b..2fcb8f1 100644
--- a/app/src/main/java/ru/myitschool/work/data/user/UserRepoImpl.kt
+++ b/app/src/main/java/ru/myitschool/work/data/user/UserRepoImpl.kt
@@ -2,6 +2,7 @@ package ru.myitschool.work.data.user
 import ru.myitschool.work.domain.user.EntranceEntity
 import ru.myitschool.work.domain.user.UserEntity
 import ru.myitschool.work.domain.user.UserRepo
+import kotlin.math.log
 
 
 class UserRepoImpl (
@@ -28,12 +29,20 @@ class UserRepoImpl (
             userList.map { it.toEntity() }
         }
     }
+
+    override suspend fun enter(value: Long, login : String): Result<Boolean> {
+        return userNetworkDataSource.enter(value, login);
+    }
+
     fun EntranceDto.toEntity(): EntranceEntity {
         return EntranceEntity(
             login = login,
             name = this.name,
             enteredAt = this.enteredAt,
+
             enterType = this.enterType
         )
     }
+
+
 }
\ No newline at end of file
diff --git a/app/src/main/java/ru/myitschool/work/domain/user/EnterUseCase.kt b/app/src/main/java/ru/myitschool/work/domain/user/EnterUseCase.kt
new file mode 100644
index 0000000..3a75ebc
--- /dev/null
+++ b/app/src/main/java/ru/myitschool/work/domain/user/EnterUseCase.kt
@@ -0,0 +1,14 @@
+package ru.myitschool.work.domain.user
+
+import ru.myitschool.work.data.auth.AuthStorageDataSource
+import ru.myitschool.work.data.user.UserDto
+
+class EnterUseCase (
+    private val repo: UserRepo,
+    private val authStorageDataSource : AuthStorageDataSource
+) {
+    private fun getUserFromStorage() : UserDto? {
+        return authStorageDataSource.userInfo
+    }
+    suspend operator fun invoke(value : Long) = repo.enter(value, getUserFromStorage()?.login!!)
+}
\ No newline at end of file
diff --git a/app/src/main/java/ru/myitschool/work/domain/user/EntranceEntity.kt b/app/src/main/java/ru/myitschool/work/domain/user/EntranceEntity.kt
index aeb9db0..f19832a 100644
--- a/app/src/main/java/ru/myitschool/work/domain/user/EntranceEntity.kt
+++ b/app/src/main/java/ru/myitschool/work/domain/user/EntranceEntity.kt
@@ -1,6 +1,5 @@
 package ru.myitschool.work.domain.user
 
-import kotlinx.serialization.SerialName
 import kotlinx.serialization.Serializable
 
 @Serializable
diff --git a/app/src/main/java/ru/myitschool/work/domain/user/UserRepo.kt b/app/src/main/java/ru/myitschool/work/domain/user/UserRepo.kt
index 58d8aea..db54029 100644
--- a/app/src/main/java/ru/myitschool/work/domain/user/UserRepo.kt
+++ b/app/src/main/java/ru/myitschool/work/domain/user/UserRepo.kt
@@ -4,4 +4,5 @@ package ru.myitschool.work.domain.user
 interface UserRepo {
     suspend fun getUser(login: String) : Result<UserEntity>
     suspend fun getEntrancesList(login : String) : Result<List<EntranceEntity>>
+    suspend fun enter(value : Long, login : String) : Result<Boolean>
 }
\ No newline at end of file