From 142028bd7522598623e83acb06f203d70163c459 Mon Sep 17 00:00:00 2001 From: wangmingjun Date: Wed, 15 Feb 2023 20:01:46 +0800 Subject: [PATCH] =?UTF-8?q?[M2]=20M2=20=E5=85=A8=E8=A7=88=E5=9C=B0?= =?UTF-8?q?=E5=9B=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../passenger/callback/DrivingInfoCallback.kt | 3 +++ .../och/bus/passenger/model/PM2DrivingModel.kt | 3 ++- .../passenger/presenter/PM2DrivingPresenter.kt | 9 ++++++++- .../bus/passenger/ui/PM2DrivingInfoFragment.kt | 16 ++++++++++++++++ .../m2/res/drawable-nodpi/m2_map_end_icon.png | Bin 0 -> 1892 bytes .../res/drawable-nodpi/m2_map_staton_icon.png | Bin 0 -> 1126 bytes .../res/layout/p_m2_driving_info_fragment.xml | 3 ++- 7 files changed, 31 insertions(+), 3 deletions(-) create mode 100644 OCH/mogo-och-bus-passenger/src/m2/res/drawable-nodpi/m2_map_end_icon.png create mode 100644 OCH/mogo-och-bus-passenger/src/m2/res/drawable-nodpi/m2_map_staton_icon.png diff --git a/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/callback/DrivingInfoCallback.kt b/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/callback/DrivingInfoCallback.kt index fdd3966fe8..aaff2963b6 100644 --- a/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/callback/DrivingInfoCallback.kt +++ b/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/callback/DrivingInfoCallback.kt @@ -1,5 +1,7 @@ package com.mogo.och.bus.passenger.callback +import com.mogo.och.bus.passenger.bean.PM2Station + /** * @author: wangmingjun * @date: 2023/2/2 @@ -11,4 +13,5 @@ interface DrivingInfoCallback { fun updateRemainMT(meters : Long, timeInSecond : Long) // 米,秒 fun changeOperationStatus(loginStatus : Boolean) fun showNoTaskView(isTrue : Boolean) + fun updateLineStations(stations: MutableList) } \ No newline at end of file diff --git a/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/model/PM2DrivingModel.kt b/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/model/PM2DrivingModel.kt index 1c1489d564..72de3ef1de 100644 --- a/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/model/PM2DrivingModel.kt +++ b/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/model/PM2DrivingModel.kt @@ -243,11 +243,12 @@ class PM2DrivingModel private constructor() { private fun updatePassengerRouteInfo(result: PM2RoutesResult) { mDrivingInfoCallback?.updateLine(result.name, result.runningDur) - mDrivingInfoCallback?.showNoTaskView(false) if (result.sites != null) { + mDrivingInfoCallback?.showNoTaskView(false) val stations: List = result.sites mStations.clear() mStations.addAll(stations) + mDrivingInfoCallback?.updateLineStations(mStations) for (i in stations.indices) { val station: PM2Station = stations[i] if (station.drivingStatus == BusPassengerConst.STATION_STATUS_STOPPED diff --git a/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/presenter/PM2DrivingPresenter.kt b/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/presenter/PM2DrivingPresenter.kt index 1c9f06a422..3b97f18573 100644 --- a/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/presenter/PM2DrivingPresenter.kt +++ b/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/presenter/PM2DrivingPresenter.kt @@ -3,6 +3,7 @@ package com.mogo.och.bus.passenger.presenter import androidx.lifecycle.LifecycleOwner import com.mogo.commons.mvp.Presenter import com.mogo.eagle.core.utilcode.util.UiThreadHandler +import com.mogo.och.bus.passenger.bean.PM2Station import com.mogo.och.bus.passenger.callback.AutoPilotStatusCallback import com.mogo.och.bus.passenger.callback.DrivingInfoCallback import com.mogo.och.bus.passenger.model.PM2DrivingModel @@ -65,6 +66,12 @@ class PM2DrivingPresenter(view: PM2DrivingInfoFragment?) : } } + override fun updateLineStations(stations: MutableList) { + UiThreadHandler.post { + mView?.updateLineStations(stations) + } + } + override fun updateAutoStatus(isOpen: Boolean) { UiThreadHandler.post { mView?.updateAutoStatus(isOpen) @@ -72,6 +79,6 @@ class PM2DrivingPresenter(view: PM2DrivingInfoFragment?) : } override fun updateAutoStatus(status: Int) { - TODO("Not yet implemented") + } } \ No newline at end of file diff --git a/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/ui/PM2DrivingInfoFragment.kt b/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/ui/PM2DrivingInfoFragment.kt index 3e127dd7c7..1249e4ae60 100644 --- a/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/ui/PM2DrivingInfoFragment.kt +++ b/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/ui/PM2DrivingInfoFragment.kt @@ -1,11 +1,14 @@ package com.mogo.och.bus.passenger.ui +import android.graphics.BitmapFactory import android.os.Bundle import android.view.View import androidx.core.content.ContextCompat +import com.amap.api.maps.model.LatLng import com.mogo.commons.mvp.MvpFragment import com.mogo.eagle.core.utilcode.util.DateTimeUtils import com.mogo.och.bus.passenger.R +import com.mogo.och.bus.passenger.bean.PM2Station import com.mogo.och.bus.passenger.presenter.PM2DrivingPresenter import com.mogo.och.common.module.utils.DateTimeUtil.* import kotlinx.android.synthetic.m2.p_m2_driving_info_fragment.* @@ -98,6 +101,8 @@ class PM2DrivingInfoFragment : line_name_tv.visibility = View.GONE line_during_tv.visibility = View.GONE no_line_tv.visibility = View.VISIBLE + overMapView.clearSiteMarkers() + overMapView.clearCustomPolyline() } } @@ -115,6 +120,17 @@ class PM2DrivingInfoFragment : } } + fun updateLineStations(stations: MutableList){ + var stationsList = mutableListOf() + for (i in stations.indices){ + val station = stations[i] + var latLng = LatLng(station.gcjLat,station.gcjLon) + stationsList.add(latLng) + } + overMapView?.drawSiteMarkers(stationsList, + BitmapFactory.decodeResource(resources,R.drawable.m2_map_staton_icon),0.5f,0.9f) + } + companion object { private val TAG = PM2DrivingInfoFragment::class.java.simpleName } diff --git a/OCH/mogo-och-bus-passenger/src/m2/res/drawable-nodpi/m2_map_end_icon.png b/OCH/mogo-och-bus-passenger/src/m2/res/drawable-nodpi/m2_map_end_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..2efd3a52ebc29ca6f57873ee337b4ecf27a5b5c1 GIT binary patch literal 1892 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 + app:mapStylePath="@string/m2_over_map_style_path" + app:endPointDrawable="@drawable/m2_map_end_icon"/>