SignInActivity.kt 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. package xn.xxp.home.sign
  2. import android.os.Build
  3. import android.os.Bundle
  4. import androidx.lifecycle.ViewModelProvider
  5. import core.ui.activity.BaseCountDownActivity
  6. import http.vo.response.SignFaceVo
  7. import xn.xxp.R
  8. import xn.xxp.databinding.ActivitySignInBinding
  9. import xn.xxp.home.auth.SignType
  10. import xn.xxp.widget.ITitleBar
  11. import xn.xxp.widget.NavViewCompat
  12. /**
  13. * 签到
  14. *
  15. * @author ReiChin_
  16. */
  17. open class SignInActivity : BaseCountDownActivity<ActivitySignInBinding>(), ICountDown {
  18. override fun createViewBinding() = ActivitySignInBinding.inflate(layoutInflater)
  19. private val mSignType by lazy {
  20. intent.getIntExtra("sign_type", SignType.ACCESS.code)
  21. }
  22. private val viewModel by lazy {
  23. ViewModelProvider(this, ViewModelProvider.NewInstanceFactory()).get(
  24. SignViewModel::class.java
  25. )
  26. }
  27. override fun initViews(savedInstanceState: Bundle?) {
  28. super.initViews(savedInstanceState)
  29. viewModel.setSignType(mSignType)
  30. val signFace = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { // API 33
  31. intent.getParcelableExtra("sign_face", SignFaceVo::class.java)
  32. } else {
  33. @Suppress("DEPRECATION")
  34. intent.getParcelableExtra("sign_face") as? SignFaceVo
  35. }
  36. if (null != signFace) {
  37. viewModel.setSignFace(signFace)
  38. }
  39. showDefaultFragment()
  40. }
  41. override fun getMTitleBar(): ITitleBar {
  42. return binding.titleBar
  43. }
  44. override fun getMNavView(): NavViewCompat {
  45. return binding.navView
  46. }
  47. protected open fun showDefaultFragment() {
  48. val transaction = supportFragmentManager.beginTransaction()
  49. transaction.add(
  50. R.id.container,
  51. SafetyCheckFragment(),
  52. SafetyCheckFragment::class.simpleName
  53. )
  54. transaction.commitAllowingStateLoss()
  55. }
  56. override fun enabledBackCountDown() = true
  57. override fun onStartCountDown() {
  58. }
  59. override fun onStopCountDown() {
  60. }
  61. }