|
@@ -7,6 +7,8 @@ import android.widget.LinearLayout
|
|
|
import androidx.core.view.isVisible
|
|
import androidx.core.view.isVisible
|
|
|
import androidx.core.widget.ImageViewCompat
|
|
import androidx.core.widget.ImageViewCompat
|
|
|
import androidx.fragment.app.viewModels
|
|
import androidx.fragment.app.viewModels
|
|
|
|
|
+import com.arcsoft.face.FaceEngine
|
|
|
|
|
+import com.arcsoft.face.model.ActiveDeviceInfo
|
|
|
import com.drake.brv.BindingAdapter
|
|
import com.drake.brv.BindingAdapter
|
|
|
import com.drake.brv.annotaion.DividerOrientation
|
|
import com.drake.brv.annotaion.DividerOrientation
|
|
|
import com.drake.brv.utils.divider
|
|
import com.drake.brv.utils.divider
|
|
@@ -18,7 +20,11 @@ import com.grkj.data.common.EventConstants
|
|
|
import com.grkj.data.common.MainDomainData
|
|
import com.grkj.data.common.MainDomainData
|
|
|
import com.grkj.data.enums.LoginModeEnum
|
|
import com.grkj.data.enums.LoginModeEnum
|
|
|
import com.grkj.data.enums.LoginResultEnum
|
|
import com.grkj.data.enums.LoginResultEnum
|
|
|
|
|
+import com.grkj.data.hardware.can.CanCommands
|
|
|
|
|
+import com.grkj.data.hardware.can.CanHelper
|
|
|
|
|
+import com.grkj.data.hardware.can.CustomCanConfig
|
|
|
import com.grkj.data.hardware.fingerprint.FingerprintUtil
|
|
import com.grkj.data.hardware.fingerprint.FingerprintUtil
|
|
|
|
|
+import com.grkj.iscs_mc.ISCSMCApplication
|
|
|
import com.grkj.iscs_mc.features.login.dialog.ChangeLangDialog
|
|
import com.grkj.iscs_mc.features.login.dialog.ChangeLangDialog
|
|
|
import com.grkj.iscs_mc.R
|
|
import com.grkj.iscs_mc.R
|
|
|
import com.grkj.iscs_mc.databinding.FragmentLoginBinding
|
|
import com.grkj.iscs_mc.databinding.FragmentLoginBinding
|
|
@@ -26,9 +32,11 @@ import com.grkj.iscs_mc.databinding.ItemLoginMethodBinding
|
|
|
import com.grkj.iscs_mc.features.login.dialog.LoginDialog
|
|
import com.grkj.iscs_mc.features.login.dialog.LoginDialog
|
|
|
import com.grkj.iscs_mc.features.login.entity.LoginMenuEntity
|
|
import com.grkj.iscs_mc.features.login.entity.LoginMenuEntity
|
|
|
import com.grkj.iscs_mc.features.login.viewmodel.LoginViewModel
|
|
import com.grkj.iscs_mc.features.login.viewmodel.LoginViewModel
|
|
|
|
|
+import com.grkj.iscs_mc.features.main.activity.MainActivity
|
|
|
import com.grkj.iscs_mc.features.manage.activity.ManageActivity
|
|
import com.grkj.iscs_mc.features.manage.activity.ManageActivity
|
|
|
import com.grkj.iscs_mc.features.material_exchange.activity.MaterialExchangeActivity
|
|
import com.grkj.iscs_mc.features.material_exchange.activity.MaterialExchangeActivity
|
|
|
import com.grkj.shared.model.EventBean
|
|
import com.grkj.shared.model.EventBean
|
|
|
|
|
+import com.grkj.shared.utils.extension.toByteArray
|
|
|
import com.grkj.shared.utils.i18n.I18nManager
|
|
import com.grkj.shared.utils.i18n.I18nManager
|
|
|
import com.grkj.shared.utils.i18n.LanguageEntry
|
|
import com.grkj.shared.utils.i18n.LanguageEntry
|
|
|
import com.grkj.shared.utils.i18n.LanguageRegistry
|
|
import com.grkj.shared.utils.i18n.LanguageRegistry
|
|
@@ -40,9 +48,19 @@ import com.grkj.ui_base.utils.changeBgTint
|
|
|
import com.grkj.ui_base.utils.event.LoadingEvent
|
|
import com.grkj.ui_base.utils.event.LoadingEvent
|
|
|
import com.grkj.ui_base.utils.event.RFIDCardReadEvent
|
|
import com.grkj.ui_base.utils.event.RFIDCardReadEvent
|
|
|
import com.grkj.ui_base.utils.extension.getAppVersionName
|
|
import com.grkj.ui_base.utils.extension.getAppVersionName
|
|
|
|
|
+import com.sik.comm.core.model.CommMessage
|
|
|
|
|
+import com.sik.comm.core.protocol.ProtocolManager
|
|
|
|
|
+import com.sik.comm.impl_can.CanProtocol
|
|
|
|
|
+import com.sik.comm.impl_can.SdoRequest
|
|
|
|
|
+import com.sik.comm.impl_can.SdoResponse
|
|
|
|
|
+import com.sik.comm.impl_can.toCommMessage
|
|
|
import com.sik.sikcore.extension.setDebouncedClickListener
|
|
import com.sik.sikcore.extension.setDebouncedClickListener
|
|
|
|
|
+import com.sik.sikcore.shell.ShellUtils
|
|
|
|
|
+import com.sik.sikcore.thread.ThreadUtils
|
|
|
import com.sik.sikimage.ImageConvertUtils
|
|
import com.sik.sikimage.ImageConvertUtils
|
|
|
import dagger.hilt.android.AndroidEntryPoint
|
|
import dagger.hilt.android.AndroidEntryPoint
|
|
|
|
|
+import kotlinx.coroutines.Dispatchers
|
|
|
|
|
+import kotlinx.coroutines.runBlocking
|
|
|
import java.util.Locale
|
|
import java.util.Locale
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -54,14 +72,16 @@ class LoginFragment : BaseFragment<FragmentLoginBinding>() {
|
|
|
|
|
|
|
|
//登录方式列表
|
|
//登录方式列表
|
|
|
private val loginMenuList: MutableList<LoginMenuEntity> = mutableListOf()
|
|
private val loginMenuList: MutableList<LoginMenuEntity> = mutableListOf()
|
|
|
|
|
+ private var isKeyDockOpen = true
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 登录模式切换
|
|
* 登录模式切换
|
|
|
*/
|
|
*/
|
|
|
- private var loginMode = LoginModeEnum.USER_MODE
|
|
|
|
|
|
|
+ private var loginMode = LoginModeEnum.ADMINISTRATOR_MODE
|
|
|
private val changeModeClickTimes = 5
|
|
private val changeModeClickTimes = 5
|
|
|
private var currentChangeModeClickTimes = 0
|
|
private var currentChangeModeClickTimes = 0
|
|
|
private var currentClickTime = 0L
|
|
private var currentClickTime = 0L
|
|
|
|
|
+ private var currentSupportClickTime = 0L
|
|
|
|
|
|
|
|
override fun getLayoutId(): Int {
|
|
override fun getLayoutId(): Int {
|
|
|
return R.layout.fragment_login
|
|
return R.layout.fragment_login
|
|
@@ -119,6 +139,33 @@ class LoginFragment : BaseFragment<FragmentLoginBinding>() {
|
|
|
}
|
|
}
|
|
|
binding.modeTip.isVisible = loginMode == LoginModeEnum.ADMINISTRATOR_MODE
|
|
binding.modeTip.isVisible = loginMode == LoginModeEnum.ADMINISTRATOR_MODE
|
|
|
}
|
|
}
|
|
|
|
|
+ binding.titleCn.setDebouncedClickListener {
|
|
|
|
|
+ val activeDeviceInfo = ActiveDeviceInfo()
|
|
|
|
|
+ FaceEngine.getActiveDeviceInfo(requireContext(), activeDeviceInfo)
|
|
|
|
|
+ ShellUtils.execCmd("echo ${activeDeviceInfo.deviceInfo} > /sdcard/iscs/activeDeviceInfo.txt")
|
|
|
|
|
+ }
|
|
|
|
|
+ CanHelper.checkNode()
|
|
|
|
|
+ binding.titleEn.setDebouncedClickListener {
|
|
|
|
|
+ runCatching {
|
|
|
|
|
+ CanHelper.writeTo(
|
|
|
|
|
+ (CanCommands.forDevice(
|
|
|
|
|
+ 1
|
|
|
|
|
+ ) as CanCommands.EKeyDockCommands).controlLatch(0,1)
|
|
|
|
|
+ ) {
|
|
|
|
|
+ logger.info("返回:${it}")
|
|
|
|
|
+ }
|
|
|
|
|
+ }.onFailure {
|
|
|
|
|
+ logger.info("发送错误:${it}")
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+ binding.tecSupport.setOnClickListener {
|
|
|
|
|
+ currentSupportClickTime++
|
|
|
|
|
+ if (currentSupportClickTime > 10) {
|
|
|
|
|
+ android.os.Process.killProcess(android.os.Process.myPid())
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ binding.modeTip.isVisible = false
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
private fun BindingAdapter.BindingViewHolder.onLoginMenuBinding(holder: BindingAdapter.BindingViewHolder) {
|
|
private fun BindingAdapter.BindingViewHolder.onLoginMenuBinding(holder: BindingAdapter.BindingViewHolder) {
|
|
@@ -139,15 +186,13 @@ class LoginFragment : BaseFragment<FragmentLoginBinding>() {
|
|
|
showToast(CommonUtils.getStr("fingerprint_login_success"))
|
|
showToast(CommonUtils.getStr("fingerprint_login_success"))
|
|
|
if (loginMode == LoginModeEnum.USER_MODE) {
|
|
if (loginMode == LoginModeEnum.USER_MODE) {
|
|
|
startActivity(
|
|
startActivity(
|
|
|
- Intent(
|
|
|
|
|
- requireContext(), MaterialExchangeActivity::class.java
|
|
|
|
|
- )
|
|
|
|
|
|
|
+// Intent(requireContext(), MaterialExchangeActivity::class.java)
|
|
|
|
|
+ Intent(requireContext(), MainActivity::class.java)
|
|
|
)
|
|
)
|
|
|
} else {
|
|
} else {
|
|
|
startActivity(
|
|
startActivity(
|
|
|
- Intent(
|
|
|
|
|
- requireContext(), ManageActivity::class.java
|
|
|
|
|
- )
|
|
|
|
|
|
|
+// Intent(requireContext(), ManageActivity::class.java)
|
|
|
|
|
+ Intent(requireContext(), MainActivity::class.java)
|
|
|
)
|
|
)
|
|
|
}
|
|
}
|
|
|
requireActivity().finish()
|
|
requireActivity().finish()
|
|
@@ -161,15 +206,13 @@ class LoginFragment : BaseFragment<FragmentLoginBinding>() {
|
|
|
showToast(CommonUtils.getStr("face_login_success"))
|
|
showToast(CommonUtils.getStr("face_login_success"))
|
|
|
if (loginMode == LoginModeEnum.USER_MODE) {
|
|
if (loginMode == LoginModeEnum.USER_MODE) {
|
|
|
startActivity(
|
|
startActivity(
|
|
|
- Intent(
|
|
|
|
|
- requireContext(), MaterialExchangeActivity::class.java
|
|
|
|
|
- )
|
|
|
|
|
|
|
+// Intent(requireContext(), MaterialExchangeActivity::class.java)
|
|
|
|
|
+ Intent(requireContext(), MainActivity::class.java)
|
|
|
)
|
|
)
|
|
|
} else {
|
|
} else {
|
|
|
startActivity(
|
|
startActivity(
|
|
|
- Intent(
|
|
|
|
|
- requireContext(), ManageActivity::class.java
|
|
|
|
|
- )
|
|
|
|
|
|
|
+// Intent(requireContext(), ManageActivity::class.java)
|
|
|
|
|
+ Intent(requireContext(), MainActivity::class.java)
|
|
|
)
|
|
)
|
|
|
}
|
|
}
|
|
|
requireActivity().finish()
|
|
requireActivity().finish()
|
|
@@ -185,15 +228,13 @@ class LoginFragment : BaseFragment<FragmentLoginBinding>() {
|
|
|
)
|
|
)
|
|
|
if (loginMode == LoginModeEnum.USER_MODE) {
|
|
if (loginMode == LoginModeEnum.USER_MODE) {
|
|
|
startActivity(
|
|
startActivity(
|
|
|
- Intent(
|
|
|
|
|
- requireContext(), MaterialExchangeActivity::class.java
|
|
|
|
|
- )
|
|
|
|
|
|
|
+// Intent(requireContext(), MaterialExchangeActivity::class.java)
|
|
|
|
|
+ Intent(requireContext(), MainActivity::class.java)
|
|
|
)
|
|
)
|
|
|
} else {
|
|
} else {
|
|
|
startActivity(
|
|
startActivity(
|
|
|
- Intent(
|
|
|
|
|
- requireContext(), ManageActivity::class.java
|
|
|
|
|
- )
|
|
|
|
|
|
|
+// Intent(requireContext(), ManageActivity::class.java)
|
|
|
|
|
+ Intent(requireContext(), MainActivity::class.java)
|
|
|
)
|
|
)
|
|
|
}
|
|
}
|
|
|
requireActivity().finish()
|
|
requireActivity().finish()
|
|
@@ -211,15 +252,13 @@ class LoginFragment : BaseFragment<FragmentLoginBinding>() {
|
|
|
showToast(CommonUtils.getStr("job_card_login_success"))
|
|
showToast(CommonUtils.getStr("job_card_login_success"))
|
|
|
if (loginMode == LoginModeEnum.USER_MODE) {
|
|
if (loginMode == LoginModeEnum.USER_MODE) {
|
|
|
startActivity(
|
|
startActivity(
|
|
|
- Intent(
|
|
|
|
|
- requireContext(), MaterialExchangeActivity::class.java
|
|
|
|
|
- )
|
|
|
|
|
|
|
+// Intent(requireContext(), MaterialExchangeActivity::class.java)
|
|
|
|
|
+ Intent(requireContext(), MainActivity::class.java)
|
|
|
)
|
|
)
|
|
|
} else {
|
|
} else {
|
|
|
startActivity(
|
|
startActivity(
|
|
|
- Intent(
|
|
|
|
|
- requireContext(), ManageActivity::class.java
|
|
|
|
|
- )
|
|
|
|
|
|
|
+// Intent(requireContext(), ManageActivity::class.java)
|
|
|
|
|
+ Intent(requireContext(), MainActivity::class.java)
|
|
|
)
|
|
)
|
|
|
}
|
|
}
|
|
|
requireActivity().finish()
|
|
requireActivity().finish()
|
|
@@ -301,15 +340,13 @@ class LoginFragment : BaseFragment<FragmentLoginBinding>() {
|
|
|
showToast(CommonUtils.getStr("fingerprint_login_success"))
|
|
showToast(CommonUtils.getStr("fingerprint_login_success"))
|
|
|
if (loginMode == LoginModeEnum.USER_MODE) {
|
|
if (loginMode == LoginModeEnum.USER_MODE) {
|
|
|
startActivity(
|
|
startActivity(
|
|
|
- Intent(
|
|
|
|
|
- requireContext(), MaterialExchangeActivity::class.java
|
|
|
|
|
- )
|
|
|
|
|
|
|
+// Intent(requireContext(), MaterialExchangeActivity::class.java)
|
|
|
|
|
+ Intent(requireContext(), MainActivity::class.java)
|
|
|
)
|
|
)
|
|
|
} else {
|
|
} else {
|
|
|
startActivity(
|
|
startActivity(
|
|
|
- Intent(
|
|
|
|
|
- requireContext(), ManageActivity::class.java
|
|
|
|
|
- )
|
|
|
|
|
|
|
+// Intent(requireContext(), ManageActivity::class.java)
|
|
|
|
|
+ Intent(requireContext(), MainActivity::class.java)
|
|
|
)
|
|
)
|
|
|
}
|
|
}
|
|
|
requireActivity().finish()
|
|
requireActivity().finish()
|
|
@@ -342,15 +379,13 @@ class LoginFragment : BaseFragment<FragmentLoginBinding>() {
|
|
|
)
|
|
)
|
|
|
if (loginMode == LoginModeEnum.USER_MODE) {
|
|
if (loginMode == LoginModeEnum.USER_MODE) {
|
|
|
startActivity(
|
|
startActivity(
|
|
|
- Intent(
|
|
|
|
|
- requireContext(), MaterialExchangeActivity::class.java
|
|
|
|
|
- )
|
|
|
|
|
|
|
+// Intent(requireContext(), MaterialExchangeActivity::class.java)
|
|
|
|
|
+ Intent(requireContext(), MainActivity::class.java)
|
|
|
)
|
|
)
|
|
|
} else {
|
|
} else {
|
|
|
startActivity(
|
|
startActivity(
|
|
|
- Intent(
|
|
|
|
|
- requireContext(), ManageActivity::class.java
|
|
|
|
|
- )
|
|
|
|
|
|
|
+// Intent(requireContext(), ManageActivity::class.java)
|
|
|
|
|
+ Intent(requireContext(), MainActivity::class.java)
|
|
|
)
|
|
)
|
|
|
}
|
|
}
|
|
|
requireActivity().finish()
|
|
requireActivity().finish()
|