From ed474409e8420ba01f75f0a1584d5f7e3168d5df Mon Sep 17 00:00:00 2001 From: Izlydov Date: Thu, 20 Feb 2025 14:45:43 +0300 Subject: [PATCH 1/3] bugfix --- .../acss/components/auth/models/user/UserServiceST.kt | 6 +++++- .../java/com/displaynone/acss/ui/profile/ProfileFragment.kt | 5 +---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/com/displaynone/acss/components/auth/models/user/UserServiceST.kt b/app/src/main/java/com/displaynone/acss/components/auth/models/user/UserServiceST.kt index 6bba011..c7ab743 100644 --- a/app/src/main/java/com/displaynone/acss/components/auth/models/user/UserServiceST.kt +++ b/app/src/main/java/com/displaynone/acss/components/auth/models/user/UserServiceST.kt @@ -77,7 +77,11 @@ class UserServiceST( if (!tokenManager.hasTokens()) { throw RuntimeException("access token is null") } - return userRepository.getInfo(tokenManager.authTokenPair!!.accessToken) + val result = userRepository.getInfo(tokenManager.authTokenPair!!.accessToken) + result.map { dto -> + saveUserDTO(dto) + } + return result } suspend fun getInfoByLogin(login: String): Result{ if (!tokenManager.hasTokens()) { diff --git a/app/src/main/java/com/displaynone/acss/ui/profile/ProfileFragment.kt b/app/src/main/java/com/displaynone/acss/ui/profile/ProfileFragment.kt index 3a159e6..3bc62c6 100644 --- a/app/src/main/java/com/displaynone/acss/ui/profile/ProfileFragment.kt +++ b/app/src/main/java/com/displaynone/acss/ui/profile/ProfileFragment.kt @@ -74,11 +74,8 @@ class ProfileFragment : Fragment(R.layout.fragment_profile) { if (userDTO.roles.any { it.name == "ROLE_ADMIN" }) { binding.buttonSearch.visibility = View.VISIBLE - binding.rightsUsingSmartphone.text = "Пропуск действителен" - } - if (userDTO.roles.any { it.name == "ROLE_USER" }) { - binding.rightsUsingSmartphone.text = "Пропуск действителен" } + binding.rightsUsingSmartphone.text = if (userDTO.isACSBlocked) "Пропуск действителен" else "Пропуск действителен" } private fun hideButtons() { From ba124a4aa54a008afece0cf1fd0a52fed45b89dc Mon Sep 17 00:00:00 2001 From: Izlydov Date: Thu, 20 Feb 2025 14:49:18 +0300 Subject: [PATCH 2/3] bugfix --- .../java/com/displaynone/acss/ui/profile/ProfileFragment.kt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/com/displaynone/acss/ui/profile/ProfileFragment.kt b/app/src/main/java/com/displaynone/acss/ui/profile/ProfileFragment.kt index 3bc62c6..245760a 100644 --- a/app/src/main/java/com/displaynone/acss/ui/profile/ProfileFragment.kt +++ b/app/src/main/java/com/displaynone/acss/ui/profile/ProfileFragment.kt @@ -31,7 +31,6 @@ class ProfileFragment : Fragment(R.layout.fragment_profile) { override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) _binding = FragmentProfileBinding.bind(view) - checkForAdmin() binding.swipeRefresh.setOnRefreshListener { if (getIsMe()) refreshData() else showData(getUserDto()!!); @@ -52,12 +51,13 @@ class ProfileFragment : Fragment(R.layout.fragment_profile) { binding.recyclerViewLogs.adapter = adapter if (getIsMe()) { + checkForAdmin() refreshData() viewModel.visitListState.collectWithLifecycle(this) { data -> adapter.submitData(data) } waitForQRScanResult() } else { showData(getUserDto()!!) - + checkForAdmin() Log.d("ProfileFragment", "set login") viewModel.visitListStateFromLogin.collectWithLifecycle(this) { data -> adapter.submitData(data) @@ -75,7 +75,7 @@ class ProfileFragment : Fragment(R.layout.fragment_profile) { if (userDTO.roles.any { it.name == "ROLE_ADMIN" }) { binding.buttonSearch.visibility = View.VISIBLE } - binding.rightsUsingSmartphone.text = if (userDTO.isACSBlocked) "Пропуск действителен" else "Пропуск действителен" + binding.rightsUsingSmartphone.text = if (userDTO.isACSBlocked) "Пропуск недействителен" else "Пропуск действителен" } private fun hideButtons() { From 44a9b5b7b1416bc3141e225353b2258d4518148b Mon Sep 17 00:00:00 2001 From: Izlydov Date: Thu, 20 Feb 2025 14:58:37 +0300 Subject: [PATCH 3/3] bugfix --- .../java/com/displaynone/acss/ui/profile/ProfileFragment.kt | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/displaynone/acss/ui/profile/ProfileFragment.kt b/app/src/main/java/com/displaynone/acss/ui/profile/ProfileFragment.kt index 245760a..1789de6 100644 --- a/app/src/main/java/com/displaynone/acss/ui/profile/ProfileFragment.kt +++ b/app/src/main/java/com/displaynone/acss/ui/profile/ProfileFragment.kt @@ -32,6 +32,7 @@ class ProfileFragment : Fragment(R.layout.fragment_profile) { super.onViewCreated(view, savedInstanceState) _binding = FragmentProfileBinding.bind(view) + checkForAdmin() binding.swipeRefresh.setOnRefreshListener { if (getIsMe()) refreshData() else showData(getUserDto()!!); } @@ -51,13 +52,11 @@ class ProfileFragment : Fragment(R.layout.fragment_profile) { binding.recyclerViewLogs.adapter = adapter if (getIsMe()) { - checkForAdmin() refreshData() viewModel.visitListState.collectWithLifecycle(this) { data -> adapter.submitData(data) } waitForQRScanResult() } else { showData(getUserDto()!!) - checkForAdmin() Log.d("ProfileFragment", "set login") viewModel.visitListStateFromLogin.collectWithLifecycle(this) { data -> adapter.submitData(data) @@ -75,6 +74,7 @@ class ProfileFragment : Fragment(R.layout.fragment_profile) { if (userDTO.roles.any { it.name == "ROLE_ADMIN" }) { binding.buttonSearch.visibility = View.VISIBLE } + Log.d("1234", userDTO.isACSBlocked.toString()) binding.rightsUsingSmartphone.text = if (userDTO.isACSBlocked) "Пропуск недействителен" else "Пропуск действителен" } @@ -110,6 +110,7 @@ class ProfileFragment : Fragment(R.layout.fragment_profile) { } Log.d("ProfileFragment", userDTO.login) setAvatar(userDTO.photo) + checkForAdmin() } private fun refreshData() { @@ -169,6 +170,7 @@ class ProfileFragment : Fragment(R.layout.fragment_profile) { if (state is ProfileViewModel.State.Show) { val userDto: UserDTO = state.item showMyData(userDto) + checkForAdmin() } } }