[orderinfo]
This commit is contained in:
yangyakun
2023-08-15 11:27:21 +08:00
parent cf3850ba89
commit 01344f773c
2 changed files with 19 additions and 3 deletions

View File

@@ -44,6 +44,8 @@ class OrderInfoView : ConstraintLayout, OrderInfoViewModel.ItineraryViewCallback
var goneViewListener: IClearViewCallback?=null
var viewModel:OrderInfoViewModel?=null
private fun initView() {
LayoutInflater.from(context).inflate(R.layout.m1_devices_fragment, this, true)
onClick {
@@ -54,7 +56,7 @@ class OrderInfoView : ConstraintLayout, OrderInfoViewModel.ItineraryViewCallback
override fun onAttachedToWindow() {
super.onAttachedToWindow()
val viewModel = findViewTreeViewModelStoreOwner()?.let {
viewModel = findViewTreeViewModelStoreOwner()?.let {
ViewModelProvider(it).get(OrderInfoViewModel::class.java)
}
@@ -66,6 +68,8 @@ class OrderInfoView : ConstraintLayout, OrderInfoViewModel.ItineraryViewCallback
actv_contain_order.setOnClickListener {
setViewGone()
cl_order_info.visibility = View.VISIBLE
cl_order_info_endorder_comfit.visibility = View.GONE
}
actv_end_order.setOnClickListener {
@@ -74,6 +78,15 @@ class OrderInfoView : ConstraintLayout, OrderInfoViewModel.ItineraryViewCallback
}
}
override fun onVisibilityChanged(changedView: View, visibility: Int) {
if(changedView!=this){
return
}
if(visibility==View.VISIBLE) {
viewModel?.getDataInfo()
}
}
override fun setViewGone(){
goneViewListener?.goneAllView()
}

View File

@@ -6,6 +6,7 @@ import com.mogo.eagle.core.function.call.telematic.CallerTelematicManager
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.mogo.eagle.core.utilcode.util.GsonUtils
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
import com.mogo.och.bus.passenger.callback.ITimeCallback
import com.mogo.och.bus.passenger.model.CharterPassengerModel
import com.mogo.och.bus.passenger.utils.ToastCharterUtils
@@ -37,7 +38,7 @@ class OrderInfoViewModel: ViewModel(), ITimeCallback {
getDataInfo()
}
private fun getDataInfo() {
fun getDataInfo() {
val currentOrderInfo = CharterPassengerModel.getCurrentOrderInfo()
currentOrderInfo?.let {
viewCallback?.setPhone(it.passengerPhone?:"")
@@ -53,7 +54,9 @@ class OrderInfoViewModel: ViewModel(), ITimeCallback {
override fun setOrderTimeCallBack(timeInSecond: Long) {
val leftTime = DateTimeUtil.second2Time(timeInSecond)
viewCallback?.setLeftTime(leftTime)
UiThreadHandler.post {
viewCallback?.setLeftTime(leftTime)
}
}