[6.8.4]
[fea] [all] [添加autopilotFlag]
This commit is contained in:
@@ -43,6 +43,11 @@ import kotlin.properties.Delegates
|
||||
*/
|
||||
object LineManager : CallerBase<ILineCallback>() {
|
||||
const val TAG = "LineManager"
|
||||
|
||||
const val firstStationFirstStartAutopilotFlag = 1
|
||||
const val middleStationFirstStartAutopilotFlag = 2
|
||||
const val norFirstStartAutopilotFlag = 3
|
||||
|
||||
/**
|
||||
* 线路信息
|
||||
*/
|
||||
@@ -73,11 +78,35 @@ object LineManager : CallerBase<ILineCallback>() {
|
||||
*/
|
||||
private var endStation: BusStationBean? = null
|
||||
|
||||
|
||||
/**
|
||||
* 和[autopilotId]相关 默认为true
|
||||
* 一个autopilotId范围内第一次启动自驾成功后 为false
|
||||
*/
|
||||
var isFirstStartAutopilot = true
|
||||
|
||||
/**
|
||||
* 和[teleOrderId] 相关的 默认为true
|
||||
* 一个teleOrderId范围内第一次启动自驾成功后 为false
|
||||
*/
|
||||
var teleIsFirstStartAutopilot = true
|
||||
|
||||
/**
|
||||
* 线路、och业务id、站点 三者确定的id
|
||||
* 1 首站点触发
|
||||
* 2 中间站点触发
|
||||
* 3 新的站点第一次启动自驾成功后
|
||||
*/
|
||||
var autopilotFlag : Int by Delegates.observable(firstStationFirstStartAutopilotFlag) { _, oldValue, newValue ->
|
||||
if(oldValue!=newValue){
|
||||
d(TAG,"autopilotFlag old=$oldValue new=$newValue")
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* bizId 小巴、接驳、班车 时任务id
|
||||
* taxi 目前是orderNo 6.9.0改为任务id
|
||||
* ochCommon 抽象的自驾id
|
||||
* 生成规则 lineId_startsiteId_endsiteId_bizId
|
||||
*/
|
||||
private var autopilotId: String by Delegates.observable("") { _, oldValue, newValue ->
|
||||
if (oldValue != newValue) {
|
||||
@@ -105,7 +134,10 @@ object LineManager : CallerBase<ILineCallback>() {
|
||||
}
|
||||
|
||||
/**
|
||||
* 线路、och业务id、当前线路的所有站点 三者确定的id
|
||||
* bizId 小巴、接驳、班车 时任务id
|
||||
* taxi 目前是orderNo 6.9.0改为任务id
|
||||
* 向地盘传递的orderId
|
||||
* 生成规则 lineId_siteId1_siteId2_siteId3...siteIdn_bizId
|
||||
*/
|
||||
private var teleOrderId: String by Delegates.observable("") { _, oldValue, newValue ->
|
||||
if (oldValue != newValue) {
|
||||
@@ -291,6 +323,11 @@ object LineManager : CallerBase<ILineCallback>() {
|
||||
return@getStationsWithLine
|
||||
}
|
||||
d(M_BUS + TAG, "AutopilotControlParameters is update.")
|
||||
if (lineInfo.isFirstStation(start)) {
|
||||
autopilotFlag = firstStationFirstStartAutopilotFlag
|
||||
}else{
|
||||
autopilotFlag = middleStationFirstStartAutopilotFlag
|
||||
}
|
||||
CallerAutoPilotStatusListenerManager.updateAutopilotControlParameters(parameters)
|
||||
val startStationLocation = MogoLocation()
|
||||
startStationLocation.latitude = start.gcjLat
|
||||
@@ -310,6 +347,7 @@ object LineManager : CallerBase<ILineCallback>() {
|
||||
CallerAutoPilotStatusListenerManager.updateAutopilotControlParameters(null)
|
||||
TrajectoryAndDistanceManager.setStationPoint(null, null, null)
|
||||
autopilotId = ""
|
||||
autopilotFlag = firstStationFirstStartAutopilotFlag
|
||||
OchLocationManager.removeGCJ02Listener(TAG)
|
||||
}
|
||||
|
||||
@@ -572,6 +610,7 @@ object LineManager : CallerBase<ILineCallback>() {
|
||||
if(send){// 启动自驾成功回调
|
||||
teleIsFirstStartAutopilot = false
|
||||
isFirstStartAutopilot = false
|
||||
autopilotFlag = norFirstStartAutopilotFlag
|
||||
M_LISTENERS.forEach {
|
||||
it.value.startAutopilotSuccess(source,autopilotId)
|
||||
}
|
||||
|
||||
@@ -49,5 +49,9 @@ data class LineInfo(
|
||||
return lineId.hashCode()
|
||||
}
|
||||
|
||||
fun isFirstStation(start: BusStationBean):Boolean {
|
||||
return siteInfos.first()==start
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user