diff --git a/OCH/common/biz/build.gradle b/OCH/common/biz/build.gradle index 0e86496581..606b8fb7de 100644 --- a/OCH/common/biz/build.gradle +++ b/OCH/common/biz/build.gradle @@ -40,6 +40,15 @@ android { kotlinOptions { jvmTarget = '1.8' } + + sourceSets { + main { + res.srcDirs = [ + 'src/main/res', + 'src/main/res/routing', + ] + } + } } dependencies { @@ -53,6 +62,7 @@ dependencies { implementation rootProject.ext.dependencies.androidxappcompat implementation rootProject.ext.dependencies.material implementation rootProject.ext.dependencies.rxandroid + implementation rootProject.ext.dependencies.amapnavi3dmap implementation project(':OCH:common:common') implementation rootProject.ext.dependencies.arouter diff --git a/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/RoutingProvider.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/RoutingProvider.kt new file mode 100644 index 0000000000..2f48d2ea36 --- /dev/null +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/RoutingProvider.kt @@ -0,0 +1,53 @@ +package com.mogo.och.biz.routing + +import android.content.Context +import android.view.View +import androidx.fragment.app.Fragment +import com.alibaba.android.arouter.facade.annotation.Route +import com.mogo.eagle.core.data.config.FunctionBuildConfig +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils +import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_OCHCOMMON +import com.mogo.och.biz.routing.ui.RoutingSwitchView +import com.mogo.och.common.module.biz.routing.RoutingCallback +import com.mogo.och.common.module.biz.routing.RoutingService +import com.mogo.och.common.module.constant.OchCommonConst + + +@Route(path = OchCommonConst.BIZ_ROUTING) +class RoutingProvider : RoutingService { + + private var context: Context? = null + + private val TAG = M_OCHCOMMON + "RoutingProvider" + + private var switchView:RoutingSwitchView?=null + + private var callback:RoutingCallback?=null + + + override fun getRoutingView(): View? { + if(AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) { + context?.let { + if(switchView==null){ + switchView = RoutingSwitchView(it) + } + return switchView + } + } + return null + } + + override fun setRoutingCallback(callback: RoutingCallback?) { + this.callback = callback + } + + + override fun init(context: Context?) { + this.context = context + } + + fun invokeCallbackShowMap(isShow: Boolean) { + this.callback?.showMap(isShow) + } + +} \ No newline at end of file diff --git a/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/RoutingServiceManager.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/RoutingServiceManager.kt new file mode 100644 index 0000000000..9b3bbf7cad --- /dev/null +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/RoutingServiceManager.kt @@ -0,0 +1,19 @@ +package com.mogo.och.biz.routing + +import android.annotation.SuppressLint +import com.alibaba.android.arouter.launcher.ARouter +import com.mogo.och.common.module.constant.OchCommonConst + + +object RoutingServiceManager { + + @SuppressLint("StaticFieldLeak") + private var routingService: RoutingProvider? = + ARouter.getInstance().build(OchCommonConst.BIZ_ROUTING).navigation() as RoutingProvider + + + fun invokeCallback(isShow: Boolean) { + this.routingService?.invokeCallbackShowMap(isShow) + } + +} \ No newline at end of file diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/bean/TaxiRoutingBean.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/bean/RoutingBean.kt similarity index 99% rename from OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/bean/TaxiRoutingBean.kt rename to OCH/common/biz/src/main/java/com/mogo/och/biz/routing/bean/RoutingBean.kt index 68d6a2c50e..1a769ecbe8 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/bean/TaxiRoutingBean.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/bean/RoutingBean.kt @@ -1,4 +1,4 @@ -package com.mogo.och.unmanned.taxi.bean +package com.mogo.och.biz.routing.bean import com.mogo.eagle.core.data.BaseData import com.mogo.och.data.bean.BusStationBean diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/callback/ITaxiRoutingCallback.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/callback/ITaxiRoutingCallback.kt similarity index 82% rename from OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/callback/ITaxiRoutingCallback.kt rename to OCH/common/biz/src/main/java/com/mogo/och/biz/routing/callback/ITaxiRoutingCallback.kt index 639dc98d64..246ab39b51 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/callback/ITaxiRoutingCallback.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/callback/ITaxiRoutingCallback.kt @@ -1,13 +1,10 @@ package com.mogo.och.unmanned.taxi.callback -import com.mogo.och.unmanned.taxi.bean.GrayLineBean -import com.mogo.och.unmanned.taxi.bean.StartGrayAndQueryContrailRsp - interface ITaxiRoutingCallback { /** * 查询灰度路线列表--成功✅ */ - fun onQueryRoutingGrayLineListSuccess(data: MutableList) + fun onQueryRoutingGrayLineListSuccess(data: MutableList) /** * 查询灰度路线列表--失败❌ @@ -18,7 +15,7 @@ interface ITaxiRoutingCallback { /** * 灰度任务&查询轨迹详情--成功✅ */ - fun onStartGrayTaskAndQueryContrailSuccess(data: StartGrayAndQueryContrailRsp) + fun onStartGrayTaskAndQueryContrailSuccess(data: com.mogo.och.biz.routing.bean.StartGrayAndQueryContrailRsp) /** * 灰度任务&查询轨迹详情--失败❌ diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/network/TaxiRoutingServiceApi.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/net/RoutingServiceApi.kt similarity index 76% rename from OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/network/TaxiRoutingServiceApi.kt rename to OCH/common/biz/src/main/java/com/mogo/och/biz/routing/net/RoutingServiceApi.kt index dfcd485afe..54f145306e 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/network/TaxiRoutingServiceApi.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/net/RoutingServiceApi.kt @@ -1,16 +1,8 @@ -package com.mogo.och.unmanned.taxi.network +package com.mogo.och.biz.routing.net import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.BaseData -import com.mogo.och.unmanned.taxi.bean.EndGrayContrailTaskReq -import com.mogo.och.unmanned.taxi.bean.QueryGrayContrailListRsp -import com.mogo.och.unmanned.taxi.bean.QueryPointErrorReasonsRsp -import com.mogo.och.unmanned.taxi.bean.QueryRoutingContrailByIdRsp -import com.mogo.och.unmanned.taxi.bean.SaveGrayContrailErrorReasons -import com.mogo.och.unmanned.taxi.bean.StartGrayContrailTaskReq -import com.mogo.och.unmanned.taxi.bean.StartGrayContrailTaskRsp -import com.mogo.och.unmanned.taxi.bean.SubmitGrayLineIssueLocationReq import io.reactivex.Observable import retrofit2.http.Body import retrofit2.http.GET @@ -19,7 +11,7 @@ import retrofit2.http.Headers import retrofit2.http.POST import retrofit2.http.Query -interface TaxiRoutingServiceApi { +interface RoutingServiceApi { /** * 查询灰度线路列表 @@ -30,7 +22,7 @@ interface TaxiRoutingServiceApi { @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, @Query("sn") sn: String? - ): Observable + ): Observable /** * 开始一个路线的灰度任务 @@ -40,8 +32,8 @@ interface TaxiRoutingServiceApi { fun startGrayTask( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, - @Body data: StartGrayContrailTaskReq - ): Observable + @Body data: com.mogo.och.biz.routing.bean.StartGrayContrailTaskReq + ): Observable /** * 根据id查询灰度轨迹详情 @@ -52,7 +44,7 @@ interface TaxiRoutingServiceApi { @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, @Query("id") contrailId: Long - ): Observable + ): Observable /** * 上报路线打点 @@ -62,7 +54,7 @@ interface TaxiRoutingServiceApi { fun submitGrayLineIssueLocation( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, - @Body data: SubmitGrayLineIssueLocationReq + @Body data: com.mogo.och.biz.routing.bean.SubmitGrayLineIssueLocationReq ): Observable /** @@ -73,7 +65,7 @@ interface TaxiRoutingServiceApi { fun endGrayTask( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, - @Body data: EndGrayContrailTaskReq + @Body data: com.mogo.och.biz.routing.bean.EndGrayContrailTaskReq ): Observable /** @@ -84,7 +76,7 @@ interface TaxiRoutingServiceApi { fun getDotErrorList( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, - ): Observable + ): Observable /** * 结束一个路线的灰度任务 @@ -94,6 +86,6 @@ interface TaxiRoutingServiceApi { fun saveDotDetail( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, - @Body data: SaveGrayContrailErrorReasons + @Body data: com.mogo.och.biz.routing.bean.SaveGrayContrailErrorReasons ): Observable } \ No newline at end of file diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/network/TaxiRoutingServiceManager.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/net/RoutingServiceManager.kt similarity index 72% rename from OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/network/TaxiRoutingServiceManager.kt rename to OCH/common/biz/src/main/java/com/mogo/och/biz/routing/net/RoutingServiceManager.kt index d7be74f6e9..b38f12244c 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/network/TaxiRoutingServiceManager.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/net/RoutingServiceManager.kt @@ -1,4 +1,4 @@ -package com.mogo.och.unmanned.taxi.network +package com.mogo.och.biz.routing.net import android.content.Context import com.mogo.commons.storage.SharedPrefsMgr @@ -8,23 +8,13 @@ import com.mogo.och.common.module.constant.OchCommonConst import com.mogo.och.common.module.network.OchCommonServiceCallback import com.mogo.och.common.module.network.OchCommonSubscribeImpl import com.mogo.och.common.module.network.interceptor.transformTry -import com.mogo.och.unmanned.taxi.bean.EndGrayContrailTaskReq -import com.mogo.och.unmanned.taxi.bean.GrayLineBean -import com.mogo.och.unmanned.taxi.bean.QueryGrayContrailListRsp -import com.mogo.och.unmanned.taxi.bean.QueryPointErrorReasonsRsp -import com.mogo.och.unmanned.taxi.bean.QueryRoutingContrailByIdRsp -import com.mogo.och.unmanned.taxi.bean.SaveGrayContrailErrorReasons -import com.mogo.och.unmanned.taxi.bean.StartGrayAndQueryContrailRsp -import com.mogo.och.unmanned.taxi.bean.StartGrayContrailTaskReq -import com.mogo.och.unmanned.taxi.bean.StartGrayContrailTaskRsp -import com.mogo.och.unmanned.taxi.bean.SubmitGrayLineIssueLocationReq import io.reactivex.Observable -object TaxiRoutingServiceManager { +object RoutingServiceManager { - private var mRoutingServiceApi: TaxiRoutingServiceApi = + private var mRoutingServiceApi: RoutingServiceApi = MoGoRetrofitFactory.getInstance(OchCommonConst.getBaseUrl()).create( - TaxiRoutingServiceApi::class.java + RoutingServiceApi::class.java ) /** @@ -32,7 +22,7 @@ object TaxiRoutingServiceManager { */ fun queryRoutingGrayLineList( context: Context, - callback: OchCommonServiceCallback + callback: OchCommonServiceCallback ) { mRoutingServiceApi.queryRoutingGrayLineList( sn = SharedPrefsMgr.getInstance().sn @@ -46,8 +36,8 @@ object TaxiRoutingServiceManager { */ fun startGrayTask( context: Context, - data: StartGrayContrailTaskReq, - callback: OchCommonServiceCallback + data: com.mogo.och.biz.routing.bean.StartGrayContrailTaskReq, + callback: OchCommonServiceCallback ) { mRoutingServiceApi.startGrayTask(data = data).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "startGrayTask")) @@ -59,7 +49,7 @@ object TaxiRoutingServiceManager { fun queryRoutingContrailById( context: Context, contrailId: Long, - callback: OchCommonServiceCallback + callback: OchCommonServiceCallback ) { mRoutingServiceApi.queryRoutingContrailById(contrailId = contrailId).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryRoutingContrailById")) @@ -70,7 +60,7 @@ object TaxiRoutingServiceManager { */ fun submitGrayLineIssueLocation( context: Context, - data: SubmitGrayLineIssueLocationReq, + data: com.mogo.och.biz.routing.bean.SubmitGrayLineIssueLocationReq, callback: OchCommonServiceCallback ) { mRoutingServiceApi.submitGrayLineIssueLocation(data = data).transformTry() @@ -82,7 +72,7 @@ object TaxiRoutingServiceManager { */ fun endGrayTask( context: Context, - data: EndGrayContrailTaskReq, + data: com.mogo.och.biz.routing.bean.EndGrayContrailTaskReq, callback: OchCommonServiceCallback ) { mRoutingServiceApi.endGrayTask(data = data).transformTry() @@ -91,14 +81,14 @@ object TaxiRoutingServiceManager { fun getErrorPointReasons( context: Context, - callback: OchCommonServiceCallback + callback: OchCommonServiceCallback ) { mRoutingServiceApi.getDotErrorList().transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "dot/list")) } fun saveDotDetail( context: Context, - data: SaveGrayContrailErrorReasons, + data: com.mogo.och.biz.routing.bean.SaveGrayContrailErrorReasons, callback: OchCommonServiceCallback ) { mRoutingServiceApi.saveDotDetail(data = data).transformTry() @@ -112,16 +102,17 @@ object TaxiRoutingServiceManager { context: Context, sn: String, contrailId: Long, - grayLineBean: GrayLineBean, - callback: OchCommonServiceCallback + grayLineBean: com.mogo.och.biz.routing.bean.GrayLineBean, + callback: OchCommonServiceCallback ) { - val data = StartGrayContrailTaskReq(sn = sn, contrailId = contrailId) + val data = + com.mogo.och.biz.routing.bean.StartGrayContrailTaskReq(sn = sn, contrailId = contrailId) var taskId: Long mRoutingServiceApi.startGrayTask(data = data) .flatMap { startGrayRsp -> if (startGrayRsp.data == null) { taskId = -1L - val result = StartGrayAndQueryContrailRsp( + val result = com.mogo.och.biz.routing.bean.StartGrayAndQueryContrailRsp( taskId = taskId, contrail = null, grayLineBean = grayLineBean @@ -133,7 +124,7 @@ object TaxiRoutingServiceManager { taskId = startGrayRsp.data!! return@flatMap mRoutingServiceApi.queryRoutingContrailById(contrailId = contrailId) .map { queryRoutingContrailRsp -> - val result = StartGrayAndQueryContrailRsp( + val result = com.mogo.och.biz.routing.bean.StartGrayAndQueryContrailRsp( taskId = taskId, contrail = queryRoutingContrailRsp.data, grayLineBean = grayLineBean diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/RoutingSwitchModel.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/RoutingSwitchModel.kt similarity index 90% rename from OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/RoutingSwitchModel.kt rename to OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/RoutingSwitchModel.kt index de6b70808c..2ac7638b28 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/RoutingSwitchModel.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/RoutingSwitchModel.kt @@ -1,8 +1,8 @@ -package com.mogo.och.unmanned.taxi.ui.routing +package com.mogo.och.biz.routing.ui import androidx.lifecycle.ViewModel +import com.mogo.och.biz.routing.bean.StartGrayAndQueryContrailRsp import com.mogo.och.common.module.manager.loop.BizLoopManager -import com.mogo.och.unmanned.taxi.bean.StartGrayAndQueryContrailRsp /** * @author XuXinChao diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/RoutingSwitchView.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/RoutingSwitchView.kt similarity index 81% rename from OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/RoutingSwitchView.kt rename to OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/RoutingSwitchView.kt index 706c708094..f87e747569 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/RoutingSwitchView.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/RoutingSwitchView.kt @@ -1,21 +1,19 @@ -package com.mogo.och.unmanned.taxi.ui.routing +package com.mogo.och.biz.routing.ui import android.content.Context import android.util.AttributeSet import android.view.LayoutInflater import androidx.constraintlayout.widget.ConstraintLayout -import androidx.lifecycle.LifecycleOwner import androidx.lifecycle.ViewModelProvider import androidx.lifecycle.findViewTreeViewModelStoreOwner 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.utils.ResourcesUtils -import com.mogo.och.unmanned.taxi.R -import com.mogo.och.unmanned.taxi.TaxiUnmannedDriverProvider -import com.mogo.och.unmanned.taxi.bean.StartGrayAndQueryContrailRsp -import kotlinx.android.synthetic.main.unmanned_routing_switch.view.routingRunningView -import kotlinx.android.synthetic.main.unmanned_routing_switch.view.routingSelectView -import kotlinx.android.synthetic.main.unmanned_routing_switch.view.switch_routing_loading +import kotlinx.android.synthetic.main.biz_taxi_switch.view.routingRunningView +import kotlinx.android.synthetic.main.biz_taxi_switch.view.routingSelectView +import kotlinx.android.synthetic.main.biz_taxi_switch.view.switch_routing_loading class RoutingSwitchView: ConstraintLayout, RoutingSwitchModel.SwtichLineViewCallback { @@ -35,17 +33,15 @@ class RoutingSwitchView: ConstraintLayout, RoutingSwitchModel.SwtichLineViewCall private var viewModel: RoutingSwitchModel?=null - private var fragment: LifecycleOwner?=null init { - LayoutInflater.from(context).inflate(R.layout.unmanned_routing_switch, this, true) + LayoutInflater.from(context).inflate(R.layout.biz_taxi_switch, this, true) initView() initEventBus() } private fun initView(){ - fragment = TaxiUnmannedDriverProvider.getFragmentInfo() switch_routing_loading.setEmptyText(ResourcesUtils.getString(R.string.common_biz_loading)) } diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/errorpoint/ErrorPointItemAdapter.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/errorpoint/ErrorPointItemAdapter.kt similarity index 82% rename from OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/errorpoint/ErrorPointItemAdapter.kt rename to OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/errorpoint/ErrorPointItemAdapter.kt index 8246fef006..a09d5839a5 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/errorpoint/ErrorPointItemAdapter.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/errorpoint/ErrorPointItemAdapter.kt @@ -1,16 +1,15 @@ -package com.mogo.och.unmanned.taxi.ui.routing.errorpoint +package com.mogo.och.biz.routing.ui.errorpoint import android.content.Context import android.view.LayoutInflater import android.view.View import android.view.ViewGroup -import android.widget.CheckBox import androidx.appcompat.widget.AppCompatImageView import androidx.appcompat.widget.AppCompatTextView import androidx.recyclerview.widget.RecyclerView import com.mogo.eagle.core.utilcode.kotlin.onClick -import com.mogo.och.unmanned.taxi.R -import com.mogo.och.unmanned.taxi.bean.PointError +import com.mogo.och.biz.R +import com.mogo.och.biz.routing.bean.PointError import me.jessyan.autosize.AutoSizeCompat /** @@ -40,7 +39,7 @@ class ErrorPointItemAdapter( override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): TextVH { val view: View val inflater = LayoutInflater.from(context) - view = inflater.inflate(R.layout.taxt_report_error_point_item, parent, false) + view = inflater.inflate(R.layout.biz_taxi_report_error_point_item, parent, false) return TextVH(view) } @@ -48,9 +47,9 @@ class ErrorPointItemAdapter( val errorInfo = dataList[holder.bindingAdapterPosition] AutoSizeCompat.autoConvertDensityOfGlobal(holder.itemView.resources) if (errorInfo.isCheck) { - holder.cbErrorInfo.setImageResource(R.drawable.taxi_routing_check) + holder.cbErrorInfo.setImageResource(R.drawable.biz_taxi_routing_check) }else{ - holder.cbErrorInfo.setImageResource(R.drawable.taxi_routing_uncheck) + holder.cbErrorInfo.setImageResource(R.drawable.biz_taxi_uncheck) } holder.cbErrorResong.text = errorInfo.name holder.itemView.onClick { diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/errorpoint/ReportErrorPointView.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/errorpoint/ReportErrorPointView.kt similarity index 84% rename from OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/errorpoint/ReportErrorPointView.kt rename to OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/errorpoint/ReportErrorPointView.kt index d6e9c4820b..9d322dd461 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/errorpoint/ReportErrorPointView.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/errorpoint/ReportErrorPointView.kt @@ -1,29 +1,25 @@ -package com.mogo.och.unmanned.taxi.ui.routing.errorpoint +package com.mogo.och.biz.routing.ui.errorpoint import android.content.Context import android.util.AttributeSet import android.view.LayoutInflater import androidx.lifecycle.ViewModelProvider import androidx.recyclerview.widget.GridLayoutManager -import com.google.android.flexbox.AlignItems -import com.google.android.flexbox.FlexDirection -import com.google.android.flexbox.FlexWrap -import com.google.android.flexbox.FlexboxLayoutManager import com.mogo.eagle.core.utilcode.kotlin.onClick import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.eagle.core.utilcode.util.TimeUtils import com.mogo.eagle.core.utilcode.util.ToastUtils +import com.mogo.och.biz.R +import com.mogo.och.biz.routing.bean.PointError import com.mogo.och.common.module.wigets.WindowRelativeLayout import com.mogo.och.common.module.wigets.dialog.CommonDialogView import com.mogo.och.common.module.wigets.dialog.CommonFeedbackDialog -import com.mogo.och.unmanned.taxi.R -import com.mogo.och.unmanned.taxi.bean.PointError -import kotlinx.android.synthetic.main.taxt_report_error_point_panel.view.lvs_loding -import kotlinx.android.synthetic.main.taxt_report_error_point_panel.view.rvErrorPointReason -import kotlinx.android.synthetic.main.taxt_report_error_point_panel.view.tv_report_error_point_reason -import kotlinx.android.synthetic.main.taxt_report_error_point_panel.view.tv_report_error_point_reason_cancel -import kotlinx.android.synthetic.main.taxt_report_error_point_panel.view.tv_work_order_time +import kotlinx.android.synthetic.main.biz_taxi_report_error_point_panel.view.rvErrorPointReason +import kotlinx.android.synthetic.main.biz_taxi_report_error_point_panel.view.lvs_loding +import kotlinx.android.synthetic.main.biz_taxi_report_error_point_panel.view.tv_report_error_point_reason +import kotlinx.android.synthetic.main.biz_taxi_report_error_point_panel.view.tv_report_error_point_reason_cancel +import kotlinx.android.synthetic.main.biz_taxi_report_error_point_panel.view.tv_work_order_time /** * @@ -78,7 +74,7 @@ class ReportErrorPointView : WindowRelativeLayout, private fun initView() { d(SceneConstant.M_TAXI_P + TAG, "initView") - LayoutInflater.from(context).inflate(R.layout.taxt_report_error_point_panel, this, true) + LayoutInflater.from(context).inflate(R.layout.biz_taxi_report_error_point_panel, this, true) rvErrorPointReason?.layoutManager = GridLayoutManager(context, 2) rvErrorPointReason?.setHasFixedSize(true) diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/errorpoint/ReportErrorPointViewModel.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/errorpoint/ReportErrorPointViewModel.kt similarity index 89% rename from OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/errorpoint/ReportErrorPointViewModel.kt rename to OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/errorpoint/ReportErrorPointViewModel.kt index 8520895b29..e5b9f9069f 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/errorpoint/ReportErrorPointViewModel.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/errorpoint/ReportErrorPointViewModel.kt @@ -1,16 +1,16 @@ -package com.mogo.och.unmanned.taxi.ui.routing.errorpoint +package com.mogo.och.biz.routing.ui.errorpoint import androidx.lifecycle.ViewModel import com.mogo.commons.AbsMogoApplication import com.mogo.eagle.core.data.BaseData import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.util.ToastUtils +import com.mogo.och.biz.routing.bean.PointError +import com.mogo.och.biz.routing.bean.QueryPointErrorReasonsRsp +import com.mogo.och.biz.routing.bean.SaveGrayContrailErrorReasons +import com.mogo.och.biz.routing.net.RoutingServiceManager import com.mogo.och.bridge.autopilot.location.OchLocationManager import com.mogo.och.common.module.network.OchCommonServiceCallback -import com.mogo.och.unmanned.taxi.bean.PointError -import com.mogo.och.unmanned.taxi.bean.QueryPointErrorReasonsRsp -import com.mogo.och.unmanned.taxi.bean.SaveGrayContrailErrorReasons -import com.mogo.och.unmanned.taxi.network.TaxiRoutingServiceManager class ReportErrorPointViewModel : ViewModel() { @@ -30,7 +30,7 @@ class ReportErrorPointViewModel : ViewModel() { } fun getPointErrorReasons(){ - TaxiRoutingServiceManager.getErrorPointReasons( + RoutingServiceManager.getErrorPointReasons( AbsMogoApplication.getApp(), object : OchCommonServiceCallback { override fun onSuccess(data: QueryPointErrorReasonsRsp?) { @@ -79,7 +79,7 @@ class ReportErrorPointViewModel : ViewModel() { occurrenceTime, errorReasonCodes ) - TaxiRoutingServiceManager.saveDotDetail( + RoutingServiceManager.saveDotDetail( AbsMogoApplication.getApp(), saveGrayContrailErrorReasons, object : OchCommonServiceCallback { diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/routingselect/RoutingItemAdapter.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/routingselect/RoutingItemAdapter.kt similarity index 95% rename from OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/routingselect/RoutingItemAdapter.kt rename to OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/routingselect/RoutingItemAdapter.kt index a00ac183ae..95af8b2c8f 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/routingselect/RoutingItemAdapter.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/routingselect/RoutingItemAdapter.kt @@ -1,4 +1,4 @@ -package com.mogo.och.unmanned.taxi.ui.routing.routingselect +package com.mogo.och.biz.routing.ui.routingselect import android.content.Context import android.view.LayoutInflater @@ -8,8 +8,8 @@ import androidx.appcompat.widget.AppCompatTextView import androidx.recyclerview.widget.DiffUtil import androidx.recyclerview.widget.DiffUtil.Callback import androidx.recyclerview.widget.RecyclerView -import com.mogo.och.unmanned.taxi.R -import com.mogo.och.unmanned.taxi.bean.GrayLineBean +import com.mogo.och.biz.R +import com.mogo.och.biz.routing.bean.GrayLineBean import me.jessyan.autosize.AutoSizeCompat /** @@ -42,7 +42,7 @@ class RoutingItemAdapter( viewType: Int ): RoutingItemViewHolder { val view = LayoutInflater.from(mContext).inflate( - R.layout.unmanned_routing_select_item, parent, false + R.layout.biz_taxi_select_item, parent, false ) return RoutingItemViewHolder(view) } diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/routingselect/RoutingSelectModel.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/routingselect/RoutingSelectModel.kt similarity index 74% rename from OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/routingselect/RoutingSelectModel.kt rename to OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/routingselect/RoutingSelectModel.kt index 838be6e954..af82ad5951 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/routingselect/RoutingSelectModel.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/routingselect/RoutingSelectModel.kt @@ -1,4 +1,4 @@ -package com.mogo.och.unmanned.taxi.ui.routing.routingselect +package com.mogo.och.biz.routing.ui.routingselect import androidx.lifecycle.ViewModel import com.mogo.commons.AbsMogoApplication @@ -9,17 +9,16 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.util.GsonUtils import com.mogo.eagle.core.utilcode.util.NetworkUtils import com.mogo.eagle.core.utilcode.util.ToastUtils +import com.mogo.och.biz.routing.bean.GrayLineBean +import com.mogo.och.biz.routing.bean.QueryGrayContrailListRsp +import com.mogo.och.biz.routing.bean.StartGrayAndQueryContrailRsp +import com.mogo.och.biz.routing.net.RoutingServiceManager import com.mogo.och.bridge.autopilot.line.LineManager import com.mogo.och.common.module.network.OchCommonServiceCallback import com.mogo.och.data.bean.BusStationBean import com.mogo.och.data.bean.LineInfo -import com.mogo.och.unmanned.taxi.bean.GrayLineBean -import com.mogo.och.unmanned.taxi.bean.QueryGrayContrailListRsp -import com.mogo.och.unmanned.taxi.bean.StartGrayAndQueryContrailRsp -import com.mogo.och.unmanned.taxi.network.TaxiRoutingServiceManager -import com.mogo.och.unmanned.taxi.ui.debug.DebugView -import com.mogo.och.unmanned.taxi.ui.routing.TaxiRoutingModel -import com.mogo.och.unmanned.taxi.ui.routing.routingrunning.RoutingRunningModel +import com.mogo.och.biz.routing.ui.runing.taxi.routingrunning.RoutingRunningModel +import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager /** * @author XuXinChao @@ -43,9 +42,9 @@ class RoutingSelectModel : ViewModel() { * 查询灰度路线 */ fun queryRoutingGrayLineList() { - DebugView.printInfoMsg("[查询灰度路线] 准备发送请求,sn=${SharedPrefsMgr.getInstance().sn}") + OchChainLogManager.writeChainLogRouting("[查询灰度路线]","[查询灰度路线] 准备发送请求,sn=${SharedPrefsMgr.getInstance().sn}") - TaxiRoutingServiceManager.queryRoutingGrayLineList( + RoutingServiceManager.queryRoutingGrayLineList( content, object : OchCommonServiceCallback { override fun onSuccess(data: QueryGrayContrailListRsp) { @@ -53,7 +52,7 @@ class RoutingSelectModel : ViewModel() { TAG, "queryRoutingGrayLineList onSuccess: data=${GsonUtils.toJson(data)}" ) - DebugView.printInfoMsg("[查询灰度路线] 请求success,dataSize=${data?.data?.size}") + OchChainLogManager.writeChainLogRouting("[查询灰度路线]","[查询灰度路线] 请求success,dataSize=${data?.data?.size}") val result = mutableListOf() data.data?.also { result.addAll(it) @@ -66,7 +65,7 @@ class RoutingSelectModel : ViewModel() { TAG, "queryRoutingGrayLineList onFail: code=$code, msg=$msg" ) - DebugView.printErrorMsg("[查询灰度路线] 请求fail, code=$code, msg=$msg, sn=${SharedPrefsMgr.getInstance().sn}") + OchChainLogManager.writeChainLogRouting("[查询灰度路线]","[查询灰度路线] 请求fail, code=$code, msg=$msg, sn=${SharedPrefsMgr.getInstance().sn}") ToastUtils.showShort("查询灰度线路列表异常, 请稍后重试, code=$code") viewCallback?.onQueryRoutingGrayLineListFailed(msg ?: "查询灰度线路列表异常, 请稍后重试") } @@ -83,7 +82,7 @@ class RoutingSelectModel : ViewModel() { TAG, "queryRoutingGrayLineList onError, msg=$hintStr, sn=${SharedPrefsMgr.getInstance().sn}" ) - DebugView.printErrorMsg("[查询灰度路线] 请求error, msg=$hintStr") + OchChainLogManager.writeChainLogRouting("[查询灰度路线]","[查询灰度路线] 请求error, msg=$hintStr") viewCallback?.onQueryRoutingGrayLineListFailed(hintStr) } }) @@ -93,8 +92,8 @@ class RoutingSelectModel : ViewModel() { * 开始灰度任务&查询轨迹详情 */ fun startGrayTaskAndQueryRoutingContrail(contrailId: Long, grayLineBean: GrayLineBean) { - DebugView.printInfoMsg("[开始灰度任务&查询轨迹详情] 准备发送请求,contrailId=${contrailId}, lineId=${grayLineBean.lineId}") - TaxiRoutingServiceManager.startGrayTaskAndQueryRoutingContrail( + OchChainLogManager.writeChainLogRouting("[开始灰度任务&查询轨迹详情]","[开始灰度任务&查询轨迹详情] 准备发送请求,contrailId=${contrailId}, lineId=${grayLineBean.lineId}") + RoutingServiceManager.startGrayTaskAndQueryRoutingContrail( content, sn = SharedPrefsMgr.getInstance().sn, contrailId = contrailId, @@ -109,7 +108,7 @@ class RoutingSelectModel : ViewModel() { ) }" ) - DebugView.printInfoMsg("[开始灰度任务&查询轨迹详情] 请求success,taskId=${data.taskId}, contrailId=${contrailId}, lineId=${grayLineBean.lineId}") + OchChainLogManager.writeChainLogRouting("[开始灰度任务&查询轨迹详情]","[开始灰度任务&查询轨迹详情] 请求success,taskId=${data.taskId}, contrailId=${contrailId}, lineId=${grayLineBean.lineId}") initAutopilot(data) } @@ -119,7 +118,7 @@ class RoutingSelectModel : ViewModel() { TAG, "startGrayTaskAndQueryRoutingContrail onFail: code=$code, msg=$msg" ) - DebugView.printErrorMsg("[开始灰度任务&查询轨迹详情] 请求fail, code=$code, msg=$msg, contrailId=${contrailId}, lineId=${grayLineBean.lineId}") + OchChainLogManager.writeChainLogRouting("[开始灰度任务&查询轨迹详情]","[开始灰度任务&查询轨迹详情] 请求fail, code=$code, msg=$msg, contrailId=${contrailId}, lineId=${grayLineBean.lineId}") viewCallback?.onStartGrayTaskAndQueryContrailFailed( msg ?: "startGrayTaskAndQueryRoutingContrail onFail") } @@ -135,7 +134,7 @@ class RoutingSelectModel : ViewModel() { TAG, "startGrayTaskAndQueryRoutingContrail onError, msg=$hintStr, contrailId=${contrailId}, lineId=${grayLineBean.lineId}" ) - DebugView.printErrorMsg("[开始灰度任务&查询轨迹详情] 请求error, msg=$hintStr") + OchChainLogManager.writeChainLogRouting("[开始灰度任务&查询轨迹详情]","[开始灰度任务&查询轨迹详情] 请求error, msg=$hintStr") viewCallback?.onStartGrayTaskAndQueryContrailFailed(hintStr) } } @@ -143,16 +142,16 @@ class RoutingSelectModel : ViewModel() { } private fun initAutopilot(data: StartGrayAndQueryContrailRsp) { - DebugView.printInfoMsg("[开始任务] 准备开始任务") + OchChainLogManager.writeChainLogRouting("[开始任务]","[开始任务] 准备开始任务") val grayLineBean = data.grayLineBean val contrailBean = data.contrail val grayId = data.taskId if (grayLineBean == null || contrailBean == null) { ToastUtils.showShort("灰度线路或轨迹信息异常,请稍后再试") - DebugView.printErrorMsg("[开始任务] 灰度线路或轨迹信息异常,请稍后再试") + OchChainLogManager.writeChainLogRouting("[开始任务]","[开始任务] 灰度线路或轨迹信息异常,请稍后再试") return } - DebugView.printInfoMsg("[启自驾] 准备启动自驾") + OchChainLogManager.writeChainLogRouting("[启自驾]","[启自驾] 准备启动自驾") val startStation = grayLineBean.startSite?.toBusStationBean() val endStation = grayLineBean.endSite?.toBusStationBean() diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/routingselect/RoutingSelectView.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/routingselect/RoutingSelectView.kt similarity index 82% rename from OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/routingselect/RoutingSelectView.kt rename to OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/routingselect/RoutingSelectView.kt index 51218eac35..c7e7e48be4 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/routingselect/RoutingSelectView.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/routingselect/RoutingSelectView.kt @@ -1,4 +1,4 @@ -package com.mogo.och.unmanned.taxi.ui.routing.routingselect +package com.mogo.och.biz.routing.ui.routingselect import android.content.Context import android.util.AttributeSet @@ -9,16 +9,16 @@ import androidx.lifecycle.ViewModelProvider import androidx.lifecycle.findViewTreeViewModelStoreOwner import com.mogo.eagle.core.utilcode.mogo.view.SpacesItemDecoration import com.mogo.eagle.core.utilcode.util.ToastUtils +import com.mogo.och.biz.R +import com.mogo.och.biz.routing.bean.GrayLineBean +import com.mogo.och.biz.routing.bean.StartGrayAndQueryContrailRsp import com.mogo.och.common.module.wigets.WrapContentLinearLayoutManager -import com.mogo.och.unmanned.taxi.R -import com.mogo.och.unmanned.taxi.bean.GrayLineBean -import com.mogo.och.unmanned.taxi.bean.StartGrayAndQueryContrailRsp -import com.mogo.och.unmanned.taxi.ui.debug.DebugView -import com.mogo.och.unmanned.taxi.ui.routing.RoutingSwitchModel -import com.mogo.och.unmanned.taxi.ui.routing.routingselect.RoutingSelectModel.SwtichRoutingViewCallback -import kotlinx.android.synthetic.main.unmanned_routing_select.view.include_empty -import kotlinx.android.synthetic.main.unmanned_routing_select.view.include_error -import kotlinx.android.synthetic.main.unmanned_routing_select.view.switch_routing_rv +import com.mogo.och.biz.routing.ui.RoutingSwitchModel +import com.mogo.och.biz.routing.ui.routingselect.RoutingSelectModel.SwtichRoutingViewCallback +import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager +import kotlinx.android.synthetic.main.biz_taxi_select.view.include_empty +import kotlinx.android.synthetic.main.biz_taxi_select.view.include_error +import kotlinx.android.synthetic.main.biz_taxi_select.view.switch_routing_rv import me.jessyan.autosize.utils.AutoSizeUtils class RoutingSelectView: ConstraintLayout, SwtichRoutingViewCallback { @@ -48,7 +48,7 @@ class RoutingSelectView: ConstraintLayout, SwtichRoutingViewCallback { init { - LayoutInflater.from(context).inflate(R.layout.unmanned_routing_select, this, true) + LayoutInflater.from(context).inflate(R.layout.biz_taxi_select, this, true) initView() } @@ -61,12 +61,13 @@ class RoutingSelectView: ConstraintLayout, SwtichRoutingViewCallback { switch_routing_rv.addItemDecoration(SpacesItemDecoration(AutoSizeUtils.dp2px(context,20f))) switch_routing_rv.adapter = mChooseLineListAdapter //设置item 点击事件 - mChooseLineListAdapter.setOnLineItemClickListener(object : RoutingItemAdapter.LineItemClickListener { + mChooseLineListAdapter.setOnLineItemClickListener(object : + RoutingItemAdapter.LineItemClickListener { override fun onItemClick(data: GrayLineBean) { if(data.contrailId==null||data.contrailId!!<=0L){ ToastUtils.showShort("请设置轨迹信息") } - DebugView.printInfoMsg("[选择灰度任务] 当前选择 mCurrentChosenPosition=$mCurrentChosenPosition, ") + OchChainLogManager.writeChainLogRouting("[选择灰度任务]","[选择灰度任务] 当前选择 mCurrentChosenPosition=$mCurrentChosenPosition, ") swtichViewModel?.showLoading() viewModel?.startGrayTaskAndQueryRoutingContrail(data.contrailId!!,data) } diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/routingrunning/RoutingRunningModel.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/runing/taxi/routingrunning/RoutingRunningModel.kt similarity index 75% rename from OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/routingrunning/RoutingRunningModel.kt rename to OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/runing/taxi/routingrunning/RoutingRunningModel.kt index 97ea4a7e0a..b582ec5169 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/routingrunning/RoutingRunningModel.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/runing/taxi/routingrunning/RoutingRunningModel.kt @@ -1,4 +1,4 @@ -package com.mogo.och.unmanned.taxi.ui.routing.routingrunning +package com.mogo.och.biz.routing.ui.runing.taxi.routingrunning import androidx.lifecycle.ViewModel import com.mogo.commons.AbsMogoApplication @@ -9,6 +9,12 @@ import com.mogo.eagle.core.function.call.och.CallerEagleBaseFunctionCall4OchMana import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.util.GsonUtils import com.mogo.eagle.core.utilcode.util.NetworkUtils +import com.mogo.och.biz.routing.bean.ContrailBean +import com.mogo.och.biz.routing.bean.EndGrayContrailTaskReq +import com.mogo.och.biz.routing.bean.EndGrayTaskFeedbackType +import com.mogo.och.biz.routing.bean.GrayLineBean +import com.mogo.och.biz.routing.bean.StartGrayAndQueryContrailRsp +import com.mogo.och.biz.routing.net.RoutingServiceManager import com.mogo.och.bridge.autopilot.autopilot.IOchAutopilotStatusListener import com.mogo.och.bridge.autopilot.autopilot.OchAutoPilotStatusListenerManager import com.mogo.och.bridge.autopilot.autopilot.bean.ArrivedStation @@ -16,15 +22,9 @@ import com.mogo.och.bridge.autopilot.line.ILineCallback import com.mogo.och.bridge.autopilot.line.LineManager import com.mogo.och.bridge.distance.IDistanceListener import com.mogo.och.bridge.distance.TrajectoryAndDistanceManager +import com.mogo.och.common.module.constant.OchCommonConst +import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager import com.mogo.och.common.module.network.OchCommonServiceCallback -import com.mogo.och.unmanned.taxi.bean.ContrailBean -import com.mogo.och.unmanned.taxi.bean.EndGrayContrailTaskReq -import com.mogo.och.unmanned.taxi.bean.EndGrayTaskFeedbackType -import com.mogo.och.unmanned.taxi.bean.GrayLineBean -import com.mogo.och.unmanned.taxi.bean.StartGrayAndQueryContrailRsp -import com.mogo.och.unmanned.taxi.constant.TaxiUnmannedConst -import com.mogo.och.unmanned.taxi.network.TaxiRoutingServiceManager -import com.mogo.och.unmanned.taxi.ui.debug.DebugView /** * @author XuXinChao @@ -57,16 +57,14 @@ class RoutingRunningModel : ViewModel(), IDistanceListener { TAG, "onAutopilotArriveAtStation = ${arrivalNotification.toString()}" ) - DebugView.printInfoMsg("[MAP到站通知] 上报到站,location=${arrivalNotification?.endLocation}") + OchChainLogManager.writeChainLogRouting("MAP到站通知","[MAP到站通知] 上报到站,location=${arrivalNotification?.endLocation}") viewCallback?.onArrivedStation(currentGrayId) } } private val lineCallback: ILineCallback = object : ILineCallback { override fun arrivedStationSuccessBySearch() { - DebugView.printInfoMsg( - "[自车定位围栏] 并查询底盘触发到站, endSiteId=${currentGrayLineBean?.endSite?.siteId}, endSiteName=${currentGrayLineBean?.endSite?.siteName}, lineId=${currentGrayLineBean?.lineId},围栏范围:${TaxiUnmannedConst.ARRIVE_AT_START_STATION_DISTANCE}米 没有过站、速度基本为零且在15m内" - ) + OchChainLogManager.writeChainLogRouting("[自车定位围栏]","\"[自车定位围栏] 并查询底盘触发到站, endSiteId=${currentGrayLineBean?.endSite?.siteId}, endSiteName=${currentGrayLineBean?.endSite?.siteName}, lineId=${currentGrayLineBean?.lineId},围栏范围:${OchCommonConst.ARRIVE_AT_START_STATION_DISTANCE}米 没有过站、速度基本为零且在15m内\"") viewCallback?.onArrivedStation(currentGrayId) } } @@ -91,7 +89,7 @@ class RoutingRunningModel : ViewModel(), IDistanceListener { override fun distanceCallback(distance: Float) { - val lastTime = distance / TaxiUnmannedConst.TAXI_AVERAGE_SPEED * 3.6 //秒 + val lastTime = distance / OchCommonConst.TAXI_AVERAGE_SPEED * 3.6 //秒 this.viewCallback?.showDistance(distance.toLong(),lastTime.toLong()) } @@ -110,9 +108,9 @@ class RoutingRunningModel : ViewModel(), IDistanceListener { * 结束灰度任务 */ fun endGrayTask(grayId: Long, type: EndGrayTaskFeedbackType, occurrenceTime: Long) { - DebugView.printInfoMsg("[结束灰度任务] 准备发送请求,grayId=$grayId, type=${type.type}, typeName=${type.name}") + OchChainLogManager.writeChainLogRouting("[结束灰度任务]","[结束灰度任务] 准备发送请求,grayId=$grayId, type=${type.type}, typeName=${type.name}") val submit = EndGrayContrailTaskReq(grayId, type.type, occurrenceTime) - TaxiRoutingServiceManager.endGrayTask( + RoutingServiceManager.endGrayTask( content, submit, object : OchCommonServiceCallback { @@ -125,7 +123,7 @@ class RoutingRunningModel : ViewModel(), IDistanceListener { ) }" ) - DebugView.printInfoMsg("[结束灰度任务] 请求success,grayId=$grayId, type=${type.type}, typeName=${type.name}") + OchChainLogManager.writeChainLogRouting("[结束灰度任务]","[结束灰度任务] 请求success,grayId=$grayId, type=${type.type}, typeName=${type.name}") clearData() viewCallback?.onSubmitEndTaskSuccess() } @@ -135,7 +133,7 @@ class RoutingRunningModel : ViewModel(), IDistanceListener { TAG, "endGrayTask onFail: code=$code, msg=$msg" ) - DebugView.printErrorMsg("[结束灰度任务] 请求fail, code=$code, msg=$msg, grayId=$grayId, type=${type.type}, typeName=${type.name}") + OchChainLogManager.writeChainLogRouting("[结束灰度任务]","[结束灰度任务] 请求fail, code=$code, msg=$msg, grayId=$grayId, type=${type.type}, typeName=${type.name}") viewCallback?.onSubmitEndTaskFailed(msg ?: "endGrayTask onFail") } @@ -151,7 +149,7 @@ class RoutingRunningModel : ViewModel(), IDistanceListener { TAG, "endGrayTask onError, msg=$hintStr" ) - DebugView.printErrorMsg("[结束灰度任务] 请求error, msg=$hintStr, grayId=$grayId, type=${type.type}, typeName=${type.name}") + OchChainLogManager.writeChainLogRouting("[结束灰度任务]","[结束灰度任务] 请求error, msg=$hintStr, grayId=$grayId, type=${type.type}, typeName=${type.name}") viewCallback?.onSubmitEndTaskFailed(hintStr) } }) @@ -183,7 +181,7 @@ class RoutingRunningModel : ViewModel(), IDistanceListener { private fun cancelAutopilot() { try { CallerAutoPilotControlManager.cancelAutoPilot() - DebugView.printInfoMsg("[取消自驾] 调用成功") + OchChainLogManager.writeChainLogRouting("[取消自驾]","[取消自驾] 调用成功") CallerLogger.d(TAG, "结束自动驾驶") } catch (e: Exception) { e.printStackTrace() diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/routingrunning/RoutingRunningView.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/runing/taxi/routingrunning/RoutingRunningView.kt similarity index 77% rename from OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/routingrunning/RoutingRunningView.kt rename to OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/runing/taxi/routingrunning/RoutingRunningView.kt index 1d427536ad..4e68e5a147 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/routingrunning/RoutingRunningView.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/runing/taxi/routingrunning/RoutingRunningView.kt @@ -1,4 +1,4 @@ -package com.mogo.och.unmanned.taxi.ui.routing.routingrunning +package com.mogo.och.biz.routing.ui.runing.taxi.routingrunning import android.content.Context import android.util.AttributeSet @@ -13,29 +13,29 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.util.ThreadUtils import com.mogo.eagle.core.utilcode.util.ToastUtils import com.mogo.eagle.core.utilcode.util.UiThreadHandler +import com.mogo.och.biz.R +import com.mogo.och.biz.routing.RoutingServiceManager +import com.mogo.och.biz.routing.bean.EndGrayTaskFeedbackType +import com.mogo.och.biz.routing.bean.StartGrayAndQueryContrailRsp import com.mogo.och.bridge.autopilot.location.OchLocationManager import com.mogo.och.common.module.manager.loop.BizLoopManager import com.mogo.och.common.module.map.AmapNaviToDestinationModel import com.mogo.och.common.module.map.ICommonNaviChangedCallback -import com.mogo.och.unmanned.taxi.R -import com.mogo.och.unmanned.taxi.bean.EndGrayTaskFeedbackType -import com.mogo.och.unmanned.taxi.bean.StartGrayAndQueryContrailRsp -import com.mogo.och.unmanned.taxi.constant.TaxiUnmannedConst -import com.mogo.och.unmanned.taxi.ui.routing.RoutingSwitchModel -import com.mogo.och.unmanned.taxi.ui.routing.TaxiRoutingModel +import com.mogo.och.biz.routing.ui.RoutingSwitchModel import com.mogo.och.common.module.map.MapMakerManager import com.mogo.och.common.module.wigets.dialog.CommonDialogStatus -import com.mogo.och.unmanned.taxi.ui.routing.errorpoint.ReportErrorPointView -import com.mogo.och.unmanned.taxi.utils.TaskUtils -import kotlinx.android.synthetic.main.unmanned_routing_running.view.actv_current_itinerary_end_name -import kotlinx.android.synthetic.main.unmanned_routing_running.view.actv_current_itinerary_start_name -import kotlinx.android.synthetic.main.unmanned_routing_running.view.actv_distance_end -import kotlinx.android.synthetic.main.unmanned_routing_running.view.actv_end_routing -import kotlinx.android.synthetic.main.unmanned_routing_running.view.actv_routing_name -import kotlinx.android.synthetic.main.unmanned_routing_running.view.actv_submit_task -import kotlinx.android.synthetic.main.unmanned_routing_running.view.goutp_show_routing_info -import kotlinx.android.synthetic.main.unmanned_routing_running.view.include_empty -import kotlinx.android.synthetic.main.unmanned_routing_running.view.naviToStart +import com.mogo.och.biz.routing.ui.errorpoint.ReportErrorPointView +import com.mogo.och.biz.routing.ui.utils.TimeDistanceUtils +import com.mogo.och.common.module.constant.OchCommonConst +import kotlinx.android.synthetic.main.biz_taxi_running.view.actv_end_routing +import kotlinx.android.synthetic.main.biz_taxi_running.view.actv_current_itinerary_end_name +import kotlinx.android.synthetic.main.biz_taxi_running.view.actv_current_itinerary_start_name +import kotlinx.android.synthetic.main.biz_taxi_running.view.actv_distance_end +import kotlinx.android.synthetic.main.biz_taxi_running.view.actv_routing_name +import kotlinx.android.synthetic.main.biz_taxi_running.view.actv_submit_task +import kotlinx.android.synthetic.main.biz_taxi_running.view.goutp_show_routing_info +import kotlinx.android.synthetic.main.biz_taxi_running.view.include_empty +import kotlinx.android.synthetic.main.biz_taxi_running.view.naviToStart class RoutingRunningView: ConstraintLayout, RoutingRunningModel.RoutingRuningCallback, ICommonNaviChangedCallback { @@ -61,7 +61,7 @@ class RoutingRunningView: ConstraintLayout, RoutingRunningModel.RoutingRuningCal init { - LayoutInflater.from(context).inflate(R.layout.unmanned_routing_running, this, true) + LayoutInflater.from(context).inflate(R.layout.biz_taxi_running, this, true) initView() initListener() } @@ -91,7 +91,7 @@ class RoutingRunningView: ConstraintLayout, RoutingRunningModel.RoutingRuningCal .title("路线验证结束") .tips("请点击按钮反馈验证结果") .showClose(true) - .cancelTextColor(R.color.taxi_color_FF4E41) + .cancelTextColor(R.color.biz_routing_FF4E41) .cancelStr("线路不可用") .confirmStr("线路可用") .status(CommonDialogStatus.Status.success) @@ -132,7 +132,7 @@ class RoutingRunningView: ConstraintLayout, RoutingRunningModel.RoutingRuningCal } private fun removeAllMapMarker() { - MapMakerManager.removeAllMapMarkerByOwner(TaxiUnmannedConst.TYPE_MARKER_ROUTING_VERIFY) + MapMakerManager.removeAllMapMarkerByOwner(OchCommonConst.TYPE_MARKER_ROUTING_VERIFY) } private fun initStartNaviToStationParam( @@ -162,16 +162,8 @@ class RoutingRunningView: ConstraintLayout, RoutingRunningModel.RoutingRuningCal */ private fun updateCurrentTaskTripInfo(meters: Long, timeInSecond: Long) { UiThreadHandler.post { - CallerLogger.d( - TAG, - "updateCurrentTaskTripInfo, taskUtil, ${ - TaskUtils.getCurrentTaskTripHtml( - meters, - timeInSecond - ) - }" - ) - actv_distance_end.text = "${TaskUtils.getCurrentTaskDistance(meters)} ${TaskUtils.getCurrentTaskTime(timeInSecond)}" + CallerLogger.d(TAG, "updateCurrentTaskTripInfo, taskUtil, ${TimeDistanceUtils.getCurrentTaskTripHtml(meters, timeInSecond)}") + actv_distance_end.text = "${TimeDistanceUtils.getCurrentTaskDistance(meters)} ${TimeDistanceUtils.getCurrentTaskTime(timeInSecond)}" } } @@ -188,7 +180,7 @@ class RoutingRunningView: ConstraintLayout, RoutingRunningModel.RoutingRuningCal resourceId: Int ) { if (isAdd) { - MapMakerManager.addMapMaker(TaxiUnmannedConst.TYPE_MARKER_ROUTING_VERIFY, uuid, lat, lon, resourceId) + MapMakerManager.addMapMaker(OchCommonConst.TYPE_MARKER_ROUTING_VERIFY, uuid, lat, lon, resourceId) } else { MapMakerManager.removeMapMaker(uuid, lat, lon) } @@ -223,7 +215,7 @@ class RoutingRunningView: ConstraintLayout, RoutingRunningModel.RoutingRuningCal override fun reInitNaviAmap(isPlay: Boolean, isRestart: Boolean) { CallerLogger.d(TAG, "isPlay = $isPlay, isRestart=$isRestart") if (!isRestart) { - TaxiRoutingModel.startNaviToEndStationByAMap(false) + RoutingServiceManager.invokeCallback(false) return } } @@ -244,11 +236,11 @@ class RoutingRunningView: ConstraintLayout, RoutingRunningModel.RoutingRuningCal it.gcjLon ) naviToStart.setOnClickListener { - TaxiRoutingModel.startNaviToEndStationByAMap(true) + RoutingServiceManager.invokeCallback(true) } setOrRemoveMapMaker( true, - TaxiUnmannedConst.TAXI_ROUTING_VERIFY_START_SITE, + OchCommonConst.TAXI_ROUTING_VERIFY_START_SITE, it.wgs84Lat, it.wgs84Lon, R.raw.star_marker @@ -258,7 +250,7 @@ class RoutingRunningView: ConstraintLayout, RoutingRunningModel.RoutingRuningCal data.grayLineBean.endSite?.also { setOrRemoveMapMaker( true, - TaxiUnmannedConst.TAXI_ROUTING_VERIFY_END_SITE, + OchCommonConst.TAXI_ROUTING_VERIFY_END_SITE, it.wgs84Lat, it.wgs84Lon, R.raw.end_marker @@ -271,7 +263,7 @@ class RoutingRunningView: ConstraintLayout, RoutingRunningModel.RoutingRuningCal override fun onSubmitEndTaskSuccess() { ToastUtils.showLong("结束任务成功") - TaxiRoutingModel.startNaviToEndStationByAMap(false) + RoutingServiceManager.invokeCallback(false) // 移除高德导航计算距离 AmapNaviToDestinationModel.getInstance(context).destroyAmaNavi() swtichViewModel?.showRoutingSelectView() diff --git a/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/utils/TimeDistanceUtils.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/utils/TimeDistanceUtils.kt new file mode 100644 index 0000000000..da6d9ceb26 --- /dev/null +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/routing/ui/utils/TimeDistanceUtils.kt @@ -0,0 +1,112 @@ +package com.mogo.och.biz.routing.ui.utils + +import android.text.Spanned +import androidx.core.text.HtmlCompat +import com.mogo.eagle.core.utilcode.util.DateTimeUtils +import com.mogo.och.common.module.utils.DateTimeUtil +import com.mogo.och.common.module.utils.NumberFormatUtil +import java.util.Calendar +import kotlin.math.ceil +import kotlin.math.roundToInt + +object TimeDistanceUtils { + + fun getCurrentTaskDistance(meters: Long):String{ + var dis = "0" + var disUnit = "公里" + if (meters > 0) { + if (meters / 1000 < 1) { + disUnit = "米" + dis = meters.toFloat().roundToInt().toString() + } else { + disUnit = "公里" + dis = NumberFormatUtil.formatLong(meters.toDouble() / 1000) + } + } + return "${dis}${disUnit}" + } + + fun getCurrentTaskTime(timeInSecond: Long):String{ + val min = ceil(timeInSecond.toDouble() / 60f).toInt() + return "${min}分钟" + } + + /** + * 剩余里程和剩余时间 html + */ + fun getCurrentTaskTripHtml(meters: Long, timeInSecond: Long): Spanned { + var dis = "0" + var disUnit = "公里" + if (meters > 0) { + if (meters / 1000 < 1) { + disUnit = "米" + dis = meters.toFloat().roundToInt().toString() + } else { + disUnit = "公里" + dis = NumberFormatUtil.formatLong(meters.toDouble() / 1000) + } + } + val min = ceil(timeInSecond.toDouble() / 60f).toInt() + val strHtml = + ("里程 " + + "" + + dis + "" + + " " + + disUnit + "" + + ",剩余 " + + "" + + min + "" + + " 分钟") + return HtmlCompat.fromHtml(strHtml, HtmlCompat.FROM_HTML_MODE_LEGACY) + } + + fun getCurrentTaskWaitTimeHtml(): Spanned { + val currentCale = DateTimeUtils.getCurrentDateTime() + val currentDay = + DateTimeUtil.formatCalendarToString(currentCale, DateTimeUtil.yyyy_MM_dd) + currentCale.add(Calendar.MINUTE, 10) + val strHtml13: String = if (currentDay == DateTimeUtil.formatCalendarToString( + currentCale, + DateTimeUtil.yyyy_MM_dd + ) + ) { + ("免费等待至 " + + "" + DateTimeUtil.formatCalendarToString( + currentCale, + DateTimeUtil.HH_mm + ) + "") + } else { + ("免费等待至" + + "" + DateTimeUtil.formatCalendarToString( + currentCale, + DateTimeUtil.MM_dd_HH_mm + ) + "") + } + return HtmlCompat.fromHtml(strHtml13, HtmlCompat.FROM_HTML_MODE_LEGACY) + } + + fun getCurrentTaskTotalAndDurationHtml(mileage: Float, duration: Int): Spanned { + val strHtml = + ("全程 " + " $mileage " + " 公里 " + + ",总用时 " + " $duration " + " 分钟") + return HtmlCompat.fromHtml(strHtml, HtmlCompat.FROM_HTML_MODE_LEGACY) + } + + fun getCurrentTaskPhoneNumAndPassengerCountHtml(phoneNum: String, passengerSize: Int): Spanned { + return HtmlCompat.fromHtml( + " " + phoneNum + "" + + " | " + + "" + passengerSize + "人" + "", + HtmlCompat.FROM_HTML_MODE_LEGACY + ) + } + + fun getNextTaskPhoneNumAndPassengerCountHtml(phoneNum: String, passengerSize: Int): Spanned { + return HtmlCompat.fromHtml( + " " + phoneNum + "" + + " | " + + "" + passengerSize + "人" + "", + HtmlCompat.FROM_HTML_MODE_LEGACY + ) + } +} \ No newline at end of file diff --git a/OCH/common/biz/src/main/res/routing/color/biz_taxi_button_red_text_color.xml b/OCH/common/biz/src/main/res/routing/color/biz_taxi_button_red_text_color.xml new file mode 100644 index 0000000000..08bf2e552c --- /dev/null +++ b/OCH/common/biz/src/main/res/routing/color/biz_taxi_button_red_text_color.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/OCH/common/biz/src/main/res/routing/color/biz_taxi_submit_text_color_selector.xml b/OCH/common/biz/src/main/res/routing/color/biz_taxi_submit_text_color_selector.xml new file mode 100644 index 0000000000..8dd12bf502 --- /dev/null +++ b/OCH/common/biz/src/main/res/routing/color/biz_taxi_submit_text_color_selector.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/OCH/common/biz/src/main/res/routing/drawable-nodpi/biz_taxi_current_end_station_point.png b/OCH/common/biz/src/main/res/routing/drawable-nodpi/biz_taxi_current_end_station_point.png new file mode 100644 index 0000000000..dfa74f0a44 Binary files /dev/null and b/OCH/common/biz/src/main/res/routing/drawable-nodpi/biz_taxi_current_end_station_point.png differ diff --git a/OCH/common/biz/src/main/res/routing/drawable-nodpi/biz_taxi_current_start_station_point.png b/OCH/common/biz/src/main/res/routing/drawable-nodpi/biz_taxi_current_start_station_point.png new file mode 100644 index 0000000000..62ec826abb Binary files /dev/null and b/OCH/common/biz/src/main/res/routing/drawable-nodpi/biz_taxi_current_start_station_point.png differ diff --git a/OCH/common/biz/src/main/res/routing/drawable-nodpi/biz_taxi_nav.png b/OCH/common/biz/src/main/res/routing/drawable-nodpi/biz_taxi_nav.png new file mode 100644 index 0000000000..7d901eb1d3 Binary files /dev/null and b/OCH/common/biz/src/main/res/routing/drawable-nodpi/biz_taxi_nav.png differ diff --git a/OCH/common/biz/src/main/res/routing/drawable-nodpi/biz_taxi_no_order_data.png b/OCH/common/biz/src/main/res/routing/drawable-nodpi/biz_taxi_no_order_data.png new file mode 100644 index 0000000000..0e61996d3f Binary files /dev/null and b/OCH/common/biz/src/main/res/routing/drawable-nodpi/biz_taxi_no_order_data.png differ diff --git a/OCH/common/biz/src/main/res/routing/drawable-nodpi/biz_taxi_routing_check.png b/OCH/common/biz/src/main/res/routing/drawable-nodpi/biz_taxi_routing_check.png new file mode 100644 index 0000000000..803e261954 Binary files /dev/null and b/OCH/common/biz/src/main/res/routing/drawable-nodpi/biz_taxi_routing_check.png differ diff --git a/OCH/common/biz/src/main/res/routing/drawable-nodpi/biz_taxi_uncheck.png b/OCH/common/biz/src/main/res/routing/drawable-nodpi/biz_taxi_uncheck.png new file mode 100644 index 0000000000..e6fccf1a1b Binary files /dev/null and b/OCH/common/biz/src/main/res/routing/drawable-nodpi/biz_taxi_uncheck.png differ diff --git a/OCH/common/biz/src/main/res/routing/drawable/biz_button_normal.xml b/OCH/common/biz/src/main/res/routing/drawable/biz_button_normal.xml new file mode 100644 index 0000000000..6a15955a4b --- /dev/null +++ b/OCH/common/biz/src/main/res/routing/drawable/biz_button_normal.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/OCH/common/biz/src/main/res/routing/drawable/biz_button_selected.xml b/OCH/common/biz/src/main/res/routing/drawable/biz_button_selected.xml new file mode 100644 index 0000000000..1220005f34 --- /dev/null +++ b/OCH/common/biz/src/main/res/routing/drawable/biz_button_selected.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/OCH/common/biz/src/main/res/routing/drawable/biz_button_selector.xml b/OCH/common/biz/src/main/res/routing/drawable/biz_button_selector.xml new file mode 100644 index 0000000000..a2f9bd3eb8 --- /dev/null +++ b/OCH/common/biz/src/main/res/routing/drawable/biz_button_selector.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/OCH/common/biz/src/main/res/routing/drawable/biz_shape_itinerary_bg_default.xml b/OCH/common/biz/src/main/res/routing/drawable/biz_shape_itinerary_bg_default.xml new file mode 100644 index 0000000000..6d2b131e2a --- /dev/null +++ b/OCH/common/biz/src/main/res/routing/drawable/biz_shape_itinerary_bg_default.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/OCH/common/biz/src/main/res/routing/drawable/biz_shape_select_line_item_bg_normal.xml b/OCH/common/biz/src/main/res/routing/drawable/biz_shape_select_line_item_bg_normal.xml new file mode 100644 index 0000000000..272e718cce --- /dev/null +++ b/OCH/common/biz/src/main/res/routing/drawable/biz_shape_select_line_item_bg_normal.xml @@ -0,0 +1,7 @@ + + + + \ No newline at end of file diff --git a/OCH/common/biz/src/main/res/routing/drawable/biz_shape_select_line_item_bg_selected.xml b/OCH/common/biz/src/main/res/routing/drawable/biz_shape_select_line_item_bg_selected.xml new file mode 100644 index 0000000000..e5faafb27b --- /dev/null +++ b/OCH/common/biz/src/main/res/routing/drawable/biz_shape_select_line_item_bg_selected.xml @@ -0,0 +1,7 @@ + + + + \ No newline at end of file diff --git a/OCH/taxi/unmanned-driver/src/main/res/layout/unmanned_routing_choose_line_list_item.xml b/OCH/common/biz/src/main/res/routing/layout/biz_taxi_choose_line_list_item.xml similarity index 94% rename from OCH/taxi/unmanned-driver/src/main/res/layout/unmanned_routing_choose_line_list_item.xml rename to OCH/common/biz/src/main/res/routing/layout/biz_taxi_choose_line_list_item.xml index d87ee5006b..6dcda479f4 100644 --- a/OCH/taxi/unmanned-driver/src/main/res/layout/unmanned_routing_choose_line_list_item.xml +++ b/OCH/common/biz/src/main/res/routing/layout/biz_taxi_choose_line_list_item.xml @@ -4,7 +4,7 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="@dimen/dp_12" - android:background="@drawable/routing_choose_line_shape_select_line_item_bg_normal" + android:background="@drawable/biz_shape_select_line_item_bg_normal" android:orientation="vertical" android:paddingStart="@dimen/dp_78" android:paddingEnd="@dimen/dp_78"> @@ -51,7 +51,7 @@ android:layout_toRightOf="@+id/todayVerifyNumTextView" android:gravity="right|center_vertical" android:maxLines="1" - android:textColor="@color/taxi_color_ccb9c3e9" + android:textColor="@color/biz_routing_ccb9c3e9" android:textSize="@dimen/dp_30" tools:text="路线累计反馈0可用,1不可用" /> diff --git a/OCH/taxi/unmanned-driver/src/main/res/layout/unmanned_routing_no_data_common_view.xml b/OCH/common/biz/src/main/res/routing/layout/biz_taxi_no_data_common_view.xml similarity index 96% rename from OCH/taxi/unmanned-driver/src/main/res/layout/unmanned_routing_no_data_common_view.xml rename to OCH/common/biz/src/main/res/routing/layout/biz_taxi_no_data_common_view.xml index 434d9ad890..64a6ec9957 100644 --- a/OCH/taxi/unmanned-driver/src/main/res/layout/unmanned_routing_no_data_common_view.xml +++ b/OCH/common/biz/src/main/res/routing/layout/biz_taxi_no_data_common_view.xml @@ -13,7 +13,7 @@ android:id="@+id/no_routing_data_iv" android:layout_width="@dimen/dp_386" android:layout_height="@dimen/dp_350" - android:src="@drawable/no_order_data" + android:src="@drawable/biz_taxi_no_order_data" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent" diff --git a/OCH/taxi/unmanned-driver/src/main/res/layout/taxt_report_error_point_item.xml b/OCH/common/biz/src/main/res/routing/layout/biz_taxi_report_error_point_item.xml similarity index 96% rename from OCH/taxi/unmanned-driver/src/main/res/layout/taxt_report_error_point_item.xml rename to OCH/common/biz/src/main/res/routing/layout/biz_taxi_report_error_point_item.xml index 9f19d39c77..b68eddc7c3 100644 --- a/OCH/taxi/unmanned-driver/src/main/res/layout/taxt_report_error_point_item.xml +++ b/OCH/common/biz/src/main/res/routing/layout/biz_taxi_report_error_point_item.xml @@ -10,7 +10,7 @@ app:layout_constraintTop_toTopOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintBottom_toBottomOf="parent" - android:src="@drawable/taxi_routing_uncheck" + android:src="@drawable/biz_taxi_uncheck" android:layout_width="@dimen/dp_53" android:layout_height="@dimen/dp_53"/> + android:src="@drawable/biz_taxi_current_start_station_point" /> @@ -72,7 +72,7 @@ android:layout_marginTop="@dimen/dp_8" android:layout_width="@dimen/dp_45" android:layout_height="@dimen/dp_45" - android:src="@drawable/taxi_task_current_end_station_point" /> + android:src="@drawable/biz_taxi_current_end_station_point" /> @@ -101,7 +101,7 @@ android:id="@+id/actv_distance_end" android:text="5.2公里" android:textSize="@dimen/dp_32" - android:textColor="@color/taxi_color_CCCCCC" + android:textColor="@color/biz_routing_CCCCCC" app:layout_constraintTop_toBottomOf="@+id/actv_current_itinerary_start_name" app:layout_constraintStart_toStartOf="@+id/actv_current_itinerary_start_name" app:layout_constraintBottom_toTopOf="@+id/actv_current_itinerary_end_name" @@ -131,8 +131,8 @@ app:layout_constraintStart_toStartOf="parent" android:layout_marginStart="@dimen/dp_54" android:layout_marginBottom="@dimen/dp_55" - android:background="@drawable/taxi_button_selector" - android:textColor="@color/taxi_submit_text_color_selector" + android:background="@drawable/biz_button_selector" + android:textColor="@color/biz_taxi_submit_text_color_selector" android:textSize="@dimen/dp_40" /> - - + + + #FF4E41 + #2EACFF + #CCB9C3E9 + #4D000000 + #80000000 + #CCCCCC + #CCFFFFFF + #26C14F + #FF852E + \ No newline at end of file diff --git a/OCH/common/common/build.gradle b/OCH/common/common/build.gradle index 68e607db93..2ecd209687 100644 --- a/OCH/common/common/build.gradle +++ b/OCH/common/common/build.gradle @@ -61,7 +61,7 @@ dependencies { testImplementation project(path: ':OCH:common:common') androidTestImplementation 'androidx.test.ext:junit:1.1.1' androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0' - implementation rootProject.ext.dependencies.amapnavi3dmap + api rootProject.ext.dependencies.amapnavi3dmap implementation rootProject.ext.dependencies.rxandroid implementation rootProject.ext.dependencies.arouter diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/routing/RoutingCallback.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/routing/RoutingCallback.java new file mode 100644 index 0000000000..65fb2d3161 --- /dev/null +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/routing/RoutingCallback.java @@ -0,0 +1,5 @@ +package com.mogo.och.common.module.biz.routing; + +public interface RoutingCallback { + void showMap(boolean show); +} diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/routing/RoutingManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/routing/RoutingManager.kt new file mode 100644 index 0000000000..9c84bf23c2 --- /dev/null +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/routing/RoutingManager.kt @@ -0,0 +1,35 @@ +package com.mogo.och.common.module.biz.routing + +import android.view.View +import androidx.fragment.app.Fragment +import com.alibaba.android.arouter.launcher.ARouter +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d +import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_OCHCOMMON +import com.mogo.och.common.module.biz.time.TimeService +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 + +object RoutingManager { + + private const val TAG = M_OCHCOMMON+"RoutingManager" + + private var routingService: RoutingService? = + ARouter.getInstance().build(OchCommonConst.BIZ_ROUTING).navigation() as RoutingService + + + fun load(){ + OchChainLogManager.writeChainLogInit("初始化信息","初始化算路验证系统") + d(TAG,"初始化信息_初始化算路验证系统") + } + + fun getRoutingView():View?{ + return routingService?.getRoutingView() + } + + fun setRoutingCallback(callback: RoutingCallback?){ + routingService?.setRoutingCallback(callback) + } + + +} \ No newline at end of file diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/routing/RoutingService.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/routing/RoutingService.kt new file mode 100644 index 0000000000..46f4323a15 --- /dev/null +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/routing/RoutingService.kt @@ -0,0 +1,13 @@ +package com.mogo.och.common.module.biz.routing + +import android.view.View +import androidx.fragment.app.Fragment +import com.alibaba.android.arouter.facade.template.IProvider + +interface RoutingService : IProvider { + + fun getRoutingView(): View? + + fun setRoutingCallback(callback: RoutingCallback?) + +} \ No newline at end of file diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/constant/OchCommonConst.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/constant/OchCommonConst.kt index 4bfbcd21d4..bf288664fe 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/constant/OchCommonConst.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/constant/OchCommonConst.kt @@ -37,6 +37,7 @@ class OchCommonConst { const val BIZ_SKIN = "/ochbiz/common/skin" const val BIZ_SCANNER = "/ochbiz/common/scanner" const val BIZ_TIME = "/ochbiz/common/time" + const val BIZ_ROUTING = "/ochbiz/common/routing" const val BIZ_OFFLINE = "/offlinedriver/offlinedata" const val BIZ_Bridge = "/birdge/bridge" @@ -71,5 +72,21 @@ class OchCommonConst { const val AUTOMATIC_PLANNING_MAX_DISTANCE = 15 const val ARRIVE_AT_END_STATION_DISTANCE = 10 + + + // taxi 到达起始点围栏 + const val ARRIVE_AT_START_STATION_DISTANCE = 15 //围栏由20m改为50m 再次改为15m + + //总里程/平均车速。(bus的平均里程:25km/h,taxi的平均里程:38km/h),单位为:分钟,不足1分钟时,显示1分钟。 + const val TAXI_AVERAGE_SPEED = 38 + + //算路终点UUID + const val TAXI_ROUTING_VERIFY_END_SITE = "taxi_routing_verify_end_site" + + //算路起点UUID + const val TAXI_ROUTING_VERIFY_START_SITE = "taxi_routing_verify_start_site" + + const val TYPE_MARKER_ROUTING_VERIFY = "TYPE_MARKER_TAXI_ROUTING_VERIFY" + } } \ No newline at end of file diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/logchainanalytic/OchChainLogManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/logchainanalytic/OchChainLogManager.kt index 9d4b22cd84..f29cb849a1 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/logchainanalytic/OchChainLogManager.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/logchainanalytic/OchChainLogManager.kt @@ -64,6 +64,13 @@ object OchChainLogManager { const val EVENT_KEY_INFO_ERROR = "analytics_event_och_error" + // 算路验证模式 + 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 writeChainLogEye(title: String, info: String) { writeChainLog(title, info, true, EVENT_KEY_INFO_CALL_EYE) diff --git a/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeDriverProvider.kt b/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeDriverProvider.kt index 73c5213017..6aed67ac68 100644 --- a/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeDriverProvider.kt +++ b/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeDriverProvider.kt @@ -12,6 +12,7 @@ import com.mogo.och.common.module.biz.lansocket.LoginLanDriverSocket import com.mogo.och.common.module.biz.login.EnumLoginStatus import com.mogo.och.common.module.biz.login.LoginStatusManager import com.mogo.och.common.module.biz.offline.OfflineManager +import com.mogo.och.common.module.biz.routing.RoutingManager import com.mogo.och.common.module.manager.socket.lan.LanSocketManager import com.mogo.och.facade.constant.FacadeConst @@ -43,6 +44,7 @@ class FacadeDriverProvider : FacadeProvider() { CheckVinManager.load() OfflineManager.load() OTAManager.load() + RoutingManager.load() } } diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/bean/TaxiDriverTaskWithOrderBean.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/bean/TaxiDriverTaskWithOrderBean.kt index c694040287..6712e5df0c 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/bean/TaxiDriverTaskWithOrderBean.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/bean/TaxiDriverTaskWithOrderBean.kt @@ -250,6 +250,32 @@ data class OrderCompletedReqBean( var sn: String, var orderNo: String ) +/** + * 站点信息 + */ +data class RoutingSite( + var siteId: Long,// 站点ID + var siteName: String,// 站点名称 + var gcjLat: Double,// 高德坐标 + var gcjLon: Double,// 高德坐标 + var wgs84Lon: Double,//高精坐标 + var wgs84Lat: Double,//高精坐标 + var pointType: Int // 1:途径点 2:禁行点 3:站点 +) { + fun toBusStationBean(): BusStationBean { + val temp = BusStationBean() + temp.siteId = siteId.toInt() + temp.name = siteName + temp.lat = wgs84Lat + temp.lon = wgs84Lon + temp.gcjLat = gcjLat + temp.gcjLon = gcjLon + temp.pointType = pointType + temp.isLeaving = true + return temp + } +} + /** * 轨迹路线 */ diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/base/TaxiFragment.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/base/TaxiFragment.kt index 104f9bbab6..cfd4d7ed60 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/base/TaxiFragment.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/base/TaxiFragment.kt @@ -4,6 +4,7 @@ import android.annotation.SuppressLint import android.content.Context import android.os.Bundle import android.view.View +import androidx.fragment.app.Fragment import androidx.fragment.app.FragmentTransaction import com.mogo.commons.module.status.MogoStatusManager import com.mogo.commons.mvp.MvpFragment @@ -18,7 +19,6 @@ import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.eagle.core.utilcode.util.ToastUtils import com.mogo.map.listener.IMogoMapListener import com.mogo.map.uicontroller.VisualAngleMode -import com.mogo.och.common.module.biz.login.EnumOpenOrderStatus import com.mogo.och.data.taxi.TaxiOrderStatusEnum import com.mogo.och.common.module.utils.FlowBus import com.mogo.och.common.module.wigets.StartAutopilotAnimationView @@ -27,7 +27,7 @@ import com.mogo.och.unmanned.taxi.R import com.mogo.och.unmanned.taxi.constant.TaxiDriverEventConst import com.mogo.och.unmanned.taxi.constant.TaxiUnmannedConst.Companion.START_AUTOPILOT_ANIMATION_INTERVAL import com.mogo.och.unmanned.taxi.ui.navi.amap.TaxiAmapNaviFragment -import com.mogo.och.unmanned.taxi.ui.navi.auto.TaxiRoutingNaviFragment +import com.mogo.och.common.module.biz.routing.RoutingManager import com.mogo.och.unmanned.taxi.ui.operational.OperationalManager import com.mogo.och.unmanned.taxi.ui.task.TaxiTaskModel import com.mogo.och.unmanned.taxi.ui.task.itinerarycurrent.ItineraryCurrentView @@ -52,7 +52,7 @@ class TaxiFragment :MvpFragment(), private var ochAmapNaviFragment: TaxiAmapNaviFragment? = null // 高德地图轨迹展示fragment - private var taxiRoutingNaviFragment: TaxiRoutingNaviFragment? = null + private var taxiRoutingNaviFragment: Fragment? = null private val runningTaskGateWay = "RUNNINGTASKGATEWAY" private val lineView = "LINEVIEW" @@ -231,24 +231,24 @@ class TaxiFragment :MvpFragment(), } fun showRoutingToStationFragment(isShow: Boolean) { - val transaction: FragmentTransaction = childFragmentManager.beginTransaction() - closeRoutingViewIfHadAdd() - if (isShow) { - closeAmapViewIFHadeAdd() - taxiRoutingNaviFragment = TaxiRoutingNaviFragment.newInstance() - if (taxiRoutingNaviFragment!!.isAdded) { - return - } - transaction.add(R.id.module_mogo_och_navi_panel_container, taxiRoutingNaviFragment!!) - .show(taxiRoutingNaviFragment!!) - transaction.commitAllowingStateLoss() - taxi_close_navi_icon.visibility = View.VISIBLE - module_mogo_och_navi_panel_container.visibility = View.VISIBLE - } else { - taxi_close_navi_icon.visibility = View.GONE - module_mogo_och_navi_panel_container.visibility = - View.INVISIBLE //2023.9.4高德导航由gone设置成INVISIBLE,保留导航实例,避免导航被挂起 - } +// val transaction: FragmentTransaction = childFragmentManager.beginTransaction() +// closeRoutingViewIfHadAdd() +// if (isShow) { +// closeAmapViewIFHadeAdd() +// taxiRoutingNaviFragment = TaxiRoutingNaviFragment.newInstance() +// if (taxiRoutingNaviFragment!!.isAdded) { +// return +// } +// transaction.add(R.id.module_mogo_och_navi_panel_container, taxiRoutingNaviFragment!!) +// .show(taxiRoutingNaviFragment!!) +// transaction.commitAllowingStateLoss() +// taxi_close_navi_icon.visibility = View.VISIBLE +// module_mogo_och_navi_panel_container.visibility = View.VISIBLE +// } else { +// taxi_close_navi_icon.visibility = View.GONE +// module_mogo_och_navi_panel_container.visibility = +// View.INVISIBLE //2023.9.4高德导航由gone设置成INVISIBLE,保留导航实例,避免导航被挂起 +// } } fun startNaviToEndStation(isShow: Boolean) { diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/base/TaxiPresenter.java b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/base/TaxiPresenter.java index af16444d12..b7b391af5f 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/base/TaxiPresenter.java +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/base/TaxiPresenter.java @@ -14,6 +14,8 @@ import com.mogo.och.common.module.biz.login.ILoginCallback; import com.mogo.och.common.module.biz.login.EnumLoginStatus; import com.mogo.och.common.module.biz.login.LoginStatusManager; import com.mogo.och.common.module.biz.login.EnumOpenOrderStatus; +import com.mogo.och.common.module.biz.routing.RoutingCallback; +import com.mogo.och.common.module.biz.routing.RoutingManager; import com.mogo.och.unmanned.taxi.utils.order.OrderListener; import com.mogo.och.unmanned.taxi.utils.order.OrderModel; import com.mogo.och.data.taxi.TaxiOrderStatusEnum; @@ -23,7 +25,6 @@ import com.mogo.och.data.taxi.BaseOrderBean; import com.mogo.och.unmanned.taxi.callback.ITaxiADASStatusCallback; import com.mogo.och.unmanned.taxi.callback.ITaxiControllerStatusCallback; import com.mogo.och.unmanned.taxi.callback.ITaxiOrderStatusCallback; -import com.mogo.och.unmanned.taxi.ui.routing.TaxiRoutingModel; import com.mogo.och.unmanned.taxi.ui.task.TaxiTaskModel; /** @@ -33,7 +34,7 @@ import com.mogo.och.unmanned.taxi.ui.task.TaxiTaskModel; * 描述 */ public class TaxiPresenter extends Presenter implements ITaxiADASStatusCallback, - ITaxiOrderStatusCallback, ITaxiControllerStatusCallback, ILoginCallback, OrderListener { + ITaxiOrderStatusCallback, ITaxiControllerStatusCallback, ILoginCallback, OrderListener, RoutingCallback { private static final String TAG = TaxiPresenter.class.getSimpleName(); @@ -55,7 +56,7 @@ public class TaxiPresenter extends Presenter implements ITaxiADASS TaxiTaskModel.INSTANCE.setADASStatusCallback(this); TaxiTaskModel.INSTANCE.setControllerStatusCallback(this); TaxiTaskModel.INSTANCE.setOrderStatusCallback(this); - TaxiRoutingModel.INSTANCE.setOrderStatusCallback(this); + RoutingManager.INSTANCE.setRoutingCallback(this); LoginStatusManager.INSTANCE.addListener(TAG,this); OrderModel.INSTANCE.setOrderStatusCallback(TAG,this); OchTransform.INSTANCE.addListener(TAG,ochTransform); @@ -65,6 +66,7 @@ public class TaxiPresenter extends Presenter implements ITaxiADASS TaxiTaskModel.INSTANCE.setADASStatusCallback(null); TaxiTaskModel.INSTANCE.setControllerStatusCallback(null); TaxiTaskModel.INSTANCE.setOrderStatusCallback(null); + RoutingManager.INSTANCE.setRoutingCallback(null); OCHAdasAbilityManager.getInstance().release(); TaxiTaskModel.INSTANCE.setMoGoAutopilotPlanningListener(null); LoginStatusManager.INSTANCE.removeListener(TAG); @@ -226,4 +228,9 @@ public class TaxiPresenter extends Presenter implements ITaxiADASS } } } + + @Override + public void showMap(boolean show) { + mView.showAmapNaviToStationFragment(show); + } } diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/bizswitch/SwitchBizView.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/bizswitch/SwitchBizView.kt index 33d04a3975..7f43dcc2a4 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/bizswitch/SwitchBizView.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/bizswitch/SwitchBizView.kt @@ -5,6 +5,7 @@ import android.util.AttributeSet import android.view.LayoutInflater import androidx.lifecycle.ViewModelProvider import androidx.lifecycle.findViewTreeViewModelStoreOwner +import com.mogo.och.common.module.biz.routing.RoutingManager import com.mogo.och.common.module.wigets.WindowRelativeLayout import com.mogo.och.unmanned.taxi.R import kotlinx.android.synthetic.main.unmanned_switch_biz.view.itinerarySwitchView @@ -45,11 +46,17 @@ class SwitchBizView: WindowRelativeLayout, SwtichBizeModel.SwtichLineViewCallbac override fun showTaskView() { itinerarySwitchView.visibility = VISIBLE routingSwitchView.visibility = GONE + RoutingManager.getRoutingView()?.let { + routingSwitchView.removeView(it) + } } override fun showRoutingView() { itinerarySwitchView.visibility = GONE routingSwitchView.visibility = VISIBLE + RoutingManager.getRoutingView()?.let { + routingSwitchView.addView(it) + } } } diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/TaxiRoutingModel.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/TaxiRoutingModel.kt deleted file mode 100644 index f5c3afe577..0000000000 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/TaxiRoutingModel.kt +++ /dev/null @@ -1,24 +0,0 @@ -package com.mogo.och.unmanned.taxi.ui.routing - -import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant - -import com.mogo.och.unmanned.taxi.callback.ITaxiOrderStatusCallback - -object TaxiRoutingModel { - private val TAG = SceneConstant.M_TAXI + TaxiRoutingModel::class.java.simpleName - - private var mOrderStatusCallback: ITaxiOrderStatusCallback? = null - - fun setOrderStatusCallback(callback: ITaxiOrderStatusCallback?) { - mOrderStatusCallback = callback - } - - /** - * 显示/隐藏 前往任务目的地的导航 - * - * @param isShow - */ - fun startNaviToEndStationByAMap(isShow: Boolean) { - mOrderStatusCallback?.onNaviToEnd(true, isShow) - } -} \ No newline at end of file diff --git a/OCH/taxi/unmanned-driver/src/main/res/layout/unmanned_routing_fragment.xml b/OCH/taxi/unmanned-driver/src/main/res/layout/unmanned_routing_fragment.xml deleted file mode 100644 index 5e26268678..0000000000 --- a/OCH/taxi/unmanned-driver/src/main/res/layout/unmanned_routing_fragment.xml +++ /dev/null @@ -1,270 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/OCH/taxi/unmanned-driver/src/main/res/layout/unmanned_switch_biz.xml b/OCH/taxi/unmanned-driver/src/main/res/layout/unmanned_switch_biz.xml index 15b1f5a5ab..fa28d9a246 100644 --- a/OCH/taxi/unmanned-driver/src/main/res/layout/unmanned_switch_biz.xml +++ b/OCH/taxi/unmanned-driver/src/main/res/layout/unmanned_switch_biz.xml @@ -57,7 +57,7 @@ android:layout_width="@dimen/dp_880" android:layout_height="0dp"/> -