diff --git a/app/src/main/java/com/casic/app/smartwell/sanxi/extensions/String.kt b/app/src/main/java/com/casic/app/smartwell/sanxi/extensions/String.kt index b5afb82..291a985 100644 --- a/app/src/main/java/com/casic/app/smartwell/sanxi/extensions/String.kt +++ b/app/src/main/java/com/casic/app/smartwell/sanxi/extensions/String.kt @@ -171,9 +171,9 @@ } /** - * 解析用户详细信息 + * 解析Json * */ -inline fun String.obtainUserDetail(): T? { +inline fun String.obtainModelFromJson(): T? { if (this.isBlank()) return null return Gson().fromJson( this, object : TypeToken() {}.type diff --git a/app/src/main/java/com/casic/app/smartwell/sanxi/extensions/String.kt b/app/src/main/java/com/casic/app/smartwell/sanxi/extensions/String.kt index b5afb82..291a985 100644 --- a/app/src/main/java/com/casic/app/smartwell/sanxi/extensions/String.kt +++ b/app/src/main/java/com/casic/app/smartwell/sanxi/extensions/String.kt @@ -171,9 +171,9 @@ } /** - * 解析用户详细信息 + * 解析Json * */ -inline fun String.obtainUserDetail(): T? { +inline fun String.obtainModelFromJson(): T? { if (this.isBlank()) return null return Gson().fromJson( this, object : TypeToken() {}.type diff --git a/app/src/main/java/com/casic/app/smartwell/sanxi/fragment/WorkOrderPageFragment.kt b/app/src/main/java/com/casic/app/smartwell/sanxi/fragment/WorkOrderPageFragment.kt index 4370ba9..49d8189 100644 --- a/app/src/main/java/com/casic/app/smartwell/sanxi/fragment/WorkOrderPageFragment.kt +++ b/app/src/main/java/com/casic/app/smartwell/sanxi/fragment/WorkOrderPageFragment.kt @@ -6,6 +6,7 @@ import android.os.Message import android.view.View import android.widget.Button +import android.widget.EditText import android.widget.TextView import androidx.core.view.GravityCompat import androidx.drawerlayout.widget.DrawerLayout @@ -18,8 +19,12 @@ import com.casic.app.smartwell.sanxi.extensions.show import com.casic.app.smartwell.sanxi.extensions.showEmptyPage import com.casic.app.smartwell.sanxi.model.WorkOrderListModel +import com.casic.app.smartwell.sanxi.utils.Constant +import com.casic.app.smartwell.sanxi.utils.SaveKeyValues import com.casic.app.smartwell.sanxi.view.WellDetailActivity +import com.casic.app.smartwell.sanxi.vm.AlarmViewModel import com.casic.app.smartwell.sanxi.vm.WorkOrderViewModel +import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet import kotlinx.android.synthetic.main.fragment_work_order.* import kotlinx.android.synthetic.main.include_base_title.titleView import kotlinx.android.synthetic.main.include_empty_view.* @@ -29,6 +34,7 @@ private lateinit var weakReferenceHandler: WeakReferenceHandler private lateinit var workOrderViewModel: WorkOrderViewModel + private lateinit var alarmViewModel: AlarmViewModel private lateinit var workOrderListAdapter: WorkOrderListAdapter private var dataBeans: MutableList = ArrayList() private var keywords = "" @@ -56,6 +62,7 @@ override fun initData() { weakReferenceHandler = WeakReferenceHandler(this) workOrderViewModel = ViewModelProvider(this).get(WorkOrderViewModel::class.java) + alarmViewModel = ViewModelProvider(this).get(AlarmViewModel::class.java) //默认加载所有数据 obtainWorkOrderListByPage() } @@ -98,6 +105,59 @@ weakReferenceHandler.sendEmptyMessage(2022051202) } }) + + alarmViewModel.typeModel.observe(this, { + if (it.code == 200) { + val sheetBuilder = QMUIBottomSheet.BottomListSheetBuilder(requireContext()) + sheetBuilder.setTitle("告警类型") + it.data?.forEach { dataBean -> + sheetBuilder.addItem(dataBean.name) + } + sheetBuilder.setGravityCenter(true) + .setOnSheetItemClickListener { dialog, _, position, tag -> + alarmTypeView.text = tag + alarmType = it.data!![position].value.toString() + + //告警类型变了之后需要清空告警内容 + alarmContentView.text = "" + dialog.dismiss() + }.build().show() + } + }) + + alarmViewModel.contentModel.observe(this, { + if (it.code == 200) { + val sheetBuilder = QMUIBottomSheet.BottomListSheetBuilder(requireContext()) + sheetBuilder.setTitle("告警内容") + it.data?.list?.forEach { dataBean -> + sheetBuilder.addItem(dataBean.name) + } + sheetBuilder.setGravityCenter(true) + .setOnSheetItemClickListener { dialog, _, position, tag -> + alarmContentView.text = tag + alarmContent = it.data!!.list!![position].value.toString() + + dialog.dismiss() + }.build().show() + } + }) + + workOrderViewModel.orderStatusModel.observe(this, { + if (it.code == 200) { + val sheetBuilder = QMUIBottomSheet.BottomListSheetBuilder(requireContext()) + sheetBuilder.setTitle("工单状态") + it.data?.forEach { dataBean -> + sheetBuilder.addItem(dataBean.name) + } + sheetBuilder.setGravityCenter(true) + .setOnSheetItemClickListener { dialog, _, position, tag -> + orderStateView.text = tag + jobStatus = it.data!![position].value.toString() + + dialog.dismiss() + }.build().show() + } + }) } private fun obtainWorkOrderListByPage() { @@ -111,12 +171,52 @@ } override fun onDrawerOpened(drawerView: View) { + //只要打开抽屉,pageIndex就默认等于1 + this.pageIndex = 1 + + val wellCodeView = drawerView.findViewById(R.id.wellCodeView) val alarmTypeView = drawerView.findViewById(R.id.alarmTypeView) val alarmContentView = drawerView.findViewById(R.id.alarmContentView) - val searchButton = drawerView.findViewById