[6.7.0]
[fea] [循环线路支持]
This commit is contained in:
@@ -18,6 +18,7 @@ import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
|
||||
import com.mogo.och.common.module.biz.login.LoginStatusManager
|
||||
import com.mogo.och.common.module.manager.autopilot.autopilot.bean.ArrivedStation
|
||||
import com.mogo.och.common.module.manager.autopilot.line.ILineCallback
|
||||
import com.mogo.och.common.module.manager.autopilot.line.LineManager
|
||||
import com.mogo.och.common.module.manager.autopilot.location.OchLocationManager
|
||||
import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager
|
||||
@@ -71,8 +72,8 @@ object OrderModel {
|
||||
// 加载核销模块
|
||||
TicketModel.load()
|
||||
|
||||
// 定位监听
|
||||
OchLocationManager.addGCJ02Listener(TAG, 5, mMapLocationListener)
|
||||
|
||||
LineManager.addListener(TAG,arriveStationBySearch)
|
||||
|
||||
OchTransform.addListener(TAG,ochTransform)
|
||||
|
||||
@@ -87,7 +88,7 @@ object OrderModel {
|
||||
|
||||
TicketModel.release()
|
||||
|
||||
OchLocationManager.removeGCJ02Listener(TAG)
|
||||
LineManager.removeListener(TAG)
|
||||
OchTransform.removeListener(TAG)
|
||||
}
|
||||
|
||||
@@ -105,34 +106,17 @@ object OrderModel {
|
||||
|
||||
|
||||
// 自车定位
|
||||
private val mMapLocationListener = object : IMoGoChassisLocationGCJ02Listener {
|
||||
override fun onChassisLocationGCJ02(mogoLocation: MogoLocation?) {
|
||||
if (null == mogoLocation) return
|
||||
|
||||
private val arriveStationBySearch = object : ILineCallback {
|
||||
override fun arrivedStationSuccessBySearch() {
|
||||
//是否到站的围栏判断 离站状态并且自动驾驶还未触发到站
|
||||
if (isGoingToNextStation && !isArrivedStation) {
|
||||
OCHThreadPoolManager.getsInstance().locationExecute {
|
||||
judgeArrivedStation(mogoLocation)
|
||||
onArriveAt(null, "兜底:根据定位计算到站")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//根据围栏判断,是否到达站点
|
||||
private fun judgeArrivedStation(location: MogoLocation) {
|
||||
LineManager.getStations { start, end ->
|
||||
val startLon = end.gcjLon
|
||||
val startLat = end.gcjLat
|
||||
val distance = CoordinateUtils.calculateLineDistance(
|
||||
startLon, startLat,
|
||||
location.longitude, location.latitude
|
||||
)
|
||||
if (distance <= BusConst.ARRIVE_AT_END_STATION_DISTANCE) {
|
||||
d(M_BUS + TAG, "行程日志-judgeArrivedStation() distance = $distance to ${end.name}")
|
||||
onArriveAt(null, "兜底:根据定位计算到站")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询小巴路线
|
||||
|
||||
Reference in New Issue
Block a user