From 281078ff489c6c8976203234b018c36122ef960e Mon Sep 17 00:00:00 2001 From: yangyakun Date: Sat, 4 Mar 2023 13:52:12 +0800 Subject: [PATCH] =?UTF-8?q?[m1]=20[1.1.2]=20[=E9=9D=A0=E8=BE=B9=E5=81=9C?= =?UTF-8?q?=E8=BD=A6=E5=90=8E=E5=90=AF=E5=8A=A8=E8=87=AA=E9=A9=BE=E9=9C=80?= =?UTF-8?q?=E8=A6=81=E9=87=8D=E7=BD=AE=E9=9D=A0=E8=BE=B9=E5=81=9C=E8=BD=A6?= =?UTF-8?q?=E7=8A=B6=E6=80=81=E3=80=81=E7=A1=AE=E8=AE=A4=E7=BA=BF=E8=B7=AF?= =?UTF-8?q?=E5=92=8C=E7=AB=99=E7=82=B9=E5=90=8E=E5=BC=B9=E5=87=BA=E8=BD=A6?= =?UTF-8?q?=E6=8E=A7tab=E3=80=81=E6=B7=BB=E5=8A=A0=E9=9D=A0=E8=BE=B9?= =?UTF-8?q?=E5=81=9C=E8=BD=A6=E6=97=A5=E5=BF=97]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../passenger/model/CharterPassengerModel.kt | 4 +- .../BusPassengerFunctionDevicePresenter.kt | 1 + .../BusPassengerFunctionPresenter.kt | 37 ++++++++++--------- .../och/bus/passenger/ui/M1ContainFragment.kt | 9 ++++- .../och/bus/passenger/ui/M1OrderFragment.kt | 7 +++- .../mogo/och/bus/passenger/ui/MainFragment.kt | 7 ++-- .../ui/adapter/OrderSiteItemAdapter.kt | 6 +-- .../och/bus/passenger/ui/view/LineSiteView.kt | 12 +++++- .../src/m1/res/layout/m1_order_lineside.xml | 4 +- .../OCHPlanningStopSideStatusManager.kt | 9 +++++ 10 files changed, 66 insertions(+), 30 deletions(-) diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/model/CharterPassengerModel.kt b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/model/CharterPassengerModel.kt index 9f1296a12c..e25c66f001 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/model/CharterPassengerModel.kt +++ b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/model/CharterPassengerModel.kt @@ -652,7 +652,7 @@ object CharterPassengerModel { var first = -1 if (distanceMap.size >= 2) { for (mutableEntry in distanceMap) { - if (first > 0) { + if (first >= 0) { // <可用站点标,是否靠近> var max = Math.max(first, mutableEntry.value)//正常点位 if(max==data.size-1){// 车辆在终点和起点中间时 @@ -664,7 +664,7 @@ object CharterPassengerModel { } } - return Pair(-1, false) + return Pair(0, false) } fun endOrder(callback: OchCommonServiceCallback?) { diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionDevicePresenter.kt b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionDevicePresenter.kt index 830717cb55..d025dd0382 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionDevicePresenter.kt +++ b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionDevicePresenter.kt @@ -122,6 +122,7 @@ class BusPassengerFunctionDevicePresenter(view: M1DeviceFragment?) : } IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE -> {// ToastUtils.showShort("启动自动驾驶中") + CallerAutoPilotControlManager.sendPlanningCmd(2) CharterPassengerModel.startAutopilot() CharterPassengerModel.leaveStation() } diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionPresenter.kt b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionPresenter.kt index 54e2f7bf23..269b8a5f7f 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionPresenter.kt +++ b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionPresenter.kt @@ -3,6 +3,7 @@ package com.mogo.och.bus.passenger.presenter import androidx.lifecycle.LifecycleOwner import com.mogo.commons.voice.AIAssist import com.mogo.eagle.core.utilcode.util.ToastUtils +import com.mogo.eagle.core.utilcode.util.UiThreadHandler import com.mogo.och.bus.passenger.R import com.mogo.och.bus.passenger.ui.M1ContainFragment import com.mogo.och.common.module.manager.OCHPlanningStopSideStatusManager @@ -29,25 +30,27 @@ class BusPassengerFunctionPresenter(view: M1ContainFragment?) : stopSideStatus: Boolean?, errorInfo: String? ) { - when (actionStatus) { - OCHPlanningStopSideStatusManager.Status.NOSTART -> { - ToastUtils.showShort(errorInfo) - } - OCHPlanningStopSideStatusManager.Status.START -> { - VoiceNotice.showNotice(context.getString(R.string.m1_stop_site_zh), AIAssist.LEVEL1) - } - OCHPlanningStopSideStatusManager.Status.DOING -> { - - } - OCHPlanningStopSideStatusManager.Status.Ending -> { - stopSideStatus?.let { - if(it){ - ToastUtils.showShort("靠边停车成功") - }else{ - ToastUtils.showShort("靠边停车失败") - } + UiThreadHandler.post { + when (actionStatus) { + OCHPlanningStopSideStatusManager.Status.NOSTART -> { + ToastUtils.showShort(errorInfo) } + OCHPlanningStopSideStatusManager.Status.START -> { + VoiceNotice.showNotice(context.getString(R.string.m1_stop_site_zh), AIAssist.LEVEL1) + } + OCHPlanningStopSideStatusManager.Status.DOING -> { + } + OCHPlanningStopSideStatusManager.Status.Ending -> { + stopSideStatus?.let { + if(it){ + ToastUtils.showShort("靠边停车成功") + }else{ + ToastUtils.showShort("靠边停车失败") + } + } + + } } } } diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1ContainFragment.kt b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1ContainFragment.kt index 87db6c4884..a975479d94 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1ContainFragment.kt +++ b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1ContainFragment.kt @@ -62,7 +62,11 @@ class M1ContainFragment : SETTINGORDERTAB -> { fragment = childFragmentManager.findFragmentByTag(M1OrderFragment.TAG) - ?: M1OrderFragment.newInstance() + ?: M1OrderFragment.newInstance(object :ChangeCheck{ + override fun changeChange() { + cb_bp_setting_soft.isChecked = true + } + }) } SETTINGENDORDERTAB -> { fragment = @@ -278,4 +282,7 @@ class M1ContainFragment : interface ContainDismiss{ fun closeDialog() } + interface ChangeCheck{ + fun changeChange() + } } \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1OrderFragment.kt b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1OrderFragment.kt index 7fedc5132d..362da620f7 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1OrderFragment.kt +++ b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1OrderFragment.kt @@ -16,6 +16,8 @@ import kotlinx.android.synthetic.m1.m1_order_fragment.* class M1OrderFragment : MvpFragment() { + private var changeCheck: M1ContainFragment.ChangeCheck?=null + override fun getLayoutId(): Int { return R.layout.m1_order_fragment } @@ -25,7 +27,7 @@ class M1OrderFragment : } override fun initViews() { - + lsv_line_site.setchangeCheck(this.changeCheck) } fun setViewByOrderStatus(currentStatus: OrderStatusEnum){ @@ -59,10 +61,11 @@ class M1OrderFragment : companion object { const val TAG = "BusPassengerFunctionOrderFragment" @JvmStatic - fun newInstance(): M1OrderFragment { + fun newInstance(changeCheck: M1ContainFragment.ChangeCheck): M1OrderFragment { val args = Bundle() val fragment = M1OrderFragment() fragment.arguments = args + fragment.changeCheck = changeCheck return fragment } } diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/MainFragment.kt b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/MainFragment.kt index db35b22f9c..3e9fdd557e 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/MainFragment.kt +++ b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/MainFragment.kt @@ -43,6 +43,7 @@ class MainFragment : } override fun initViews() { + setCarModle(R.raw.aiqinghao) cb_bp_video_player.onClick { openSettingPage(M1ContainFragment.VIDEOTAB) } @@ -155,9 +156,9 @@ class MainFragment : tv_distance_arrive_time.text = arrivedTime } - fun setCarModle(int: Int){ - CallerMapUIServiceManager.getMapUIController()?.changeCurrentIcon(R.raw.aiqinghao) - HdMapBuildConfig.currentCarVrIconRes = R.raw.aiqinghao + fun setCarModle(rawInfo: Int){ + CallerMapUIServiceManager.getMapUIController()?.changeCurrentIcon(rawInfo) + HdMapBuildConfig.currentCarVrIconRes = rawInfo } override fun createPresenter(): BusPassengerPresenter { diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/adapter/OrderSiteItemAdapter.kt b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/adapter/OrderSiteItemAdapter.kt index d51a2a4077..3f013fb0be 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/adapter/OrderSiteItemAdapter.kt +++ b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/adapter/OrderSiteItemAdapter.kt @@ -51,7 +51,7 @@ class OrderSiteItemAdapter(private val context: Context, private val dataList: M override fun onBindViewHolder(holder: TextVH, position: Int) { val siteInfo = dataList[holder.bindingAdapterPosition] - if(holder.bindingAdapterPosition>=enableIndex){ + if(holder.bindingAdapterPosition>enableIndex){ if(siteInfo.isCheck){ holder.iv_site_checked.setImageResource(R.drawable.m1_order_site_checked) }else{ @@ -75,11 +75,11 @@ class OrderSiteItemAdapter(private val context: Context, private val dataList: M if (siteInfo.isNear) { ToastUtils.showShort("您已在此站点附近") } else { - ToastUtils.showShort("请选择返程路线") + ToastUtils.showShort("站点已过,请选择返程路线") } } }else{ - ToastUtils.showShort("请切换线路") + ToastUtils.showShort("请确认线路") } } } diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/view/LineSiteView.kt b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/view/LineSiteView.kt index 2a11b7c87e..0cce1e00e7 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/view/LineSiteView.kt +++ b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/view/LineSiteView.kt @@ -24,6 +24,7 @@ import com.mogo.och.bus.passenger.model.CharterPassengerModel import com.mogo.och.bus.passenger.net.BusPassengerModelLoopManager import com.mogo.och.bus.passenger.net.BusPassengerServiceManager import com.mogo.och.bus.passenger.presenter.BusPassengerFunctionDevicePresenter +import com.mogo.och.bus.passenger.ui.M1ContainFragment import com.mogo.och.bus.passenger.ui.adapter.OrderLineItemAdapter import com.mogo.och.bus.passenger.ui.adapter.OrderSiteItemAdapter import com.mogo.och.bus.passenger.view.BottomDecoration @@ -76,7 +77,7 @@ class LineSiteView @JvmOverloads constructor( interpolator = LinearInterpolator() duration = 1000 } - + private var changeCheck: M1ContainFragment.ChangeCheck?=null init { LayoutInflater.from(context).inflate(R.layout.m1_order_lineside, this, true) @@ -300,6 +301,7 @@ class LineSiteView @JvmOverloads constructor( checkLine?.let { lineAdapter.submitLine(it) } + go2StartCar() } else { ToastUtils.showShort("司机端拒绝请重新选择") } @@ -312,6 +314,14 @@ class LineSiteView @JvmOverloads constructor( } } + private fun go2StartCar() { + changeCheck?.changeChange() + } + + fun setchangeCheck(changeCheck: M1ContainFragment.ChangeCheck?){ + this.changeCheck = changeCheck + } + private fun startAni() { g_lines_sites_data.visibility = View.GONE g_loading_group.visibility = View.VISIBLE diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_order_lineside.xml b/OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_order_lineside.xml index 6d3547c9ad..79dcb8acb4 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_order_lineside.xml +++ b/OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_order_lineside.xml @@ -34,7 +34,9 @@ app:layout_constraintTop_toTopOf="@+id/tv_line_title" app:layout_constraintBottom_toBottomOf="@+id/tv_line_title" app:layout_constraintEnd_toEndOf="parent" - android:layout_marginEnd="31dp" + android:paddingEnd="@dimen/dp_31" + android:paddingTop="@dimen/dp_10" + android:paddingBottom="@dimen/dp_10" android:layout_width="wrap_content" android:layout_height="wrap_content"/> diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/OCHPlanningStopSideStatusManager.kt b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/OCHPlanningStopSideStatusManager.kt index 1ba538a4da..0450ab7cc1 100644 --- a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/OCHPlanningStopSideStatusManager.kt +++ b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/OCHPlanningStopSideStatusManager.kt @@ -2,6 +2,8 @@ package com.mogo.och.common.module.manager import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotPlanningActionsListener import com.mogo.eagle.core.function.call.autopilot.CallerPlanningActionsListenerManager +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger +import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import mogo.telematics.pad.MessagePad import java.util.concurrent.ConcurrentHashMap @@ -56,6 +58,7 @@ object OCHPlanningStopSideStatusManager : IMoGoAutopilotPlanningActionsListener when (drivingAction) { MessagePad.DrivingAction.DRIVING_ACTION_STATE_ONE -> { // 表示开始靠边停车 + CallerLogger.d(SceneConstant.M_BUS+ TAG,"开始靠边停车") M_LISTENERS.forEach { val tag = it.key val listener = it.value @@ -65,6 +68,7 @@ object OCHPlanningStopSideStatusManager : IMoGoAutopilotPlanningActionsListener } MessagePad.DrivingAction.DRIVING_ACTION_STATE_TWO -> { //表示靠边停车成功 + CallerLogger.d(SceneConstant.M_BUS+ TAG,"靠边停车成功") M_LISTENERS.forEach { val tag = it.key val listener = it.value @@ -73,6 +77,7 @@ object OCHPlanningStopSideStatusManager : IMoGoAutopilotPlanningActionsListener } MessagePad.DrivingAction.DRIVING_ACTION_STATE_THREE -> { //靠边停车失败 + CallerLogger.d(SceneConstant.M_BUS+ TAG,"靠边停车失败") M_LISTENERS.forEach { val tag = it.key val listener = it.value @@ -86,6 +91,7 @@ object OCHPlanningStopSideStatusManager : IMoGoAutopilotPlanningActionsListener when (drivingAction) { MessagePad.DrivingAction.DRIVING_ACTION_STATE_ONE -> { // 表示距离前方站点100m + CallerLogger.d(SceneConstant.M_BUS+ TAG,"靠边停车失败_原因:距离前方站点100m") M_LISTENERS.forEach { val tag = it.key val listener = it.value @@ -94,6 +100,7 @@ object OCHPlanningStopSideStatusManager : IMoGoAutopilotPlanningActionsListener } MessagePad.DrivingAction.DRIVING_ACTION_STATE_TWO -> { //表示距离路口100m + CallerLogger.d(SceneConstant.M_BUS+ TAG,"靠边停车失败_原因:距离路口100m") M_LISTENERS.forEach { val tag = it.key val listener = it.value @@ -102,6 +109,7 @@ object OCHPlanningStopSideStatusManager : IMoGoAutopilotPlanningActionsListener } MessagePad.DrivingAction.DRIVING_ACTION_STATE_THREE -> { //正在变道 + CallerLogger.d(SceneConstant.M_BUS+ TAG,"靠边停车失败_原因:正在变道") M_LISTENERS.forEach { val tag = it.key val listener = it.value @@ -110,6 +118,7 @@ object OCHPlanningStopSideStatusManager : IMoGoAutopilotPlanningActionsListener } else -> { //未知问题 + CallerLogger.d(SceneConstant.M_BUS+ TAG,"靠边停车失败_原因:未知问题") M_LISTENERS.forEach { val tag = it.key val listener = it.value