[6.6.2]行程总结报告优化-更改总结报告数据计算方法

This commit is contained in:
xuxinchao
2024-09-30 19:03:30 +08:00
committed by EmArrow
parent 404edc319a
commit 4505246a94
7 changed files with 308 additions and 36 deletions

View File

@@ -0,0 +1,242 @@
package com.mogo.eagle.core.function.call.autopilot
import com.mogo.eagle.core.data.autopilot.AutopilotSummaryInfo
object CallerServicesEventManager {
enum class ServiceType{
ROAD,//全息路口服务次数
LIGHT,//路口灯态服务次数
ROAD_CONSTRUCTION,//道路施工
ROAD_ACCIDENT,//道路事故
BUS_STOP,//公交站事件
STATIONARY_VEHICLE,//静止车辆
REVERSE_CAR,//他车倒车
RETROGRADE_EVENT,//逆行事件
TRAVERSE_CROSSING, //行人横穿
NON_VEHICLE_CROSSING// 非机动车横穿
}
fun updateServicesNum(serviceType: ServiceType){
when(serviceType){
//全息路口服务次数
ServiceType.ROAD->{
updateRoadNum()
}
//路口灯态服务次数
ServiceType.LIGHT->{
updateLightServicesNum()
}
//道路施工
ServiceType.ROAD_CONSTRUCTION->{
updateRoadConstructionNum()
}
//道路事故
ServiceType.ROAD_ACCIDENT ->{
updateRoadAccidentNum()
}
//公交站事件
ServiceType.BUS_STOP ->{
updateBusStopNum()
}
//静止车辆
ServiceType.STATIONARY_VEHICLE ->{
updateStationaryVehicleNum()
}
//他车倒车
ServiceType.REVERSE_CAR ->{
updateReverseCarNum()
}
//逆行事件
ServiceType.RETROGRADE_EVENT ->{
updateRetrogradeEventNum()
}
//行人横穿
ServiceType.TRAVERSE_CROSSING ->{
updateTraverseCrossingNum()
}
// 非机动车横穿
ServiceType.NON_VEHICLE_CROSSING ->{
updateNonVehicleCrossingNum()
}
}
}
/**
* 更新全息路口服务次数
*/
private fun updateRoadNum(){
AutopilotSummaryInfo.RoadNum++
}
/**
* 获取全息路口服务次数
*/
fun getRoadNum(): Int{
return AutopilotSummaryInfo.RoadNum
}
/**
* 更新路口灯态服务次数
*/
private fun updateLightServicesNum(){
AutopilotSummaryInfo.lightServicesNum++
}
/**
* 获取路口灯态服务次数
*/
fun getLightServicesNum(): Int{
return AutopilotSummaryInfo.lightServicesNum
}
/**
* 更新道路施工次数
*/
private fun updateRoadConstructionNum(){
AutopilotSummaryInfo.roadConstructionNum++
}
/**
* 获取道路施工次数
*/
private fun getRoadConstructionNum(): Int{
return AutopilotSummaryInfo.roadConstructionNum
}
/**
* 更新道路事故次数
*/
private fun updateRoadAccidentNum(){
AutopilotSummaryInfo.roadAccidentNum++
}
/**
* 获取道路事故次数
*/
private fun getRoadAccidentNum(): Int{
return AutopilotSummaryInfo.roadAccidentNum
}
/**
* 更新公交站事件次数
*/
private fun updateBusStopNum(){
AutopilotSummaryInfo.busStopNum++
}
/**
* 获取公交站事件次数
*/
private fun getBusStopNum(): Int{
return AutopilotSummaryInfo.busStopNum
}
/**
* 更新静止车辆事件次数
*/
private fun updateStationaryVehicleNum(){
AutopilotSummaryInfo.stationaryVehicleNum++
}
/**
* 获取静止车辆事件次数
*/
private fun getStationaryVehicleNum(): Int{
return AutopilotSummaryInfo.stationaryVehicleNum
}
/**
* 更新他车倒车事件次数
*/
private fun updateReverseCarNum(){
AutopilotSummaryInfo.reverseCarNum++
}
/**
* 获取他车倒车事件次数
*/
private fun getReverseCarNum(): Int{
return AutopilotSummaryInfo.reverseCarNum
}
/**
* 更新逆行事件次数
*/
private fun updateRetrogradeEventNum(){
AutopilotSummaryInfo.retrogradeEventNum++
}
/**
* 获取逆行事件次数
*/
private fun getRetrogradeEventNum(): Int{
return AutopilotSummaryInfo.retrogradeEventNum
}
/**
* 更新行人横穿事件次数
*/
private fun updateTraverseCrossingNum(){
AutopilotSummaryInfo.traverseCrossingNum++
}
/**
* 获取行人横穿事件次数
*/
private fun getTraverseCrossingNum(): Int{
return AutopilotSummaryInfo.traverseCrossingNum
}
/**
* 更新非机动车横穿事件次数
*/
private fun updateNonVehicleCrossingNum(){
AutopilotSummaryInfo.nonVehicleCrossingNum++
}
/**
* 获取非机动车横穿事件次数
*/
private fun getNonVehicleCrossingNum(): Int{
return AutopilotSummaryInfo.nonVehicleCrossingNum
}
/**
* 获取道路信息提醒次数
*/
fun getInfoTipNum(): Int{
return getRoadConstructionNum()+getRoadAccidentNum()+getBusStopNum()
}
/**
* 获取车辆行为提醒次数
*/
fun getVehicleTipNum(): Int{
return getStationaryVehicleNum() + getReverseCarNum() + getRetrogradeEventNum()
}
/**
* 获取弱势参与者提醒次数
*/
fun getVulnerableTipNum(): Int{
return getTraverseCrossingNum() + getNonVehicleCrossingNum()
}
/**
* 清空事件次数
*/
fun resetServicesNum(){
AutopilotSummaryInfo.RoadNum = 0
AutopilotSummaryInfo.lightServicesNum = 0
AutopilotSummaryInfo.roadConstructionNum = 0
AutopilotSummaryInfo.roadAccidentNum = 0
AutopilotSummaryInfo.busStopNum = 0
AutopilotSummaryInfo.stationaryVehicleNum = 0
AutopilotSummaryInfo.reverseCarNum = 0
AutopilotSummaryInfo.retrogradeEventNum = 0
AutopilotSummaryInfo.traverseCrossingNum = 0
AutopilotSummaryInfo.nonVehicleCrossingNum = 0
}
}