diff --git a/app/src/main/java/com/casic/br/ktd/adapter/AlarmAdapter.kt b/app/src/main/java/com/casic/br/ktd/adapter/AlarmAdapter.kt index ee8c2c3..8b5fbab 100644 --- a/app/src/main/java/com/casic/br/ktd/adapter/AlarmAdapter.kt +++ b/app/src/main/java/com/casic/br/ktd/adapter/AlarmAdapter.kt @@ -71,13 +71,11 @@ if (item.alarmStatus == "未处置") { holder.setBackgroundColor( - R.id.alarmStateView, - R.color.red.convertColor(ctx) + R.id.alarmStateView, R.color.red.convertColor(ctx) ) } else { holder.setBackgroundColor( - R.id.alarmStateView, - R.color.green.convertColor(ctx) + R.id.alarmStateView, R.color.green.convertColor(ctx) ) } @@ -115,7 +113,7 @@ .setText(R.id.alarmValueView, alarmValue) .setText(R.id.alarmStateView, item.alarmStatus) .setOnClickListener(R.id.handleAlarmButton) { - itemClickedListener?.onHandleButtonClicked(item) + itemClickedListener?.onHandleButtonClicked(item, position - 1) } holder.itemView.setOnClickListener { itemClickedListener?.onItemClicked(item) } @@ -135,7 +133,7 @@ interface OnItemClickedListener { fun onItemClicked(item: AlarmListModel.DataModel.RowsModel) - fun onHandleButtonClicked(item: AlarmListModel.DataModel.RowsModel) + fun onHandleButtonClicked(item: AlarmListModel.DataModel.RowsModel, index: Int) } fun setOnItemCheckedListener(listener: OnItemClickedListener) { diff --git a/app/src/main/java/com/casic/br/ktd/adapter/AlarmAdapter.kt b/app/src/main/java/com/casic/br/ktd/adapter/AlarmAdapter.kt index ee8c2c3..8b5fbab 100644 --- a/app/src/main/java/com/casic/br/ktd/adapter/AlarmAdapter.kt +++ b/app/src/main/java/com/casic/br/ktd/adapter/AlarmAdapter.kt @@ -71,13 +71,11 @@ if (item.alarmStatus == "未处置") { holder.setBackgroundColor( - R.id.alarmStateView, - R.color.red.convertColor(ctx) + R.id.alarmStateView, R.color.red.convertColor(ctx) ) } else { holder.setBackgroundColor( - R.id.alarmStateView, - R.color.green.convertColor(ctx) + R.id.alarmStateView, R.color.green.convertColor(ctx) ) } @@ -115,7 +113,7 @@ .setText(R.id.alarmValueView, alarmValue) .setText(R.id.alarmStateView, item.alarmStatus) .setOnClickListener(R.id.handleAlarmButton) { - itemClickedListener?.onHandleButtonClicked(item) + itemClickedListener?.onHandleButtonClicked(item, position - 1) } holder.itemView.setOnClickListener { itemClickedListener?.onItemClicked(item) } @@ -135,7 +133,7 @@ interface OnItemClickedListener { fun onItemClicked(item: AlarmListModel.DataModel.RowsModel) - fun onHandleButtonClicked(item: AlarmListModel.DataModel.RowsModel) + fun onHandleButtonClicked(item: AlarmListModel.DataModel.RowsModel, index: Int) } fun setOnItemCheckedListener(listener: OnItemClickedListener) { diff --git a/app/src/main/java/com/casic/br/ktd/fragment/AlarmPageFragment.kt b/app/src/main/java/com/casic/br/ktd/fragment/AlarmPageFragment.kt index 7fd3b72..49a74eb 100644 --- a/app/src/main/java/com/casic/br/ktd/fragment/AlarmPageFragment.kt +++ b/app/src/main/java/com/casic/br/ktd/fragment/AlarmPageFragment.kt @@ -36,10 +36,10 @@ private var alarmStatus = "" private var startTime = "" private var endTime = "" + private var clickedPosition = 0 override fun initViewBinding( - inflater: LayoutInflater, - container: ViewGroup? + inflater: LayoutInflater, container: ViewGroup? ): FragmentAlarmBinding { return FragmentAlarmBinding.inflate(inflater, container, false) } @@ -184,7 +184,9 @@ requireContext().navigatePageTo(item.id) } - override fun onHandleButtonClicked(item: AlarmListModel.DataModel.RowsModel) { + override fun onHandleButtonClicked( + item: AlarmListModel.DataModel.RowsModel, position: Int + ) { AlertHandleControlDialog.Builder() .setContext(requireContext()) .setTitle("报警处置") @@ -198,6 +200,9 @@ } override fun onConfirmClick(selected: String) { + //标记被点击的item位置 + clickedPosition = position + alarmViewModel.handleAlarm(item.alarmCode, selected, "") } }).build().show() @@ -213,7 +218,14 @@ alarmViewModel.loadState.observe(this) { when (it) { LoadState.Loading -> LoadingDialogHub.show(requireActivity(), "处理中,请稍后...") - LoadState.Success -> LoadingDialogHub.dismiss() + LoadState.Success -> { + val rowsBean = dataBeans[clickedPosition] + rowsBean.alarmStatus = "已处置" + alarmAdapter.notifyDataSetChanged() + + LoadingDialogHub.dismiss() + } + else -> { LoadingDialogHub.dismiss() "处理中失败,请重新操作".show(requireActivity()) diff --git a/app/src/main/java/com/casic/br/ktd/adapter/AlarmAdapter.kt b/app/src/main/java/com/casic/br/ktd/adapter/AlarmAdapter.kt index ee8c2c3..8b5fbab 100644 --- a/app/src/main/java/com/casic/br/ktd/adapter/AlarmAdapter.kt +++ b/app/src/main/java/com/casic/br/ktd/adapter/AlarmAdapter.kt @@ -71,13 +71,11 @@ if (item.alarmStatus == "未处置") { holder.setBackgroundColor( - R.id.alarmStateView, - R.color.red.convertColor(ctx) + R.id.alarmStateView, R.color.red.convertColor(ctx) ) } else { holder.setBackgroundColor( - R.id.alarmStateView, - R.color.green.convertColor(ctx) + R.id.alarmStateView, R.color.green.convertColor(ctx) ) } @@ -115,7 +113,7 @@ .setText(R.id.alarmValueView, alarmValue) .setText(R.id.alarmStateView, item.alarmStatus) .setOnClickListener(R.id.handleAlarmButton) { - itemClickedListener?.onHandleButtonClicked(item) + itemClickedListener?.onHandleButtonClicked(item, position - 1) } holder.itemView.setOnClickListener { itemClickedListener?.onItemClicked(item) } @@ -135,7 +133,7 @@ interface OnItemClickedListener { fun onItemClicked(item: AlarmListModel.DataModel.RowsModel) - fun onHandleButtonClicked(item: AlarmListModel.DataModel.RowsModel) + fun onHandleButtonClicked(item: AlarmListModel.DataModel.RowsModel, index: Int) } fun setOnItemCheckedListener(listener: OnItemClickedListener) { diff --git a/app/src/main/java/com/casic/br/ktd/fragment/AlarmPageFragment.kt b/app/src/main/java/com/casic/br/ktd/fragment/AlarmPageFragment.kt index 7fd3b72..49a74eb 100644 --- a/app/src/main/java/com/casic/br/ktd/fragment/AlarmPageFragment.kt +++ b/app/src/main/java/com/casic/br/ktd/fragment/AlarmPageFragment.kt @@ -36,10 +36,10 @@ private var alarmStatus = "" private var startTime = "" private var endTime = "" + private var clickedPosition = 0 override fun initViewBinding( - inflater: LayoutInflater, - container: ViewGroup? + inflater: LayoutInflater, container: ViewGroup? ): FragmentAlarmBinding { return FragmentAlarmBinding.inflate(inflater, container, false) } @@ -184,7 +184,9 @@ requireContext().navigatePageTo(item.id) } - override fun onHandleButtonClicked(item: AlarmListModel.DataModel.RowsModel) { + override fun onHandleButtonClicked( + item: AlarmListModel.DataModel.RowsModel, position: Int + ) { AlertHandleControlDialog.Builder() .setContext(requireContext()) .setTitle("报警处置") @@ -198,6 +200,9 @@ } override fun onConfirmClick(selected: String) { + //标记被点击的item位置 + clickedPosition = position + alarmViewModel.handleAlarm(item.alarmCode, selected, "") } }).build().show() @@ -213,7 +218,14 @@ alarmViewModel.loadState.observe(this) { when (it) { LoadState.Loading -> LoadingDialogHub.show(requireActivity(), "处理中,请稍后...") - LoadState.Success -> LoadingDialogHub.dismiss() + LoadState.Success -> { + val rowsBean = dataBeans[clickedPosition] + rowsBean.alarmStatus = "已处置" + alarmAdapter.notifyDataSetChanged() + + LoadingDialogHub.dismiss() + } + else -> { LoadingDialogHub.dismiss() "处理中失败,请重新操作".show(requireActivity()) diff --git a/app/src/main/java/com/casic/br/ktd/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/ktd/fragment/HomePageFragment.kt index 1bf78f9..5130087 100644 --- a/app/src/main/java/com/casic/br/ktd/fragment/HomePageFragment.kt +++ b/app/src/main/java/com/casic/br/ktd/fragment/HomePageFragment.kt @@ -215,10 +215,7 @@ LatLng(task.lagitude.toDouble(), task.longitude.toDouble()) ) aMap.addPolyline( - PolylineOptions() - .addAll(latLngPoints) - .width(10.toFloat()) - .color(Color.RED) + PolylineOptions().addAll(latLngPoints).width(10f).color(Color.RED) ) } }