diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/model/CharterPassengerModel.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/model/CharterPassengerModel.kt index b8eeb38cb3..54dfe96bf8 100644 --- a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/model/CharterPassengerModel.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/model/CharterPassengerModel.kt @@ -114,6 +114,7 @@ object CharterPassengerModel { private var carTypeChageListener: IOrderChangeCallback?=null private var subscribeCountDown: Disposable?=null + var switchLine5minWait: Disposable?=null fun init() { initListeners() @@ -866,6 +867,12 @@ object CharterPassengerModel { ) CallerLogger.d(M_BUS_P + BaseDPMsg.TAG, "到站发送数据${msg}") + switchLine5minWait?.let { + if (!it.isDisposed) { + it.dispose() + } + } + // 到站结束自驾 CallerAutoPilotControlManager.cancelAutoPilot() // 结束路距计算 diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionOrderPresenter.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionOrderPresenter.kt index 6a1a100b31..ff00e03a79 100644 --- a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionOrderPresenter.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionOrderPresenter.kt @@ -194,12 +194,15 @@ class BusPassengerFunctionOrderPresenter(view: M1OrderLineFragment?) : checkLine?.let { mView?.lineAdapterSubmit(it) } - mView?.go2StartCar() + mView?.hideDataDriverAgree() + CharterPassengerModel.switchLine5minWait = RxUtils.createSubscribe(5 * 60 * 1000) { + CallerLogger.d(M_BUS_P + BaseDPMsg.TAG, "5分钟倒计时可以选择线路了") + } CharterPassengerModel.queryOrder() CharterPassengerModel.cleanbroadcastListInfo() } else { ToastUtils.showShort("司机端拒绝请重新选择") - mView?.endAni() + mView?.hideDataDriverRefuse() } RxUtils.disposeSubscribe(subscribeSelectSite) BusPassengerModelLoopManager.removeLoopFunction(TAGLINELOOP) @@ -240,7 +243,7 @@ class BusPassengerFunctionOrderPresenter(view: M1OrderLineFragment?) : ) CallerLogger.d(M_BUS_P + BaseDPMsg.TAG, "发送数据:切换站点${msg}") } - mView?.startAni() + mView?.hideDataWaitDriverMsg() // 启动查看和司机端链接 BusPassengerModelLoopManager.setLoopFunction( TAGLINELOOP, @@ -250,14 +253,14 @@ class BusPassengerFunctionOrderPresenter(view: M1OrderLineFragment?) : RxUtils.disposeSubscribe(subscribeSelectSite) subscribeSelectSite = RxUtils.createSubscribe(120_000){ ToastUtils.showShort("请联系安全员确认") - mView?.endAni() + mView?.hideDataDriverRefuse() } } private fun checkServerStatus() { if (!CallerTelematicManager.getClientConnStatus()) { ToastUtils.showShort("断开和司机端连接、请联系安全员") BusPassengerModelLoopManager.removeLoopFunction(TAGLINELOOP) - mView?.endAni() + mView?.hideDataDriverRefuse() CallerLogger.d(SceneConstant.M_BUS_P + TAG, "endAni666") } } @@ -267,7 +270,6 @@ class BusPassengerFunctionOrderPresenter(view: M1OrderLineFragment?) : } fun canSwitchLine():Boolean { - return true val gnssSpeed = CallerChassisLocationGCJ02ListenerManager.getChassisLocationGCJ02().gnssSpeed if (gnssSpeed < 0.5) { diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/fragment/M1OrderLineFragment.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/fragment/M1OrderLineFragment.kt index d812d44e5e..ccf4c418cf 100644 --- a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/fragment/M1OrderLineFragment.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/fragment/M1OrderLineFragment.kt @@ -1,14 +1,11 @@ package com.mogo.och.bus.passenger.ui.dialogfragment.fragment -import android.animation.ObjectAnimator import android.graphics.drawable.AnimationDrawable import android.os.Bundle import android.view.View -import android.view.animation.LinearInterpolator import androidx.recyclerview.widget.LinearLayoutManager import com.elegant.utils.UiThreadHandler import com.mogo.commons.mvp.MvpFragment -import com.mogo.eagle.core.function.call.telematic.CallerTelematicManager import com.mogo.eagle.core.utilcode.kotlin.onClick import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant @@ -16,12 +13,14 @@ import com.mogo.eagle.core.utilcode.util.ToastUtils import com.mogo.och.bus.passenger.R import com.mogo.och.bus.passenger.bean.response.LineInfoResponse import com.mogo.och.bus.passenger.bean.response.SiteInfoResponse +import com.mogo.och.bus.passenger.model.CharterPassengerModel import com.mogo.och.bus.passenger.model.OrderStatusEnum import com.mogo.och.bus.passenger.presenter.BusPassengerFunctionOrderPresenter import com.mogo.och.bus.passenger.ui.adapter.OrderLineItemAdapter import com.mogo.och.bus.passenger.ui.adapter.OrderSiteItemAdapter import com.mogo.och.bus.passenger.ui.dialogfragment.M1ContainFragment import com.mogo.och.bus.passenger.view.BottomDecoration +import com.mogo.och.common.module.utils.RxUtils import kotlinx.android.synthetic.main.m1_order_fragment.* import me.jessyan.autosize.utils.AutoSizeUtils @@ -102,11 +101,14 @@ class M1OrderLineFragment : mPresenter?.resetData() } tv_site_submit.onClick { + CharterPassengerModel.switchLine5minWait?.let { + if (!it.isDisposed) { + ToastUtils.showShort("选择线路后5分钟内不可用选") + return@onClick + } + } mPresenter?.changeSites(siteList) } - tv_loading_wait_driver_title.onClick { - endAni() - } } @@ -122,39 +124,57 @@ class M1OrderLineFragment : } } - fun startAni() { + fun hideDataWaitDriverMsg() { g_lines_sites_data.visibility = View.GONE g_loading_group.visibility = View.VISIBLE val animationDrawable = iv_loading_wait_driver.drawable as AnimationDrawable animationDrawable.start() } - fun endAni() { + fun showSelectData() { UiThreadHandler.post { g_lines_sites_data.visibility = View.VISIBLE g_loading_group.visibility = View.GONE - val animationDrawable = iv_loading_wait_driver.drawable as AnimationDrawable + group_driver_agrenn_line.visibility = View.GONE + aciv_driver_refuse_group.visibility = View.GONE } } + fun hideDataDriverAgree(){ + group_driver_agrenn_line.visibility = View.VISIBLE + aciv_driver_refuse_group.visibility = View.GONE + g_loading_group.visibility = View.GONE + g_lines_sites_data.visibility = View.GONE + RxUtils.createSubscribe { + dismiss?.closeDialog() + } + } + fun hideDataDriverRefuse(){ + group_driver_agrenn_line.visibility = View.GONE + aciv_driver_refuse_group.visibility = View.VISIBLE + g_loading_group.visibility = View.GONE + g_lines_sites_data.visibility = View.GONE + RxUtils.createSubscribe { + showSelectData() + } + } + + fun setViewByOrderStatus(currentStatus: OrderStatusEnum) { when (currentStatus) { OrderStatusEnum.NoOrderUnuse -> { // 无订单页面 m1_order_noorder.visibility = View.VISIBLE - m1_order_early_end.visibility = View.GONE lsv_line_site.visibility = View.GONE } OrderStatusEnum.OrderNoLine -> { // 选择线路页面 m1_order_noorder.visibility = View.GONE - m1_order_early_end.visibility = View.GONE lsv_line_site.visibility = View.VISIBLE } OrderStatusEnum.OrdersWithLine -> { // 选择线路页面 m1_order_noorder.visibility = View.GONE - m1_order_early_end.visibility = View.GONE lsv_line_site.visibility = View.VISIBLE } } diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/EarlyEndOrderView.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/EarlyEndOrderView.kt deleted file mode 100644 index b04a65c940..0000000000 --- a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/EarlyEndOrderView.kt +++ /dev/null @@ -1,18 +0,0 @@ -package com.mogo.och.bus.passenger.ui.view - -import android.content.Context -import android.util.AttributeSet -import android.view.LayoutInflater -import androidx.constraintlayout.widget.ConstraintLayout -import com.mogo.eagle.core.function.hmi.ui.widget.BlueToothView -import com.mogo.och.bus.passenger.R - -class EarlyEndOrderView @JvmOverloads constructor( - context: Context, - attrs: AttributeSet? = null, - defStyleAttr: Int = 0 -) : ConstraintLayout(context, attrs, defStyleAttr) { - init { - LayoutInflater.from(context).inflate(R.layout.m1_order_early_end, this, true) - } -} \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/charter_p_driver_agree.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/charter_p_driver_agree.png new file mode 100644 index 0000000000..fb6fc1375a Binary files /dev/null and b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/charter_p_driver_agree.png differ diff --git a/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/charter_p_driver_refuse.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/charter_p_driver_refuse.png new file mode 100644 index 0000000000..f462e5aa15 Binary files /dev/null and b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/charter_p_driver_refuse.png differ diff --git a/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_order_early_end.xml b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_order_early_end.xml deleted file mode 100644 index fb7d333076..0000000000 --- a/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_order_early_end.xml +++ /dev/null @@ -1,83 +0,0 @@ - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_order_fragment.xml b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_order_fragment.xml index a36ee4e18d..a24a4b8b59 100644 --- a/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_order_fragment.xml +++ b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_order_fragment.xml @@ -102,8 +102,6 @@ app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toEndOf="@+id/gl_site_cancle_submit_guide" /> - - - - + app:constraint_referenced_ids="tv_site_submit,tv_site_cancle" /> + + + + + + + + + + + + + + + + + + + + + + + - -