Merge branch 'dev_robobus-d_230413_3.1.0' into dev_robobus_d_3.2.0_4.14_local
This commit is contained in:
@@ -15,4 +15,5 @@ interface DrivingInfoCallback {
|
||||
fun showNoTaskView(isTrue : Boolean)
|
||||
fun updateLineStations(stations: MutableList<BusStationBean>)
|
||||
fun updateStationsInfo(stations: MutableList<BusStationBean>, i: Int, isArrived: Boolean)
|
||||
fun clearCustomPolyline()
|
||||
}
|
||||
@@ -421,6 +421,12 @@ class PM2DrivingModel private constructor() {
|
||||
updateLocalOrder()
|
||||
return
|
||||
}
|
||||
|
||||
if (routesResult != null && routesResult!!.lineId != result.lineId){
|
||||
d(SceneConstant.M_BUS_P+TAG, "lineId change= clearCustomPolyline")
|
||||
mDrivingInfoCallback?.clearCustomPolyline()
|
||||
}
|
||||
|
||||
d(SceneConstant.M_BUS_P+TAG, "queryDriverSiteByCoordinate= update")
|
||||
routesResult = result
|
||||
|
||||
|
||||
@@ -116,6 +116,12 @@ class PM2DrivingPresenter(view: PM2DrivingInfoFragment?) :
|
||||
}
|
||||
}
|
||||
|
||||
override fun clearCustomPolyline() {
|
||||
ThreadUtils.runOnUiThread {
|
||||
mView?.clearCustomPolyline()
|
||||
}
|
||||
}
|
||||
|
||||
override fun updateAutoStatus(isOpen: Boolean) {
|
||||
ThreadUtils.runOnUiThread {
|
||||
mView?.updateAutoStatus(isOpen)
|
||||
@@ -125,4 +131,6 @@ class PM2DrivingPresenter(view: PM2DrivingInfoFragment?) :
|
||||
override fun updateAutoStatus(status: Int) {
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -28,8 +28,6 @@ import kotlin.math.roundToInt
|
||||
class PM2DrivingInfoFragment :
|
||||
MvpFragment<PM2DrivingInfoFragment?, PM2DrivingPresenter?>() {
|
||||
|
||||
// private var timeHandler: TimeHandler? = null
|
||||
|
||||
/**
|
||||
* 改变自动驾驶状态
|
||||
*
|
||||
@@ -108,7 +106,6 @@ class PM2DrivingInfoFragment :
|
||||
}
|
||||
|
||||
override fun onDestroy() {
|
||||
// timeHandler?.removeCallbacksAndMessages(null)
|
||||
super.onDestroy()
|
||||
overMapView?.let{
|
||||
it.onDestroy()
|
||||
@@ -142,9 +139,7 @@ class PM2DrivingInfoFragment :
|
||||
}
|
||||
|
||||
private fun setLineInfoView(isShow: Boolean){
|
||||
if (isShow){
|
||||
|
||||
}else{
|
||||
if (!isShow){
|
||||
updateNoOrderUI()
|
||||
}
|
||||
}
|
||||
@@ -155,11 +150,14 @@ class PM2DrivingInfoFragment :
|
||||
overMapView?.let {
|
||||
it.clearSiteMarkers()
|
||||
}
|
||||
clearCustomPolyline()
|
||||
}
|
||||
|
||||
fun clearCustomPolyline(){
|
||||
overMapView?.let {
|
||||
it.clearCustomPolyline()
|
||||
}
|
||||
}
|
||||
|
||||
private fun updateNoStationView(){
|
||||
station_name_tv.setTextColor(resources.getColor(R.color.m2_next_tv_color))
|
||||
station_name_tv.text = resources.getString(R.string.m2_p_empty_tv)
|
||||
@@ -207,13 +205,9 @@ class PM2DrivingInfoFragment :
|
||||
tv_distance.text = resources.getString(R.string.m2_p_empty_remain_km)
|
||||
tv_left_time.text = resources.getString(R.string.m2_p_empty_remain_minute)
|
||||
tv_next_station_title.text = resources.getString(R.string.m2_p_station_title_arrived_tv)
|
||||
iv_animal_list.visibility = View.VISIBLE
|
||||
val animationDrawable = iv_animal_list.drawable as AnimationDrawable
|
||||
animationDrawable.start()
|
||||
haveLineAndArrivedStation()
|
||||
}else{ //前往目的地中
|
||||
tv_next_station_title.text = resources.getString(R.string.shuttle_p_next_station_title)
|
||||
iv_animal_list.visibility = View.GONE
|
||||
haveLineAndArriveingStation()
|
||||
}
|
||||
}
|
||||
@@ -250,6 +244,8 @@ class PM2DrivingInfoFragment :
|
||||
clg_distance_left_time.visibility = View.GONE
|
||||
// 到达站点
|
||||
tv_arrived_notice.visibility = View.GONE
|
||||
|
||||
iv_animal_list.visibility = View.GONE
|
||||
}
|
||||
// 有线路正在到站点
|
||||
fun haveLineAndArriveingStation(){
|
||||
@@ -257,17 +253,20 @@ class PM2DrivingInfoFragment :
|
||||
group_stationinfo.visibility = View.VISIBLE
|
||||
clg_distance_left_time.visibility = View.VISIBLE
|
||||
tv_arrived_notice.visibility = View.GONE
|
||||
iv_animal_list.visibility = View.GONE
|
||||
}
|
||||
// 有线路到达站点
|
||||
fun haveLineAndArrivedStation(){
|
||||
private fun haveLineAndArrivedStation(){
|
||||
group_not_select_line.visibility = View.GONE
|
||||
group_stationinfo.visibility = View.VISIBLE
|
||||
clg_distance_left_time.visibility = View.GONE
|
||||
tv_arrived_notice.visibility = View.VISIBLE
|
||||
iv_animal_list.visibility = View.VISIBLE
|
||||
val animationDrawable = iv_animal_list.drawable as AnimationDrawable
|
||||
animationDrawable.start()
|
||||
}
|
||||
|
||||
companion object {
|
||||
private val TAG = PM2DrivingInfoFragment::class.java.simpleName
|
||||
const val LOOP_TIME_TEXT = 10 * 1000L
|
||||
}
|
||||
}
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 284 KiB After Width: | Height: | Size: 193 KiB |
@@ -12,7 +12,7 @@
|
||||
android:layout_height="match_parent"
|
||||
app:carDrawable="@drawable/m2_map_car_icon"
|
||||
app:endPointDrawable="@drawable/m2_map_end_icon"
|
||||
app:isClearArrived="true"
|
||||
app:isClearArrived="false"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintWidth_percent="0.6"
|
||||
app:mapStyleExtraPath="@string/m2_over_map_style_extra_path"
|
||||
@@ -24,6 +24,8 @@
|
||||
app:unArrivedDrawable="@drawable/m2_amap_arriving_road"
|
||||
app:mapTilt="0"
|
||||
app:leftPadding="200"
|
||||
app:topPadding="150"
|
||||
app:bottomPadding="50"
|
||||
app:startPointDrawable="@drawable/m2_map_start_icon" />
|
||||
|
||||
<ImageView
|
||||
@@ -286,15 +288,15 @@
|
||||
app:layout_constraintBottom_toBottomOf="parent" />
|
||||
|
||||
<!-- 转向灯 IMoGoChassisLamplightListener-->
|
||||
<!-- <com.mogo.och.bus.passenger.ui.widget.M2TurnLightView-->
|
||||
<!-- android:id="@+id/turn_light_view"-->
|
||||
<!-- android:layout_width="wrap_content"-->
|
||||
<!-- android:layout_height="wrap_content"-->
|
||||
<!-- android:layout_marginLeft="@dimen/dp_12"-->
|
||||
<!-- app:day_light_mode="true"-->
|
||||
<!-- app:layout_constraintLeft_toRightOf="@+id/auto_tv"-->
|
||||
<!-- app:layout_constraintTop_toTopOf="@+id/auto_tv"-->
|
||||
<!-- app:visible="false" />-->
|
||||
<com.mogo.och.bus.passenger.ui.widget.M2TurnLightView
|
||||
android:id="@+id/turn_light_view"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginLeft="@dimen/dp_12"
|
||||
app:day_light_mode="true"
|
||||
app:layout_constraintLeft_toRightOf="@+id/auto_tv"
|
||||
app:layout_constraintTop_toTopOf="@+id/auto_tv"
|
||||
app:visible="false" />
|
||||
|
||||
<!-- 红绿灯-->
|
||||
<!-- <com.mogo.och.bus.passenger.ui.widget.M2PTrafficLightView-->
|
||||
|
||||
@@ -2,9 +2,11 @@ package com.mogo.eagle.core.function.hmi.ui.vehicle
|
||||
|
||||
import android.content.Context
|
||||
import android.util.AttributeSet
|
||||
import android.util.Log
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import androidx.constraintlayout.widget.ConstraintLayout
|
||||
import com.mogo.eagle.core.data.autopilot.AutopilotStatusInfo
|
||||
import com.mogo.eagle.core.data.config.FunctionBuildConfig
|
||||
import com.mogo.eagle.core.data.enums.EventTypeEnumNew
|
||||
import com.mogo.eagle.core.data.msgbox.MsgBoxBean
|
||||
@@ -31,6 +33,10 @@ class TakeOverView @JvmOverloads constructor(
|
||||
const val TAG = "TakeOverView"
|
||||
}
|
||||
|
||||
private var autopilotStatus: Int = 0 //自动驾驶状态 0代表不可自动驾驶,1代表可自动驾驶,2代表自动驾驶中,7:平行驾驶中
|
||||
private var isParallel: Boolean = false //是否是平行驾驶
|
||||
|
||||
|
||||
init {
|
||||
LayoutInflater.from(context).inflate(R.layout.view_take_over, this, true)
|
||||
}
|
||||
@@ -42,6 +48,21 @@ class TakeOverView @JvmOverloads constructor(
|
||||
CallerAutoPilotStatusListenerManager.addListener(TAG, this)
|
||||
}
|
||||
|
||||
/**
|
||||
* 自动驾驶状态信息
|
||||
*
|
||||
* @param autoPilotStatusInfo 状态信息
|
||||
*/
|
||||
override fun onAutopilotStatusResponse(autoPilotStatusInfo: AutopilotStatusInfo) {
|
||||
autopilotStatus = autoPilotStatusInfo.state
|
||||
if(autoPilotStatusInfo.state == 7){
|
||||
isParallel = true
|
||||
}else if(autoPilotStatusInfo.state == 2){
|
||||
isParallel = false
|
||||
}
|
||||
Log.i(TAG,"自动驾驶状态${autopilotStatus}")
|
||||
}
|
||||
|
||||
/**
|
||||
* 工控机监控节点上报
|
||||
*/
|
||||
@@ -90,32 +111,37 @@ class TakeOverView @JvmOverloads constructor(
|
||||
//弱网
|
||||
MogoReport.Code.Error.EMAP.EPARALLEL_AICLOUD_NETWORK_WEAK,
|
||||
MogoReport.Code.Error.EMAP.EPARALLEL_AICLOUD_CONNECTION_ERROR -> {
|
||||
CallerHmiManager.warningV2X(
|
||||
EventTypeEnumNew.NETWORK_WEAK_EVENT.poiType,
|
||||
EventTypeEnumNew.NETWORK_WEAK_EVENT.content,
|
||||
EventTypeEnumNew.NETWORK_WEAK_EVENT.tts,
|
||||
object : IMoGoWarningStatusListener {
|
||||
override fun onShow() {
|
||||
takeOver = true
|
||||
visibility = View.VISIBLE
|
||||
//加入消息盒子
|
||||
saveMsgBox(
|
||||
MsgBoxBean(
|
||||
MsgBoxType.V2X, V2XMsg(
|
||||
EventTypeEnumNew.NETWORK_WEAK_EVENT.poiType,
|
||||
EventTypeEnumNew.NETWORK_WEAK_EVENT.content,
|
||||
EventTypeEnumNew.NETWORK_WEAK_EVENT.tts
|
||||
//如果是平行驾驶状态下,提示弱网接管
|
||||
Log.i(TAG,"弱网时自动驾驶状态:${autopilotStatus}")
|
||||
if(autopilotStatus == 7 || isParallel){
|
||||
CallerHmiManager.warningV2X(
|
||||
EventTypeEnumNew.NETWORK_WEAK_EVENT.poiType,
|
||||
EventTypeEnumNew.NETWORK_WEAK_EVENT.content,
|
||||
EventTypeEnumNew.NETWORK_WEAK_EVENT.tts,
|
||||
object : IMoGoWarningStatusListener {
|
||||
override fun onShow() {
|
||||
takeOver = true
|
||||
visibility = View.VISIBLE
|
||||
//加入消息盒子
|
||||
Log.i(TAG,"弱网时加入消息盒子${EventTypeEnumNew.NETWORK_WEAK_EVENT.content}")
|
||||
saveMsgBox(
|
||||
MsgBoxBean(
|
||||
MsgBoxType.V2X, V2XMsg(
|
||||
EventTypeEnumNew.NETWORK_WEAK_EVENT.poiType,
|
||||
EventTypeEnumNew.NETWORK_WEAK_EVENT.content,
|
||||
EventTypeEnumNew.NETWORK_WEAK_EVENT.tts
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
override fun onDismiss() {
|
||||
takeOver = false
|
||||
visibility = View.GONE
|
||||
override fun onDismiss() {
|
||||
takeOver = false
|
||||
visibility = View.GONE
|
||||
}
|
||||
}
|
||||
}
|
||||
)
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -47,7 +47,7 @@ open class AutopilotStatusInfo : Serializable, Cloneable {
|
||||
var satelliteTime = 0.0
|
||||
|
||||
/**
|
||||
* 自动驾驶状态 0是不可用 1是ready 2是自动驾驶start
|
||||
* 自动驾驶状态 0是不可用 1是ready 2是自动驾驶start 7:平行驾驶中
|
||||
*/
|
||||
var state = 0
|
||||
|
||||
|
||||
Reference in New Issue
Block a user