[routing]
[fea] [到站过滤、ui 清理]
This commit is contained in:
@@ -12,7 +12,9 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.util.ThreadUtils
|
||||
import com.mogo.och.biz.R
|
||||
import com.mogo.och.biz.routing.bean.StartGrayAndQueryContrailRsp
|
||||
import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager
|
||||
import com.mogo.och.common.module.utils.ResourcesUtils
|
||||
import com.mogo.och.common.module.utils.RxUtils
|
||||
import kotlinx.android.synthetic.main.biz_taxi_switch.view.routingOtherRunningView
|
||||
import kotlinx.android.synthetic.main.biz_taxi_switch.view.routingSelectView
|
||||
import kotlinx.android.synthetic.main.biz_taxi_switch.view.routingTaxiRunningView
|
||||
@@ -87,7 +89,9 @@ class RoutingSwitchView: ConstraintLayout, RoutingSwitchModel.SwtichLineViewCall
|
||||
val endLoading = System.currentTimeMillis()
|
||||
val dex = (100-(endLoading - startLoading)).takeIf { it>=0 }?:0
|
||||
CallerLogger.d(TAG,"展示线路 lading 展示了 ${dex}毫秒")
|
||||
ThreadUtils.runOnUiThreadDelayed({
|
||||
OchChainLogManager.writeChainLogRouting("展示线路:","延时${dex}ms")
|
||||
RxUtils.createSubscribe(dex) {
|
||||
OchChainLogManager.writeChainLogRouting("展示线路:","信息:$data")
|
||||
routingSelectView.visibility = GONE
|
||||
switch_routing_loading.visibility = GONE
|
||||
if (AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode)
|
||||
@@ -102,8 +106,7 @@ class RoutingSwitchView: ConstraintLayout, RoutingSwitchModel.SwtichLineViewCall
|
||||
routingOtherRunningView.visibility = GONE
|
||||
routingTaxiRunningView.setData(data)
|
||||
}
|
||||
|
||||
},dex, ThreadUtils.MODE.QUEUE)
|
||||
}
|
||||
}
|
||||
|
||||
override fun onAttachedToWindow() {
|
||||
|
||||
@@ -67,7 +67,7 @@ class RoutingSelectView: ConstraintLayout, SwtichRoutingViewCallback {
|
||||
if(data.contrailId==null||data.contrailId!!<=0L){
|
||||
ToastUtils.showShort("请设置轨迹信息")
|
||||
}
|
||||
OchChainLogManager.writeChainLogRouting("[选择灰度任务]","[选择灰度任务] 当前选择 mCurrentChosenPosition=$mCurrentChosenPosition, ")
|
||||
OchChainLogManager.writeChainLogRouting("[选择灰度任务]","[选择灰度任务] 当前选择 ${data} ")
|
||||
swtichViewModel?.showLoading()
|
||||
viewModel?.startGrayTaskAndQueryRoutingContrail(data.contrailId!!,data)
|
||||
}
|
||||
|
||||
@@ -24,6 +24,7 @@ import com.mogo.och.bridge.autopilot.line.ILineCallback
|
||||
import com.mogo.och.bridge.autopilot.line.LineManager
|
||||
import com.mogo.och.common.module.constant.OchCommonConst
|
||||
import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager
|
||||
import com.mogo.och.common.module.manager.loop.BizLoopManager
|
||||
import com.mogo.och.common.module.network.OchCommonServiceCallback
|
||||
import com.mogo.och.data.bean.BusStationBean
|
||||
|
||||
@@ -49,6 +50,11 @@ class TaskRunningModel : ViewModel() {
|
||||
private var stationList: MutableList<BusStationBean>? = null
|
||||
private var currentGrayId: Long? = null
|
||||
|
||||
/**
|
||||
* 是否可以进行进站操作
|
||||
*/
|
||||
private var arrivedStation:Boolean = false
|
||||
|
||||
companion object {
|
||||
var currentIndex = -1
|
||||
}
|
||||
@@ -79,6 +85,10 @@ class TaskRunningModel : ViewModel() {
|
||||
object : IOchAutopilotStatusListener {
|
||||
|
||||
override fun onAutopilotArriveAtStation(arrivalNotification: ArrivedStation?) {
|
||||
if(!arrivedStation){
|
||||
OchChainLogManager.writeChainLogRouting("已到站","等待重试",false)
|
||||
return
|
||||
}
|
||||
CallerLogger.i(
|
||||
TAG,
|
||||
"onAutopilotArriveAtStation = ${arrivalNotification.toString()}"
|
||||
@@ -87,7 +97,7 @@ class TaskRunningModel : ViewModel() {
|
||||
"MAP到站通知",
|
||||
"[MAP到站通知] 上报到站,location=${arrivalNotification?.endLocation}"
|
||||
)
|
||||
viewCallback?.onArrivedStation()
|
||||
arriveStation()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -97,7 +107,7 @@ class TaskRunningModel : ViewModel() {
|
||||
"[自车定位围栏]",
|
||||
"\"[自车定位围栏] 并查询底盘触发到站, endSiteId=${currentGrayLineBean?.endSite?.siteId}, endSiteName=${currentGrayLineBean?.endSite?.siteName}, lineId=${currentGrayLineBean?.lineId},围栏范围:${OchCommonConst.ARRIVE_AT_START_STATION_DISTANCE}米 没有过站、速度基本为零且在15m内\""
|
||||
)
|
||||
viewCallback?.onArrivedStation()
|
||||
arriveStation()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -111,6 +121,7 @@ class TaskRunningModel : ViewModel() {
|
||||
val startStation = it[currentIndex]
|
||||
val endStation = it[currentIndex + 1]
|
||||
startStation.isLeaving = true
|
||||
arrivedStation = true
|
||||
startStation.drivingStatus = 2
|
||||
LineManager.setStartAndEndStation(startStation, endStation)
|
||||
this.viewCallback?.notifyItemChange(currentIndex)
|
||||
@@ -138,6 +149,7 @@ class TaskRunningModel : ViewModel() {
|
||||
fun showArriverStationAndCompleteTask()
|
||||
|
||||
fun notifyItemChange(currentIndex: Int)
|
||||
fun clearData()
|
||||
}
|
||||
|
||||
|
||||
@@ -145,11 +157,14 @@ class TaskRunningModel : ViewModel() {
|
||||
stationList?.let {
|
||||
val startStation = it[currentIndex]
|
||||
startStation.isLeaving = false
|
||||
arrivedStation = false
|
||||
startStation.drivingStatus = 1
|
||||
}
|
||||
currentIndex += 1
|
||||
LineManager.setStartAndEndStation(null,null)
|
||||
this.viewCallback?.onArrivedStation()
|
||||
BizLoopManager.runInMainThread{
|
||||
this.viewCallback?.onArrivedStation()
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -224,6 +239,10 @@ class TaskRunningModel : ViewModel() {
|
||||
LineManager.setContraiInfo(null)
|
||||
LineManager.setStartAndEndStation(null, null)
|
||||
|
||||
BizLoopManager.runInMainThread{
|
||||
this.viewCallback?.clearData()
|
||||
}
|
||||
|
||||
CallerEagleBaseFunctionCall4OchManager.updateOrderStatus(false)
|
||||
|
||||
// 设置灰度路线任务执行状态,切换模式时判断使用
|
||||
|
||||
@@ -8,7 +8,6 @@ import androidx.lifecycle.ViewModelProvider
|
||||
import androidx.lifecycle.findViewTreeViewModelStoreOwner
|
||||
import com.mogo.eagle.core.utilcode.kotlin.onClick
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_OCHCOMMON
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.mogo.och.biz.R
|
||||
@@ -231,4 +230,12 @@ class TaskRunningView : ConstraintLayout, TaskRunningModel.SwtichLineViewCallbac
|
||||
override fun notifyItemChange(currentIndex: Int) {
|
||||
mAdapter.notifyChange()
|
||||
}
|
||||
|
||||
override fun clearData() {
|
||||
bus_task_running_line_name.setText("--")
|
||||
actv_running_task_last_station.text = "往--"
|
||||
mAdapter.setDataList(mutableListOf())
|
||||
aciv_task_leave_station_slide_bg.setTextValue("滑动出发")
|
||||
showLeaveStationView()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -67,8 +67,8 @@ object OchChainLogManager {
|
||||
// 算路验证模式
|
||||
const val EVENT_KEY_INFO_ROUTING = "analytics_event_och_routing"
|
||||
|
||||
fun writeChainLogRouting(title: String, info: String) {
|
||||
writeChainLog(title, info, true, EVENT_KEY_INFO_ROUTING)
|
||||
fun writeChainLogRouting(title: String, info: String , upload: Boolean = true) {
|
||||
writeChainLog(title, info, upload, EVENT_KEY_INFO_ROUTING)
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user