InspectionMissingActivity.kt 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. package com.nova.brain.glass.ui
  2. import android.app.Activity
  3. import android.content.Intent
  4. import androidx.recyclerview.widget.RecyclerView
  5. import com.nova.brain.glass.R
  6. import com.nova.brain.glass.databinding.ActivityInspectionMissingBinding
  7. import com.nova.brain.glass.helper.OfflineCmdListener
  8. import com.nova.brain.glass.helper.OfflineCmdServiceHelper
  9. import com.nova.brain.glass.model.ItemItem
  10. import com.nova.brain.glass.viewmodel.InspectionMissingVM
  11. import com.xuqm.base.adapter.BasePagedAdapter
  12. import com.xuqm.base.adapter.CommonPagedAdapter
  13. import com.xuqm.base.adapter.ViewHolder
  14. import com.xuqm.base.ui.BaseListFormLayoutNormalActivity
  15. class InspectionMissingActivity :
  16. BaseListFormLayoutNormalActivity<ItemItem, InspectionMissingVM, ActivityInspectionMissingBinding>() {
  17. override fun getLayoutId(): Int = R.layout.activity_inspection_missing
  18. override fun fullscreen(): Boolean = true
  19. override fun getRecyclerOrientation(): Int = RecyclerView.VERTICAL
  20. companion object {
  21. const val EXTRA_ACTION = "extra_action"
  22. const val ACTION_SUPPLEMENT = "supplement"
  23. const val ACTION_SUBMIT = "submit"
  24. }
  25. private val listener = object : OfflineCmdListener {
  26. override fun onOfflineCmd(cmd: String) {
  27. runOnUiThread {
  28. when (cmd) {
  29. "退出", "返回", "退回" -> finish()
  30. "补充单证" -> supplement()
  31. "继续提交" -> submit()
  32. }
  33. }
  34. }
  35. }
  36. private fun supplement() {
  37. setResult(Activity.RESULT_OK, Intent().putExtra(EXTRA_ACTION, ACTION_SUPPLEMENT))
  38. finish()
  39. }
  40. private fun submit() {
  41. setResult(Activity.RESULT_OK, Intent().putExtra(EXTRA_ACTION, ACTION_SUBMIT))
  42. finish()
  43. }
  44. override fun onResume() {
  45. super.onResume()
  46. OfflineCmdServiceHelper.addListenerInspectionMissing()
  47. OfflineCmdServiceHelper.addOnLineListener(listener)
  48. }
  49. override fun onPause() {
  50. super.onPause()
  51. OfflineCmdServiceHelper.removeListenerInspectionMissing()
  52. OfflineCmdServiceHelper.removeOnLineListener(listener)
  53. }
  54. private val adapter = object : CommonPagedAdapter<ItemItem>(R.layout.item_manual_result_action) {
  55. override fun convert(holder: ViewHolder, item: ItemItem, position: Int) {
  56. holder.setText(R.id.text, item.text)
  57. .setClickListener(R.id.actionRoot) {
  58. when (item.text) {
  59. "补充单证" -> supplement()
  60. "继续提交" -> submit()
  61. }
  62. }
  63. }
  64. }
  65. override fun adapter(): BasePagedAdapter<ItemItem> = adapter
  66. }