[1.1.2]
[不画终点线只画站点线、添加5分钟通知、]
This commit is contained in:
yangyakun
2023-03-07 10:25:50 +08:00
parent 810b0b6781
commit dac735782e
7 changed files with 56 additions and 14 deletions

View File

@@ -1,5 +0,0 @@
package com.mogo.och.bus.passenger.callback
interface ICarTypeCallback {
fun setCarChangeListener(productType: Int?)
}

View File

@@ -0,0 +1,13 @@
package com.mogo.och.bus.passenger.callback
interface IOrderChangeCallback {
/**
* 车模变更
*/
fun setCarChangeListener(productType: Int?)
/**
* 站点信息
*/
fun setEndStationCallBack(siteId: Long?, siteName: String?, gcj_lon: Double, gcj_lat: Double)
}

View File

@@ -28,20 +28,23 @@ import com.mogo.eagle.core.utilcode.util.CountDownTimer
import com.mogo.eagle.core.utilcode.util.NetworkUtils
import com.mogo.eagle.core.utilcode.util.ToastUtils
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
import com.mogo.och.bus.passenger.R
import com.mogo.och.bus.passenger.bean.LoopInfo
import com.mogo.och.bus.passenger.bean.response.*
import com.mogo.och.bus.passenger.callback.IBusPassengerADASStatusCallback
import com.mogo.och.bus.passenger.callback.IBusPassengerControllerStatusCallback
import com.mogo.och.bus.passenger.callback.ICarTypeCallback
import com.mogo.och.bus.passenger.callback.IOrderChangeCallback
import com.mogo.och.bus.passenger.callback.IDistanceTimeCallback
import com.mogo.och.bus.passenger.constant.BusPassengerConst.Companion.Charter_AVERAGE_SPEED
import com.mogo.och.bus.passenger.net.BusPassengerModelLoopManager
import com.mogo.och.bus.passenger.net.BusPassengerServiceManager
import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager
import com.mogo.och.common.module.biz.constant.LoginStatusManager
import com.mogo.och.common.module.biz.constant.TaxiLoginStatusEnum
import com.mogo.och.common.module.biz.network.OchCommonServiceCallback
import com.mogo.och.common.module.manager.OCHAdasAbilityManager
import com.mogo.och.common.module.utils.CoordinateCalculateRouteUtil
import com.mogo.och.common.module.utils.DateTimeUtil
import com.mogo.och.common.module.utils.PinYinUtil
import com.mogo.och.common.module.voice.VoiceManager
import mogo.telematics.pad.MessagePad
@@ -105,7 +108,7 @@ object CharterPassengerModel {
private var countDownTimer:CountDownTimer?=null
private var carTypeChageListener: ICarTypeCallback?=null
private var carTypeChageListener: IOrderChangeCallback?=null
fun init() {
initListeners()
@@ -262,7 +265,7 @@ object CharterPassengerModel {
}
orderStatusChangeListeners[tag] = orderStatusChangeListener
}
fun setCarTypeChangeListener(carTypeChageListener: ICarTypeCallback?){
fun setCarTypeChangeListener(carTypeChageListener: IOrderChangeCallback?){
this.carTypeChageListener = carTypeChageListener
}
@@ -351,6 +354,10 @@ object CharterPassengerModel {
this.carTypeChageListener?.setCarChangeListener(orderData.productType)
CallerLogger.d(M_BUS_P+TAG,"设置车模")
}
if(this.orderInfo?.siteId!=orderData.siteId){
val siteGCJ = CoordinateTransform.WGS84ToGCJ02(order.wgs84Lon, order.wgs84Lat)
this.carTypeChageListener?.setEndStationCallBack(order.siteId,order.siteName,siteGCJ[0],siteGCJ[1])
}
if (order.lineId == null || order.lineId == 0L || order.siteId == null || order.siteId == 0L) {
// 去选线路和站点
setOrderStatus(OrderStatusEnum.OrderNoLine)
@@ -502,6 +509,9 @@ object CharterPassengerModel {
countDownTimer = object :CountDownTimer(endlast,1000){
override fun onTick(millisUntilFinished: Long) {
if(millisUntilFinished/1000==300L){
//发送 通知
OCHSocketMessageManager.pushAppOperationalMsgBox(DateTimeUtil.getCurrentTimeStamp(),
AbsMogoApplication.getApp().getString(R.string.m1_end_order_5min),2)
VoiceManager.surplus5min()
}
CallerLogger.d(M_BUS_P+TAG,"倒计时${millisUntilFinished/1000}")
@@ -530,6 +540,7 @@ object CharterPassengerModel {
if (data?.data == null) return
//设置全局轨迹信息
locusInfo = data.data
CallerLogger.d(M_BUS_P+TAG,"查询自动驾驶轨迹信息")
CallerLogger.d(M_BUS_P+TAG,GsonUtil.jsonFromObject(
locusInfo))

View File

@@ -1,13 +1,12 @@
package com.mogo.och.bus.passenger.presenter
import androidx.lifecycle.LifecycleOwner
import com.mogo.eagle.core.data.config.HdMapBuildConfig
import com.amap.api.maps.model.LatLng
import com.mogo.eagle.core.data.map.MogoLocation
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener
import com.mogo.eagle.core.function.api.telematic.IReceivedMsgListener
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager
import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager
import com.mogo.eagle.core.function.call.telematic.CallerTelematicListenerManager
import com.mogo.eagle.core.utilcode.util.GsonUtils
import com.mogo.eagle.core.utilcode.util.ToastUtils
@@ -15,7 +14,7 @@ import com.mogo.eagle.core.utilcode.util.UiThreadHandler
import com.mogo.och.bus.passenger.R
import com.mogo.och.bus.passenger.bean.response.OrderInfoResponse
import com.mogo.och.bus.passenger.callback.IBusPassengerControllerStatusCallback
import com.mogo.och.bus.passenger.callback.ICarTypeCallback
import com.mogo.och.bus.passenger.callback.IOrderChangeCallback
import com.mogo.och.bus.passenger.callback.IDistanceTimeCallback
import com.mogo.och.bus.passenger.model.CharterPassengerModel
import com.mogo.och.bus.passenger.model.IOrderStatusChangeListener
@@ -32,7 +31,7 @@ import java.util.*
class BusPassengerPresenter(view: MainFragment?) :
BusBasePassengerFunctionDevicePresenter<MainFragment?>(view),
IBusPassengerControllerStatusCallback, IDistanceTimeCallback, ICarTypeCallback,
IBusPassengerControllerStatusCallback, IDistanceTimeCallback, IOrderChangeCallback,
IOrderStatusChangeListener {
private var subscribe: Disposable? = null
@@ -206,8 +205,18 @@ class BusPassengerPresenter(view: MainFragment?) :
}
else -> {}
}
mView?.showOpenAndCloseDoor()
UiThreadHandler.post {
mView?.showOpenAndCloseDoor()
mView?.cleanEndStation()
mView?.setDistanceAndTime("0", "KM", "--", "--")
}
}
}
}
override fun setEndStationCallBack(siteId: Long?, siteName: String?, gcj_lon: Double, gcj_lat: Double) {
val latLng = LatLng(gcj_lat,gcj_lon)
mView?.drawEndStation(latLng)
}
}

View File

@@ -1,9 +1,11 @@
package com.mogo.och.bus.passenger.ui
import android.graphics.BitmapFactory
import android.os.Bundle
import android.view.View
import androidx.fragment.app.DialogFragment
import androidx.fragment.app.Fragment
import com.amap.api.maps.model.LatLng
import com.mogo.commons.AbsMogoApplication
import com.mogo.commons.mvp.MvpFragment
import com.mogo.eagle.core.data.config.HdMapBuildConfig
@@ -34,6 +36,9 @@ class MainFragment :
private var bpFunctionGroupDialogFragment: WeakReference<M1ContainFragment>? = null
private var m1CarUserNoOrderFragment: WeakReference<M1CarUserNoOrderFragment>? = null
val endStation =
BitmapFactory.decodeResource(AbsMogoApplication.getApp().resources, R.drawable.m1_small_map_view_dir_end)
override fun getLayoutId(): Int {
return R.layout.m1_main_fragment
}
@@ -171,6 +176,15 @@ class MainFragment :
omvOverMap.onCreateView(savedInstanceState)
}
fun drawEndStation(latLng: LatLng) {
val listOf = listOf(latLng)
omvOverMap.drawSiteMarkers(listOf,endStation,0.5f,0.5f)
}
fun cleanEndStation(){
omvOverMap.clearSiteMarkers()
omvOverMap.clearCustomPolyline()
}
override fun onResume() {
super.onResume()
mapBizView.onResume()

View File

@@ -22,7 +22,6 @@
app:layout_constraintStart_toEndOf="@+id/mapBizView"
app:resetDrawable="@drawable/bus_p_overmap_reset_size"
app:carDrawable="@drawable/bug_p_overmap_car_model"
app:endPointDrawable="@drawable/m1_small_map_view_dir_end"
app:startPointDrawable="@null"
app:resetDrawableMarginRight="34dp"
app:resetDrawableMarginBottom="54dp"

View File

@@ -26,6 +26,7 @@
<string name="m1_stop_site_zh">正在为您靠边停车,请坐稳扶好</string>
<string name="m1_please_login_driver">请安全员登录司机屏</string>
<string name="m1_end_order_5min">包车将在5分钟后结束结束后我们将自动为您寻找停车点</string>