diff --git a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/model/AutopilotManager.kt b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/model/AutopilotManager.kt index 6cdb98abf7..a3b49abe26 100644 --- a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/model/AutopilotManager.kt +++ b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/model/AutopilotManager.kt @@ -1,6 +1,7 @@ package com.mogo.och.taxi.passenger.model import com.elegant.network.utils.GsonUtil +import com.mogo.commons.voice.AIAssist import com.mogo.eagle.core.data.autopilot.AutopilotControlParameters import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener @@ -13,6 +14,7 @@ import com.mogo.eagle.core.utilcode.util.ToastUtils import com.mogo.och.common.module.biz.network.OchCommonServiceCallback import com.mogo.och.common.module.manager.OCHAdasAbilityManager import com.mogo.och.common.module.utils.PinYinUtil +import com.mogo.och.common.module.voice.VoiceNotice import com.mogo.och.taxi.passenger.bean.TaxiPassengerBaseRespBean import com.mogo.och.taxi.passenger.bean.TaxiPassengerStartReqBean import com.mogo.och.taxi.passenger.constant.TaxiPassengerOrderStatusEnum @@ -181,7 +183,9 @@ object AutopilotManager : IMoGoAutopilotStatusListener { TaxiPassengerServiceManager.startServicePilotDone( TaxiPassengerModel.currentOCHOrder!!.orderNo, result, object : OchCommonServiceCallback { - override fun onSuccess(data: TaxiPassengerBaseRespBean) {} + override fun onSuccess(data: TaxiPassengerBaseRespBean) { + VoiceNotice.showNotice("坐稳扶好,我们出发咯!", AIAssist.LEVEL2) + } override fun onFail(code: Int, msg: String) {} }) } diff --git a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/model/TaxiPassengerModel.kt b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/model/TaxiPassengerModel.kt index e6686f2c0d..2ce15f90c0 100644 --- a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/model/TaxiPassengerModel.kt +++ b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/model/TaxiPassengerModel.kt @@ -6,6 +6,7 @@ import android.net.ConnectivityManager import com.mogo.aicloud.services.socket.MogoAiCloudSocketManager import com.mogo.commons.module.intent.IMogoIntentListener import com.mogo.commons.module.intent.IntentManager +import com.mogo.commons.voice.AIAssist import com.mogo.eagle.core.data.map.MogoLocation import com.mogo.eagle.core.function.api.datacenter.msgbox.IMsgBoxEventListener import com.mogo.eagle.core.function.call.biz.CallerFuncBizManager @@ -27,6 +28,7 @@ import com.mogo.och.common.module.manager.distancemamager.TrajectoryAndDistanceM import com.mogo.och.common.module.manager.loopmanager.BizLoopManager import com.mogo.och.common.module.manager.loopmanager.LoopInfo import com.mogo.och.common.module.utils.RxUtils +import com.mogo.och.common.module.voice.VoiceNotice import com.mogo.och.taxi.passenger.bean.TaxiPassengerBaseRespBean import com.mogo.och.taxi.passenger.bean.TaxiPassengerOrderQueryRemainingResp import com.mogo.och.taxi.passenger.bean.TaxiPassengerOrderQueryRespBean @@ -290,6 +292,7 @@ object TaxiPassengerModel { currentOCHOrder!!.orderStatus = TaxiPassengerOrderStatusEnum.UserArriveAtStart.code //乘客验证成功,更新订单状态为 "乘客已上车", 立马弹出乘客开始行程页面,不再等待轮询 orderStatusChange() + VoiceNotice.showNotice("验证成功!关闭车门并佩戴安全带后开启行程吧!", AIAssist.LEVEL2) } commonCallback?.onCommonCallback() } diff --git a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerBaseFragment.kt b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerBaseFragment.kt index 2c286a8b14..628506efb3 100644 --- a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerBaseFragment.kt +++ b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerBaseFragment.kt @@ -4,6 +4,7 @@ import android.graphics.drawable.AnimationDrawable import android.os.Bundle import android.view.View import com.mogo.commons.mvp.MvpFragment +import com.mogo.commons.voice.AIAssist import com.mogo.eagle.core.function.call.hmi.CallerHmiManager import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager import com.mogo.eagle.core.utilcode.kotlin.onClick @@ -12,11 +13,13 @@ import com.mogo.eagle.core.utilcode.util.OverlayViewUtils import com.mogo.map.listener.IMogoMapListener import com.mogo.map.uicontroller.VisualAngleMode import com.mogo.och.common.module.utils.RxUtils +import com.mogo.och.common.module.voice.VoiceNotice import com.mogo.och.taxi.passenger.R import com.mogo.och.taxi.passenger.callback.ITaxiPassengerCommonValueCallback import com.mogo.och.taxi.passenger.presenter.BaseTaxiPassengerPresenter import com.mogo.och.taxi.passenger.ui.bottom.BottomBar import com.mogo.och.taxi.passenger.ui.arrived.ArrivedView +import com.mogo.och.taxi.passenger.ui.check.TaxiPassengerCheckView import com.mogo.och.taxi.passenger.ui.startautopilot.StartAutopilotView import kotlinx.android.synthetic.main.taxi_p_base_fragment.* import java.lang.ref.WeakReference @@ -258,6 +261,7 @@ class TaxiPassengerBaseFragment() : OverlayViewUtils.showOverlayView(activity, it, R.style.och_window_anim_alpha) RxUtils.createSubscribe(500) { it.setDataAndStartAnimation() + VoiceNotice.showNotice("已到达目的地,带好随身物品,右侧下车更安全!期待下次再见", AIAssist.LEVEL2) } } } else { diff --git a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerCheckView.kt b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/check/TaxiPassengerCheckView.kt similarity index 63% rename from OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerCheckView.kt rename to OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/check/TaxiPassengerCheckView.kt index 3199899106..ba7274a282 100644 --- a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerCheckView.kt +++ b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/check/TaxiPassengerCheckView.kt @@ -1,4 +1,4 @@ -package com.mogo.och.taxi.passenger.ui +package com.mogo.och.taxi.passenger.ui.check import android.content.Context import android.graphics.Typeface @@ -10,11 +10,32 @@ import android.view.LayoutInflater import android.view.View import android.widget.RelativeLayout import android.widget.TextView +import com.mogo.commons.voice.AIAssist import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.eagle.core.utilcode.util.ToastUtils +import com.mogo.och.common.module.voice.VoiceNotice import com.mogo.och.taxi.passenger.R import com.mogo.och.taxi.passenger.callback.ITaxiPassengerCommonValueCallback +import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_passenger_count +import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_passenger_end +import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_passenger_start +import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_back +import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_eight +import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_first +import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_five +import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_four +import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_fourth +import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_nine +import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_one +import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_second +import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_seven +import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_six +import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_submit +import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_third +import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_three +import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_two +import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_zero /** * V2X预警事件view:通过FloatWindow呈现,无需加入到自定义layout中 @@ -33,13 +54,6 @@ class TaxiPassengerCheckView :RelativeLayout, View.OnClickListener { var iTaxiPassengerCommonValueCallback: ITaxiPassengerCommonValueCallback?=null - private lateinit var tvPassengerCount: TextView - private lateinit var tvPassengerStart: TextView - private lateinit var tvPassengerEnd: TextView - private lateinit var tvTaxiPassengerNumberfirst: TextView - private lateinit var tvTaxiPassengerNumberSecond: TextView - private lateinit var tvTaxiPassengerNumberThird: TextView - private lateinit var tvTaxiPassengerNumberFourth: TextView private var index = 0 private var phone = "" @@ -49,38 +63,31 @@ class TaxiPassengerCheckView :RelativeLayout, View.OnClickListener { private fun initView(context: Context) { d(SceneConstant.M_TAXI_P + TAG, "initView") LayoutInflater.from(context).inflate(R.layout.taxi_p_passenger_check_panel, this, true) - tvPassengerCount = findViewById(R.id.tv_passenger_count) - tvPassengerStart = findViewById(R.id.tv_passenger_start) - tvPassengerEnd = findViewById(R.id.tv_passenger_end) - tvTaxiPassengerNumberfirst = findViewById(R.id.tv_taxi_passenger_number_first) - tvTaxiPassengerNumberSecond = findViewById(R.id.tv_taxi_passenger_number_second) - tvTaxiPassengerNumberThird = findViewById(R.id.tv_taxi_passenger_number_third) - tvTaxiPassengerNumberFourth = findViewById(R.id.tv_taxi_passenger_number_fourth) keyBoardLogic() - numSelectTextView[0] = tvTaxiPassengerNumberfirst - numSelectTextView[1] = tvTaxiPassengerNumberSecond - numSelectTextView[2] = tvTaxiPassengerNumberThird - numSelectTextView[3] = tvTaxiPassengerNumberFourth + numSelectTextView[0] = tv_taxi_passenger_number_first + numSelectTextView[1] = tv_taxi_passenger_number_second + numSelectTextView[2] = tv_taxi_passenger_number_third + numSelectTextView[3] = tv_taxi_passenger_number_fourth } private fun keyBoardLogic() { - findViewById(R.id.tv_taxi_passenger_number_one).setOnClickListener(this) - findViewById(R.id.tv_taxi_passenger_number_two).setOnClickListener(this) - findViewById(R.id.tv_taxi_passenger_number_three).setOnClickListener(this) - findViewById(R.id.tv_taxi_passenger_number_four).setOnClickListener(this) - findViewById(R.id.tv_taxi_passenger_number_five).setOnClickListener(this) - findViewById(R.id.tv_taxi_passenger_number_six).setOnClickListener(this) - findViewById(R.id.tv_taxi_passenger_number_seven).setOnClickListener(this) - findViewById(R.id.tv_taxi_passenger_number_eight).setOnClickListener(this) - findViewById(R.id.tv_taxi_passenger_number_nine).setOnClickListener(this) - findViewById(R.id.tv_taxi_passenger_number_zero).setOnClickListener(this) - findViewById(R.id.tv_taxi_passenger_number_back).setOnClickListener(this) - findViewById(R.id.tv_taxi_passenger_number_submit).setOnClickListener(this) + tv_taxi_passenger_number_one.setOnClickListener(this) + tv_taxi_passenger_number_two.setOnClickListener(this) + tv_taxi_passenger_number_three.setOnClickListener(this) + tv_taxi_passenger_number_four.setOnClickListener(this) + tv_taxi_passenger_number_five.setOnClickListener(this) + tv_taxi_passenger_number_six.setOnClickListener(this) + tv_taxi_passenger_number_seven.setOnClickListener(this) + tv_taxi_passenger_number_eight.setOnClickListener(this) + tv_taxi_passenger_number_nine.setOnClickListener(this) + tv_taxi_passenger_number_zero.setOnClickListener(this) + tv_taxi_passenger_number_back.setOnClickListener(this) + tv_taxi_passenger_number_submit.setOnClickListener(this) - tvTaxiPassengerNumberfirst.setOnClickListener(this) - tvTaxiPassengerNumberSecond.setOnClickListener(this) - tvTaxiPassengerNumberThird.setOnClickListener(this) - tvTaxiPassengerNumberFourth.setOnClickListener(this) + tv_taxi_passenger_number_first.setOnClickListener(this) + tv_taxi_passenger_number_second.setOnClickListener(this) + tv_taxi_passenger_number_third.setOnClickListener(this) + tv_taxi_passenger_number_fourth.setOnClickListener(this) } @@ -110,6 +117,7 @@ class TaxiPassengerCheckView :RelativeLayout, View.OnClickListener { val numberStr = "${numSelect[0]}${numSelect[1]}${numSelect[2]}${numSelect[3]}" if(!phone.endsWith(numberStr)){ ToastUtils.showLong("请输入正确的手机尾号") + VoiceNotice.showNotice("验证失败!再检查一下吧~", AIAssist.LEVEL2) return } iTaxiPassengerCommonValueCallback?.onCommonCallback(numberStr) @@ -194,9 +202,9 @@ class TaxiPassengerCheckView :RelativeLayout, View.OnClickListener { Typeface.NORMAL,100, resources.getColorStateList(R.color.taxi_p_check_passenger_number) ,null ), 4, 5, Spannable.SPAN_INCLUSIVE_INCLUSIVE) - tvPassengerCount.text = sb - tvPassengerStart.text = "起 点 : $startSiteAddr" - tvPassengerEnd.text = "终 点 : $endSiteAddr" + tv_passenger_count.text = sb + tv_passenger_start.text = "起 点 : $startSiteAddr" + tv_passenger_end.text = "终 点 : $endSiteAddr" for(i in numSelect.indices){ numSelect[i] = null } diff --git a/OCH/mogo-och-taxi-passenger/src/main/res/drawable-xhdpi/taxi_p_right_rear_cam.png b/OCH/mogo-och-taxi-passenger/src/main/res/drawable-xhdpi/taxi_p_right_rear_cam.png new file mode 100644 index 0000000000..1e11ca725e Binary files /dev/null and b/OCH/mogo-och-taxi-passenger/src/main/res/drawable-xhdpi/taxi_p_right_rear_cam.png differ diff --git a/OCH/mogo-och-taxi-passenger/src/main/res/layout/taxi_p_arrived_end_panel.xml b/OCH/mogo-och-taxi-passenger/src/main/res/layout/taxi_p_arrived_end_panel.xml index f4bef17cc3..033a667bc4 100644 --- a/OCH/mogo-och-taxi-passenger/src/main/res/layout/taxi_p_arrived_end_panel.xml +++ b/OCH/mogo-och-taxi-passenger/src/main/res/layout/taxi_p_arrived_end_panel.xml @@ -54,7 +54,7 @@ app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" android:layout_marginStart="@dimen/dp_90" - android:background="@color/arrow_color" + android:src="@drawable/taxi_p_right_rear_cam" android:layout_marginBottom="@dimen/dp_90" android:layout_width="@dimen/dp_900" android:layout_height="@dimen/dp_506"/>