diff --git a/OCH/mogo-och-bus-passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java b/OCH/mogo-och-bus-passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java index c931b96c5b..d90ec06928 100644 --- a/OCH/mogo-och-bus-passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java +++ b/OCH/mogo-och-bus-passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java @@ -45,10 +45,6 @@ public class MogoOCHBusPassenger implements IMogoOCH { this.mActivity = activity; this.mContainerId = containerId; showFragment(); - - if (AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode)) { - MultiDisplayUtils.INSTANCE.startActWithSecond(activity, VideoPlayerActivity.class); - } return null; } diff --git a/OCH/mogo-och-charter-passenger/build.gradle b/OCH/mogo-och-charter-passenger/build.gradle index 5df151bed5..c0e8c71d13 100644 --- a/OCH/mogo-och-charter-passenger/build.gradle +++ b/OCH/mogo-och-charter-passenger/build.gradle @@ -45,14 +45,6 @@ android { } } - flavorDimensions "vehicle" - productFlavors { - // 车型:金旅m1 包车业务 - m1 { - dimension "vehicle" - buildConfigField 'int', 'NEW_TEST', '1' - } - } } dependencies { diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/model/OrderStatusEnum.kt b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/model/OrderStatusEnum.kt deleted file mode 100644 index 38dfbdc426..0000000000 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/model/OrderStatusEnum.kt +++ /dev/null @@ -1,33 +0,0 @@ -package com.mogo.och.bus.passenger.model - -/** - * Created on 2022/08/19 - * - * - * 0 初始状态, - * 10 已登录, - * 20 已登出, - */ -enum class OrderStatusEnum(val code: Int) { - Nothing(0), - NoOrderUnuse( 10 ), //无订单车闲置 m1_order_noorder.xml 无订单页面 - OrderNoLine( 20), //有订单无线路 m1_order_lineside 选择线路页面 - OrdersWithLine( 30), //有订单有线路 m1_order_lineside 选择线路页面隐藏掉确定取消 - NoOrderUse( 40),; //无订单车不闲置 m1_order_end.xml 开门关门页面 - - companion object { - @JvmStatic - fun valueOf(code: Int): OrderStatusEnum? { - for (value in values()) { - if (value.code == code) { - return value - } - } - return NoOrderUnuse - } - } -} - -interface IOrderStatusChangeListener { - fun onStatusChange(currentStatus:OrderStatusEnum) -} \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerCarUseAndNoOrderPresenter.kt b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerCarUseAndNoOrderPresenter.kt deleted file mode 100644 index fe2279cf13..0000000000 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerCarUseAndNoOrderPresenter.kt +++ /dev/null @@ -1,96 +0,0 @@ -package com.mogo.och.bus.passenger.presenter - -import androidx.lifecycle.LifecycleOwner -import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager -import com.mogo.eagle.core.utilcode.util.ToastUtils -import com.mogo.och.bus.passenger.model.CharterPassengerModel -import com.mogo.och.bus.passenger.ui.M1CarUserNoOrderFragment -import com.mogo.och.common.module.manager.OCHM1LightAirconditionDoorStatusManager -import io.reactivex.disposables.Disposable - -class BusPassengerCarUseAndNoOrderPresenter(view: M1CarUserNoOrderFragment?) : - BusBasePassengerFunctionDevicePresenter(view), - OCHM1LightAirconditionDoorStatusManager.OCHM1LightAirconditionDoorCallback { - companion object { - private const val TAG = "BusPassengerFunctionPresenter" - } - - private var subscribe: Disposable? = null - private var subscribeDoorStatus: Disposable? = null - private var gnssSpeed = 0.0 - - override fun onCreate(owner: LifecycleOwner) { - super.onCreate(owner) - OCHM1LightAirconditionDoorStatusManager.addListener(TAG, this) - CharterPassengerModel.setControllerStatusCallback(TAG) { location -> - location?.let { - gnssSpeed = it.gnssInfo.vehicleSpeed - } - } - } - - override fun onDestroy(owner: LifecycleOwner) { - super.onDestroy(owner) - OCHM1LightAirconditionDoorStatusManager.removeListener(TAG) - disposeSubscribe(subscribe) - disposeSubscribe(subscribeDoorStatus) - } - - override fun onDoorStatusCallback(isOpen: Boolean, isFirst: Boolean) { - if (!isFirst) { - if (isOpen) { - ToastUtils.showShort("已开启车门") - } else { - ToastUtils.showShort("已关门车门") - } - } - } - - - fun openDoor() { - val canOpenOrCloseDoor = canOpenOrCloseDoor() - if (!canOpenOrCloseDoor.isNullOrEmpty()) { - ToastUtils.showShort(canOpenOrCloseDoor) - return - } - disposeSubscribe(subscribe) - subscribe = createSubscribe(1000) { - CallerAutoPilotControlManager.sendRoboBusJinlvM1FrontDoorCmd(0) - } - CallerAutoPilotControlManager.sendRoboBusJinlvM1FrontDoorCmd(1) - disposeSubscribe(subscribeDoorStatus) - subscribeDoorStatus = createSubscribe { - if (!OCHM1LightAirconditionDoorStatusManager.doorStatus.isOpen) { - ToastUtils.showShort("车门无法开启,请使用车内物理按钮") - } - } - } - - fun closeDoor() { - val canOpenOrCloseDoor = canOpenOrCloseDoor() - if (!canOpenOrCloseDoor.isNullOrBlank()) { - ToastUtils.showShort(canOpenOrCloseDoor) - return - } - disposeSubscribe(subscribe) - subscribe = createSubscribe(1000) { - CallerAutoPilotControlManager.sendRoboBusJinlvM1FrontDoorCmd(0) - } - CallerAutoPilotControlManager.sendRoboBusJinlvM1FrontDoorCmd(2) - disposeSubscribe(subscribeDoorStatus) - subscribeDoorStatus = createSubscribe { - if (OCHM1LightAirconditionDoorStatusManager.doorStatus.isOpen) { - ToastUtils.showShort("车门无法关闭,请使用车内物理按钮") - } - } - } - - private fun canOpenOrCloseDoor(): String? { - if (gnssSpeed < 0.01) { - return null - } else { - return "车辆正在运行、请稍后再试" - } - } - -} \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionDevicePresenter.kt b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionDevicePresenter.kt deleted file mode 100644 index 98ea80709d..0000000000 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionDevicePresenter.kt +++ /dev/null @@ -1,142 +0,0 @@ -package com.mogo.och.bus.passenger.presenter - -import androidx.lifecycle.LifecycleOwner -import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener -import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager -import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager -import com.mogo.eagle.core.utilcode.util.ToastUtils -import com.mogo.och.bus.passenger.model.CharterPassengerModel -import com.mogo.och.bus.passenger.ui.M1DeviceFragment -import com.mogo.och.common.module.manager.OCHM1LightAirconditionDoorStatusManager -import io.reactivex.disposables.Disposable - -class BusPassengerFunctionDevicePresenter(view: M1DeviceFragment?) : - BusBasePassengerFunctionDevicePresenter(view), - OCHM1LightAirconditionDoorStatusManager.OCHM1LightAirconditionDoorCallback { - - private var subscribe: Disposable? = null - private var subscribeDoorStatus: Disposable? = null - private var gnssSpeed =0.0 - - companion object { - private const val TAG = "BusPassengerFunctionDevicePresenter" - } - - override fun onCreate(owner: LifecycleOwner) { - super.onCreate(owner) - OCHM1LightAirconditionDoorStatusManager.addListener(TAG, this) - CharterPassengerModel.setControllerStatusCallback(TAG) { location -> - location?.let { - gnssSpeed = it.gnssInfo.vehicleSpeed - } - } - } - - override fun onDestroy(owner: LifecycleOwner) { - super.onDestroy(owner) - OCHM1LightAirconditionDoorStatusManager.removeListener(TAG) - disposeSubscribe(subscribe) - disposeSubscribe(subscribeDoorStatus) - } - - override fun onDoorStatusCallback(isOpen: Boolean,isFirst: Boolean) { - if(!isFirst) { - if (isOpen) { - ToastUtils.showShort("已开启车门") - } else { - ToastUtils.showShort("已关门车门") - } - } - } - - fun openDoor() { - val canOpenOrCloseDoor = canOpenOrCloseDoor() - if(!canOpenOrCloseDoor.isNullOrEmpty()){ - ToastUtils.showShort(canOpenOrCloseDoor) - return - } - disposeSubscribe(subscribe) - subscribe = createSubscribe(1000) { - CallerAutoPilotControlManager.sendRoboBusJinlvM1FrontDoorCmd(0) - } - CallerAutoPilotControlManager.sendRoboBusJinlvM1FrontDoorCmd(1) - disposeSubscribe(subscribeDoorStatus) - subscribeDoorStatus = createSubscribe(6000) { - if (!OCHM1LightAirconditionDoorStatusManager.doorStatus.isOpen) { - ToastUtils.showShort("车门无法开启,请使用车内物理按钮") - } - } - } - - fun closeDoor() { - val canOpenOrCloseDoor = canOpenOrCloseDoor() - if(!canOpenOrCloseDoor.isNullOrBlank()){ - ToastUtils.showShort(canOpenOrCloseDoor) - return - } - disposeSubscribe(subscribe) - subscribe = createSubscribe(1000) { - CallerAutoPilotControlManager.sendRoboBusJinlvM1FrontDoorCmd(0) - } - CallerAutoPilotControlManager.sendRoboBusJinlvM1FrontDoorCmd(2) - disposeSubscribe(subscribeDoorStatus) - subscribeDoorStatus = createSubscribe(6000) { - if (OCHM1LightAirconditionDoorStatusManager.doorStatus.isOpen) { - ToastUtils.showShort("车门无法关闭,请使用车内物理按钮") - } - } - } - - private fun canOpenOrCloseDoor():String?{ - if(gnssSpeed<0.01){ - return null - }else{ - return "车辆正在运行、请稍后再试" - } - } - - // 靠边停车 - fun startStopSide() { - when (CallerAutoPilotStatusListenerManager.getAutoPilotStatusInfo().state) { - IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE -> {// 不可自动驾驶 - ToastUtils.showShort("设备未就绪请稍等,请稍后再试") - } - IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE -> {// - ToastUtils.showShort("因车辆正在人工驾驶中无法靠边停车,请稍后再试") - } - IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING -> { - // 靠边停车 - CallerAutoPilotControlManager.sendPlanningCmd(1) - } - IMoGoAutopilotStatusListener.STATUS_PARALLEL_DRIVING -> { - ToastUtils.showShort("因车辆正在平行驾驶中无法靠边停车,请稍后再试") - } - else -> {} - } - } - - fun startGo() { - when (CallerAutoPilotStatusListenerManager.getAutoPilotStatusInfo().state) { - IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE -> {// 不可自动驾驶 - ToastUtils.showShort("设备未就绪请稍等") - } - IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE -> {// - ToastUtils.showShort("启动自动驾驶中") - CallerAutoPilotControlManager.sendPlanningCmd(2) - CharterPassengerModel.startAutopilot() - CharterPassengerModel.leaveStation() - CharterPassengerModel.sendTripInfo() - } - IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING -> { - // 重新起步 - CallerAutoPilotControlManager.sendPlanningCmd(2) - CharterPassengerModel.leaveStation() - } - IMoGoAutopilotStatusListener.STATUS_PARALLEL_DRIVING -> { - ToastUtils.showShort("因车辆正在平行驾驶中无法靠边停车,请稍后再试") - } - else -> {} - } - } - -} \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionOrderPresenter.kt b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionOrderPresenter.kt deleted file mode 100644 index cc9cc0739c..0000000000 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionOrderPresenter.kt +++ /dev/null @@ -1,34 +0,0 @@ -package com.mogo.och.bus.passenger.presenter - -import androidx.lifecycle.LifecycleOwner -import com.mogo.och.bus.passenger.model.CharterPassengerModel -import com.mogo.och.bus.passenger.model.IOrderStatusChangeListener -import com.mogo.och.bus.passenger.model.OrderStatusEnum -import com.mogo.och.bus.passenger.ui.M1OrderFragment - -class BusPassengerFunctionOrderPresenter(view: M1OrderFragment?) : - BusBasePassengerFunctionDevicePresenter(view), IOrderStatusChangeListener { - - companion object{ - const val TAG = "BusPassengerFunctionOrderPresenter" - } - - override fun onCreate(owner: LifecycleOwner) { - super.onCreate(owner) - CharterPassengerModel.setStatusChangeListener(TAG,this) - } - - override fun onResume(owner: LifecycleOwner) { - super.onResume(owner) - mView?.setViewByOrderStatus(CharterPassengerModel.getCurrentOrderStatus()) - } - - override fun onDestroy(owner: LifecycleOwner) { - super.onDestroy(owner) - CharterPassengerModel.setStatusChangeListener(TAG,null) - } - override fun onStatusChange(currentStatus: OrderStatusEnum) { - mView?.setViewByOrderStatus(currentStatus) - } - -} \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1DeviceFragment.kt b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1DeviceFragment.kt deleted file mode 100644 index 297a1c14c3..0000000000 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1DeviceFragment.kt +++ /dev/null @@ -1,63 +0,0 @@ -package com.mogo.och.bus.passenger.ui - -import android.os.Bundle -import com.mogo.commons.mvp.MvpFragment -import com.mogo.eagle.core.utilcode.kotlin.onClick -import com.mogo.och.bus.passenger.R -import com.mogo.och.bus.passenger.presenter.BusPassengerFunctionDevicePresenter -import com.mogo.och.common.module.utils.SoundPoolHelper -import kotlinx.android.synthetic.m1.m1_devices_fragment.* - -/** - * @author: yangyakun - * @date: 2023/1/28 - */ -class M1DeviceFragment : - MvpFragment() { - - override fun getLayoutId(): Int = R.layout.m1_devices_fragment - - override fun getTagName(): String = TAG - - override fun initViews() { - initListener() - } - - private fun initListener() { - tv_car_setting_go.setOnClickListener { - //判断自动驾驶状态 - // 自动驾驶状态中: AdasManager.getInstance().sendPlanningCmd(2); - // 没有在自动驾驶中:启动自动驾驶 CallerAutoPilotControlManager.INSTANCE.startAutoPilot(parameters); - mPresenter?.startGo() - SoundPoolHelper.getSoundPoolHelper().playSoundWithRedId(context, R.raw.bus_di) - } - tv_car_setting_stopside.setOnClickListener { - // 执行靠边停车 AdasManager.getInstance().sendPlanningCmd(1); - mPresenter?.startStopSide() - SoundPoolHelper.getSoundPoolHelper().playSoundWithRedId(context, R.raw.bus_di) - } - tv_car_setting_opendoor.onClick { - // 开门 AdasManager.getInstance().sendRoboBusJinlvM1FrontDoorCmd(2); - mPresenter?.openDoor() - SoundPoolHelper.getSoundPoolHelper().playSoundWithRedId(context, R.raw.bus_di) - } - tv_car_setting_closedoor.onClick { - mPresenter?.closeDoor() - SoundPoolHelper.getSoundPoolHelper().playSoundWithRedId(context, R.raw.bus_di) - } - } - - override fun createPresenter(): BusPassengerFunctionDevicePresenter = - BusPassengerFunctionDevicePresenter(this) - - companion object { - const val TAG = "BusPassengerFunctionDeviceFragment" - @JvmStatic - fun newInstance(): M1DeviceFragment { - val args = Bundle() - val fragment = M1DeviceFragment() - fragment.arguments = args - return fragment - } - } -} \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1OrderFragment.kt b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1OrderFragment.kt deleted file mode 100644 index 362da620f7..0000000000 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1OrderFragment.kt +++ /dev/null @@ -1,72 +0,0 @@ -package com.mogo.och.bus.passenger.ui - -import android.os.Bundle -import android.view.View -import com.mogo.commons.mvp.MvpFragment -import com.mogo.och.bus.passenger.R -import com.mogo.och.bus.passenger.bean.TaxiPassengerVideoPlay -import com.mogo.och.bus.passenger.model.OrderStatusEnum -import com.mogo.och.bus.passenger.presenter.BusPassengerFunctionOrderPresenter -import kotlinx.android.synthetic.m1.m1_order_fragment.* - -/** - * @author: yangyakun - * @date: 2023/1/28 - */ -class M1OrderFragment : - MvpFragment() { - - private var changeCheck: M1ContainFragment.ChangeCheck?=null - - override fun getLayoutId(): Int { - return R.layout.m1_order_fragment - } - - override fun getTagName(): String { - return TAG - } - - override fun initViews() { - lsv_line_site.setchangeCheck(this.changeCheck) - } - - fun setViewByOrderStatus(currentStatus: OrderStatusEnum){ - when (currentStatus) { - OrderStatusEnum.NoOrderUnuse -> { - // 无订单页面 - m1_order_noorder.visibility = View.VISIBLE - m1_order_early_end.visibility = View.GONE - lsv_line_site.visibility = View.GONE - } - OrderStatusEnum.OrderNoLine -> { - // 选择线路页面 - m1_order_noorder.visibility = View.GONE - m1_order_early_end.visibility = View.GONE - lsv_line_site.visibility = View.VISIBLE - } - OrderStatusEnum.OrdersWithLine -> { - // 选择线路页面 - m1_order_noorder.visibility = View.GONE - m1_order_early_end.visibility = View.GONE - lsv_line_site.visibility = View.VISIBLE - } - } - } - - override fun createPresenter(): BusPassengerFunctionOrderPresenter { - return BusPassengerFunctionOrderPresenter(this) - } - - - companion object { - const val TAG = "BusPassengerFunctionOrderFragment" - @JvmStatic - fun newInstance(changeCheck: M1ContainFragment.ChangeCheck): M1OrderFragment { - val args = Bundle() - val fragment = M1OrderFragment() - fragment.arguments = args - fragment.changeCheck = changeCheck - return fragment - } - } -} \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/view/LineSiteView.kt b/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/view/LineSiteView.kt deleted file mode 100644 index f1319e0a7d..0000000000 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/view/LineSiteView.kt +++ /dev/null @@ -1,564 +0,0 @@ -package com.mogo.och.bus.passenger.ui.view - -import android.animation.ObjectAnimator -import android.content.Context -import android.util.AttributeSet -import android.view.LayoutInflater -import android.view.View -import android.view.animation.LinearInterpolator -import androidx.constraintlayout.widget.ConstraintLayout -import androidx.recyclerview.widget.LinearLayoutManager -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.CallerAutoPilotStatusListenerManager -import com.mogo.eagle.core.function.call.telematic.CallerTelematicListenerManager -import com.mogo.eagle.core.function.call.telematic.CallerTelematicManager -import com.mogo.eagle.core.utilcode.kotlin.onClick -import com.mogo.eagle.core.utilcode.util.GsonUtils -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.LineInfoListResponse -import com.mogo.och.bus.passenger.bean.response.LineInfoResponse -import com.mogo.och.bus.passenger.bean.response.SiteInfoResponse -import com.mogo.och.bus.passenger.model.CharterPassengerModel -import com.mogo.och.bus.passenger.net.BusPassengerModelLoopManager -import com.mogo.och.bus.passenger.net.BusPassengerServiceManager -import com.mogo.och.bus.passenger.ui.M1ContainFragment -import com.mogo.och.bus.passenger.ui.adapter.OrderLineItemAdapter -import com.mogo.och.bus.passenger.ui.adapter.OrderSiteItemAdapter -import com.mogo.och.bus.passenger.utils.RxUtils -import com.mogo.och.bus.passenger.view.BottomDecoration -import com.mogo.och.common.module.bean.dpmsg.DPMsgType -import com.mogo.och.common.module.biz.constant.OchCommonConst -import com.mogo.och.common.module.biz.network.OchCommonServiceCallback -import com.mogo.och.common.module.manager.OCHPlanningStopSideStatusManager -import com.mogo.och.common.module.bean.dpmsg.ChangeDestMsg -import io.reactivex.disposables.Disposable -import kotlinx.android.synthetic.m1.m1_order_lineside.view.* -import me.jessyan.autosize.utils.AutoSizeUtils - -class LineSiteView @JvmOverloads constructor( - context: Context, - attrs: AttributeSet? = null, - defStyleAttr: Int = 0 -) : ConstraintLayout(context, attrs, defStyleAttr) { - - companion object { - const val TAG = "LineSiteView" - const val TAGLINELOOP = "LineSiteViewLineLoop" - } - - // 成功提交给后台得线路 - private var checkLine: LineInfoResponse.LineInfo? = null - - // 成功提交给后台得终点站点 - private var checkSite: SiteInfoResponse.SiteInfo? = null - - // 下一个站点 - private var currentSite: SiteInfoResponse.SiteInfo? = null - - // 向司机端端提交的临时线路 - private var tempCheckLine: LineInfoResponse.LineInfo? = null - - // 向司机端临时提交的终点站点 - private var tempCheckSite: SiteInfoResponse.SiteInfo? = null - - private var tempCheckLineIsSubmit = false - private var isChangeIngLineAndSite = false - - - private val lineList = mutableListOf() - private val siteList = mutableListOf() - - private var lineAdapter: OrderLineItemAdapter - private var siteAdapter: OrderSiteItemAdapter - - private var gnssSpeed = 0.0 - - private val loadingAni = - ObjectAnimator.ofFloat(iv_loading_wait_driver, "rotation", 0f, 90f, 180f, 270f, 360f) - .apply { - repeatCount = -1 - interpolator = LinearInterpolator() - duration = 1000 - } - private var changeCheck: M1ContainFragment.ChangeCheck?=null - private var subscribeSelectLine: Disposable? = null - private var subscribeSelectSite: Disposable? = null - - init { - LayoutInflater.from(context).inflate(R.layout.m1_order_lineside, this, true) - lineAdapter = OrderLineItemAdapter(context, lineList) - siteAdapter = OrderSiteItemAdapter(context, siteList) - loadingAni.target = iv_loading_wait_driver - } - - override fun onAttachedToWindow() { - super.onAttachedToWindow() - rlv_line_list.layoutManager = - LinearLayoutManager(context, LinearLayoutManager.VERTICAL, false) - rlv_line_list.addItemDecoration(BottomDecoration(AutoSizeUtils.dp2px(context, 60f))) - rlv_line_list.adapter = lineAdapter - - rv_site_list.layoutManager = - LinearLayoutManager(context, LinearLayoutManager.VERTICAL, false) - rv_site_list.addItemDecoration(BottomDecoration(AutoSizeUtils.dp2px(context, 60f))) - rv_site_list.adapter = siteAdapter - - val hasSetLineAndSite = CharterPassengerModel.hasSetLineAndSite() - if (hasSetLineAndSite != null) {// 已经设置了线路和站点 - checkLine = hasSetLineAndSite.first - checkSite = hasSetLineAndSite.second - lineList.clear() - resetData() - } else { - queryLineList() - setEnableLineStatus(true) - setEnableSiteStatus(false) - onlyChangeSite(false) - setSiteAdapterEnable(false) - setSwitchEnable(false) - isChangeIngLineAndSite = false - } - - initListener() - - } - - /** - * 重置数据 - */ - private fun resetData() { - if(checkLine==null){// 没有提交线路 - queryLineList() - setEnableLineStatus(true) - setEnableSiteStatus(false) - onlyChangeSite(false) - setSiteAdapterEnable(false) - }else{ - checkLine?.let { - setEnableLineStatus(false) - setEnableSiteStatus(false) - onlyChangeSite(false) - setSiteAdapterEnable(true) - isChangeIngLineAndSite = true - lineAdapter.submitLine(it) - checkLine?.let { - querySitesByLineId(it.lineId.toString(),false) - } - } - } - } - - /** - * 设置是否可用进行选择线路 - */ - private fun setEnableLineStatus(enable: Boolean) { - if (enable) { - g_line_submit_group.visibility = View.VISIBLE - lineAdapter.setEnable(true) - } else { - g_line_submit_group.visibility = View.GONE - lineAdapter.setEnable(false) - } - } - - /** - * 设置是否可用选择站点 - */ - private fun setEnableSiteStatus(cancleAndSubmit: Boolean) { - if (cancleAndSubmit) { - g_side_cancle_submit_group.visibility = View.VISIBLE - } else { - g_side_cancle_submit_group.visibility = View.GONE - } - } - - fun onlyChangeSite(submit:Boolean){ - if (submit) { - g_side_submit_group.visibility = View.VISIBLE - } else { - g_side_submit_group.visibility = View.GONE - } - } - - fun setSiteAdapterEnable(enable: Boolean){ - if(enable){ - siteAdapter.setEnable(true) - }else{ - siteAdapter.setEnable(false) - } - } - - private fun initListener() { - lineAdapter.checkChangeListener = object : OrderLineItemAdapter.CheckListener { - override fun onCheckListener(lineInfo: LineInfoResponse.LineInfo) { - tempCheckLine = lineInfo - querySitesByLineId(lineInfo.lineId.toString(),true) - siteAdapter.clearCheck() - } - } - siteAdapter.checkChangeListener = object : OrderSiteItemAdapter.CheckListener { - override fun onCheckListener(siteInfo: SiteInfoResponse.SiteInfo) { - // 设置临时选中的 - tempCheckSite = siteInfo - if(isChangeIngLineAndSite) { - checkSite?.let { - if (it.siteId == siteInfo.siteId) { - onlyChangeSite(false) - } else { - onlyChangeSite(true) - } - } - } - } - - } - tv_line_cancle.onClick { - resetData() - tempCheckLine = null - } - tv_site_cancle.onClick { - resetData() - tempCheckLine = null - tempCheckSite = null - } - tv_line_submit.onClick { - if (tempCheckLine == null) { - ToastUtils.showLong("请选择线路") - return@onClick - } - if (!CallerTelematicManager.getClientConnStatus()) { - ToastUtils.showLong("乘客屏无法连接司机屏请联系安全员") - return@onClick - } - tempCheckLine?.let { - val msg = ChangeDestMsg( - it.lineId!!.toInt(), - it.name!!, - 0, - "", - 0, - "", - false - ) - CallerTelematicManager.sendMsgToServer( - OchCommonConst.BUSINESS_STRING, - GsonUtils.toJson(msg).toByteArray() - ) - startAni() - // 启动查看和司机端链接 - BusPassengerModelLoopManager.setLoopFunction( - TAGLINELOOP, - LoopInfo(3, ::checkServerStatus) - ) - RxUtils.disposeSubscribe(subscribeSelectLine) - subscribeSelectLine= RxUtils.createSubscribe(120_000){ - ToastUtils.showShort("请联系安全员确认") - endAni() - } - } - } - tv_site_submit.onClick { - if (!tempCheckLineIsSubmit) { - ToastUtils.showLong("请选择站点") - return@onClick - } - if (!CallerTelematicManager.getClientConnStatus()) { - ToastUtils.showLong("乘客屏无法连接司机屏请联系安全员") - return@onClick - } - tempCheckSite?.let { lineInfo -> - tempCheckSite?.let { siteInfo -> - val msg = ChangeDestMsg( - lineInfo.lineId!!.toInt(), - lineInfo.lineName!!, - currentSite!!.siteId!!.toInt(), - currentSite!!.siteName!!, - siteInfo.siteId!!.toInt(), - siteInfo.siteName!!, - false - ) - CallerTelematicManager.sendMsgToServer( - OchCommonConst.BUSINESS_STRING, - GsonUtils.toJson(msg).toByteArray() - ) - } - startAni() - // 启动查看和司机端链接 - BusPassengerModelLoopManager.setLoopFunction( - TAGLINELOOP, - LoopInfo(3, ::checkServerStatus) - ) - RxUtils.disposeSubscribe(subscribeSelectSite) - subscribeSelectSite = RxUtils.createSubscribe(120_000){ - ToastUtils.showShort("请联系安全员确认") - endAni() - } - } - } - tv_site_only_submit.onClick { - // 线路不换只换站点 - if (!CallerTelematicManager.getClientConnStatus()) { - ToastUtils.showLong("乘客屏无法连接司机屏请联系安全员") - return@onClick - } - tempCheckSite?.let { siteInfo -> - val msg = ChangeDestMsg( - siteInfo.lineId!!.toInt(), - siteInfo.lineName!!, - currentSite!!.siteId!!.toInt(), - currentSite!!.siteName!!, - siteInfo.siteId!!.toInt(), - siteInfo.siteName!!, - false - ) - CallerTelematicManager.sendMsgToServer( - OchCommonConst.BUSINESS_STRING, - GsonUtils.toJson(msg).toByteArray() - ) - } - startAni() - // 启动查看和司机端链接 - BusPassengerModelLoopManager.setLoopFunction( - TAGLINELOOP, - LoopInfo(3, ::checkServerStatus) - ) - RxUtils.disposeSubscribe(subscribeSelectSite) - subscribeSelectSite = RxUtils.createSubscribe(120_000){ - ToastUtils.showShort("请联系安全员确认") - endAni() - } - } - tv_loading_wait_driver_title.onClick { - endAni() - } - - CallerTelematicListenerManager.addListener(TAG, msgReceived) - CharterPassengerModel.setControllerStatusCallback(TAG) { location -> - location?.let { - gnssSpeed = it.gnssInfo.vehicleSpeed - } - } - tv_switch_line.onClick { - if (gnssSpeed < 0.5) { - // TODO: 自驾中 需要 靠边停车中、到站 - // TODO: 没有自驾中 需要 靠边停车中、到站 - when (CallerAutoPilotStatusListenerManager.getAutoPilotStatusInfo().state) { - IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE -> {// 不可自动驾驶 - // 可以切换路径 - isChangeIngLineAndSite = false - onlyChangeSite(false) - // 可以切换路径 - setEnableLineStatus(true) - setSiteAdapterEnable(false) - queryLineList() - } - IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE -> {// - isChangeIngLineAndSite = false - onlyChangeSite(false) - // 可以切换路径 - setEnableLineStatus(true) - setSiteAdapterEnable(false) - queryLineList() - } - IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING -> { - // 自动驾驶中 - when (OCHPlanningStopSideStatusManager.stopSiteStatus) { - OCHPlanningStopSideStatusManager.Status.EndingSuccess -> { - isChangeIngLineAndSite = false - onlyChangeSite(false) - // 可以切换路径 - setEnableLineStatus(true) - setSiteAdapterEnable(false) - queryLineList() - } - else ->{ - ToastUtils.showShort("自动驾驶中无法切换线路") - } - } - } - IMoGoAutopilotStatusListener.STATUS_PARALLEL_DRIVING -> { - ToastUtils.showShort("因车辆正在平行驾驶中无法切换线路") - } - else -> {} - } - } else { - ToastUtils.showShort("请停车后再修改目的地~") - } - } - } - private fun setSwitchEnable(enable: Boolean){ - tv_switch_line.isEnabled = enable - } - - /** - * 接收司机屏反馈信息 - */ - val msgReceived = object : IReceivedMsgListener { - override fun onReceivedMsg(type: Int, byteArray: ByteArray) { - UiThreadHandler.post { - if (type == OchCommonConst.BUSINESS_STRING) { - val msg = GsonUtils.fromJson( - String(byteArray), - ChangeDestMsg::class.java - ) as ChangeDestMsg - if (msg.type == DPMsgType.TYPE_CHANGE_DEST.type) { - if (msg.destSiteId == 0) { - if (msg.isConfirmed) { - ToastUtils.showShort("线路确定") - setEnableLineStatus(false) - setEnableSiteStatus(true) - onlyChangeSite(false) - setSiteAdapterEnable(true) - setSwitchEnable(false) - tempCheckLineIsSubmit = true - tempCheckLine?.let { - lineAdapter.submitLine(it) - } - } else { - tempCheckLineIsSubmit = false - ToastUtils.showShort("司机端拒绝请重新选择") - } - RxUtils.disposeSubscribe(subscribeSelectLine) - } else { - if (msg.isConfirmed) { - ToastUtils.showShort("站点确定") - setEnableLineStatus(false) - setEnableSiteStatus(true) - onlyChangeSite(false) - setSiteAdapterEnable(true) - setSwitchEnable(true) - checkLine = tempCheckLine - checkSite = tempCheckSite - tempCheckLine = null - tempCheckSite = null - tempCheckLineIsSubmit = false - checkLine?.let { - lineAdapter.submitLine(it) - } - go2StartCar() - CharterPassengerModel.queryOrder() - CharterPassengerModel.cleanbroadcastListInfo() - } else { - tempCheckLineIsSubmit = true - ToastUtils.showShort("司机端拒绝请重新选择") - } - RxUtils.disposeSubscribe(subscribeSelectSite) - } - BusPassengerModelLoopManager.removeLoopFunction(TAGLINELOOP) - endAni() - } - } - } - } - } - - private fun go2StartCar() { - changeCheck?.changeChange() - } - - fun setchangeCheck(changeCheck: M1ContainFragment.ChangeCheck?){ - this.changeCheck = changeCheck - } - - private fun startAni() { - g_lines_sites_data.visibility = View.GONE - g_loading_group.visibility = View.VISIBLE - if (!loadingAni.isRunning) { - loadingAni.start() - } - } - - private fun endAni() { - UiThreadHandler.post { - g_lines_sites_data.visibility = View.VISIBLE - g_loading_group.visibility = View.GONE - } - } - - override fun onDetachedFromWindow() { - super.onDetachedFromWindow() - loadingAni.cancel() - RxUtils.disposeSubscribe(subscribeSelectLine) - RxUtils.disposeSubscribe(subscribeSelectSite) - CallerTelematicListenerManager.removeListener(TAG) - BusPassengerModelLoopManager.removeLoopFunction(TAGLINELOOP) - CharterPassengerModel.setControllerStatusCallback(TAG, null) - - } - - private fun queryLineList() { - BusPassengerServiceManager.queryLineList(context, object : - OchCommonServiceCallback { - override fun onSuccess(data: LineInfoListResponse?) { - if (data?.data == null) return - lineAdapter.setDataList(data.data) - } - - override fun onFail(code: Int, msg: String) { - ToastUtils.showShort("查询线路失败") - } - }) - } - - private fun checkServerStatus() { - if (!CallerTelematicManager.getClientConnStatus()) { - ToastUtils.showShort("断开和司机端连接、请联系安全员") - BusPassengerModelLoopManager.removeLoopFunction(TAGLINELOOP) - endAni() - } - } - - private fun querySitesByLineId(lineId: String,isSelect:Boolean) { - BusPassengerServiceManager.queryLineSiteList( - context, - lineId, - object : OchCommonServiceCallback { - override fun onSuccess(data: SiteInfoResponse?) { - if (data?.data == null) return - siteAdapter.setDataList(data.data) - if (data.data.isNotEmpty()) { - // 计算当前站点是那个 - val calculateCurrentSite = - CharterPassengerModel.calculateCurrentSite(data.data) - val first = calculateCurrentSite.first// 可用站点 - if(first<0){ - // 所有站点不可用 - currentSite = data.data[data.data.size-1] - currentSite!!.isNear = calculateCurrentSite.second - siteAdapter.setEnableIndex(data.data.size-1) - }else{ - // - val index = if(first==0) { - 0 - }else if (first <= data.data.size-1) { - first-1 - } else { - data.data.size - 1 - } - currentSite = data.data[index] - currentSite!!.isNear = calculateCurrentSite.second - siteAdapter.setEnableIndex(index) - } - if(isSelect){ - data.data.last().isCheck = true - tempCheckSite = data.data.last() - }else{ - data.data.forEach { - if (it.siteId == checkSite?.siteId) { - it.isCheck = true - } - } - } - } - } - - override fun onFail(code: Int, msg: String?) { - ToastUtils.showShort("查询站点失败") - } - }) - } -} \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_order_fragment.xml b/OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_order_fragment.xml deleted file mode 100644 index 4e300c8f82..0000000000 --- a/OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_order_fragment.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_order_lineside.xml b/OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_order_lineside.xml deleted file mode 100644 index 79dcb8acb4..0000000000 --- a/OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_order_lineside.xml +++ /dev/null @@ -1,238 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/m1/assets/m1_style.data b/OCH/mogo-och-charter-passenger/src/main/assets/m1_style.data similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/assets/m1_style.data rename to OCH/mogo-och-charter-passenger/src/main/assets/m1_style.data diff --git a/OCH/mogo-och-charter-passenger/src/m1/assets/m1_style_extra.data b/OCH/mogo-och-charter-passenger/src/main/assets/m1_style_extra.data similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/assets/m1_style_extra.data rename to OCH/mogo-och-charter-passenger/src/main/assets/m1_style_extra.data diff --git a/OCH/mogo-och-charter-passenger/src/main/assets/map_style.data b/OCH/mogo-och-charter-passenger/src/main/assets/map_style.data deleted file mode 100644 index ab077f9849..0000000000 Binary files a/OCH/mogo-och-charter-passenger/src/main/assets/map_style.data and /dev/null differ diff --git a/OCH/mogo-och-charter-passenger/src/main/assets/map_style_extra.data b/OCH/mogo-och-charter-passenger/src/main/assets/map_style_extra.data deleted file mode 100644 index 01f7f2116e..0000000000 Binary files a/OCH/mogo-och-charter-passenger/src/main/assets/map_style_extra.data and /dev/null differ diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/LoopInfo.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/LoopInfo.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/LoopInfo.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/LoopInfo.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/TaxiPassengerVideoPlay.java b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/TaxiPassengerVideoPlay.java similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/TaxiPassengerVideoPlay.java rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/TaxiPassengerVideoPlay.java diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/Temperature.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/Temperature.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/Temperature.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/Temperature.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/request/ArriveDestRequest.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/request/ArriveDestRequest.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/request/ArriveDestRequest.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/request/ArriveDestRequest.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/request/BusPassengerQueryLineRequest.java b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/request/BusPassengerQueryLineRequest.java similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/request/BusPassengerQueryLineRequest.java rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/request/BusPassengerQueryLineRequest.java diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/request/EndOrderRequest.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/request/EndOrderRequest.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/request/EndOrderRequest.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/request/EndOrderRequest.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/response/BusinessStatusResponse.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/response/BusinessStatusResponse.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/response/BusinessStatusResponse.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/response/BusinessStatusResponse.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/response/BusinessTimeResponse.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/response/BusinessTimeResponse.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/response/BusinessTimeResponse.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/response/BusinessTimeResponse.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/response/LineInfoListResponse.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/response/LineInfoListResponse.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/response/LineInfoListResponse.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/response/LineInfoListResponse.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/response/LineInfoResponse.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/response/LineInfoResponse.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/response/LineInfoResponse.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/response/LineInfoResponse.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/response/LocusResponse.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/response/LocusResponse.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/response/LocusResponse.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/response/LocusResponse.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/response/M1DriverLoginStatusResponse.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/response/M1DriverLoginStatusResponse.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/response/M1DriverLoginStatusResponse.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/response/M1DriverLoginStatusResponse.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/response/OrderInfoResponse.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/response/OrderInfoResponse.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/response/OrderInfoResponse.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/response/OrderInfoResponse.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/response/SiteInfoResponse.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/response/SiteInfoResponse.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/bean/response/SiteInfoResponse.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/response/SiteInfoResponse.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/callback/IBusPassengerADASStatusCallback.java b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/callback/IBusPassengerADASStatusCallback.java similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/callback/IBusPassengerADASStatusCallback.java rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/callback/IBusPassengerADASStatusCallback.java diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/callback/IBusPassengerControllerStatusCallback.java b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/callback/IBusPassengerControllerStatusCallback.java similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/callback/IBusPassengerControllerStatusCallback.java rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/callback/IBusPassengerControllerStatusCallback.java diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/callback/IDistanceTimeCallback.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/callback/IDistanceTimeCallback.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/callback/IDistanceTimeCallback.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/callback/IDistanceTimeCallback.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/callback/IOrderChangeCallback.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/callback/IOrderChangeCallback.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/callback/IOrderChangeCallback.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/callback/IOrderChangeCallback.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/model/CharterPassengerModel.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/model/CharterPassengerModel.kt similarity index 89% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/model/CharterPassengerModel.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/model/CharterPassengerModel.kt index 412c5e52ee..ed92ee8407 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/model/CharterPassengerModel.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/model/CharterPassengerModel.kt @@ -3,7 +3,6 @@ package com.mogo.och.bus.passenger.model import android.annotation.SuppressLint import android.content.Context import android.net.ConnectivityManager -import android.os.Build import com.mogo.commons.AbsMogoApplication import com.mogo.commons.module.intent.IMogoIntentListener import com.mogo.commons.module.intent.IntentManager @@ -565,13 +564,11 @@ object CharterPassengerModel { } } iDistanceTimeCallback?.setOrderTimeCallBack(-1) + iDistanceTimeCallback?.setDistancecAndTime(-1,-1) }else{ iDistanceTimeCallback?.setOrderTimeCallBack(millisUntilFinished) } - CallerLogger.d( - M_BUS_P + TAG, - "倒计时${millisUntilFinished}" - ) + CallerLogger.d(M_BUS_P + TAG, "订单倒计时${millisUntilFinished}") } } } @@ -625,95 +622,55 @@ object CharterPassengerModel { private fun calculateDistance() { //mLocation gcj坐标 mLocationGCJ02?.let { - var lastSumLength = 0f orderInfo?.let { order -> // 启动轨迹计算 - //当前站在轨迹中对应的点 - val currentRouteIndex = CoordinateCalculateRouteUtil.getArrivedPointIndexNew( - 0, mRoutePoints, it.longitude, it.latitude - ) - var nextRouteIndex: Int = mRoutePoints.size - 1 - + var lastSumLength = 0f val orderLonLat = CoordinateCalculateRouteUtil.coordinateConverterWgsToGcj( mContext, order.wgs84Lon!!, order.wgs84Lat!! ) - //要前往的站在轨迹中对应的点 - nextRouteIndex = CoordinateCalculateRouteUtil.getArrivedPointIndexNew( - currentRouteIndex, mRoutePoints, + val mogoLocation = MogoLocation() + mogoLocation.longitude = orderLonLat.longitude + mogoLocation.latitude = orderLonLat.latitude + + lastSumLength = CoordinateUtils.calculateLineDistance( orderLonLat.longitude, - orderLonLat.latitude + orderLonLat.latitude, + mogoLocation.longitude, + mogoLocation.latitude ) - // 距离站点最近的轨迹点 - val lastPoints = mRoutePoints.get(nextRouteIndex) - // 站点距离最近点的距离 - val calculateLineDistance = CoordinateUtils.calculateLineDistance( - lastPoints.longitude, lastPoints.latitude, - orderLonLat.longitude, orderLonLat.latitude - ) - if (currentRouteIndex < nextRouteIndex) { - // subList 是[) 需要的是[] - val subList = mRoutePoints.subList(currentRouteIndex, nextRouteIndex + 1) - // 轨迹点所有的距离 - val middlePoingDistancee = - CoordinateCalculateRouteUtil.calculateRouteSumLength(subList) - - // 需要加距离 和下一个轨迹点成钝角 - if (nextRouteIndex + 1 < mRoutePoints.size) { - val lastPointsNext = mRoutePoints.get(nextRouteIndex + 1) - val degree = CoordinateCalculateRouteUtil.getDegree( - orderLonLat.longitude,orderLonLat.latitude, - lastPoints.longitude, lastPoints.latitude, - lastPointsNext.longitude, lastPointsNext.latitude, + if(lastSumLength>100) { + // 计算距离 + lastSumLength = + CoordinateCalculateRouteUtil.calculateRouteSumLength( + mRoutePoints, + it, + mogoLocation ) - if (degree > 90) { - lastSumLength = middlePoingDistancee + calculateLineDistance - } - } - // 需要减距离 和上一个轨迹点成钝角 - if (nextRouteIndex - 1 >= 0) { - val lastPointsPre = mRoutePoints.get(nextRouteIndex - 1) - val degree = CoordinateCalculateRouteUtil.getDegree( - orderLonLat.longitude,orderLonLat.latitude, - lastPoints.longitude, lastPoints.latitude, - lastPointsPre.longitude, lastPointsPre.latitude, - ) - if (degree > 90) { - lastSumLength = middlePoingDistancee - calculateLineDistance - } - } - - } else { - val lastPoints = mRoutePoints.get(nextRouteIndex) - lastSumLength = CoordinateUtils.calculateLineDistance( - lastPoints.longitude, lastPoints.latitude, - it.longitude, it.latitude - ) } - // 距离小于100m 直接计算当前位置距离站点的距离 - if(lastSumLength<=100){ - lastSumLength = CoordinateUtils.calculateLineDistance( - orderLonLat.longitude, - orderLonLat.latitude, - it.longitude, - it.latitude + + val lastTime: Double = lastSumLength / it.gnssSpeed * 3.6 //秒 + + CallerLogger.d(M_BUS_P + "calculateDistance", + "---lastSumLength: " + lastSumLength + "----lastTime : " + lastTime + + " thread = " + Thread.currentThread().name + ) + if (lastSumLength < CharterPassengerConst.ARRIVE_AT_START_STATION_DISTANCE) { + CallerLogger.d(M_BUS_P + TAG,"小于15米到站2") + arriveDest() + return + } + if(order.arriveStatus==OrderInfoResponse.ARRIVING) { + iDistanceTimeCallback?.setDistancecAndTime( + lastSumLength.toLong(), + lastTime.toLong() ) + }else{ + iDistanceTimeCallback?.setDistancecAndTime(-1, -1) } } - val lastTime: Double = lastSumLength / Charter_AVERAGE_SPEED * 3.6 //秒 - - CallerLogger.d( - SceneConstant.M_BUS_P + "calculateDistance", - "---lastSumLength: " + lastSumLength + "----lastTime : " + lastTime - + " thread = " + Thread.currentThread().name - ) - if (lastSumLength < CharterPassengerConst.ARRIVE_AT_START_STATION_DISTANCE) { - CallerLogger.d(SceneConstant.M_BUS_P + TAG,"小于15米到站2") - arriveDest() - } - iDistanceTimeCallback?.setDistancecAndTime(lastSumLength.toLong(), lastTime.toLong()) } } // endregion @@ -870,7 +827,7 @@ object CharterPassengerModel { // 结束路距计算 endCalculateDistanceLoop() // 到站置距离位0 - iDistanceTimeCallback?.setOrderTimeCallBack(-1) + iDistanceTimeCallback?.setDistancecAndTime(-1,-1) } } diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/model/OrderStatusEnum.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/model/OrderStatusEnum.kt new file mode 100644 index 0000000000..cda47e3c88 --- /dev/null +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/model/OrderStatusEnum.kt @@ -0,0 +1,21 @@ +package com.mogo.och.bus.passenger.model + +/** + * Created on 2022/08/19 + * + * + * 0 初始状态, + * 10 已登录, + * 20 已登出, + */ +enum class OrderStatusEnum() { + Nothing(), + NoOrderUnuse(), //无订单车闲置 m1_order_noorder.xml 无订单页面 + OrderNoLine(), //有订单无线路 m1_order_lineside 选择线路页面 + OrdersWithLine(), //有订单有线路 m1_order_lineside 选择线路页面隐藏掉确定取消 + NoOrderUse(),; //无订单车不闲置 m1_order_end.xml 开门关门页面 +} + +interface IOrderStatusChangeListener { + fun onStatusChange(currentStatus:OrderStatusEnum) +} \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/net/BusPassengerModelLoopManager.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/net/BusPassengerModelLoopManager.kt similarity index 96% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/net/BusPassengerModelLoopManager.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/net/BusPassengerModelLoopManager.kt index 4c1985ad4e..73cf0172f0 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/net/BusPassengerModelLoopManager.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/net/BusPassengerModelLoopManager.kt @@ -4,7 +4,7 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS_P import com.mogo.och.bus.passenger.bean.LoopInfo import com.mogo.och.bus.passenger.constant.CharterPassengerConst -import com.mogo.och.bus.passenger.utils.RxUtils +import com.mogo.och.common.module.utils.RxUtils import io.reactivex.Observable import io.reactivex.disposables.Disposable import io.reactivex.schedulers.Schedulers @@ -71,6 +71,7 @@ object BusPassengerModelLoopManager { loopInfo.function.invoke() CallerLogger.d(TAG, "${aLong}正在执行方法${tag}") }catch (e:Throwable){ + e.printStackTrace() CallerLogger.e(TAG,"$tag:--$e") } } diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/net/BusPassengerServiceManager.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/net/BusPassengerServiceManager.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/net/BusPassengerServiceManager.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/net/BusPassengerServiceManager.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/net/PassengerServiceApi.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/net/PassengerServiceApi.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/net/PassengerServiceApi.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/net/PassengerServiceApi.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusBasePassengerFunctionDevicePresenter.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusBasePassengerFunctionDevicePresenter.kt similarity index 94% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusBasePassengerFunctionDevicePresenter.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusBasePassengerFunctionDevicePresenter.kt index 88290a678d..1596ef34b0 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusBasePassengerFunctionDevicePresenter.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusBasePassengerFunctionDevicePresenter.kt @@ -4,7 +4,7 @@ import androidx.lifecycle.LifecycleOwner import com.mogo.commons.mvp.IView import com.mogo.commons.mvp.Presenter import com.mogo.och.bus.passenger.model.CharterPassengerModel -import com.mogo.och.bus.passenger.utils.RxUtils +import com.mogo.och.common.module.utils.RxUtils import io.reactivex.disposables.Disposable abstract class BusBasePassengerFunctionDevicePresenter(view: V) : diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerCarUseAndNoOrderPresenter.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerCarUseAndNoOrderPresenter.kt new file mode 100644 index 0000000000..4061a63b90 --- /dev/null +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerCarUseAndNoOrderPresenter.kt @@ -0,0 +1,19 @@ +package com.mogo.och.bus.passenger.presenter + +import androidx.lifecycle.LifecycleOwner +import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager +import com.mogo.eagle.core.utilcode.util.ToastUtils +import com.mogo.och.bus.passenger.model.CharterPassengerModel +import com.mogo.och.bus.passenger.ui.M1CarUserNoOrderFragment +import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorCallback +import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorStatusManager +import io.reactivex.disposables.Disposable + +class BusPassengerCarUseAndNoOrderPresenter(view: M1CarUserNoOrderFragment?) : + BusBasePassengerFunctionDevicePresenter(view){ + companion object { + private const val TAG = "BusPassengerFunctionPresenter" + } + + +} \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionDevicePresenter.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionDevicePresenter.kt new file mode 100644 index 0000000000..86dbf5b2f5 --- /dev/null +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionDevicePresenter.kt @@ -0,0 +1,29 @@ +package com.mogo.och.bus.passenger.presenter + +import androidx.lifecycle.LifecycleOwner +import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener +import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager +import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager +import com.mogo.eagle.core.utilcode.util.ToastUtils +import com.mogo.och.bus.passenger.model.CharterPassengerModel +import com.mogo.och.bus.passenger.ui.M1DeviceFragment +import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorCallback +import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorStatusManager +import io.reactivex.disposables.Disposable + +class BusPassengerFunctionDevicePresenter(view: M1DeviceFragment?) : + BusBasePassengerFunctionDevicePresenter(view) { + + companion object { + private const val TAG = "BusPassengerFunctionDevicePresenter" + } + + override fun onCreate(owner: LifecycleOwner) { + super.onCreate(owner) + } + + override fun onDestroy(owner: LifecycleOwner) { + super.onDestroy(owner) + } + +} \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionEarlyEndOrderPresenter.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionEarlyEndOrderPresenter.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionEarlyEndOrderPresenter.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionEarlyEndOrderPresenter.kt diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionOrderPresenter.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionOrderPresenter.kt new file mode 100644 index 0000000000..e2dbba7242 --- /dev/null +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionOrderPresenter.kt @@ -0,0 +1,452 @@ +package com.mogo.och.bus.passenger.presenter + +import androidx.lifecycle.LifecycleOwner +import com.elegant.utils.UiThreadHandler +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.CallerAutoPilotStatusListenerManager +import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager +import com.mogo.eagle.core.function.call.telematic.CallerTelematicListenerManager +import com.mogo.eagle.core.function.call.telematic.CallerTelematicManager +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger +import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant +import com.mogo.eagle.core.utilcode.util.GsonUtils +import com.mogo.eagle.core.utilcode.util.ToastUtils +import com.mogo.och.bus.passenger.bean.LoopInfo +import com.mogo.och.bus.passenger.bean.response.LineInfoListResponse +import com.mogo.och.bus.passenger.bean.response.LineInfoResponse +import com.mogo.och.bus.passenger.bean.response.SiteInfoResponse +import com.mogo.och.bus.passenger.model.CharterPassengerModel +import com.mogo.och.bus.passenger.model.IOrderStatusChangeListener +import com.mogo.och.bus.passenger.model.OrderStatusEnum +import com.mogo.och.bus.passenger.net.BusPassengerModelLoopManager +import com.mogo.och.bus.passenger.net.BusPassengerServiceManager +import com.mogo.och.bus.passenger.ui.M1OrderFragment +import com.mogo.och.common.module.bean.dpmsg.ChangeDestMsg +import com.mogo.och.common.module.bean.dpmsg.DPMsgType +import com.mogo.och.common.module.biz.constant.OchCommonConst +import com.mogo.och.common.module.biz.network.OchCommonServiceCallback +import com.mogo.och.common.module.manager.OCHPlanningStopSideStatusManager +import com.mogo.och.common.module.utils.RxUtils +import io.reactivex.disposables.Disposable + +class BusPassengerFunctionOrderPresenter(view: M1OrderFragment?) : + BusBasePassengerFunctionDevicePresenter(view), IOrderStatusChangeListener { + + companion object{ + + const val TAGLINELOOP = "LineSiteViewLineLoop" + const val TAG = "BusPassengerFunctionOrderPresenter" + } + + // 成功提交给后台得线路 + private var checkLine: LineInfoResponse.LineInfo? = null + + // 成功提交给后台得终点站点 + private var checkSite: SiteInfoResponse.SiteInfo? = null + + // 下一个站点 + private var currentSite: SiteInfoResponse.SiteInfo? = null + + // 向司机端端提交的临时线路 + private var tempCheckLine: LineInfoResponse.LineInfo? = null + + // 向司机端临时提交的终点站点 + private var tempCheckSite: SiteInfoResponse.SiteInfo? = null + + private var tempCheckLineIsSubmit = false + private var isChangeIngLineAndSite = false + + + + private var subscribeSelectLine: Disposable? = null + private var subscribeSelectSite: Disposable? = null + + override fun onCreate(owner: LifecycleOwner) { + super.onCreate(owner) + CharterPassengerModel.setStatusChangeListener(TAG,this) + CallerTelematicListenerManager.addListener(TAG, msgReceived) + + val hasSetLineAndSite = CharterPassengerModel.hasSetLineAndSite() + if (hasSetLineAndSite != null) {// 已经设置了线路和站点 + checkLine = hasSetLineAndSite.first + checkSite = hasSetLineAndSite.second + resetData() + } else { + queryLineList() + mView?.setEnableLineStatus(true) + mView?.setEnableSiteStatus(false) + mView?.onlyChangeSite(false) + mView?.setSiteAdapterEnable(false) + mView?.setSwitchEnable(false) + isChangeIngLineAndSite = false + } + } + + fun lineReset(){ + resetData() + tempCheckLine = null + } + fun siteReset(){ + resetData() + tempCheckLine = null + tempCheckSite = null + } + + /** + * 重置数据 + */ + fun resetData() { + if(checkLine==null){// 没有提交线路 + queryLineList() + mView?.setEnableLineStatus(true) + mView?.setEnableSiteStatus(false) + mView?.onlyChangeSite(false) + mView?.setSiteAdapterEnable(false) + }else{ + checkLine?.let { + mView?.setEnableLineStatus(false) + mView?.setEnableSiteStatus(false) + mView?.onlyChangeSite(false) + mView?.setSiteAdapterEnable(true) + isChangeIngLineAndSite = true + mView?.lineAdapterSubmit(it) + checkLine?.let { + querySitesByLineId(it.lineId.toString(),false) + } + } + } + } + + private fun querySitesByLineId(lineId: String,isSelect:Boolean) { + BusPassengerServiceManager.queryLineSiteList( + context, + lineId, + object : OchCommonServiceCallback { + override fun onSuccess(data: SiteInfoResponse?) { + if (data?.data == null) return + mView?.siteAdapterSetData(data.data) + if (data.data.isNotEmpty()) { + // 计算当前站点是那个 + val calculateCurrentSite = + CharterPassengerModel.calculateCurrentSite(data.data) + val first = calculateCurrentSite.first// 可用站点 + if(first<0){ + // 所有站点不可用 + currentSite = data.data[data.data.size-1] + currentSite!!.isNear = calculateCurrentSite.second + mView?.siteAdapterEnableIndex(data.data.size-1) + }else{ + // + val index = if(first==0) { + 0 + }else if (first <= data.data.size-1) { + first-1 + } else { + data.data.size - 1 + } + currentSite = data.data[index] + currentSite!!.isNear = calculateCurrentSite.second + mView?.siteAdapterEnableIndex(index) + } + if(isSelect){ + data.data.last().isCheck = true + tempCheckSite = data.data.last() + }else{ + data.data.forEach { + if (it.siteId == checkSite?.siteId) { + it.isCheck = true + } + } + } + } + } + + override fun onFail(code: Int, msg: String?) { + ToastUtils.showShort("查询站点失败") + } + }) + } + + private fun queryLineList() { + BusPassengerServiceManager.queryLineList(context, object : + OchCommonServiceCallback { + override fun onSuccess(data: LineInfoListResponse?) { + if (data?.data == null) return + mView?.lineAdapterSetData(data.data) + } + + override fun onFail(code: Int, msg: String) { + ToastUtils.showShort("查询线路失败") + } + }) + } + + override fun onResume(owner: LifecycleOwner) { + super.onResume(owner) + mView?.setViewByOrderStatus(CharterPassengerModel.getCurrentOrderStatus()) + } + + override fun onDestroy(owner: LifecycleOwner) { + super.onDestroy(owner) + CallerLogger.d(SceneConstant.M_BUS_P + TAG, "onDestroy") + RxUtils.disposeSubscribe(subscribeSelectLine) + RxUtils.disposeSubscribe(subscribeSelectSite) + BusPassengerModelLoopManager.removeLoopFunction(TAGLINELOOP) + CharterPassengerModel.setStatusChangeListener(TAG,null) + CallerTelematicListenerManager.removeListener(TAG) + } + + /** + * 接收司机屏反馈信息 + */ + val msgReceived = object : IReceivedMsgListener { + override fun onReceivedMsg(type: Int, byteArray: ByteArray) { + UiThreadHandler.post { + if (type == OchCommonConst.BUSINESS_STRING) { + val msg = GsonUtils.fromJson( + String(byteArray), + ChangeDestMsg::class.java + ) as ChangeDestMsg + if (msg.type == DPMsgType.TYPE_CHANGE_DEST.type) { + if (msg.destSiteId == 0) { + if (msg.isConfirmed) { + ToastUtils.showShort("线路确定") + mView?.setEnableLineStatus(false) + mView?.setEnableSiteStatus(true) + mView?.onlyChangeSite(false) + mView?.setSiteAdapterEnable(true) + mView?.setSwitchEnable(false) + tempCheckLineIsSubmit = true + tempCheckLine?.let { + mView?.lineAdapterSubmit(it) + } + } else { + tempCheckLineIsSubmit = false + ToastUtils.showShort("司机端拒绝请重新选择") + } + RxUtils.disposeSubscribe(subscribeSelectLine) + mView?.endAni() + CallerLogger.d(SceneConstant.M_BUS_P + TAG, "endAni1111") + } else { + if (msg.isConfirmed) { + ToastUtils.showShort("站点确定") + mView?.setEnableLineStatus(false) + mView?.setEnableSiteStatus(true) + mView?.onlyChangeSite(false) + mView?.setSiteAdapterEnable(true) + mView?.setSwitchEnable(true) + checkLine = tempCheckLine + checkSite = tempCheckSite + tempCheckLine = null + tempCheckSite = null + tempCheckLineIsSubmit = false + checkLine?.let { + mView?.lineAdapterSubmit(it) + } + mView?.go2StartCar() + CharterPassengerModel.queryOrder() + CharterPassengerModel.cleanbroadcastListInfo() + } else { + tempCheckLineIsSubmit = true + ToastUtils.showShort("司机端拒绝请重新选择") + } + RxUtils.disposeSubscribe(subscribeSelectSite) + } + BusPassengerModelLoopManager.removeLoopFunction(TAGLINELOOP) + } + } + } + } + } + + fun lineSubmit(){ + if (tempCheckLine == null) { + ToastUtils.showLong("请选择线路") + return + } + if (!CallerTelematicManager.getClientConnStatus()) { + ToastUtils.showLong("乘客屏无法连接司机屏请联系安全员") + return + } + tempCheckLine?.let { + val msg = ChangeDestMsg( + it.lineId!!.toInt(), + it.name!!, + 0, + "", + 0, + "", + false + ) + CallerTelematicManager.sendMsgToServer( + OchCommonConst.BUSINESS_STRING, + GsonUtils.toJson(msg).toByteArray() + ) + mView?.startAni() + // 启动查看和司机端链接 + BusPassengerModelLoopManager.setLoopFunction( + TAGLINELOOP, + LoopInfo(3, ::checkServerStatus) + ) + RxUtils.disposeSubscribe(subscribeSelectLine) + subscribeSelectLine= RxUtils.createSubscribe(120_000){ + ToastUtils.showShort("请联系安全员确认") + mView?.endAni() + CallerLogger.d(SceneConstant.M_BUS_P + TAG, "endAni3333") + } + } + } + + fun siteSubmit(){ + if (!tempCheckLineIsSubmit) { + ToastUtils.showLong("请选择站点") + return + } + if (!CallerTelematicManager.getClientConnStatus()) { + ToastUtils.showLong("乘客屏无法连接司机屏请联系安全员") + return + } + tempCheckSite?.let { lineInfo -> + tempCheckSite?.let { siteInfo -> + val msg = ChangeDestMsg( + lineInfo.lineId!!.toInt(), + lineInfo.lineName!!, + currentSite!!.siteId!!.toInt(), + currentSite!!.siteName!!, + siteInfo.siteId!!.toInt(), + siteInfo.siteName!!, + false + ) + CallerTelematicManager.sendMsgToServer( + OchCommonConst.BUSINESS_STRING, + GsonUtils.toJson(msg).toByteArray() + ) + } + mView?.startAni() + // 启动查看和司机端链接 + BusPassengerModelLoopManager.setLoopFunction( + TAGLINELOOP, + LoopInfo(3, ::checkServerStatus) + ) + RxUtils.disposeSubscribe(subscribeSelectSite) + subscribeSelectSite = RxUtils.createSubscribe(120_000){ + ToastUtils.showShort("请联系安全员确认") + mView?.endAni() + CallerLogger.d(SceneConstant.M_BUS_P + TAG, "endAni444") + } + } + } + + fun onlySiteSubmit(){ + tempCheckSite?.let { siteInfo -> + val msg = ChangeDestMsg( + siteInfo.lineId!!.toInt(), + siteInfo.lineName!!, + currentSite!!.siteId!!.toInt(), + currentSite!!.siteName!!, + siteInfo.siteId!!.toInt(), + siteInfo.siteName!!, + false + ) + CallerTelematicManager.sendMsgToServer( + OchCommonConst.BUSINESS_STRING, + GsonUtils.toJson(msg).toByteArray() + ) + } + mView?.startAni() + // 启动查看和司机端链接 + BusPassengerModelLoopManager.setLoopFunction( + TAGLINELOOP, + LoopInfo(3, ::checkServerStatus) + ) + RxUtils.disposeSubscribe(subscribeSelectSite) + subscribeSelectSite = RxUtils.createSubscribe(120_000){ + ToastUtils.showShort("请联系安全员确认") + mView?.endAni() + CallerLogger.d(SceneConstant.M_BUS_P + TAG, "endAni555") + + } + } + private fun checkServerStatus() { + if (!CallerTelematicManager.getClientConnStatus()) { + ToastUtils.showShort("断开和司机端连接、请联系安全员") + BusPassengerModelLoopManager.removeLoopFunction(TAGLINELOOP) + mView?.endAni() + CallerLogger.d(SceneConstant.M_BUS_P + TAG, "endAni666") + } + } + + override fun onStatusChange(currentStatus: OrderStatusEnum) { + mView?.setViewByOrderStatus(currentStatus) + } + + fun switchLine() { + val gnssSpeed = + CallerChassisLocationGCJ02ListenerManager.getChassisLocationGCJ02().gnssSpeed + if (gnssSpeed < 0.5) { + // TODO: 自驾中 需要 靠边停车中、到站 + // TODO: 没有自驾中 需要 靠边停车中、到站 + when (CallerAutoPilotStatusListenerManager.getAutoPilotStatusInfo().state) { + IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE -> {// 不可自动驾驶 + // 可以切换路径 + isChangeIngLineAndSite = false + mView?.onlyChangeSite(false) + // 可以切换路径 + mView?.setEnableLineStatus(true) + mView?.setSiteAdapterEnable(false) + queryLineList() + } + IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE -> {// + isChangeIngLineAndSite = false + mView?.onlyChangeSite(false) + // 可以切换路径 + mView?.setEnableLineStatus(true) + mView?.setSiteAdapterEnable(false) + queryLineList() + } + IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING -> { + // 自动驾驶中 + when (OCHPlanningStopSideStatusManager.stopSiteStatus) { + OCHPlanningStopSideStatusManager.Status.EndingSuccess -> { + isChangeIngLineAndSite = false + mView?.onlyChangeSite(false) + // 可以切换路径 + mView?.setEnableLineStatus(true) + mView?.setSiteAdapterEnable(false) + queryLineList() + } + else ->{ + ToastUtils.showShort("自动驾驶中无法切换线路") + } + } + } + IMoGoAutopilotStatusListener.STATUS_PARALLEL_DRIVING -> { + ToastUtils.showShort("因车辆正在平行驾驶中无法切换线路") + } + else -> {} + } + } else { + ToastUtils.showShort("请停车后再修改目的地~") + } + } + + fun checkLineClick(lineInfo: LineInfoResponse.LineInfo) { + tempCheckLine = lineInfo + querySitesByLineId(lineInfo.lineId.toString(),true) + } + + fun checkSiteClick(siteInfo: SiteInfoResponse.SiteInfo) { + tempCheckSite = siteInfo + if(isChangeIngLineAndSite) { + checkSite?.let { + if (it.siteId == siteInfo.siteId) { + mView?.onlyChangeSite(false) + } else { + mView?.onlyChangeSite(true) + } + } + } + } + +} \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionPresenter.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionPresenter.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionPresenter.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionPresenter.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionSoftPresenter.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionSoftPresenter.kt similarity index 76% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionSoftPresenter.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionSoftPresenter.kt index c5f1600d00..44fbc001b9 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionSoftPresenter.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionSoftPresenter.kt @@ -7,12 +7,16 @@ import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.eagle.core.utilcode.util.ToastUtils import com.mogo.eagle.core.utilcode.util.UiThreadHandler import com.mogo.och.bus.passenger.ui.M1SoftFragment -import com.mogo.och.common.module.manager.OCHM1LightAirconditionDoorStatusManager +import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorCallback +import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorStatusManager +import com.mogo.och.common.module.manager.devicemanage.data.AirconditionStatus +import com.mogo.och.common.module.manager.devicemanage.data.HeaterStatue +import com.mogo.och.common.module.manager.devicemanage.data.LightStatus import io.reactivex.disposables.Disposable class BusPassengerFunctionSoftPresenter(view: M1SoftFragment?) : BusBasePassengerFunctionDevicePresenter(view), - OCHM1LightAirconditionDoorStatusManager.OCHM1LightAirconditionDoorCallback { + LightAirconditionDoorCallback { companion object { private const val TAG = "BusPassengerFunctionSoftPresenter" } @@ -26,23 +30,23 @@ class BusPassengerFunctionSoftPresenter(view: M1SoftFragment?) : override fun onCreate(owner: LifecycleOwner) { super.onCreate(owner) - OCHM1LightAirconditionDoorStatusManager.addListener(TAG, this) + LightAirconditionDoorStatusManager.addListener(TAG, this) } override fun onDestroy(owner: LifecycleOwner) { super.onDestroy(owner) - OCHM1LightAirconditionDoorStatusManager.removeListener(TAG) + LightAirconditionDoorStatusManager.removeListener(TAG) } /** * 空调状态变化 */ - override fun onAirconditionStatusCallback(heaterIsOpen: Boolean,airconditionStatus: OCHM1LightAirconditionDoorStatusManager.AirconditionStatus,isFirst: Boolean) { + override fun onAirconditionStatusCallback(heaterIsOpen: Boolean, airconditionStatus: AirconditionStatus, isFirst: Boolean) { CallerLogger.d(SceneConstant.M_BUS_P + TAG, - "回写--空调开关:${OCHM1LightAirconditionDoorStatusManager.airconditionStatus.isOpen}、" + - "空调温度:${OCHM1LightAirconditionDoorStatusManager.airconditionStatus.temperature}" + - "空调模式:${OCHM1LightAirconditionDoorStatusManager.airconditionStatus.pattert}" + - "空调风速:${OCHM1LightAirconditionDoorStatusManager.airconditionStatus.windSpeed}") + "回写--空调开关:${LightAirconditionDoorStatusManager.airconditionStatus.isOpen}、" + + "空调温度:${LightAirconditionDoorStatusManager.airconditionStatus.temperature}" + + "空调模式:${LightAirconditionDoorStatusManager.airconditionStatus.pattert}" + + "空调风速:${LightAirconditionDoorStatusManager.airconditionStatus.windSpeed}") UiThreadHandler.post { if(airconditionStatus.isOpen){ mView?.setAirconditionHeaterView( @@ -66,7 +70,7 @@ class BusPassengerFunctionSoftPresenter(view: M1SoftFragment?) : /** * 暖风机状态变化 */ - override fun onHeaterStatusCallback(airconditionIsOpen:Boolean,heaterStatue: OCHM1LightAirconditionDoorStatusManager.HeaterStatue,isFirst: Boolean) { + override fun onHeaterStatusCallback(airconditionIsOpen:Boolean, heaterStatue: HeaterStatue, isFirst: Boolean) { CallerLogger.d(SceneConstant.M_BUS_P + TAG, "回写--暖风机开关:${heaterStatue.isOpen}、" + "风速:${heaterStatue.windSpeed}") @@ -93,7 +97,7 @@ class BusPassengerFunctionSoftPresenter(view: M1SoftFragment?) : /** * 灯状态变化 */ - override fun onLightTop1Callback(lightStatus: OCHM1LightAirconditionDoorStatusManager.LightStatus,isFirst: Boolean) { + override fun onLightTop1Callback(lightStatus: LightStatus, isFirst: Boolean) { CallerLogger.d(SceneConstant.M_BUS_P + TAG, "回写--顶灯1开关:${lightStatus.isOpenLight1}、" + "顶灯2开关:${lightStatus.isOpenLight2}、" + @@ -105,7 +109,7 @@ class BusPassengerFunctionSoftPresenter(view: M1SoftFragment?) : /** * 灯状态变化 */ - override fun onLightTop2Callback(lightStatus: OCHM1LightAirconditionDoorStatusManager.LightStatus,isFirst: Boolean) { + override fun onLightTop2Callback(lightStatus: LightStatus, isFirst: Boolean) { CallerLogger.d(SceneConstant.M_BUS_P + TAG, "回写--顶灯1开关:${lightStatus.isOpenLight1}、" + "顶灯2开关:${lightStatus.isOpenLight2}、" + @@ -118,7 +122,7 @@ class BusPassengerFunctionSoftPresenter(view: M1SoftFragment?) : /** * 灯状态变化 */ - override fun onLightAtmosphereCallback(lightStatus: OCHM1LightAirconditionDoorStatusManager.LightStatus,isFirst: Boolean) { + override fun onLightAtmosphereCallback(lightStatus: LightStatus, isFirst: Boolean) { CallerLogger.d(SceneConstant.M_BUS_P + TAG, "回写--顶灯1开关:${lightStatus.isOpenLight1}、" + "顶灯2开关:${lightStatus.isOpenLight2}、" + @@ -137,10 +141,10 @@ class BusPassengerFunctionSoftPresenter(view: M1SoftFragment?) : CallerAutoPilotControlManager.sendRoboBusJinlvM1AirConditionerCmd(1,modeCmd,windSpeedCmd,temperatureCmd) disposeSubscribe(airconditionDisposable) airconditionDisposable = createSubscribe(10000){ - if (!OCHM1LightAirconditionDoorStatusManager.airconditionStatus.isOpen&& - OCHM1LightAirconditionDoorStatusManager.airconditionStatus.windSpeed!=windSpeedCmd&& - OCHM1LightAirconditionDoorStatusManager.airconditionStatus.temperature!=temperatureCmd&& - OCHM1LightAirconditionDoorStatusManager.airconditionStatus.pattert!=modeCmd) { + if (!LightAirconditionDoorStatusManager.airconditionStatus.isOpen&& + LightAirconditionDoorStatusManager.airconditionStatus.windSpeed!=windSpeedCmd&& + LightAirconditionDoorStatusManager.airconditionStatus.temperature!=temperatureCmd&& + LightAirconditionDoorStatusManager.airconditionStatus.pattert!=modeCmd) { ToastUtils.showShort("空调操作未生效,请稍后重试吧~") } } @@ -150,7 +154,7 @@ class BusPassengerFunctionSoftPresenter(view: M1SoftFragment?) : CallerAutoPilotControlManager.sendRoboBusJinlvM1AirConditionerCmd(2,modeCmd,windSpeedCmd,temperatureCmd) disposeSubscribe(airconditionDisposable) airconditionDisposable = createSubscribe(10000){ - if (OCHM1LightAirconditionDoorStatusManager.airconditionStatus.isOpen) { + if (LightAirconditionDoorStatusManager.airconditionStatus.isOpen) { ToastUtils.showShort("空调操作未生效,请稍后重试吧~") } } @@ -163,8 +167,8 @@ class BusPassengerFunctionSoftPresenter(view: M1SoftFragment?) : CallerAutoPilotControlManager.sendRoboBusJinlvM1HeaderCmd(1,windSpeedCmd) disposeSubscribe(heaterDisposable) heaterDisposable = createSubscribe(10000){ - if (!OCHM1LightAirconditionDoorStatusManager.heaterStatue.isOpen&& - OCHM1LightAirconditionDoorStatusManager.heaterStatue.windSpeed!=windSpeedCmd) { + if (!LightAirconditionDoorStatusManager.heaterStatue.isOpen&& + LightAirconditionDoorStatusManager.heaterStatue.windSpeed!=windSpeedCmd) { ToastUtils.showShort("暖风机操作未生效,请稍后重试吧~") } } @@ -175,7 +179,7 @@ class BusPassengerFunctionSoftPresenter(view: M1SoftFragment?) : CallerAutoPilotControlManager.sendRoboBusJinlvM1HeaderCmd(2,0) disposeSubscribe(heaterDisposable) heaterDisposable = createSubscribe(10000){ - if (OCHM1LightAirconditionDoorStatusManager.heaterStatue.isOpen) { + if (LightAirconditionDoorStatusManager.heaterStatue.isOpen) { ToastUtils.showShort("暖风机操作未生效,请稍后重试吧~")//还是开着的 } } @@ -187,14 +191,14 @@ class BusPassengerFunctionSoftPresenter(view: M1SoftFragment?) : if(leftLight){ CallerAutoPilotControlManager.sendRoboBusJinlvM1MainLamp1Cmd(1) subscribeLightTop1 = createSubscribe{ - if (!OCHM1LightAirconditionDoorStatusManager.lightStatus.isOpenLight1) { + if (!LightAirconditionDoorStatusManager.lightStatus.isOpenLight1) { ToastUtils.showShort("操作未生效,请稍后重试吧~") } } }else{ CallerAutoPilotControlManager.sendRoboBusJinlvM1MainLamp1Cmd(2) subscribeLightTop1 = createSubscribe{ - if (OCHM1LightAirconditionDoorStatusManager.lightStatus.isOpenLight1) { + if (LightAirconditionDoorStatusManager.lightStatus.isOpenLight1) { ToastUtils.showShort("操作未生效,请稍后重试吧~") } } @@ -206,14 +210,14 @@ class BusPassengerFunctionSoftPresenter(view: M1SoftFragment?) : if(rightLight){ CallerAutoPilotControlManager.sendRoboBusJinlvM1MainLamp2Cmd(1) subscribeLightTop2 = createSubscribe{ - if (!OCHM1LightAirconditionDoorStatusManager.lightStatus.isOpenLight2) { + if (!LightAirconditionDoorStatusManager.lightStatus.isOpenLight2) { ToastUtils.showShort("操作未生效,请稍后重试吧~") } } }else{ CallerAutoPilotControlManager.sendRoboBusJinlvM1MainLamp2Cmd(2) subscribeLightTop2 = createSubscribe{ - if (OCHM1LightAirconditionDoorStatusManager.lightStatus.isOpenLight2) { + if (LightAirconditionDoorStatusManager.lightStatus.isOpenLight2) { ToastUtils.showShort("操作未生效,请稍后重试吧~") } } @@ -225,14 +229,14 @@ class BusPassengerFunctionSoftPresenter(view: M1SoftFragment?) : if (atmosphereLight) { CallerAutoPilotControlManager.sendRoboBusJinlvM1SmallLampCmd(1) subscribeLightAtmosphere = createSubscribe{ - if (!OCHM1LightAirconditionDoorStatusManager.lightStatus.isOpenatmosphere) { + if (!LightAirconditionDoorStatusManager.lightStatus.isOpenatmosphere) { ToastUtils.showShort("操作未生效,请稍后重试吧~") } } } else { CallerAutoPilotControlManager.sendRoboBusJinlvM1SmallLampCmd(2) subscribeLightAtmosphere = createSubscribe{ - if (OCHM1LightAirconditionDoorStatusManager.lightStatus.isOpenatmosphere) { + if (LightAirconditionDoorStatusManager.lightStatus.isOpenatmosphere) { ToastUtils.showShort("操作未生效,请稍后重试吧~") } } diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionVideoPresenter.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionVideoPresenter.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionVideoPresenter.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionVideoPresenter.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerPresenter.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerPresenter.kt similarity index 75% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerPresenter.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerPresenter.kt index d6d6538d9d..105ee215ce 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/presenter/BusPassengerPresenter.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerPresenter.kt @@ -3,7 +3,6 @@ package com.mogo.och.bus.passenger.presenter import androidx.lifecycle.LifecycleOwner import com.amap.api.maps.model.LatLng import com.mogo.commons.voice.AIAssist -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 @@ -14,7 +13,6 @@ 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.response.OrderInfoResponse -import com.mogo.och.bus.passenger.callback.IBusPassengerControllerStatusCallback import com.mogo.och.bus.passenger.callback.IOrderChangeCallback import com.mogo.och.bus.passenger.callback.IDistanceTimeCallback import com.mogo.och.bus.passenger.model.CharterPassengerModel @@ -24,7 +22,7 @@ import com.mogo.och.bus.passenger.ui.MainFragment import com.mogo.och.common.module.bean.dpmsg.DPMsgType import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager import com.mogo.och.common.module.biz.constant.OchCommonConst -import com.mogo.och.common.module.manager.OCHM1LightAirconditionDoorStatusManager +import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorStatusManager import com.mogo.och.common.module.manager.OCHPlanningStopSideStatusManager import com.mogo.och.common.module.utils.DateTimeUtil import com.mogo.och.common.module.utils.NumberFormatUtil @@ -32,21 +30,19 @@ import com.mogo.och.common.module.utils.SoundPoolHelper import com.mogo.och.common.module.voice.VoiceNotice import com.mogo.och.common.module.bean.dpmsg.BaseDPMsg import com.mogo.och.common.module.bean.dpmsg.DPCommonOperationMsg -import io.reactivex.disposables.Disposable -import java.util.* +import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorCallback +import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorManager +import kotlin.math.ceil class BusPassengerPresenter(view: MainFragment?) : BusBasePassengerFunctionDevicePresenter(view), - IBusPassengerControllerStatusCallback, IDistanceTimeCallback, IOrderChangeCallback, - IOrderStatusChangeListener, OCHPlanningStopSideStatusManager.OCHPlanningActionsCallback { + IDistanceTimeCallback, IOrderChangeCallback, IOrderStatusChangeListener, + OCHPlanningStopSideStatusManager.OCHPlanningActionsCallback, LightAirconditionDoorCallback { - private var subscribe: Disposable? = null - private var gnssSpeed = 0.0f override fun onCreate(owner: LifecycleOwner) { super.onCreate(owner) CharterPassengerModel.init() // 定位监听 - CharterPassengerModel.setControllerStatusCallback(TAG,this) CharterPassengerModel.setiDistanceTimeCallback(this) CharterPassengerModel.setCarTypeChangeListener(this) CharterPassengerModel.setStatusChangeListener(TAG,this) @@ -59,7 +55,6 @@ class BusPassengerPresenter(view: MainFragment?) : override fun onDestroy(owner: LifecycleOwner) { super.onDestroy(owner) - CharterPassengerModel.setControllerStatusCallback(TAG,null) CharterPassengerModel.setiDistanceTimeCallback(null) CharterPassengerModel.setCarTypeChangeListener(null) CallerTelematicListenerManager.removeListener(TAG) @@ -71,9 +66,14 @@ class BusPassengerPresenter(view: MainFragment?) : mView?.setSpeed(speedKM.toString()) } } - private fun setDistanceAndTime(distance: String,distanceUnit: String){ + private fun setDistanceAndTime( + distance: String, + distanceUnit: String, + leftTime: String, + arriveTime: String + ) { UiThreadHandler.post { - mView?.setDistanceAndTime(distance, distanceUnit) + mView?.setDistanceAndTime(distance, distanceUnit,leftTime,arriveTime) } } private fun setOrderTime(sumTime:String,arrivedTime:String){ @@ -81,12 +81,6 @@ class BusPassengerPresenter(view: MainFragment?) : mView?.setOrderTime(sumTime, arrivedTime) } } - override fun onCarLocationChanged(location: MogoLocation?) { - location?.let { - setSpeed(it.gnssSpeed) - gnssSpeed = it.gnssSpeed - } - } val msgReceived = object : IReceivedMsgListener { override fun onReceivedMsg(type: Int, byteArray: ByteArray) { @@ -98,11 +92,11 @@ class BusPassengerPresenter(view: MainFragment?) : ) as BaseDPMsg when (msg.type) { DPMsgType.TYPE_OPEN_CLOSE_DOOR.type -> { - val doorStatus = OCHM1LightAirconditionDoorStatusManager.doorStatus + val doorStatus = LightAirconditionDoorStatusManager.doorStatus if(doorStatus.isOpen){ - closeDoor() + LightAirconditionDoorManager.go2OpenDoor(false) }else{ - openDoor() + LightAirconditionDoorManager.go2OpenDoor(true) } } DPMsgType.TYPE_COMMON.type -> { @@ -128,74 +122,37 @@ class BusPassengerPresenter(view: MainFragment?) : SoundPoolHelper.getSoundPoolHelper().playSoundWithRedId(context, R.raw.m1_voice_di) } - fun openDoor() { - val canOpenOrCloseDoor = canOpenOrCloseDoor() - if(!canOpenOrCloseDoor.isNullOrEmpty()){ - ToastUtils.showShort(canOpenOrCloseDoor) - return - } - disposeSubscribe(subscribe) - subscribe = createSubscribe(1000) { - CallerAutoPilotControlManager.sendRoboBusJinlvM1FrontDoorCmd(0) - } - CallerAutoPilotControlManager.sendRoboBusJinlvM1FrontDoorCmd(1) - } - - fun closeDoor() { - val canOpenOrCloseDoor = canOpenOrCloseDoor() - if(!canOpenOrCloseDoor.isNullOrBlank()){ - ToastUtils.showShort(canOpenOrCloseDoor) - return - } - disposeSubscribe(subscribe) - subscribe = createSubscribe(1000) { - CallerAutoPilotControlManager.sendRoboBusJinlvM1FrontDoorCmd(0) - } - CallerAutoPilotControlManager.sendRoboBusJinlvM1FrontDoorCmd(2) - } - - private fun canOpenOrCloseDoor():String?{ - if(gnssSpeed<0.01){ - return null - }else{ - return "车辆正在运行、请稍后再试" - } - } - /** * 计算剩余距离和剩余时间 */ override fun setDistancecAndTime(meters: Long, timeInSecond: Long) { + if(meters<0&&timeInSecond<0){ + setDistanceAndTime("--", context.getString(R.string.m1_distance_unit_km), "--", "--") + } var dis: String? = "0" var disUnit = "KM" if (meters > 0) { if (meters / 1000 < 1) { - disUnit = "M" + disUnit = context.getString(R.string.m1_distance_unit_m) dis = Math.round(meters.toFloat()).toString() } else { - disUnit = "KM" + disUnit = context.getString(R.string.m1_distance_unit_km) dis = NumberFormatUtil.formatLong(meters.toDouble() / 1000) } } - setDistanceAndTime(dis.toString(),disUnit) + val time = ceil(timeInSecond / 60f).toInt() + val arriveTime = DateTimeUtil.getAfterSecondTime(time) + setDistanceAndTime(dis.toString(),disUnit,time.toString(),arriveTime) } override fun setOrderTimeCallBack(timeInSecond: Long) { if(timeInSecond<0){ - setDistanceAndTime("0", "KM") setOrderTime("--","--") return } - var surplusTime = (timeInSecond / 60).toInt() - if(surplusTime==0){ - surplusTime = 1 - } - - val beforeTime = Calendar.getInstance() - beforeTime.add(Calendar.SECOND, timeInSecond.toInt()) - //到达时间 - val arriveTime = DateTimeUtil.formatCalendarToString(beforeTime, DateTimeUtil.HH_mm) - setOrderTime(surplusTime.toString(),arriveTime) + val time = ceil(timeInSecond / 60f).toInt() + val arriveTime = DateTimeUtil.getAfterSecondTime(timeInSecond.toInt()) + setOrderTime(time.toString(),arriveTime) } companion object{ @@ -251,7 +208,7 @@ class BusPassengerPresenter(view: MainFragment?) : UiThreadHandler.post { mView?.showOpenAndCloseDoor() mView?.cleanEndStation() - setDistanceAndTime("0", "KM") + setDistancecAndTime(-1, -1) setOrderTime("--","--") } } @@ -290,4 +247,13 @@ class BusPassengerPresenter(view: MainFragment?) : } } + override fun onDoorStatusCallback(isOpen: Boolean, isFirst: Boolean) { + if (!isFirst) { + if (isOpen) { + ToastUtils.showShort("已开启车门") + } else { + ToastUtils.showShort("已关门车门") + } + } + } } \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/provider/StatusViewManager.java b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/provider/StatusViewManager.java similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/provider/StatusViewManager.java rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/provider/StatusViewManager.java diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1CarUserNoOrderFragment.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/M1CarUserNoOrderFragment.kt similarity index 91% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1CarUserNoOrderFragment.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/M1CarUserNoOrderFragment.kt index 1cffc70857..e01f63d718 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1CarUserNoOrderFragment.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/M1CarUserNoOrderFragment.kt @@ -4,9 +4,7 @@ import android.os.Bundle import android.util.Log import android.view.View import android.view.WindowManager -import android.widget.CompoundButton import androidx.fragment.app.DialogFragment -import androidx.fragment.app.Fragment import androidx.fragment.app.FragmentManager import androidx.fragment.app.FragmentTransaction import com.mogo.commons.mvp.MvpDialogFragment @@ -14,12 +12,10 @@ import com.mogo.eagle.core.utilcode.kotlin.onClick import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS_P import com.mogo.eagle.core.utilcode.util.BarUtils -import com.mogo.eagle.core.utilcode.util.SharedPrefs import com.mogo.och.bus.passenger.R import com.mogo.och.bus.passenger.presenter.BusPassengerCarUseAndNoOrderPresenter -import com.mogo.och.bus.passenger.presenter.BusPassengerFunctionPresenter -import kotlinx.android.synthetic.m1.m1_contain_fragment.* -import kotlinx.android.synthetic.m1.m1_order_end.* +import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorManager +import kotlinx.android.synthetic.main.m1_order_end.* /** * @author: yangyakun @@ -45,10 +41,10 @@ class M1CarUserNoOrderFragment : override fun initViews() { dialog?.setCancelable(false) iv_end_order_opendoor.onClick { - mPresenter?.openDoor() + LightAirconditionDoorManager.go2OpenDoor(true) } iv_end_order_closedoor.onClick { - mPresenter?.closeDoor() + LightAirconditionDoorManager.go2OpenDoor(false) } } diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1ContainFragment.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/M1ContainFragment.kt similarity index 99% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1ContainFragment.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/M1ContainFragment.kt index 1284e5ac9d..1810e6ae86 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1ContainFragment.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/M1ContainFragment.kt @@ -16,7 +16,7 @@ import com.mogo.eagle.core.utilcode.util.BarUtils import com.mogo.eagle.core.utilcode.util.SharedPrefs import com.mogo.och.bus.passenger.R import com.mogo.och.bus.passenger.presenter.BusPassengerFunctionPresenter -import kotlinx.android.synthetic.m1.m1_contain_fragment.* +import kotlinx.android.synthetic.main.m1_contain_fragment.* /** * @author: yangyakun diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/M1DeviceFragment.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/M1DeviceFragment.kt new file mode 100644 index 0000000000..4d3944bcac --- /dev/null +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/M1DeviceFragment.kt @@ -0,0 +1,43 @@ +package com.mogo.och.bus.passenger.ui + +import android.os.Bundle +import com.mogo.commons.mvp.MvpFragment +import com.mogo.eagle.core.utilcode.kotlin.onClick +import com.mogo.och.bus.passenger.R +import com.mogo.och.bus.passenger.presenter.BusPassengerFunctionDevicePresenter +import com.mogo.och.common.module.utils.SoundPoolHelper +import kotlinx.android.synthetic.main.m1_devices_fragment.* + +/** + * @author: yangyakun + * @date: 2023/1/28 + */ +class M1DeviceFragment : + MvpFragment() { + + override fun getLayoutId(): Int = R.layout.m1_devices_fragment + + override fun getTagName(): String = TAG + + override fun initViews() { + initListener() + } + + private fun initListener() { + + } + + override fun createPresenter(): BusPassengerFunctionDevicePresenter = + BusPassengerFunctionDevicePresenter(this) + + companion object { + const val TAG = "BusPassengerFunctionDeviceFragment" + @JvmStatic + fun newInstance(): M1DeviceFragment { + val args = Bundle() + val fragment = M1DeviceFragment() + fragment.arguments = args + return fragment + } + } +} \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1EarlyEndOrderFragment.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/M1EarlyEndOrderFragment.kt similarity index 96% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1EarlyEndOrderFragment.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/M1EarlyEndOrderFragment.kt index ff0c1d92e7..7c46d0c176 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1EarlyEndOrderFragment.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/M1EarlyEndOrderFragment.kt @@ -5,7 +5,7 @@ import com.mogo.commons.mvp.MvpFragment import com.mogo.eagle.core.utilcode.kotlin.onClick import com.mogo.och.bus.passenger.R import com.mogo.och.bus.passenger.presenter.BusPassengerFunctionEarlyEndOrderPresenter -import kotlinx.android.synthetic.m1.m1_order_early_end.* +import kotlinx.android.synthetic.main.m1_order_early_end.* /** * @author: yangyakun diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/M1OrderFragment.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/M1OrderFragment.kt new file mode 100644 index 0000000000..2483279c9a --- /dev/null +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/M1OrderFragment.kt @@ -0,0 +1,256 @@ +package com.mogo.och.bus.passenger.ui + +import android.animation.ObjectAnimator +import android.os.Bundle +import android.view.View +import android.view.animation.LinearInterpolator +import androidx.recyclerview.widget.LinearLayoutManager +import com.elegant.utils.UiThreadHandler +import com.mogo.commons.mvp.MvpFragment +import com.mogo.eagle.core.function.call.telematic.CallerTelematicManager +import com.mogo.eagle.core.utilcode.kotlin.onClick +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger +import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant +import com.mogo.eagle.core.utilcode.util.ToastUtils +import com.mogo.och.bus.passenger.R +import com.mogo.och.bus.passenger.bean.response.LineInfoResponse +import com.mogo.och.bus.passenger.bean.response.SiteInfoResponse +import com.mogo.och.bus.passenger.model.OrderStatusEnum +import com.mogo.och.bus.passenger.presenter.BusPassengerFunctionOrderPresenter +import com.mogo.och.bus.passenger.ui.adapter.OrderLineItemAdapter +import com.mogo.och.bus.passenger.ui.adapter.OrderSiteItemAdapter +import com.mogo.och.bus.passenger.view.BottomDecoration +import kotlinx.android.synthetic.main.m1_order_fragment.* +import me.jessyan.autosize.utils.AutoSizeUtils + +/** + * @author: yangyakun + * @date: 2023/1/28 + */ +class M1OrderFragment : + MvpFragment() { + + private var changeCheck: M1ContainFragment.ChangeCheck? = null + + + private lateinit var lineAdapter: OrderLineItemAdapter + private lateinit var siteAdapter: OrderSiteItemAdapter + + val lineList = mutableListOf() + val siteList = mutableListOf() + + + + private val loadingAni = + ObjectAnimator.ofFloat(iv_loading_wait_driver, "rotation", 0f, 90f, 180f, 270f, 360f) + .apply { + repeatCount = -1 + interpolator = LinearInterpolator() + duration = 1000 + } + + override fun getLayoutId(): Int { + return R.layout.m1_order_fragment + } + + override fun getTagName(): String { + return TAG + } + + override fun initViews() { + CallerLogger.d(SceneConstant.M_BUS_P + TAG, "initViews") + lineAdapter = OrderLineItemAdapter(requireContext(), lineList) + siteAdapter = OrderSiteItemAdapter(requireContext(), siteList) + loadingAni.target = iv_loading_wait_driver + rlv_line_list.layoutManager = + LinearLayoutManager(context, LinearLayoutManager.VERTICAL, false) + rlv_line_list.addItemDecoration( + BottomDecoration( + AutoSizeUtils.dp2px(context, 60f) + ) + ) + rlv_line_list.adapter = lineAdapter + + rv_site_list.layoutManager = + LinearLayoutManager(context, LinearLayoutManager.VERTICAL, false) + rv_site_list.addItemDecoration( + BottomDecoration( + AutoSizeUtils.dp2px(context, 60f) + ) + ) + rv_site_list.adapter = siteAdapter + + initListener() + + } + + private fun initListener() { + lineAdapter.checkChangeListener = object : OrderLineItemAdapter.CheckListener { + override fun onCheckListener(lineInfo: LineInfoResponse.LineInfo) { + mPresenter?.checkLineClick(lineInfo) + siteAdapter.clearCheck() + } + } + siteAdapter.checkChangeListener = object : OrderSiteItemAdapter.CheckListener { + override fun onCheckListener(siteInfo: SiteInfoResponse.SiteInfo) { + // 设置临时选中的 + mPresenter?.checkSiteClick(siteInfo) + } + + } + tv_line_cancle.onClick { + mPresenter?.lineReset() + } + tv_site_cancle.onClick { + mPresenter?.siteReset() + } + tv_line_submit.onClick { + mPresenter?.lineSubmit() + } + tv_site_submit.onClick { + mPresenter?.siteSubmit() + } + tv_site_only_submit.onClick { + // 线路不换只换站点 + if (!CallerTelematicManager.getClientConnStatus()) { + ToastUtils.showLong("乘客屏无法连接司机屏请联系安全员") + return@onClick + } + mPresenter?.onlySiteSubmit() + } + tv_loading_wait_driver_title.onClick { + endAni() + } + + tv_switch_line.onClick { + mPresenter?.switchLine() + } + } + + + /** + * 设置是否可用进行选择线路 + */ + fun setEnableLineStatus(enable: Boolean) { + if (enable) { + g_line_submit_group.visibility = View.VISIBLE + lineAdapter.setEnable(true) + } else { + g_line_submit_group.visibility = View.GONE + lineAdapter.setEnable(false) + } + } + + /** + * 设置是否可用选择站点 + */ + fun setEnableSiteStatus(cancleAndSubmit: Boolean) { + if (cancleAndSubmit) { + g_side_cancle_submit_group.visibility = View.VISIBLE + } else { + g_side_cancle_submit_group.visibility = View.GONE + } + } + + fun onlyChangeSite(submit: Boolean) { + if (submit) { + g_side_submit_group.visibility = View.VISIBLE + } else { + g_side_submit_group.visibility = View.GONE + } + } + + fun setSiteAdapterEnable(enable: Boolean) { + if (enable) { + siteAdapter.setEnable(true) + } else { + siteAdapter.setEnable(false) + } + } + + fun setSwitchEnable(enable: Boolean) { + tv_switch_line.isEnabled = enable + } + + fun startAni() { + g_lines_sites_data.visibility = View.GONE + g_loading_group.visibility = View.VISIBLE + if (!loadingAni.isRunning) { + loadingAni.start() + } + } + + fun endAni() { + UiThreadHandler.post { + g_lines_sites_data.visibility = View.VISIBLE + g_loading_group.visibility = View.GONE + } + } + + fun setViewByOrderStatus(currentStatus: OrderStatusEnum) { + when (currentStatus) { + OrderStatusEnum.NoOrderUnuse -> { + // 无订单页面 + m1_order_noorder.visibility = View.VISIBLE + m1_order_early_end.visibility = View.GONE + lsv_line_site.visibility = View.GONE + } + OrderStatusEnum.OrderNoLine -> { + // 选择线路页面 + m1_order_noorder.visibility = View.GONE + m1_order_early_end.visibility = View.GONE + lsv_line_site.visibility = View.VISIBLE + } + OrderStatusEnum.OrdersWithLine -> { + // 选择线路页面 + m1_order_noorder.visibility = View.GONE + m1_order_early_end.visibility = View.GONE + lsv_line_site.visibility = View.VISIBLE + } + } + } + + + fun go2StartCar() { + changeCheck?.changeChange() + } + + override fun createPresenter(): BusPassengerFunctionOrderPresenter { + CallerLogger.d(SceneConstant.M_BUS_P + TAG, "createPresenter") + return BusPassengerFunctionOrderPresenter(this) + } + + override fun onDestroyView() { + super.onDestroyView() + loadingAni.cancel() + CallerLogger.d(SceneConstant.M_BUS_P + TAG, "onDestroyView") + } + + fun lineAdapterSubmit(lineInfo: LineInfoResponse.LineInfo) { + lineAdapter.submitLine(lineInfo) + } + + fun lineAdapterSetData(lineInfo: List) { + lineAdapter.setDataList(lineInfo) + } + + fun siteAdapterSetData(siteInfo: List) { + siteAdapter.setDataList(siteInfo) + } + fun siteAdapterEnableIndex(index: Int) { + siteAdapter.setEnableIndex(index) + } + + companion object { + const val TAG = "BusPassengerFunctionOrderFragment" + + @JvmStatic + fun newInstance(changeCheck: M1ContainFragment.ChangeCheck): M1OrderFragment { + val args = Bundle() + val fragment = M1OrderFragment() + fragment.arguments = args + fragment.changeCheck = changeCheck + return fragment + } + } +} \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1SoftFragment.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/M1SoftFragment.kt similarity index 97% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1SoftFragment.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/M1SoftFragment.kt index 34aff80614..7697bf38f0 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1SoftFragment.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/M1SoftFragment.kt @@ -16,9 +16,6 @@ import android.widget.SeekBar import android.widget.SeekBar.OnSeekBarChangeListener import android.widget.TextView import androidx.core.content.ContextCompat -import androidx.core.view.isVisible -import androidx.recyclerview.widget.LinearSnapHelper -import androidx.recyclerview.widget.SnapHelper import com.mogo.commons.mvp.MvpFragment import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant @@ -30,6 +27,7 @@ import com.mogo.och.bus.passenger.R import com.mogo.och.bus.passenger.bean.Temperature import com.mogo.och.bus.passenger.presenter.BusPassengerFunctionSoftPresenter import com.mogo.och.bus.passenger.ui.adapter.TemperatureAdapter +import com.mogo.och.bus.passenger.ui.layoutmanage.PagerCenterSnapHelper import com.mogo.och.bus.passenger.view.HorizontalDecoration import com.mogo.och.bus.passenger.view.PickerLayoutManager import com.mogo.och.common.module.utils.SoundPoolHelper @@ -37,7 +35,7 @@ import com.yangyakun.main.ui.loading.drawable.MineGradientDrawable import io.reactivex.Observable import io.reactivex.android.schedulers.AndroidSchedulers import io.reactivex.disposables.Disposable -import kotlinx.android.synthetic.m1.m1_soft_fragment.* +import kotlinx.android.synthetic.main.m1_soft_fragment.* import me.jessyan.autosize.utils.AutoSizeUtils import java.util.concurrent.TimeUnit @@ -228,20 +226,34 @@ class M1SoftFragment : } } val pickerLayoutManager = - PickerLayoutManager(requireContext(), PickerLayoutManager.HORIZONTAL, false) + PickerLayoutManager( + requireContext(), + PickerLayoutManager.HORIZONTAL, + false + ) pickerLayoutManager.isChangeAlpha = true pickerLayoutManager.scaleDownBy = 0.29f pickerLayoutManager.scaleDownDistance = 0.8f val data = getData() - val adapter = TemperatureAdapter(requireContext(), data, rv_aircondition_temperature) - val snapHelper: SnapHelper = LinearSnapHelper() + val adapter = TemperatureAdapter( + requireContext(), + data, + rv_aircondition_temperature + ) + val snapHelper = PagerCenterSnapHelper() snapHelper.attachToRecyclerView(rv_aircondition_temperature) rv_aircondition_temperature.layoutManager = pickerLayoutManager rv_aircondition_temperature.adapter = adapter - HorizontalDecoration.distance = SharedPrefsMgr.getInstance(requireContext()).getInt(HorizontalDecoration.distancekey,0) - val space = AutoSizeUtils.dp2px(context, 22f) - rv_aircondition_temperature.addItemDecoration(HorizontalDecoration(space,data.size-1)) + HorizontalDecoration.distance = SharedPrefsMgr.getInstance(requireContext()).getInt( + HorizontalDecoration.distancekey,0) + val space = AutoSizeUtils.dp2px(context, 15f) + rv_aircondition_temperature.addItemDecoration( + HorizontalDecoration( + space, + data.size - 1 + ) + ) pickerLayoutManager.setOnScrollStopListener { view -> if (view is TextView) { @@ -271,7 +283,7 @@ class M1SoftFragment : } } - private fun setCheckAir(adapter:TemperatureAdapter,tag:Temperature){ + private fun setCheckAir(adapter: TemperatureAdapter, tag:Temperature){ adapter.setCheckIndex(tag.index) currentTemperature = tag if (rv_aircondition_temperature.tag == touchTag) { diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1VideoFragment.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/M1VideoFragment.kt similarity index 94% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1VideoFragment.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/M1VideoFragment.kt index bf832a2e49..8def79dab3 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/M1VideoFragment.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/M1VideoFragment.kt @@ -13,7 +13,7 @@ import com.mogo.och.bus.passenger.ui.layoutmanage.CarouselZoomPostLayoutListener import com.mogo.och.bus.passenger.ui.layoutmanage.CenterScrollListener import com.mogo.och.bus.passenger.view.ConsultVideoPlayer import com.shuyu.gsyvideoplayer.video.base.GSYVideoView -import kotlinx.android.synthetic.m1.m1_video_fragment.* +import kotlinx.android.synthetic.main.m1_video_fragment.* import kotlin.math.floor /** @@ -35,7 +35,11 @@ class M1VideoFragment : override fun initViews() { initConsultData() - val carouselLayoutManager = CarouselLayoutManager(CarouselLayoutManager.HORIZONTAL, true) + val carouselLayoutManager = + CarouselLayoutManager( + CarouselLayoutManager.HORIZONTAL, + true + ) carouselLayoutManager.setPostLayoutListener(CarouselZoomPostLayoutListener()) carouselLayoutManager.maxVisibleItems = 1 rvVideoPlaylist.addOnScrollListener(object : CenterScrollListener() { @@ -81,7 +85,12 @@ class M1VideoFragment : } } } - val recyclerVideoAdapter = RecyclerVideoAdapter(requireContext(), arrayListOf, rvVideoPlaylist) + val recyclerVideoAdapter = + RecyclerVideoAdapter( + requireContext(), + arrayListOf, + rvVideoPlaylist + ) recyclerVideoAdapter.setOnThumbImageClilckListener { val (_: kotlin.Int, player) = getPlayer(carouselLayoutManager) if (player is ConsultVideoPlayer) { diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/MainFragment.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/MainFragment.kt similarity index 97% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/MainFragment.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/MainFragment.kt index 2323b2e724..855586148d 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/MainFragment.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/MainFragment.kt @@ -27,7 +27,7 @@ import com.mogo.och.common.module.voice.VoiceManager import com.mogo.och.bus.passenger.presenter.BusPassengerPresenter import com.mogo.och.bus.passenger.utils.VoiceFocusManager import com.mogo.och.common.module.biz.constant.LoginStatusManager -import kotlinx.android.synthetic.m1.m1_main_fragment.* +import kotlinx.android.synthetic.main.m1_main_fragment.* import java.lang.ref.WeakReference /** @@ -143,16 +143,19 @@ class MainFragment : fun setDistanceAndTime( distance: String, distanceUnit: String, + leftTime:String, + arriveTime:String ) { tv_distance.text = distance tv_distance_unit.text = "距离(${distanceUnit})" + tv_distance_surplus_time.text = leftTime + tv_distance_arrive_time.text = arriveTime } fun setOrderTime( sumTime: String, arrivedTime: String ) { - tv_distance_surplus_time.text = sumTime - tv_distance_arrive_time.text = arrivedTime + } fun setCarModle(rawInfo: Int){ diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/adapter/OrderLineItemAdapter.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/adapter/OrderLineItemAdapter.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/adapter/OrderLineItemAdapter.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/adapter/OrderLineItemAdapter.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/adapter/OrderSiteItemAdapter.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/adapter/OrderSiteItemAdapter.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/adapter/OrderSiteItemAdapter.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/adapter/OrderSiteItemAdapter.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/adapter/RecyclerItemVideoHolder.java b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/adapter/RecyclerItemVideoHolder.java similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/adapter/RecyclerItemVideoHolder.java rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/adapter/RecyclerItemVideoHolder.java diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/adapter/RecyclerVideoAdapter.java b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/adapter/RecyclerVideoAdapter.java similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/adapter/RecyclerVideoAdapter.java rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/adapter/RecyclerVideoAdapter.java diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/adapter/TemperatureAdapter.java b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/adapter/TemperatureAdapter.java similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/adapter/TemperatureAdapter.java rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/adapter/TemperatureAdapter.java diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/layoutmanage/CarouselLayoutManager.java b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/layoutmanage/CarouselLayoutManager.java similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/layoutmanage/CarouselLayoutManager.java rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/layoutmanage/CarouselLayoutManager.java diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/layoutmanage/CarouselZoomPostLayoutListener.java b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/layoutmanage/CarouselZoomPostLayoutListener.java similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/layoutmanage/CarouselZoomPostLayoutListener.java rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/layoutmanage/CarouselZoomPostLayoutListener.java diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/layoutmanage/CenterScrollListener.java b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/layoutmanage/CenterScrollListener.java similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/layoutmanage/CenterScrollListener.java rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/layoutmanage/CenterScrollListener.java diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/layoutmanage/ItemTransformation.java b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/layoutmanage/ItemTransformation.java similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/layoutmanage/ItemTransformation.java rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/layoutmanage/ItemTransformation.java diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/layoutmanage/PagerCenterSnapHelper.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/layoutmanage/PagerCenterSnapHelper.kt new file mode 100644 index 0000000000..f0a3f564db --- /dev/null +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/layoutmanage/PagerCenterSnapHelper.kt @@ -0,0 +1,81 @@ +package com.mogo.och.bus.passenger.ui.layoutmanage + +import android.view.View +import androidx.recyclerview.widget.OrientationHelper +import androidx.recyclerview.widget.PagerSnapHelper +import androidx.recyclerview.widget.RecyclerView + +class PagerCenterSnapHelper : PagerSnapHelper() { + private var mHorizontalHelper: OrientationHelper? = null + private var pageScollListener: PageScollListener? = null + override fun findSnapView(layoutManager: RecyclerView.LayoutManager): View? { + if (layoutManager.canScrollVertically()) { + return super.findSnapView(layoutManager) + } else if (layoutManager.canScrollHorizontally()) { + return findCenterView(layoutManager, getHorizontalHelper(layoutManager)) + } + return null + } + + private fun findCenterView( + layoutManager: RecyclerView.LayoutManager, + helper: OrientationHelper + ): View? { + val childCount = layoutManager.childCount + if (childCount == 0) { + return null + } + var closestChild: View? = null + val center = helper.startAfterPadding + helper.totalSpace / 2 + var absClosest = Int.MAX_VALUE + for (i in 0 until childCount) { + val child = layoutManager.getChildAt(i) + val params = child!!.layoutParams as RecyclerView.LayoutParams + var childCenter = 0 + childCenter = if (i == 0) { + helper.getDecoratedStart(child) + helper.getDecoratedMeasurement(child) - layoutManager.getDecoratedMeasuredWidth( + child + ) / 2 - params.rightMargin / 2 + } else if (i == childCount - 1) { + (helper.getDecoratedStart(child) + + (helper.getDecoratedMeasurement(child) - layoutManager.getDecoratedMeasuredWidth( + child + ) / 2 - params.leftMargin / 2 - params.rightMargin)) + } else { + helper.getDecoratedStart(child) + helper.getDecoratedMeasurement(child) / 2 + } + val absDistance = Math.abs(childCenter - center) + /* if child center is closer than previous closest, set it as closest */if (absDistance < absClosest) { + absClosest = absDistance + closestChild = child + } + } + if (pageScollListener != null) { + if (closestChild != null) { + pageScollListener!!.onPageSelected(layoutManager.getPosition(closestChild)) + } + } + return closestChild + } + + private fun getHorizontalHelper( + layoutManager: RecyclerView.LayoutManager + ): OrientationHelper { + if (mHorizontalHelper == null || mHorizontalHelper!!.layoutManager !== layoutManager) { + mHorizontalHelper = OrientationHelper.createHorizontalHelper(layoutManager) + } + return mHorizontalHelper!! + } + + fun setPageScollListener(pageScollListener: PageScollListener?) { + this.pageScollListener = pageScollListener + } + + interface PageScollListener { + fun onPageSelected(i: Int) + } + + companion object { + private const val TAG = "PagerSnapHelper " + } +} \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/view/EarlyEndOrderView.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/EarlyEndOrderView.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/view/EarlyEndOrderView.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/EarlyEndOrderView.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/view/EndOrderView.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/EndOrderView.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/ui/view/EndOrderView.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/EndOrderView.kt diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/door/CloseDoorView.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/door/CloseDoorView.kt new file mode 100644 index 0000000000..2a40c14a48 --- /dev/null +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/door/CloseDoorView.kt @@ -0,0 +1,32 @@ +package com.mogo.och.bus.passenger.ui.view.door + +import android.content.Context +import android.util.AttributeSet +import androidx.appcompat.widget.AppCompatTextView +import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager +import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager +import com.mogo.eagle.core.utilcode.util.ToastUtils +import com.mogo.och.bus.passenger.R +import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorManager +import com.mogo.och.common.module.utils.RxUtils +import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorStatusManager +import com.mogo.och.common.module.utils.SoundPoolHelper +import io.reactivex.disposables.Disposable + +class CloseDoorView @JvmOverloads constructor( + context: Context, + attrs: AttributeSet? = null, + defStyleAttr: Int = 0 +) : AppCompatTextView(context, attrs, defStyleAttr) { + + init { + setOnClickListener { + go2OpenDoor() + } + } + + private fun go2OpenDoor(){ + LightAirconditionDoorManager.go2OpenDoor(false) + SoundPoolHelper.getSoundPoolHelper().playSoundWithRedId(context, R.raw.bus_di) + } +} \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/door/OpenDoorView.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/door/OpenDoorView.kt new file mode 100644 index 0000000000..a9207bc376 --- /dev/null +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/door/OpenDoorView.kt @@ -0,0 +1,27 @@ +package com.mogo.och.bus.passenger.ui.view.door + +import android.content.Context +import android.util.AttributeSet +import androidx.appcompat.widget.AppCompatTextView +import com.mogo.och.bus.passenger.R +import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorManager +import com.mogo.och.common.module.utils.SoundPoolHelper + +class OpenDoorView @JvmOverloads constructor( + context: Context, + attrs: AttributeSet? = null, + defStyleAttr: Int = 0 +) : AppCompatTextView(context, attrs, defStyleAttr) { + + init { + setOnClickListener { + go2OpenDoor() + } + } + + private fun go2OpenDoor(){ + LightAirconditionDoorManager.go2OpenDoor(true) + SoundPoolHelper.getSoundPoolHelper().playSoundWithRedId(context, R.raw.bus_di) + } + +} \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/stopsite/GoView.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/stopsite/GoView.kt new file mode 100644 index 0000000000..00c447662d --- /dev/null +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/stopsite/GoView.kt @@ -0,0 +1,50 @@ +package com.mogo.och.bus.passenger.ui.view.stopsite + +import android.content.Context +import android.util.AttributeSet +import androidx.appcompat.widget.AppCompatTextView +import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener +import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager +import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager +import com.mogo.eagle.core.utilcode.util.ToastUtils +import com.mogo.och.bus.passenger.R +import com.mogo.och.bus.passenger.model.CharterPassengerModel +import com.mogo.och.common.module.utils.SoundPoolHelper + +class GoView @JvmOverloads constructor( + context: Context, + attrs: AttributeSet? = null, + defStyleAttr: Int = 0 +) : AppCompatTextView(context, attrs, defStyleAttr) { + + init { + setOnClickListener { + startGo() + } + } + + private fun startGo(){ + when (CallerAutoPilotStatusListenerManager.getAutoPilotStatusInfo().state) { + IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE -> {// 不可自动驾驶 + ToastUtils.showShort("设备未就绪请稍等") + } + IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE -> {// + ToastUtils.showShort("启动自动驾驶中") + CallerAutoPilotControlManager.sendPlanningCmd(2) + CharterPassengerModel.startAutopilot() + CharterPassengerModel.leaveStation() + CharterPassengerModel.sendTripInfo() + } + IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING -> { + // 重新起步 + CallerAutoPilotControlManager.sendPlanningCmd(2) + CharterPassengerModel.leaveStation() + } + IMoGoAutopilotStatusListener.STATUS_PARALLEL_DRIVING -> { + ToastUtils.showShort("因车辆正在平行驾驶中无法靠边停车,请稍后再试") + } + else -> {} + } + SoundPoolHelper.getSoundPoolHelper().playSoundWithRedId(context, R.raw.bus_di) + } +} \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/stopsite/StopSiteView.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/stopsite/StopSiteView.kt new file mode 100644 index 0000000000..7dec48188f --- /dev/null +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/stopsite/StopSiteView.kt @@ -0,0 +1,44 @@ +package com.mogo.och.bus.passenger.ui.view.stopsite + +import android.content.Context +import android.util.AttributeSet +import androidx.appcompat.widget.AppCompatTextView +import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener +import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager +import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager +import com.mogo.eagle.core.utilcode.util.ToastUtils +import com.mogo.och.bus.passenger.R +import com.mogo.och.common.module.utils.SoundPoolHelper + +class StopSiteView @JvmOverloads constructor( + context: Context, + attrs: AttributeSet? = null, + defStyleAttr: Int = 0 +) : AppCompatTextView(context, attrs, defStyleAttr) { + + init { + setOnClickListener { + stopSite() + } + } + + private fun stopSite(){ + when (CallerAutoPilotStatusListenerManager.getAutoPilotStatusInfo().state) { + IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE -> {// 不可自动驾驶 + ToastUtils.showShort("设备未就绪请稍等,请稍后再试") + } + IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE -> {// + ToastUtils.showShort("因车辆正在人工驾驶中无法靠边停车,请稍后再试") + } + IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING -> { + // 靠边停车 + CallerAutoPilotControlManager.sendPlanningCmd(1) + } + IMoGoAutopilotStatusListener.STATUS_PARALLEL_DRIVING -> { + ToastUtils.showShort("因车辆正在平行驾驶中无法靠边停车,请稍后再试") + } + else -> {} + } + SoundPoolHelper.getSoundPoolHelper().playSoundWithRedId(context, R.raw.bus_di) + } +} \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/utils/FullVideoUtils.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/utils/FullVideoUtils.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/utils/FullVideoUtils.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/utils/FullVideoUtils.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/utils/VoiceFocusManager.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/utils/VoiceFocusManager.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/utils/VoiceFocusManager.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/utils/VoiceFocusManager.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/utils/ZoomDrawable.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/utils/ZoomDrawable.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/utils/ZoomDrawable.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/utils/ZoomDrawable.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/view/BottomDecoration.java b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/BottomDecoration.java similarity index 88% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/view/BottomDecoration.java rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/BottomDecoration.java index 78ec3608db..55c4d28cd1 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/view/BottomDecoration.java +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/BottomDecoration.java @@ -6,10 +6,6 @@ import android.view.View; import androidx.annotation.NonNull; import androidx.recyclerview.widget.RecyclerView; -import com.mogo.commons.AbsMogoApplication; -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr; -import com.mogo.och.bus.passenger.ui.adapter.TemperatureAdapter; - public class BottomDecoration extends RecyclerView.ItemDecoration { /** * 第一个视图和最后一个视图偏移的距离 diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/view/ConsultVideoPlayer.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/ConsultVideoPlayer.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/view/ConsultVideoPlayer.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/ConsultVideoPlayer.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/view/DrawBitmapView.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/DrawBitmapView.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/view/DrawBitmapView.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/DrawBitmapView.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/view/DrawableCheckBox.java b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/DrawableCheckBox.java similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/view/DrawableCheckBox.java rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/DrawableCheckBox.java diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/view/HorizontalDecoration.java b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/HorizontalDecoration.java similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/view/HorizontalDecoration.java rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/HorizontalDecoration.java diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/view/PickerLayoutManager.java b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/PickerLayoutManager.java similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/view/PickerLayoutManager.java rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/PickerLayoutManager.java diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/view/RecyclerViewCornerRadius.java b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/RecyclerViewCornerRadius.java similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/view/RecyclerViewCornerRadius.java rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/RecyclerViewCornerRadius.java diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/view/drawable/MineGradientDrawable.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/drawable/MineGradientDrawable.kt similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/view/drawable/MineGradientDrawable.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/drawable/MineGradientDrawable.kt diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/view/statusbar/M1BlueToothView.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/statusbar/M1BlueToothView.kt similarity index 93% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/view/statusbar/M1BlueToothView.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/statusbar/M1BlueToothView.kt index 7a7ce0013f..e193fa8785 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/view/statusbar/M1BlueToothView.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/statusbar/M1BlueToothView.kt @@ -6,7 +6,7 @@ import android.view.LayoutInflater import com.mogo.eagle.core.function.api.devatools.IMoGoDevaToolsListener import com.mogo.eagle.core.function.hmi.ui.widget.BlueToothView import com.mogo.och.bus.passenger.R -import kotlinx.android.synthetic.m1.m1_statusview_blue_tooth.view.* +import kotlinx.android.synthetic.main.m1_statusview_blue_tooth.view.* /** * 魔戒蓝牙控件 diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/view/statusbar/StatusBarView.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/statusbar/StatusBarView.kt similarity index 98% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/view/statusbar/StatusBarView.kt rename to OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/statusbar/StatusBarView.kt index 9c9abbefc2..22a782b541 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/view/statusbar/StatusBarView.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/statusbar/StatusBarView.kt @@ -20,7 +20,7 @@ import com.mogo.eagle.core.function.hmi.ui.widget.DemoModeView import com.mogo.eagle.core.utilcode.util.ClickUtils import com.mogo.eagle.core.utilcode.util.UiThreadHandler import com.mogo.och.bus.passenger.R -import kotlinx.android.synthetic.m1.m1_statusview_datetime.view.* +import kotlinx.android.synthetic.main.m1_statusview_datetime.view.* import me.jessyan.autosize.utils.AutoSizeUtils import kotlin.math.roundToInt diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/anim/alpha_hide_show.xml b/OCH/mogo-och-charter-passenger/src/main/res/anim/alpha_hide_show.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/anim/alpha_hide_show.xml rename to OCH/mogo-och-charter-passenger/src/main/res/anim/alpha_hide_show.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/color/bus_p_aircondition_enable.xml b/OCH/mogo-och-charter-passenger/src/main/res/color/bus_p_aircondition_enable.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/color/bus_p_aircondition_enable.xml rename to OCH/mogo-och-charter-passenger/src/main/res/color/bus_p_aircondition_enable.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/color/bus_p_function_airconditon_pattern_text_color_selector.xml b/OCH/mogo-och-charter-passenger/src/main/res/color/bus_p_function_airconditon_pattern_text_color_selector.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/color/bus_p_function_airconditon_pattern_text_color_selector.xml rename to OCH/mogo-och-charter-passenger/src/main/res/color/bus_p_function_airconditon_pattern_text_color_selector.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bg_taxi_p_video_index.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bg_taxi_p_video_index.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bg_taxi_p_video_index.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bg_taxi_p_video_index.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bg_taxi_p_video_thumb_big.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bg_taxi_p_video_thumb_big.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bg_taxi_p_video_thumb_big.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bg_taxi_p_video_thumb_big.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bg_taxi_p_video_thumb_small.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bg_taxi_p_video_thumb_small.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bg_taxi_p_video_thumb_small.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bg_taxi_p_video_thumb_small.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bug_p_overmap_car_model.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bug_p_overmap_car_model.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bug_p_overmap_car_model.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bug_p_overmap_car_model.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_car_speed.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_car_speed.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_car_speed.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_car_speed.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_aircondition_nor.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_aircondition_nor.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_aircondition_nor.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_aircondition_nor.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_aircondition_pattern_selected.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_aircondition_pattern_selected.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_aircondition_pattern_selected.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_aircondition_pattern_selected.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_aircondition_select.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_aircondition_select.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_aircondition_select.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_aircondition_select.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_aircondition_selected.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_aircondition_selected.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_aircondition_selected.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_aircondition_selected.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_aircondition_switch_selected.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_aircondition_switch_selected.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_aircondition_switch_selected.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_aircondition_switch_selected.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_atmosphere_nor.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_atmosphere_nor.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_atmosphere_nor.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_atmosphere_nor.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_atmosphere_select.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_atmosphere_select.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_atmosphere_select.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_atmosphere_select.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_device_closedoor_normal_src.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_device_closedoor_normal_src.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_device_closedoor_normal_src.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_device_closedoor_normal_src.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_device_closedoor_press_src.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_device_closedoor_press_src.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_device_closedoor_press_src.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_device_closedoor_press_src.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_device_go_normal_src.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_device_go_normal_src.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_device_go_normal_src.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_device_go_normal_src.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_device_go_press_src.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_device_go_press_src.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_device_go_press_src.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_device_go_press_src.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_device_normal.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_device_normal.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_device_normal.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_device_normal.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_device_opendoor_normal_src.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_device_opendoor_normal_src.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_device_opendoor_normal_src.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_device_opendoor_normal_src.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_device_opendoor_press_src.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_device_opendoor_press_src.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_device_opendoor_press_src.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_device_opendoor_press_src.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_device_press.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_device_press.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_device_press.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_device_press.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_device_stopside_normal_src.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_device_stopside_normal_src.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_device_stopside_normal_src.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_device_stopside_normal_src.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_device_stopside_press_src.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_device_stopside_press_src.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_device_stopside_press_src.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_device_stopside_press_src.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_information_normal.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_information_normal.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_information_normal.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_information_normal.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_information_press.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_information_press.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_information_press.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_information_press.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_left_bg_selected.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_left_bg_selected.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_left_bg_selected.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_left_bg_selected.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_light_check_select.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_light_check_select.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_light_check_select.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_light_check_select.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_light_check_selected.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_light_check_selected.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_light_check_selected.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_light_check_selected.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_light_middle_selected.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_light_middle_selected.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_light_middle_selected.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_light_middle_selected.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_light_nor.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_light_nor.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_light_nor.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_light_nor.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_light_select.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_light_select.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_light_select.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_light_select.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_light_select_left.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_light_select_left.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_light_select_left.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_light_select_left.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_light_select_right.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_light_select_right.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_light_select_right.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_light_select_right.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_light_selected.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_light_selected.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_light_selected.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_light_selected.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_light_switch_bg_selected.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_light_switch_bg_selected.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_light_switch_bg_selected.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_light_switch_bg_selected.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_order_normal.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_order_normal.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_order_normal.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_order_normal.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_order_press.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_order_press.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_order_press.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_order_press.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_soft_normal.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_soft_normal.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_soft_normal.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_soft_normal.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_soft_press.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_soft_press.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_soft_press.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_soft_press.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_voice_humb.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_voice_humb.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_voice_humb.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_voice_humb.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_voice_left_select_src.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_voice_left_select_src.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_voice_left_select_src.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_voice_left_select_src.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_voice_left_selected_src.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_voice_left_selected_src.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_voice_left_selected_src.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_voice_left_selected_src.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_voice_max.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_voice_max.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_voice_max.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_voice_max.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_voice_middle_select.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_voice_middle_select.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_voice_middle_select.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_voice_middle_select.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_voice_middle_selected.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_voice_middle_selected.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_voice_middle_selected.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_voice_middle_selected.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_voice_min.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_voice_min.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_function_voice_min.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_function_voice_min.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_loading.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_loading.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_loading.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_loading.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_m1_blue_tooth_close.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_m1_blue_tooth_close.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_m1_blue_tooth_close.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_m1_blue_tooth_close.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_m1_blue_tooth_open.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_m1_blue_tooth_open.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_m1_blue_tooth_open.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_m1_blue_tooth_open.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_m1_status_bar_logo.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_m1_status_bar_logo.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_m1_status_bar_logo.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_m1_status_bar_logo.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_overmap_reset.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_overmap_reset.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_overmap_reset.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_overmap_reset.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_player_change_normal.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_player_change_normal.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_p_player_change_normal.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_p_player_change_normal.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_pm1_aircondition_wind_high.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_pm1_aircondition_wind_high.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_pm1_aircondition_wind_high.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_pm1_aircondition_wind_high.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_pm1_aircondition_wind_low.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_pm1_aircondition_wind_low.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_pm1_aircondition_wind_low.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_pm1_aircondition_wind_low.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_pm1_aircondition_wind_middle.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_pm1_aircondition_wind_middle.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_pm1_aircondition_wind_middle.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_pm1_aircondition_wind_middle.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_pm1_warm_wind_high.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_pm1_warm_wind_high.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_pm1_warm_wind_high.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_pm1_warm_wind_high.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_pm1_warm_wind_lod.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_pm1_warm_wind_lod.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_pm1_warm_wind_lod.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_pm1_warm_wind_lod.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_pm1_warm_wind_middle.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_pm1_warm_wind_middle.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/bus_pm1_warm_wind_middle.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/bus_pm1_warm_wind_middle.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_function_bg.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_function_bg.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_function_bg.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_function_bg.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_line_cancle_submit_bg.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_line_cancle_submit_bg.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_line_cancle_submit_bg.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_line_cancle_submit_bg.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_closedoor_normal.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_closedoor_normal.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_closedoor_normal.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_closedoor_normal.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_closedoor_press.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_closedoor_press.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_closedoor_press.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_closedoor_press.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_early_end.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_early_end.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_early_end.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_early_end.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_end.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_end.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_end.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_end.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_end_car.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_end_car.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_end_car.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_end_car.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_noorder.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_noorder.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_noorder.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_noorder.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_opendoor_normal.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_opendoor_normal.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_opendoor_normal.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_opendoor_normal.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_opendoor_press.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_opendoor_press.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_opendoor_press.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_opendoor_press.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_site_check.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_site_check.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_site_check.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_site_check.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_site_check_enable.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_site_check_enable.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_site_check_enable.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_site_check_enable.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_site_checked.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_site_checked.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_site_checked.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_site_checked.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_switch_line_enable.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_switch_line_enable.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_switch_line_enable.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_switch_line_enable.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_switch_line_unenable.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_switch_line_unenable.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_order_switch_line_unenable.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_order_switch_line_unenable.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_site_cancle_submit_bg.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_site_cancle_submit_bg.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_site_cancle_submit_bg.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_site_cancle_submit_bg.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_site_submit_bg.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_site_submit_bg.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_site_submit_bg.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_site_submit_bg.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_small_map_view_dir_end.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_small_map_view_dir_end.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/m1_small_map_view_dir_end.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/m1_small_map_view_dir_end.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/notice_video_pause_big.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/notice_video_pause_big.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/notice_video_pause_big.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/notice_video_pause_big.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/notice_video_pause_small.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/notice_video_pause_small.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/notice_video_pause_small.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/notice_video_pause_small.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/notice_video_start_big.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/notice_video_start_big.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/notice_video_start_big.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/notice_video_start_big.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/notice_video_start_small.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/notice_video_start_small.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/notice_video_start_small.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/notice_video_start_small.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/taxi_p_change_full.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/taxi_p_change_full.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/taxi_p_change_full.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/taxi_p_change_full.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/taxi_p_mogo_video_play.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/taxi_p_mogo_video_play.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/taxi_p_mogo_video_play.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/taxi_p_mogo_video_play.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/taxi_p_video_bg_bottom.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/taxi_p_video_bg_bottom.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/taxi_p_video_bg_bottom.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/taxi_p_video_bg_bottom.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/taxi_p_video_bg_top.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/taxi_p_video_bg_top.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/taxi_p_video_bg_top.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/taxi_p_video_bg_top.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/taxi_p_video_holder.png b/OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/taxi_p_video_holder.png similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-nodpi/taxi_p_video_holder.png rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-nodpi/taxi_p_video_holder.png diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-v29/taxi_power_size_seekbar_style.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable-v29/taxi_power_size_seekbar_style.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-v29/taxi_power_size_seekbar_style.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-v29/taxi_power_size_seekbar_style.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable-v29/taxi_video_seekbar_style.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable-v29/taxi_video_seekbar_style.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable-v29/taxi_video_seekbar_style.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable-v29/taxi_video_seekbar_style.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bg_taxi_p_video_bg.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bg_taxi_p_video_bg.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bg_taxi_p_video_bg.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bg_taxi_p_video_bg.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bg_taxi_p_video_bg_shape.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bg_taxi_p_video_bg_shape.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bg_taxi_p_video_bg_shape.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bg_taxi_p_video_bg_shape.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bg_taxi_p_video_bg_top.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bg_taxi_p_video_bg_top.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bg_taxi_p_video_bg_top.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bg_taxi_p_video_bg_top.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_distance_info_bg.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_distance_info_bg.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_distance_info_bg.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_distance_info_bg.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_aircondition_common_bg.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_aircondition_common_bg.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_aircondition_common_bg.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_aircondition_common_bg.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_aircondition_common_bg_01.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_aircondition_common_bg_01.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_aircondition_common_bg_01.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_aircondition_common_bg_01.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_aircondition_left_select.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_aircondition_left_select.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_aircondition_left_select.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_aircondition_left_select.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_aircondition_left_selected.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_aircondition_left_selected.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_aircondition_left_selected.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_aircondition_left_selected.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_aircondition_pattern_selecotr.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_aircondition_pattern_selecotr.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_aircondition_pattern_selecotr.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_aircondition_pattern_selecotr.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_aircondition_pattern_select.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_aircondition_pattern_select.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_aircondition_pattern_select.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_aircondition_pattern_select.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_aircondition_switch_select.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_aircondition_switch_select.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_aircondition_switch_select.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_aircondition_switch_select.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_aircondition_switch_selector.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_aircondition_switch_selector.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_aircondition_switch_selector.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_aircondition_switch_selector.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_airconditon_bg_selector.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_airconditon_bg_selector.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_airconditon_bg_selector.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_airconditon_bg_selector.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_airconditon_left_selector.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_airconditon_left_selector.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_airconditon_left_selector.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_airconditon_left_selector.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_airconditon_text_color_selector.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_airconditon_text_color_selector.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_airconditon_text_color_selector.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_airconditon_text_color_selector.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_bottom_device_bg_selector.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_bottom_device_bg_selector.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_bottom_device_bg_selector.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_bottom_device_bg_selector.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_bottom_information_bg_selector.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_bottom_information_bg_selector.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_bottom_information_bg_selector.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_bottom_information_bg_selector.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_bottom_order_bg_selector.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_bottom_order_bg_selector.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_bottom_order_bg_selector.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_bottom_order_bg_selector.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_bottom_soft_bg_selector.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_bottom_soft_bg_selector.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_bottom_soft_bg_selector.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_bottom_soft_bg_selector.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_device_closedoor_normal.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_device_closedoor_normal.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_device_closedoor_normal.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_device_closedoor_normal.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_device_closedoor_press.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_device_closedoor_press.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_device_closedoor_press.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_device_closedoor_press.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_device_closedoor_press_selecor.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_device_closedoor_press_selecor.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_device_closedoor_press_selecor.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_device_closedoor_press_selecor.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_device_go_normal.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_device_go_normal.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_device_go_normal.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_device_go_normal.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_device_go_press.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_device_go_press.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_device_go_press.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_device_go_press.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_device_go_press_selecor.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_device_go_press_selecor.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_device_go_press_selecor.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_device_go_press_selecor.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_device_opendoor_normal.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_device_opendoor_normal.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_device_opendoor_normal.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_device_opendoor_normal.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_device_opendoor_press.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_device_opendoor_press.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_device_opendoor_press.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_device_opendoor_press.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_device_opendoor_press_selecor.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_device_opendoor_press_selecor.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_device_opendoor_press_selecor.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_device_opendoor_press_selecor.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_device_stopside_normal.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_device_stopside_normal.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_device_stopside_normal.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_device_stopside_normal.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_device_stopside_press.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_device_stopside_press.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_device_stopside_press.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_device_stopside_press.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_device_stopside_press_selecor.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_device_stopside_press_selecor.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_device_stopside_press_selecor.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_device_stopside_press_selecor.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_distance_split_bg.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_distance_split_bg.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_distance_split_bg.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_distance_split_bg.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_left_bg_select.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_left_bg_select.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_left_bg_select.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_left_bg_select.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_light_left_select.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_light_left_select.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_light_left_select.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_light_left_select.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_light_left_selected.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_light_left_selected.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_light_left_selected.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_light_left_selected.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_light_left_selector.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_light_left_selector.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_light_left_selector.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_light_left_selector.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_light_switch_bg_select.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_light_switch_bg_select.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_light_switch_bg_select.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_light_switch_bg_select.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_light_switch_bg_selector.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_light_switch_bg_selector.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_light_switch_bg_selector.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_light_switch_bg_selector.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_setting_soft_b_shape.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_setting_soft_b_shape.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_setting_soft_b_shape.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_setting_soft_b_shape.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_switch_left_select.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_switch_left_select.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_switch_left_select.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_switch_left_select.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_switch_left_selected.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_switch_left_selected.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_switch_left_selected.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_switch_left_selected.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_switch_left_selector.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_switch_left_selector.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_switch_left_selector.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_switch_left_selector.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_video_player_change_full.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_video_player_change_full.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_video_player_change_full.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_video_player_change_full.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_video_player_change_normal.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_video_player_change_normal.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_video_player_change_normal.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_video_player_change_normal.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_video_player_pause_big.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_video_player_pause_big.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_video_player_pause_big.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_video_player_pause_big.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_video_player_pause_small.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_video_player_pause_small.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_video_player_pause_small.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_video_player_pause_small.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_video_player_start_big.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_video_player_start_big.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_video_player_start_big.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_video_player_start_big.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_video_player_start_small.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_video_player_start_small.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_video_player_start_small.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_video_player_start_small.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_video_player_thumb_big.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_video_player_thumb_big.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_video_player_thumb_big.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_video_player_thumb_big.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_video_player_thumb_samll.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_video_player_thumb_samll.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_video_player_thumb_samll.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_video_player_thumb_samll.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_voice_left_select.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_voice_left_select.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_voice_left_select.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_voice_left_select.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_voice_left_selected.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_voice_left_selected.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_voice_left_selected.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_voice_left_selected.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_voice_left_selector.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_voice_left_selector.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_voice_left_selector.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_voice_left_selector.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_voice_right_process_humb.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_voice_right_process_humb.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_function_voice_right_process_humb.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_function_voice_right_process_humb.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_overmap_reset_size.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_overmap_reset_size.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/bus_p_overmap_reset_size.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/bus_p_overmap_reset_size.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/m1_order_end_closedoor_selecotr.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/m1_order_end_closedoor_selecotr.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/m1_order_end_closedoor_selecotr.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/m1_order_end_closedoor_selecotr.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/m1_order_end_opendoor_selecotr.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/m1_order_end_opendoor_selecotr.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/m1_order_end_opendoor_selecotr.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/m1_order_end_opendoor_selecotr.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/m1_order_line_checked_shape.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/m1_order_line_checked_shape.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/m1_order_line_checked_shape.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/m1_order_line_checked_shape.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/m1_order_line_shape.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/m1_order_line_shape.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/m1_order_line_shape.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/m1_order_line_shape.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/taxi_power_size_seekbar_style.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/taxi_power_size_seekbar_style.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/taxi_power_size_seekbar_style.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/taxi_power_size_seekbar_style.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/drawable/taxi_video_seekbar_style.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/taxi_video_seekbar_style.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/drawable/taxi_video_seekbar_style.xml rename to OCH/mogo-och-charter-passenger/src/main/res/drawable/taxi_video_seekbar_style.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_contain_fragment.xml b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_contain_fragment.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_contain_fragment.xml rename to OCH/mogo-och-charter-passenger/src/main/res/layout/m1_contain_fragment.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_devices_fragment.xml b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_devices_fragment.xml similarity index 93% rename from OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_devices_fragment.xml rename to OCH/mogo-och-charter-passenger/src/main/res/layout/m1_devices_fragment.xml index 9712189711..8a66824115 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_devices_fragment.xml +++ b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_devices_fragment.xml @@ -16,7 +16,7 @@ app:layout_constraintStart_toStartOf="parent" app:layout_constraintWidth_percent="0.4589"> - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_order_line_item.xml b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_order_line_item.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_order_line_item.xml rename to OCH/mogo-och-charter-passenger/src/main/res/layout/m1_order_line_item.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_order_noorder.xml b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_order_noorder.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_order_noorder.xml rename to OCH/mogo-och-charter-passenger/src/main/res/layout/m1_order_noorder.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_order_site_item.xml b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_order_site_item.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_order_site_item.xml rename to OCH/mogo-och-charter-passenger/src/main/res/layout/m1_order_site_item.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_soft_fragment.xml b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_soft_fragment.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_soft_fragment.xml rename to OCH/mogo-och-charter-passenger/src/main/res/layout/m1_soft_fragment.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_soft_temperature_item.xml b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_soft_temperature_item.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_soft_temperature_item.xml rename to OCH/mogo-och-charter-passenger/src/main/res/layout/m1_soft_temperature_item.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_statusview_blue_tooth.xml b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_statusview_blue_tooth.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_statusview_blue_tooth.xml rename to OCH/mogo-och-charter-passenger/src/main/res/layout/m1_statusview_blue_tooth.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_statusview_datetime.xml b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_statusview_datetime.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_statusview_datetime.xml rename to OCH/mogo-och-charter-passenger/src/main/res/layout/m1_statusview_datetime.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_video_fragment.xml b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_video_fragment.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_video_fragment.xml rename to OCH/mogo-och-charter-passenger/src/main/res/layout/m1_video_fragment.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_video_item.xml b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_video_item.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_video_item.xml rename to OCH/mogo-och-charter-passenger/src/main/res/layout/m1_video_item.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_video_view.xml b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_video_view.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/layout/m1_video_view.xml rename to OCH/mogo-och-charter-passenger/src/main/res/layout/m1_video_view.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/raw/aiqinghao.nt3d b/OCH/mogo-och-charter-passenger/src/main/res/raw/aiqinghao.nt3d similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/raw/aiqinghao.nt3d rename to OCH/mogo-och-charter-passenger/src/main/res/raw/aiqinghao.nt3d diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/raw/jiatinghao.nt3d b/OCH/mogo-och-charter-passenger/src/main/res/raw/jiatinghao.nt3d similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/raw/jiatinghao.nt3d rename to OCH/mogo-och-charter-passenger/src/main/res/raw/jiatinghao.nt3d diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/raw/m1.nt3d b/OCH/mogo-och-charter-passenger/src/main/res/raw/m1.nt3d similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/raw/m1.nt3d rename to OCH/mogo-och-charter-passenger/src/main/res/raw/m1.nt3d diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/raw/m1_voice_di.mp3 b/OCH/mogo-och-charter-passenger/src/main/res/raw/m1_voice_di.mp3 similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/raw/m1_voice_di.mp3 rename to OCH/mogo-och-charter-passenger/src/main/res/raw/m1_voice_di.mp3 diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/raw/pengyouhao.nt3d b/OCH/mogo-och-charter-passenger/src/main/res/raw/pengyouhao.nt3d similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/raw/pengyouhao.nt3d rename to OCH/mogo-och-charter-passenger/src/main/res/raw/pengyouhao.nt3d diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/values/attrs.xml b/OCH/mogo-och-charter-passenger/src/main/res/values/attrs.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/values/attrs.xml rename to OCH/mogo-och-charter-passenger/src/main/res/values/attrs.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/values/color.xml b/OCH/mogo-och-charter-passenger/src/main/res/values/color.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/values/color.xml rename to OCH/mogo-och-charter-passenger/src/main/res/values/color.xml diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/values/strings.xml b/OCH/mogo-och-charter-passenger/src/main/res/values/strings.xml similarity index 84% rename from OCH/mogo-och-charter-passenger/src/m1/res/values/strings.xml rename to OCH/mogo-och-charter-passenger/src/main/res/values/strings.xml index d2b0ab1abf..723d800b4f 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/res/values/strings.xml +++ b/OCH/mogo-och-charter-passenger/src/main/res/values/strings.xml @@ -29,6 +29,12 @@ 包车将在5分钟后结束,结束后我们将自动为您寻找停车点 + 距离(KM) + 距离(M) + 剩余(分) + 到达 + + diff --git a/OCH/mogo-och-charter-passenger/src/m1/res/values/styles.xml b/OCH/mogo-och-charter-passenger/src/main/res/values/styles.xml similarity index 100% rename from OCH/mogo-och-charter-passenger/src/m1/res/values/styles.xml rename to OCH/mogo-och-charter-passenger/src/main/res/values/styles.xml diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginModel.kt b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginModel.kt index 4b48f87c59..27f4b19f7b 100644 --- a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginModel.kt +++ b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginModel.kt @@ -3,8 +3,6 @@ package com.mogo.och.common.module.biz.model import android.annotation.SuppressLint import android.content.Context import com.mogo.eagle.core.data.BaseData -import com.mogo.eagle.core.data.map.MogoLocation -import com.mogo.eagle.core.function.api.autopilot.IMoGoChassisLocationGCJ02Listener import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager import com.mogo.eagle.core.utilcode.util.NetworkUtils import com.mogo.eagle.core.utilcode.util.SharedPrefs @@ -26,17 +24,13 @@ import com.mogo.och.common.module.utils.ToastUtilsOch * 网约车 - 出租车业务逻辑处理 */ @SuppressLint("StaticFieldLeak") -object OchCommonLoginModel : IMoGoChassisLocationGCJ02Listener { +object OchCommonLoginModel { private val TAG = "TaxiLoginModel" private var mContext: Context? = null var iTaxiLoginCallback: ITaxiLoginCallback? = null - private var mLongitude = 0.0 - private var mLatitude = 0.0 fun init(context: Context) { mContext = context.applicationContext - // 达到起始站围栏监听 - CallerChassisLocationGCJ02ListenerManager.addListener(TAG, this) } fun hasInit(): Boolean { @@ -46,13 +40,6 @@ object OchCommonLoginModel : IMoGoChassisLocationGCJ02Listener { return true } - override fun onChassisLocationGCJ02(gnssInfo: MogoLocation?) { - gnssInfo?.let { - mLongitude = it.longitude - mLatitude = it.latitude - } - } - fun getiTaxiLoginCallback(): ITaxiLoginCallback? { return iTaxiLoginCallback } @@ -64,8 +51,6 @@ object OchCommonLoginModel : IMoGoChassisLocationGCJ02Listener { fun release() { mContext = null iTaxiLoginCallback = null - // 注销到达起始站围栏监听 - CallerChassisLocationGCJ02ListenerManager.removeListener(TAG) } /** @@ -105,7 +90,8 @@ object OchCommonLoginModel : IMoGoChassisLocationGCJ02Listener { fun gotoLogin(phone: String, code: String) { mContext?.let { - val location4Login = TaxiLoginReqBean.Location4Login(mLatitude, mLongitude) + val location = CallerChassisLocationGCJ02ListenerManager.getChassisLocationGCJ02() + val location4Login = TaxiLoginReqBean.Location4Login(location.latitude, location.longitude) OchCommonServiceManager.gotoLoginBycode(it, phone, code, location4Login, object : OchCommonServiceCallback { override fun onSuccess(data: TaxiLoginRespBean?) { diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/LightAirconditionDoorCallback.kt b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/LightAirconditionDoorCallback.kt new file mode 100644 index 0000000000..69e1292ef4 --- /dev/null +++ b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/LightAirconditionDoorCallback.kt @@ -0,0 +1,26 @@ +package com.mogo.och.common.module.manager.devicemanage + +import com.mogo.och.common.module.manager.devicemanage.data.AirconditionStatus +import com.mogo.och.common.module.manager.devicemanage.data.HeaterStatue +import com.mogo.och.common.module.manager.devicemanage.data.LightStatus + +interface LightAirconditionDoorCallback { + + fun onAirconditionStatusCallback(heaterIsOpen: Boolean, airconditionStatus: AirconditionStatus, + isFirst: Boolean) { + } + + fun onHeaterStatusCallback(airconditionIsOpen: Boolean, heaterStatue: HeaterStatue, + isFirst: Boolean) { + } + + fun onDoorStatusCallback(isOpen: Boolean, isFirst: Boolean) {} + + fun onLightTop1Callback(lightStatus: LightStatus, isFirst: Boolean) { + } + + fun onLightTop2Callback(lightStatus: LightStatus, isFirst: Boolean) {} + + fun onLightAtmosphereCallback(lightStatus: LightStatus, isFirst: Boolean) {} + +} \ No newline at end of file diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/LightAirconditionDoorManager.kt b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/LightAirconditionDoorManager.kt new file mode 100644 index 0000000000..537cd55dff --- /dev/null +++ b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/LightAirconditionDoorManager.kt @@ -0,0 +1,48 @@ +package com.mogo.och.common.module.manager.devicemanage + +import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager +import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager +import com.mogo.eagle.core.utilcode.util.ToastUtils +import com.mogo.och.common.module.utils.RxUtils +import io.reactivex.disposables.Disposable + +object LightAirconditionDoorManager { + private const val TAG = "LightAirconditionDoorManager" + + private var dooorSubscribe: Disposable? = null + private var doorStatusSubscribe: Disposable? = null + + fun go2OpenDoor(isOpen:Boolean){ + val canOpenOrCloseDoor = canOpenOrCloseDoor() + if(!canOpenOrCloseDoor.isNullOrBlank()){ + ToastUtils.showShort(canOpenOrCloseDoor) + return + } + RxUtils.disposeSubscribe(dooorSubscribe) + dooorSubscribe = RxUtils.createSubscribe(1000) { + CallerAutoPilotControlManager.sendRoboBusJinlvM1FrontDoorCmd(0) + } + if(isOpen) { + CallerAutoPilotControlManager.sendRoboBusJinlvM1FrontDoorCmd(1) + }else{ + CallerAutoPilotControlManager.sendRoboBusJinlvM1FrontDoorCmd(2) + } + RxUtils.disposeSubscribe(doorStatusSubscribe) + doorStatusSubscribe = RxUtils.createSubscribe(6000) { + if (LightAirconditionDoorStatusManager.doorStatus.isOpen) { + ToastUtils.showShort("车门无法关闭,请使用车内物理按钮") + }else{ + ToastUtils.showShort("车门无法开启,请使用车内物理按钮") + } + } + } + + private fun canOpenOrCloseDoor(): String? { + val location = CallerChassisLocationGCJ02ListenerManager.getChassisLocationGCJ02() + return if(location.gnssSpeed<0.01){ + null + }else{ + "车辆正在运行、请稍后再试" + } + } +} diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/OCHM1LightAirconditionDoorStatusManager.kt b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/LightAirconditionDoorStatusManager.kt similarity index 76% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/OCHM1LightAirconditionDoorStatusManager.kt rename to OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/LightAirconditionDoorStatusManager.kt index a6057afea8..9f514b0204 100644 --- a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/OCHM1LightAirconditionDoorStatusManager.kt +++ b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/LightAirconditionDoorStatusManager.kt @@ -1,11 +1,15 @@ -package com.mogo.och.common.module.manager +package com.mogo.och.common.module.manager.devicemanage import chassis.VehicleStateOuterClass import com.mogo.eagle.core.function.api.autopilot.IMoGoRoboBusJinlvM1StatesListener import com.mogo.eagle.core.function.call.autopilot.CallerRoboBusJinlvM1StatesListenerManager +import com.mogo.och.common.module.manager.devicemanage.data.AirconditionStatus +import com.mogo.och.common.module.manager.devicemanage.data.DoorStatus +import com.mogo.och.common.module.manager.devicemanage.data.HeaterStatue +import com.mogo.och.common.module.manager.devicemanage.data.LightStatus import java.util.concurrent.ConcurrentHashMap -object OCHM1LightAirconditionDoorStatusManager : IMoGoRoboBusJinlvM1StatesListener { +object LightAirconditionDoorStatusManager : IMoGoRoboBusJinlvM1StatesListener { private const val TAG = "OCHM1LightAirconditionDoorStatusManager" init { @@ -13,7 +17,7 @@ object OCHM1LightAirconditionDoorStatusManager : IMoGoRoboBusJinlvM1StatesListen CallerRoboBusJinlvM1StatesListenerManager.setListenerHz(TAG,5) } - val M_LISTENERS: ConcurrentHashMap = + val M_LISTENERS: ConcurrentHashMap = ConcurrentHashMap() val airconditionStatus = AirconditionStatus(false, 0, 26, 2) @@ -23,7 +27,7 @@ object OCHM1LightAirconditionDoorStatusManager : IMoGoRoboBusJinlvM1StatesListen fun addListener( tag: String, - listener: OCHM1LightAirconditionDoorCallback + listener: LightAirconditionDoorCallback ) { if (M_LISTENERS.containsKey(tag)) { return @@ -47,7 +51,7 @@ object OCHM1LightAirconditionDoorStatusManager : IMoGoRoboBusJinlvM1StatesListen * 删除监听 * @param listener 要删除的监听对象 */ - fun removeListener(listener: OCHM1LightAirconditionDoorCallback) { + fun removeListener(listener: LightAirconditionDoorCallback) { if (!M_LISTENERS.containsValue(listener)) { return } @@ -58,36 +62,6 @@ object OCHM1LightAirconditionDoorStatusManager : IMoGoRoboBusJinlvM1StatesListen } } - - interface OCHM1LightAirconditionDoorCallback { - - fun onAirconditionStatusCallback(heaterIsOpen:Boolean,airconditionStatus: AirconditionStatus,isFirst: Boolean){} - - fun onHeaterStatusCallback(airconditionIsOpen: Boolean,heaterStatue: HeaterStatue,isFirst: Boolean){} - - fun onDoorStatusCallback(isOpen: Boolean,isFirst: Boolean){} - - fun onLightTop1Callback(lightStatus: LightStatus,isFirst: Boolean){} - fun onLightTop2Callback(lightStatus: LightStatus,isFirst: Boolean){} - fun onLightAtmosphereCallback(lightStatus: LightStatus,isFirst: Boolean){} - - } - - data class AirconditionStatus( - var isOpen: Boolean, - var pattert: Int, - var temperature: Int, - var windSpeed: Int - ) - - data class HeaterStatue(var isOpen: Boolean, var windSpeed: Int) - data class DoorStatus(var isOpen: Boolean) - data class LightStatus( - var isOpenLight1: Boolean, - var isOpenLight2: Boolean, - var isOpenatmosphere: Boolean - ) - override fun onRoboBusJinlvM1States(states: VehicleStateOuterClass.RoboBusJinlvM1State) { val airConditionerState = states.airConditionerState val heaterState = states.heaterState diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/AirconditionStatus.kt b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/AirconditionStatus.kt new file mode 100644 index 0000000000..31bc8a474a --- /dev/null +++ b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/AirconditionStatus.kt @@ -0,0 +1,8 @@ +package com.mogo.och.common.module.manager.devicemanage.data + +data class AirconditionStatus( + var isOpen: Boolean, + var pattert: Int, + var temperature: Int, + var windSpeed: Int +) diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/DoorStatus.kt b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/DoorStatus.kt new file mode 100644 index 0000000000..370f8a5dac --- /dev/null +++ b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/DoorStatus.kt @@ -0,0 +1,3 @@ +package com.mogo.och.common.module.manager.devicemanage.data + +data class DoorStatus(var isOpen: Boolean) \ No newline at end of file diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/HeaterStatue.kt b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/HeaterStatue.kt new file mode 100644 index 0000000000..80d2ef5690 --- /dev/null +++ b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/HeaterStatue.kt @@ -0,0 +1,3 @@ +package com.mogo.och.common.module.manager.devicemanage.data + +data class HeaterStatue(var isOpen: Boolean, var windSpeed: Int) diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/LightStatus.kt b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/LightStatus.kt new file mode 100644 index 0000000000..69f047a7cf --- /dev/null +++ b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/LightStatus.kt @@ -0,0 +1,7 @@ +package com.mogo.och.common.module.manager.devicemanage.data + +data class LightStatus( + var isOpenLight1: Boolean, + var isOpenLight2: Boolean, + var isOpenatmosphere: Boolean +) \ No newline at end of file diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/CoordinateCalculateRouteUtil.java b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/CoordinateCalculateRouteUtil.java index df36d2f672..94761923fe 100644 --- a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/CoordinateCalculateRouteUtil.java +++ b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/CoordinateCalculateRouteUtil.java @@ -14,6 +14,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; +import kotlin.Triple; import mogo.telematics.pad.MessagePad; /** @@ -69,6 +70,104 @@ public class CoordinateCalculateRouteUtil { return sumLength; } + public static float calculateRouteSumLength(List mRoutePoints, MogoLocation location, MogoLocation station){ + if (null == mRoutePoints || mRoutePoints.size() == 0) return 0; + + float lastSumLength = 0f; + + //当前位置距离轨迹中最近的点 + int currentRouteIndex = getArrivedPointIndexNew( + 0, mRoutePoints, location.getLongitude(), location.getLatitude() + ); + // 距离当前位置轨迹中最近的轨迹点 + MogoLocation currentPoint = mRoutePoints.get(currentRouteIndex); + // 当前位置距离最近的点的距离 + float calculateCurrentdex = CoordinateUtils.calculateLineDistance( + location.getLongitude(), location.getLatitude(), + currentPoint.getLongitude(), currentPoint.getLatitude() + ); + + + //要前往的站在轨迹中对应的点 + int stationPointInRouteIndex = getArrivedPointIndexNew( + currentRouteIndex, mRoutePoints, + station.getLongitude(), + station.getLatitude() + ); + // 距离站点最近的轨迹点 + MogoLocation stationPointInRoute = mRoutePoints.get(stationPointInRouteIndex); + // 站点距离轨迹中最近点的距离 + float calculateLineDistance = CoordinateUtils.calculateLineDistance( + stationPointInRoute.getLongitude(), stationPointInRoute.getLatitude(), + station.getLongitude(), station.getLatitude() + ); + + if (currentRouteIndex < stationPointInRouteIndex) { + // subList 是[) 需要的是[] + List subList = mRoutePoints.subList(currentRouteIndex, stationPointInRouteIndex + 1); + // 轨迹点所有的距离 + lastSumLength = calculateRouteSumLength(subList); + // region 站点坐标和 站点坐标对应轨迹点的坐标距离 + // 需要加距离 和下一个轨迹点成钝角 + if (stationPointInRouteIndex + 1 < mRoutePoints.size()) { + MogoLocation lastPointsNext = mRoutePoints.get(stationPointInRouteIndex + 1); + double degree = getDegree( + station.getLongitude(),station.getLatitude(), + stationPointInRoute.getLongitude(), stationPointInRoute.getLatitude(), + lastPointsNext.getLongitude(), lastPointsNext.getLatitude()); + if (degree > 90) { + lastSumLength = lastSumLength + calculateLineDistance; + } + } + // 需要减距离 和上一个轨迹点成钝角 + if (stationPointInRouteIndex - 1 >= 0) { + MogoLocation lastPointsPre = mRoutePoints.get(stationPointInRouteIndex - 1); + double degree = getDegree( + station.getLongitude(),station.getLatitude(), + stationPointInRoute.getLongitude(), stationPointInRoute.getLatitude(), + lastPointsPre.getLongitude(), lastPointsPre.getLatitude()); + if (degree > 90) { + lastSumLength = lastSumLength - calculateLineDistance; + } + } + // endregion + + // region 当前位置和 对应轨迹点的坐标距离 + // 需要加距离 和下一个轨迹点成钝角 + if (currentRouteIndex + 1 < stationPointInRouteIndex) { + MogoLocation currentPointsNext = mRoutePoints.get(stationPointInRouteIndex + 1); + double degree = getDegree( + location.getLongitude(),location.getLatitude(), + currentPoint.getLongitude(), currentPoint.getLatitude(), + currentPointsNext.getLongitude(), currentPointsNext.getLatitude()); + if (degree > 90) { + lastSumLength = lastSumLength - calculateCurrentdex; + } + } + + // 需要减距离 和上一个轨迹点成钝角 + if (currentRouteIndex - 1 >= 0) { + MogoLocation lastPointsPre = mRoutePoints.get(stationPointInRouteIndex - 1); + double degree = getDegree( + location.getLongitude(),location.getLatitude(), + currentPoint.getLongitude(), currentPoint.getLatitude(), + lastPointsPre.getLongitude(), lastPointsPre.getLatitude()); + if (degree > 90) { + lastSumLength = lastSumLength + calculateCurrentdex; + } + } + // endregion + + } else { + MogoLocation lastPoints = mRoutePoints.get(stationPointInRouteIndex); + lastSumLength = CoordinateUtils.calculateLineDistance( + lastPoints.getLongitude(), lastPoints.getLatitude(), + location.getLongitude(), location.getLatitude() + ); + } + return lastSumLength; + } + public static List coordinateConverterWgsToGcjListCommon(Context mContext, List models) { //转成MogoLatLng集合 List list = new ArrayList<>(); @@ -340,4 +439,56 @@ public class CoordinateCalculateRouteUtil { //弧度转角度制 return (int) (180 * radian / Math.PI); } + + + private static Triple ball2xyz(Double thera,Double fie,Double r){ + double x = r * Math.cos(thera) * Math.cos(fie); + double y = r * Math.cos(thera) * Math.sin(fie); + double z = r * Math.sin(thera); + return new Triple(x,y,z); + } + + /** + * https://blog.csdn.net/reborn_lee/article/details/82497577 + * 将地理经纬度转换成笛卡尔坐标系 + */ + private static Triple geo2xyz(double lat,double lng){ + double thera = (Math.PI * lat) / 180; + double fie = (Math.PI * lng) / 180; + return ball2xyz(thera, fie,6400.0); + } + + /** + * 计算3个地理坐标点之间的夹角 + * @param l1 顶点坐标 + * @param l2 + * @param l3 + * @return l1为顶点的角度 精度没有angleOflocation高 + */ + public static double getDegree(LatLng l2,LatLng l1,LatLng l3) { + Triple p1 = geo2xyz(l1.latitude,l1.longitude); + Triple p2 = geo2xyz(l2.latitude,l2.longitude); + Triple p3 = geo2xyz(l3.latitude,l3.longitude); + + double x1 = p1.getFirst(); + double y1 = p1.getSecond(); + double z1 = p1.getThird(); + + double x2 = p2.getFirst(); + double y2 = p2.getSecond(); + double z2 = p2.getThird(); + + double x3 = p3.getFirst(); + double y3 = p3.getSecond(); + double z3 = p3.getThird(); + + // 计算向量 P2P1 和 P2P3 的夹角 https://www.zybang.com/question/3379a30c0dd3041b3ef966803f0bf758.html + double p1P2 = Math.sqrt(Math.pow(x2 - x1,2.0) + Math.pow(y2 - y1,2.0) + Math.pow(z2 - z1,2.0)); + double p2p3 = Math.sqrt(Math.pow(x3 - x2,2.0) + Math.pow(y3 - y2,2.0) + Math.pow(z3 - z2,2.0)); + + double p = (x1 - x2) * (x3 - x2) + (y1 - y2) * (y3 - y2) + (z1 - z2) * (z3 - z2); //P2P1*P2P3 + + return (Math.acos(p / (p1P2 * p2p3)) / Math.PI) * 180; + } + } diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/DateTimeUtil.java b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/DateTimeUtil.java index 37550ad892..1330b852ee 100644 --- a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/DateTimeUtil.java +++ b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/DateTimeUtil.java @@ -110,4 +110,15 @@ public class DateTimeUtil { calendar.set(Calendar.SECOND,0); return calendar.getTimeInMillis(); } + + public static String getAfterSecondTime(int timeInSecond,String formate){ + Calendar beforeTime = Calendar.getInstance(); + beforeTime.add(Calendar.SECOND, timeInSecond); + return formatCalendarToString(beforeTime, formate); + } + public static String getAfterSecondTime(int timeInSecond){ + Calendar beforeTime = Calendar.getInstance(); + beforeTime.add(Calendar.SECOND, timeInSecond); + return formatCalendarToString(beforeTime, DateTimeUtil.HH_mm); + } } diff --git a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/utils/RxUtils.kt b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/RxUtils.kt similarity index 95% rename from OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/utils/RxUtils.kt rename to OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/RxUtils.kt index 9f3e691023..cb6cbd7dbd 100644 --- a/OCH/mogo-och-charter-passenger/src/m1/java/com/mogo/och/bus/passenger/utils/RxUtils.kt +++ b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/RxUtils.kt @@ -1,4 +1,4 @@ -package com.mogo.och.bus.passenger.utils +package com.mogo.och.common.module.utils import io.reactivex.Observable import io.reactivex.android.schedulers.AndroidSchedulers diff --git a/OCH/mogo-och-shuttle-passenger/build.gradle b/OCH/mogo-och-shuttle-passenger/build.gradle index 720eb01ca9..3bdddf460d 100644 --- a/OCH/mogo-och-shuttle-passenger/build.gradle +++ b/OCH/mogo-och-shuttle-passenger/build.gradle @@ -52,11 +52,6 @@ android { dimension "vehicle" buildConfigField 'int', 'NEW_TEST', '0' } - // 车型:金旅m1 小巴业务 - m1 { - dimension "vehicle" - buildConfigField 'int', 'NEW_TEST', '1' - } // 车型:金旅m1 小巴业务 m2 { diff --git a/app/README.md b/app/README.md index 709e801e2f..a9c72cf527 100644 --- a/app/README.md +++ b/app/README.md @@ -45,8 +45,8 @@ | 车型 | 配置所在文件 | 档位 | 配置 | |:-|:-|:-|:-| | 东风、红旗 | fOchTaxi.gradle、fOchTaxiPassenger.gradle | P、R | buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_P);add(chassis.Chassis.GearPosition.GEAR_R);}}' | -| 金旅小巴 | fOchBus.gradle、fOchBusPassenger.gradle、fOchShuttle.gradle、fOchShuttlePassenger.gradle | N、R | buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_N);add(chassis.Chassis.GearPosition.GEAR_R);}}' | +| 金旅小巴 | ochJL.gradle、ochJL.gradle、ochJL.gradle、ochJL.gradle | N、R | buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_N);add(chassis.Chassis.GearPosition.GEAR_R);}}' | | M1 | fOchBusPassengerM1.gradle | 不限制档位 | buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'null' | -| M2 | fOchShuttlePassengerM2.gradle | N、P、R | buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_N);add(chassis.Chassis.GearPosition.GEAR_P);add(chassis.Chassis.GearPosition.GEAR_R);}}' | -| 清扫车 | fOchSweeper.gradle | 不限制档位 | buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'null' | +| M2 | ochM2.gradle | N、P、R | buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_N);add(chassis.Chassis.GearPosition.GEAR_P);add(chassis.Chassis.GearPosition.GEAR_R);}}' | +| 清扫车 | ochFT.gradle | 不限制档位 | buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'null' | | 开沃 | 暂无 | 不限制档位 | buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'null' | diff --git a/app/build.gradle b/app/build.gradle index ccbbd73e1b..881db2900c 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -177,7 +177,9 @@ android { shrinkResources false signingConfig signingConfigs.release manifestPlaceholders = [ - MAP_SDK_VERSION: properties.getProperty("MAP_SDK_VERSION") + MAP_SDK_VERSION : properties.getProperty("MAP_SDK_VERSION"), + // 高德地图鉴权信息 + AMAP_API_VALUE : rootProject.ext.android.fLauncherAmapApiValue, ] } release { @@ -189,7 +191,9 @@ android { proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' manifestPlaceholders = [ - MAP_SDK_VERSION: properties.getProperty("MAP_SDK_VERSION") + MAP_SDK_VERSION : properties.getProperty("MAP_SDK_VERSION"), + // 高德地图鉴权信息 + AMAP_API_VALUE : rootProject.ext.android.fLauncherAmapApiValue, ] } } @@ -214,7 +218,7 @@ android { // 项目 business // 业务线 product // 车型 vehicle - flavorDimensions "project","product","vehicle" ,"basic", "env" + flavorDimensions "project","product","role","vehicle" ,"basic", "env" productFlavors { // launcher app launcher { @@ -246,31 +250,6 @@ android { buildConfigField 'String', 'tempConfig', "\"${readFileToJsonTemp("dali").replace("\"", "\\\"")}\"" } - // 空业务 主要是给鹰眼使用 - noop { - dimension "product" - } - // 小巴车业务 - bus { - dimension "product" - } - // 出租车业务 - taxi { - dimension "product" - } - // 清扫车业务 - sweeper { - dimension "product" - } - // 接驳车业务 - shuttle{ - dimension "product" - } - // 包车业务 - charter{ - dimension "product" - } - // 配置网络环境,QA、线上、演示 qa { dimension "env" @@ -285,25 +264,26 @@ android { buildConfigField 'int', 'NET_ENV', '4' } } + apply from: "./script/roleFlavors/driver.gradle" + apply from: "./script/roleFlavors/passenger.gradle" + apply from: "./script/roleFlavors/driverpassenger.gradle" + apply from: "./script/productFlavors/bus.gradle" + apply from: "./script/productFlavors/charter.gradle" + apply from: "./script/productFlavors/noop.gradle" + apply from: "./script/productFlavors/shuttle.gradle" + apply from: "./script/productFlavors/sweeper.gradle" + apply from: "./script/productFlavors/taxi.gradle" // 配置不同渠道参数,直接影响功能完整度 - apply from: "./productFlavors/fPadLenovo.gradle" - apply from: "./productFlavors/fOchBus.gradle" - apply from: "./productFlavors/fOchShuttle.gradle" - apply from: "./productFlavors/fOchShuttleM2.gradle" - apply from: "./productFlavors/fOchTaxi.gradle" - apply from: "./productFlavors/fOchBusPassenger.gradle" - apply from: "./productFlavors/fOchShuttlePassengerM2.gradle" - apply from: "./productFlavors/fOchShuttlePassenger.gradle" - apply from: "./productFlavors/fOchTaxiPassenger.gradle" - apply from: "./productFlavors/fOchSweeper.gradle" - apply from: "./productFlavors/fMultiDisplayOchBus.gradle" - apply from: "./productFlavors/fMultiDisplayOchTaxi.gradle" + apply from: "./script/vehicleFlavors/fPadLenovo.gradle" + apply from: "./script/vehicleFlavors/ochJL.gradle" + apply from: "./script/vehicleFlavors/ochJL.gradle" + apply from: "./script/vehicleFlavors/ochM2.gradle" + apply from: "./script/vehicleFlavors/ochDFHQ.gradle" + apply from: "./script/vehicleFlavors/ochFT.gradle" //包车 - apply from: "./productFlavors/ochDriverM1.gradle" - apply from: "./productFlavors/ochPassengerM1.gradle" - apply from: "./productFlavors/fMultiDisplaySweeper.gradle" - apply from: "./productFlavors/flavorsFilterConfig.gradle" + apply from: "./script/vehicleFlavors/ochM1.gradle" + apply from: "./script/flavorfilter/flavorsFilterConfig.gradle" packagingOptions { exclude 'META-INF/io.netty.versions.properties' @@ -352,7 +332,7 @@ dependencies { androidTestImplementation project(':core:mogo-core-res') - apply from: "./functions/och.gradle" + apply from: "./script/functions/och.gradle" androidTestImplementation rootProject.ext.dependencies.androidx_test_core androidTestImplementation rootProject.ext.dependencies.androidx_test_core_ktx diff --git a/app/config/tempConfig.json b/app/config/tempConfig.json index 5fb927ab6d..b4482bbd28 100644 --- a/app/config/tempConfig.json +++ b/app/config/tempConfig.json @@ -1,6 +1,6 @@ { "mogo": { - "shuttlepassenger": { + "shuttlepassengerochjl": { "ads": [ { "path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357256102/1.jpg", @@ -64,7 +64,7 @@ } ] }, - "shuttlepassengerm2": { + "shuttlepassengerochm2": { "ads": [ { "path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1681716116231/6923474a99a1983c9a0410ad3357888d.mov", @@ -82,7 +82,7 @@ } }, "dali": { - "shuttlepassenger": { + "shuttlepassengerochjl": { "ads": [ { "path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1676357256102/1.jpg", @@ -146,7 +146,7 @@ } ] }, - "shuttlepassengerm2": { + "shuttlepassengerochm2": { "ads": [ { "path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1681716116231/6923474a99a1983c9a0410ad3357888d.mov", @@ -164,7 +164,7 @@ } }, "yantai": { - "shuttlepassenger": { + "shuttlepassengerochjl": { "ads": [ { "path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1681210971943/yangmadou.mp4", @@ -180,7 +180,7 @@ } ] }, - "shuttlepassengerm2": { + "shuttlepassengerochm2": { "ads": [ { "path": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1681716116231/6923474a99a1983c9a0410ad3357888d.mov", diff --git a/app/functions/och.gradle b/app/functions/och.gradle deleted file mode 100644 index 77d27d856a..0000000000 --- a/app/functions/och.gradle +++ /dev/null @@ -1,74 +0,0 @@ -// 网约车服务:仅小巴车、出租车渠道用 -project.dependencies { - if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { - fPadLenovoImplementation(rootProject.ext.dependencies.mogoochnoop) - // sweeper清扫车 - fOchSweeperImplementation(rootProject.ext.dependencies.mogoochsweeper) - - // Bus司机端 - fOchBusImplementation(rootProject.ext.dependencies.mogoochbus) - // Bus乘客端 - fOchBusPassengerImplementation(rootProject.ext.dependencies.mogoochbus) - fOchBusPassengerM1Implementation(rootProject.ext.dependencies.mogoochbus) - fOchShuttlePassengerM2Implementation(rootProject.ext.dependencies.mogoochbus) - - // taxi司机端 - fOchTaxiImplementation(rootProject.ext.dependencies.mogoochtaxi) - // taxi乘客端 - fOchTaxiPassengerImplementation(rootProject.ext.dependencies.mogoochtaxi) - - // Bus司机端 - fMultiDisplayOchBusImplementation(rootProject.ext.dependencies.mogoochbus) - // Bus乘客端 - fMultiDisplayOchBusImplementation(rootProject.ext.dependencies.mogoochbus) - - //接驳车司乘端 - fOchShuttleImplementation(rootProject.ext.dependencies.mogoochbus) - fOchShuttlePassengerImplementation(rootProject.ext.dependencies.mogoochbus) - - // taxi司机端 - fMultiDisplayOchTaxiImplementation(rootProject.ext.dependencies.mogoochtaxi) - // taxi乘客端 - fMultiDisplayOchTaxiImplementation(rootProject.ext.dependencies.mogoochtaxi) - } else { - fPadLenovoImplementation (project(':OCH:mogo-och-noop')) - // sweeper 清扫车 - fOchSweeperImplementation (project(':OCH:mogo-och-sweeper')) - - // Bus司机端 - fOchBusImplementation (project(':OCH:mogo-och-bus')) - // Bus乘客端 - fOchBusPassengerImplementation (project(':OCH:mogo-och-bus-passenger')) - - - // 包车 - ochDriverM1Implementation (project(':OCH:mogo-och-charter')) - ochPassengerM1Implementation (project(':OCH:mogo-och-charter-passenger')) - - // taxi司机端 - fOchTaxiImplementation (project(':OCH:mogo-och-taxi')) - // taxi乘客端 - fOchTaxiPassengerImplementation (project(':OCH:mogo-och-taxi-passenger')) - - // 多屏幕-Bus司机端 - fMultiDisplayOchBusImplementation (project(':OCH:mogo-och-bus')) - // 多屏幕-Bus乘客端 - fMultiDisplayOchBusImplementation (project(':OCH:mogo-och-bus-passenger')) - - // 多屏幕-taxi司机端 - //接驳车司乘端 - fOchShuttleImplementation (project(':OCH:mogo-och-shuttle')) - fOchShuttleM2Implementation (project(':OCH:mogo-och-shuttle')) - fOchShuttlePassengerImplementation (project(':OCH:mogo-och-shuttle-passenger')) - fOchShuttlePassengerM2Implementation (project(':OCH:mogo-och-shuttle-passenger')) - - // taxi司机端 - fMultiDisplayOchTaxiImplementation (project(':OCH:mogo-och-taxi')) - // 多屏幕-taxi乘客端 - fMultiDisplayOchTaxiImplementation (project(':OCH:mogo-och-taxi-passenger')) - - // 清扫车-多屏幕 - fMultiDisplaySweeperImplementation (project(':OCH:mogo-och-sweeper')) - - } -} diff --git a/app/productFlavors/fMultiDisplayOchBus.gradle b/app/productFlavors/fMultiDisplayOchBus.gradle deleted file mode 100644 index 6705e54bc7..0000000000 --- a/app/productFlavors/fMultiDisplayOchBus.gradle +++ /dev/null @@ -1,53 +0,0 @@ -project.android.productFlavors { - // 支持多个屏幕异显示的终端,即一个终端包含司机端、乘客端 - fMultiDisplayOchBus { - externalNativeBuild { - ndk { - // 设置支持的SO库架构 - abiFilters "armeabi-v7a", "arm64-v8a" - } - } - minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo - targetSdkVersion rootProject.ext.android.targetSdkVersionPadLenovo - versionCode rootProject.versionCode as int - versionName rootProject.versionName - // 应用包名 - applicationId rootProject.ext.android.fLauncherApplicationId - dimension "vehicle" - // 和 och/mogo-och-bus-passenger 的flavors的m1对应 - matchingFallbacks = ['jinlvvan'] - - // 车机类型,主要用于区分自研车机还是别人家的车机,自研车机类型为0 - buildConfigField 'int', 'CAR_MACHINE_TYPE', '2' - //高德地图鉴权信息 - manifestPlaceholders = [ - AMAP_API_VALUE : rootProject.ext.android.fLauncherAmapApiValue, - CHANNEL_VALUE : "fMultiDisplayOchBus", - ACTIVITY_ROOT : true, - SCREEN_ORIENTATION: "landscape" - ] - - // 是否需要实时上报坐标 - buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true' - // GPS数据提供源: 0-Android系统,1-工控机,2-OBU - buildConfigField 'int', 'GPS_PROVIDER', "1" - - // 构建的应用身份类型,具体查看 README.md APP_IDENTITY_MODE规则 - buildConfigField 'String', 'APP_IDENTITY_MODE', "\"Bus_Driver_JLKV\"" - // 连接的工控机IP地址 - buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.8.102\"" - // 构建的是否是演示(美化)模式 - buildConfigField 'boolean', 'IS_DEMO_MODE', 'false' - // 构建的是否要动态更换模型 - buildConfigField 'boolean', 'IS_CAR_MODEL_CHANGE', 'true' - // 是否需要重写状态栏 - buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' - - // 构建 是否支持多屏异显异交互 - buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'true' - - //不能启动自驾的档位 - buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'null' - } - -} \ No newline at end of file diff --git a/app/productFlavors/fMultiDisplayOchTaxi.gradle b/app/productFlavors/fMultiDisplayOchTaxi.gradle deleted file mode 100644 index 2e9691dca8..0000000000 --- a/app/productFlavors/fMultiDisplayOchTaxi.gradle +++ /dev/null @@ -1,56 +0,0 @@ -project.android.productFlavors { - // 支持多个屏幕异显示的终端,即一个终端包含司机端、乘客端 - fMultiDisplayOchTaxi { - externalNativeBuild { - ndk { - // 设置支持的SO库架构 - abiFilters "armeabi-v7a", "arm64-v8a" - } - } - minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo - targetSdkVersion rootProject.ext.android.targetSdkVersionPadLenovo - versionCode rootProject.versionCode as int - versionName rootProject.versionName - // 应用包名 - applicationId rootProject.ext.android.fLauncherApplicationId - dimension "vehicle" - - // 车机类型,主要用于区分自研车机还是别人家的车机,自研车机类型为0 - buildConfigField 'int', 'CAR_MACHINE_TYPE', '2' - // 配置AndroidManifest.xml中用到的参数 - manifestPlaceholders = [ - // 高德地图鉴权信息 - AMAP_API_VALUE : rootProject.ext.android.fLauncherAmapApiValue, - // BUGLY_APP_CHANNEL - CHANNEL_VALUE : "fMultiDisplayOchTaxi", - // 在启动的时候把Task给清空 - ACTIVITY_ROOT : true, - // Activity的朝向 - SCREEN_ORIENTATION: "landscape" - ] - - // 是否需要实时上报坐标 - buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true' - // GPS数据提供源: 0-Android系统,1-工控机,2-OBU - buildConfigField 'int', 'GPS_PROVIDER', "1" - - // 构建的应用身份类型,具体查看 README.md APP_IDENTITY_MODE规则 - buildConfigField 'String', 'APP_IDENTITY_MODE', "\"Taxi_Driver_DFHQ\"" - // 连接的工控机IP地址 - buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.1.102\"" - // 构建的是否是演示(美化)模式 - buildConfigField 'boolean', 'IS_DEMO_MODE', 'false' - // 构建的是否要动态更换模型 - buildConfigField 'boolean', 'IS_CAR_MODEL_CHANGE', 'true' - // 是否需要重写状态栏 - buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' - - - // 构建 是否支持多屏异显异交互 - buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'true' - - //不能启动自驾的档位 - buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'null' - } - -} \ No newline at end of file diff --git a/app/productFlavors/fMultiDisplaySweeper.gradle b/app/productFlavors/fMultiDisplaySweeper.gradle deleted file mode 100644 index 4dddc88a45..0000000000 --- a/app/productFlavors/fMultiDisplaySweeper.gradle +++ /dev/null @@ -1,54 +0,0 @@ -project.android.productFlavors { - // 支持多个屏幕异显示的终端,即一个终端包含司机端、乘客端 - fMultiDisplaySweeper { - externalNativeBuild { - ndk { - // 设置支持的SO库架构 - abiFilters "armeabi-v7a", "arm64-v8a" - } - } - minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo - targetSdkVersion rootProject.ext.android.targetSdkVersionPadLenovo - versionCode rootProject.versionCode as int - versionName rootProject.versionName - // 应用包名 - applicationId rootProject.ext.android.fLauncherApplicationId - dimension "vehicle" - - // 车机类型,主要用于区分自研车机还是别人家的车机,自研车机类型为0 - buildConfigField 'int', 'CAR_MACHINE_TYPE', '2' - - // 配置AndroidManifest.xml中用到的参数 - manifestPlaceholders = [ - // 高德地图鉴权信息 - AMAP_API_VALUE : rootProject.ext.android.fLauncherAmapApiValue, - // BUGLY_APP_CHANNEL - CHANNEL_VALUE : "fMultiDisplaySweeper", - // 在启动的时候把Task给清空 - ACTIVITY_ROOT : true, - // Activity的朝向 - SCREEN_ORIENTATION: "landscape" - ] - - // 是否需要实时上报坐标 - buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true' - // GPS数据提供源: 0-Android系统,1-工控机,2-OBU - buildConfigField 'int', 'GPS_PROVIDER', "1" - - // 构建的应用身份类型,具体查看 README.md APP_IDENTITY_MODE规则 - buildConfigField 'String', 'APP_IDENTITY_MODE', "\"Taxi_Driver_Base\"" - // 连接的工控机IP地址 - buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.1.102\"" - // 构建的是否是演示(美化)模式 - buildConfigField 'boolean', 'IS_DEMO_MODE', 'false' - // 构建的是否要动态更换模型 - buildConfigField 'boolean', 'IS_CAR_MODEL_CHANGE', 'true' - - // 构建 是否支持多屏异显异交互 - buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'true' - - //不能启动自驾的档位 - buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'null' - } - -} \ No newline at end of file diff --git a/app/productFlavors/fOchBus.gradle b/app/productFlavors/fOchBus.gradle deleted file mode 100644 index 09683e1c91..0000000000 --- a/app/productFlavors/fOchBus.gradle +++ /dev/null @@ -1,55 +0,0 @@ -project.android.productFlavors { - // 衡阳-联想Pad-网约车-小巴车 - fOchBus { - externalNativeBuild { - ndk { - // 设置支持的SO库架构 - abiFilters "armeabi-v7a", "arm64-v8a" - } - } - minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo - targetSdkVersion rootProject.ext.android.targetSdkVersionPadLenovo - versionCode rootProject.versionCode as int - versionName rootProject.versionName - // 应用包名 - applicationId rootProject.ext.android.fLauncherApplicationId - dimension "vehicle" - matchingFallbacks = ['jinlvvan'] - - // 车机类型,主要用于区分自研车机还是别人家的车机,自研车机类型为0 - buildConfigField 'int', 'CAR_MACHINE_TYPE', '2' - // 配置AndroidManifest.xml中用到的参数 - manifestPlaceholders = [ - // 高德地图鉴权信息 - AMAP_API_VALUE : rootProject.ext.android.fLauncherAmapApiValue, - // BUGLY_APP_CHANNEL - CHANNEL_VALUE : "fOchBus", - // 在启动的时候把Task给清空 - ACTIVITY_ROOT : true, - // Activity的朝向 - SCREEN_ORIENTATION: "landscape" - ] - - // 是否需要实时上报坐标 - buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true' - // GPS数据提供源: 0-Android系统,1-工控机,2-OBU - buildConfigField 'int', 'GPS_PROVIDER', "1" - - // 构建的应用身份类型,具体查看 README.md APP_IDENTITY_MODE规则 - buildConfigField 'String', 'APP_IDENTITY_MODE', "\"Bus_Driver_JL\"" - // 连接的工控机IP地址 - buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.8.102\"" - // 构建的是否是演示(美化)模式 - buildConfigField 'boolean', 'IS_DEMO_MODE', 'false' - // 构建的是否要动态更换模型 - buildConfigField 'boolean', 'IS_CAR_MODEL_CHANGE', 'true' - // 是否需要重写状态栏 - buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' - - // 构建 是否支持多屏异显异交互 - buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'false' - - //Bus不能启动自驾的档位 - buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_N);add(chassis.Chassis.GearPosition.GEAR_R);}}' - } -} \ No newline at end of file diff --git a/app/productFlavors/fOchBusPassenger.gradle b/app/productFlavors/fOchBusPassenger.gradle deleted file mode 100644 index 5a585b833b..0000000000 --- a/app/productFlavors/fOchBusPassenger.gradle +++ /dev/null @@ -1,51 +0,0 @@ -project.android.productFlavors { - // 衡阳-联想Pad-网约车-小巴车-乘客端 - fOchBusPassenger { - externalNativeBuild { - ndk { - // 设置支持的SO库架构 - abiFilters "armeabi-v7a", "arm64-v8a" - } - } - minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo - targetSdkVersion rootProject.ext.android.targetSdkVersionPadLenovo - // 应用包名 - applicationId rootProject.ext.android.fLauncherApplicationId - dimension "vehicle" - // 和 och/mogo-och-bus-passenger 的flavors的jinlvvan对应 - matchingFallbacks = ['jinlvvan'] - - // 车机类型,主要用于区分自研车机还是别人家的车机,自研车机类型为0 - buildConfigField 'int', 'CAR_MACHINE_TYPE', '2' - //高德地图鉴权信息 - manifestPlaceholders = [ - AMAP_API_VALUE: rootProject.ext.android.fLauncherAmapApiValue, - CHANNEL_VALUE: "fOchBusPassenger", - ACTIVITY_ROOT:true, - SCREEN_ORIENTATION: "landscape" - ] - - // 是否需要实时上报坐标 - buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true' - // GPS数据提供源: 0-Android系统,1-工控机,2-OBU - buildConfigField 'int', 'GPS_PROVIDER', "1" - - // 构建的应用身份类型,具体查看 README.md APP_IDENTITY_MODE规则 - buildConfigField 'String', 'APP_IDENTITY_MODE', "\"Bus_Passenger_JL\"" - // 连接的工控机IP地址 - buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.8.103\"" - // 构建的是否是演示(美化)模式 - buildConfigField 'boolean', 'IS_DEMO_MODE', 'false' - // 构建的是否要动态更换模型 - buildConfigField 'boolean', 'IS_CAR_MODEL_CHANGE', 'false' - // 是否需要重写状态栏 - buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' - - - // 构建 是否支持多屏异显异交互 - buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'true' - - //Bus不能启动自驾的档位 - buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_N);add(chassis.Chassis.GearPosition.GEAR_R);}}' - } -} \ No newline at end of file diff --git a/app/productFlavors/fOchShuttle.gradle b/app/productFlavors/fOchShuttle.gradle deleted file mode 100644 index 10af854fc0..0000000000 --- a/app/productFlavors/fOchShuttle.gradle +++ /dev/null @@ -1,56 +0,0 @@ -project.android.productFlavors { - // 衡阳-联想Pad-网约车-小巴车 - fOchShuttle { - externalNativeBuild { - ndk { - // 设置支持的SO库架构 - abiFilters "armeabi-v7a", "arm64-v8a" - } - } - minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo - targetSdkVersion rootProject.ext.android.targetSdkVersionPadLenovo - versionCode rootProject.versionCode as int - versionName rootProject.versionName - // 应用包名 - applicationId rootProject.ext.android.fLauncherApplicationId - dimension "vehicle" - // 和 och/mogo-och-bus-passenger 的flavors的shuttle对应 - matchingFallbacks = ['shuttle'] - - // 车机类型,主要用于区分自研车机还是别人家的车机,自研车机类型为0 - buildConfigField 'int', 'CAR_MACHINE_TYPE', '2' - //高德地图鉴权信息 - manifestPlaceholders = [ - AMAP_API_VALUE : rootProject.ext.android.fLauncherAmapApiValue, - CHANNEL_VALUE : "fOchShuttle", ACTIVITY_ROOT: true, - SCREEN_ORIENTATION: "landscape" - ] - - // 是否基于地图 - buildConfigField 'boolean', 'IS_MAP_BASED', 'true' - - // 是否需要实时上报坐标 - buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true' - // GPS数据提供源: 0-Android系统,1-工控机,2-OBU - buildConfigField 'int', 'GPS_PROVIDER', "1" - - // 构建的应用身份类型,具体查看 README.md APP_IDENTITY_MODE规则 - buildConfigField 'String', 'APP_IDENTITY_MODE', "\"Shuttle_Driver_JL\"" - // 连接的工控机IP地址 - buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.8.103\"" - // 构建的是否是演示(美化)模式 - buildConfigField 'boolean', 'IS_DEMO_MODE', 'false' - - // 构建的是否要动态更换模型 - buildConfigField 'boolean', 'IS_CAR_MODEL_CHANGE', 'true' - // 是否需要重写状态栏 - buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' - - - // 构建 是否支持多屏异显异交互 - buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'false' - - //Bus不能启动自驾的档位 - buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_N);add(chassis.Chassis.GearPosition.GEAR_R);}}' - } -} \ No newline at end of file diff --git a/app/productFlavors/fOchShuttleM2.gradle b/app/productFlavors/fOchShuttleM2.gradle deleted file mode 100644 index 686a4442c0..0000000000 --- a/app/productFlavors/fOchShuttleM2.gradle +++ /dev/null @@ -1,56 +0,0 @@ -project.android.productFlavors { - // 衡阳-联想Pad-网约车-小巴车 - fOchShuttleM2 { - externalNativeBuild { - ndk { - // 设置支持的SO库架构 - abiFilters "armeabi-v7a", "arm64-v8a" - } - } - minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo - targetSdkVersion rootProject.ext.android.targetSdkVersionPadLenovo - versionCode rootProject.versionCode as int - versionName rootProject.versionName - // 应用包名 - applicationId rootProject.ext.android.fLauncherApplicationId - dimension "vehicle" - // 和 och/mogo-och-bus-passenger 的flavors的shuttle对应 - matchingFallbacks = ['shuttle'] - - // 车机类型,主要用于区分自研车机还是别人家的车机,自研车机类型为0 - buildConfigField 'int', 'CAR_MACHINE_TYPE', '2' - //高德地图鉴权信息 - manifestPlaceholders = [ - AMAP_API_VALUE : rootProject.ext.android.fLauncherAmapApiValue, - CHANNEL_VALUE : "fOchShuttleM2", ACTIVITY_ROOT: true, - SCREEN_ORIENTATION: "landscape" - ] - - // 是否基于地图 - buildConfigField 'boolean', 'IS_MAP_BASED', 'true' - - // 是否需要实时上报坐标 - buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true' - // GPS数据提供源: 0-Android系统,1-工控机,2-OBU - buildConfigField 'int', 'GPS_PROVIDER', "1" - - // 构建的应用身份类型,具体查看 README.md APP_IDENTITY_MODE规则 - buildConfigField 'String', 'APP_IDENTITY_MODE', "\"Shuttle_Driver_M2\"" - // 连接的工控机IP地址 - buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.8.103\"" - // 构建的是否是演示(美化)模式 - buildConfigField 'boolean', 'IS_DEMO_MODE', 'false' - - // 构建的是否要动态更换模型 - buildConfigField 'boolean', 'IS_CAR_MODEL_CHANGE', 'false' - // 是否需要重写状态栏 - buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' - - - // 构建 是否支持多屏异显异交互 - buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'false' - - //Bus不能启动自驾的档位 - buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_N);add(chassis.Chassis.GearPosition.GEAR_R);}}' - } -} \ No newline at end of file diff --git a/app/productFlavors/fOchShuttlePassenger.gradle b/app/productFlavors/fOchShuttlePassenger.gradle deleted file mode 100644 index 5f7bfc6a6a..0000000000 --- a/app/productFlavors/fOchShuttlePassenger.gradle +++ /dev/null @@ -1,54 +0,0 @@ -project.android.productFlavors { - // 衡阳-联想Pad-网约车-小巴车-乘客端 - fOchShuttlePassenger { - externalNativeBuild { - ndk { - // 设置支持的SO库架构 - abiFilters "armeabi-v7a", "arm64-v8a" - } - } - minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo - targetSdkVersion rootProject.ext.android.targetSdkVersionPadLenovo - // 应用包名 - applicationId rootProject.ext.android.fLauncherApplicationId - dimension "vehicle" - matchingFallbacks = ['jinlvvan'] - - // 车机类型,主要用于区分自研车机还是别人家的车机,自研车机类型为0 - buildConfigField 'int', 'CAR_MACHINE_TYPE', '2' - //高德地图鉴权信息 - manifestPlaceholders = [ - AMAP_API_VALUE : rootProject.ext.android.fLauncherAmapApiValue, - CHANNEL_VALUE : "fOchShuttlePassenger", - ACTIVITY_ROOT : true, - // Activity的朝向 - SCREEN_ORIENTATION: "landscape" - ] - - // 是否基于地图 - buildConfigField 'boolean', 'IS_MAP_BASED', 'true' - - // 是否需要实时上报坐标 - buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true' - // GPS数据提供源: 0-Android系统,1-工控机,2-OBU - buildConfigField 'int', 'GPS_PROVIDER', "1" - - // 构建的应用身份类型,具体查看 README.md APP_IDENTITY_MODE规则 - buildConfigField 'String', 'APP_IDENTITY_MODE', "\"Shuttle_Passenger_JL\"" - // 连接的工控机IP地址 - buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.8.103\"" - // 构建的是否是演示(美化)模式 - buildConfigField 'boolean', 'IS_DEMO_MODE', 'false' - // 构建的是否要动态更换模型 - buildConfigField 'boolean', 'IS_CAR_MODEL_CHANGE', 'true' - // 是否需要重写状态栏 - buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' - - - // 构建 是否支持多屏异显异交互 - buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'true' - - //Bus不能启动自驾的档位 - buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_N);add(chassis.Chassis.GearPosition.GEAR_R);}}' - } -} \ No newline at end of file diff --git a/app/productFlavors/fOchShuttlePassengerM2.gradle b/app/productFlavors/fOchShuttlePassengerM2.gradle deleted file mode 100644 index e72a315ff1..0000000000 --- a/app/productFlavors/fOchShuttlePassengerM2.gradle +++ /dev/null @@ -1,52 +0,0 @@ -project.android.productFlavors { - // 衡阳-联想Pad-网约车-小巴车-乘客端 - fOchShuttlePassengerM2 { - externalNativeBuild { - ndk { - // 设置支持的SO库架构 - abiFilters "armeabi-v7a", "arm64-v8a" - } - } - minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo - targetSdkVersion rootProject.ext.android.targetSdkVersionPadLenovo - // 应用包名 - applicationId rootProject.ext.android.fLauncherApplicationId - dimension "vehicle" - // 和 och/mogo-och-bus-passenger 的flavors的m2对应 - matchingFallbacks = ['m2'] - - // 车机类型,主要用于区分自研车机还是别人家的车机,自研车机类型为0 - buildConfigField 'int', 'CAR_MACHINE_TYPE', '2' - //高德地图鉴权信息 - manifestPlaceholders = [ - AMAP_API_VALUE: rootProject.ext.android.fLauncherAmapApiValue, - CHANNEL_VALUE: "fOchBusPassenger", - ACTIVITY_ROOT:true, - SCREEN_ORIENTATION: "portrait" - ] - - // 是否需要实时上报坐标 - buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true' - // GPS数据提供源: 0-Android系统,1-工控机,2-OBU - buildConfigField 'int', 'GPS_PROVIDER', "1" - - // 构建的应用身份类型,具体查看 README.md APP_IDENTITY_MODE规则 - buildConfigField 'String', 'APP_IDENTITY_MODE', "\"Shuttle_Passenger_M2\"" - // 连接的工控机IP地址 - buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.8.103\"" - // 构建的是否是演示(美化)模式 - buildConfigField 'boolean', 'IS_DEMO_MODE', 'false' - - // 构建的是否要动态更换模型 - buildConfigField 'boolean', 'IS_CAR_MODEL_CHANGE', 'false' - // 是否需要重写状态栏 - buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'true' - - - // 构建 是否支持多屏异显异交互 - buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'false' - - //M2不能启动自驾的档位 - buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_N);add(chassis.Chassis.GearPosition.GEAR_P);add(chassis.Chassis.GearPosition.GEAR_R);}}' - } -} \ No newline at end of file diff --git a/app/productFlavors/fOchSweeper.gradle b/app/productFlavors/fOchSweeper.gradle deleted file mode 100644 index 273ff178c0..0000000000 --- a/app/productFlavors/fOchSweeper.gradle +++ /dev/null @@ -1,56 +0,0 @@ -project.android.productFlavors { - // 衡阳-联想Pad-网约车-小巴车 - fOchSweeper { - externalNativeBuild { - ndk { - // 设置支持的SO库架构 - abiFilters "armeabi-v7a", "arm64-v8a" - } - } - minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo - targetSdkVersion rootProject.ext.android.targetSdkVersionPadLenovo - versionCode rootProject.versionCode as int - versionName rootProject.versionName - // 应用包名 - applicationId rootProject.ext.android.fLauncherApplicationId - dimension "vehicle" - - // 车机类型,主要用于区分自研车机还是别人家的车机,自研车机类型为0 - buildConfigField 'int', 'CAR_MACHINE_TYPE', '2' - - // 配置AndroidManifest.xml中用到的参数 - manifestPlaceholders = [ - // 高德地图鉴权信息 - AMAP_API_VALUE : rootProject.ext.android.fLauncherAmapApiValue, - // BUGLY_APP_CHANNEL - CHANNEL_VALUE : "fOchSweeper", - // 在启动的时候把Task给清空 - ACTIVITY_ROOT : true, - // Activity的朝向 - SCREEN_ORIENTATION: "landscape" - ] - - // 是否需要实时上报坐标 - buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true' - // GPS数据提供源: 0-Android系统,1-工控机,2-OBU - buildConfigField 'int', 'GPS_PROVIDER', "1" - - // 构建的应用身份类型,具体查看 README.md APP_IDENTITY_MODE规则 - buildConfigField 'String', 'APP_IDENTITY_MODE', "\"Sweeper_Driver_FT\"" - // 连接的工控机IP地址 - buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.8.102\"" - // 构建的是否是演示(美化)模式 - buildConfigField 'boolean', 'IS_DEMO_MODE', 'false' - // 构建的是否要动态更换模型 - buildConfigField 'boolean', 'IS_CAR_MODEL_CHANGE', 'true' - // 是否需要重写状态栏 - buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' - - - // 构建 是否支持多屏异显异交互 - buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'false' - - //清扫车不能启动自驾的档位 - buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'null' - } -} \ No newline at end of file diff --git a/app/productFlavors/fOchTaxi.gradle b/app/productFlavors/fOchTaxi.gradle deleted file mode 100644 index 424280b7f3..0000000000 --- a/app/productFlavors/fOchTaxi.gradle +++ /dev/null @@ -1,57 +0,0 @@ -project.android.productFlavors { - - // 衡阳-联想Pad-网约车-出租车 - fOchTaxi { - externalNativeBuild { - ndk { - // 设置支持的SO库架构 - abiFilters "armeabi-v7a", "arm64-v8a" - } - } - minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo - targetSdkVersion rootProject.ext.android.targetSdkVersionPadLenovo - versionCode rootProject.versionCode as int - versionName rootProject.versionName - // 应用包名 - applicationId rootProject.ext.android.fLauncherApplicationId - dimension "vehicle" - - // 车机类型,主要用于区分自研车机还是别人家的车机,自研车机类型为0 - buildConfigField 'int', 'CAR_MACHINE_TYPE', '2' - - // 配置AndroidManifest.xml中用到的参数 - manifestPlaceholders = [ - // 高德地图鉴权信息 - AMAP_API_VALUE : rootProject.ext.android.fLauncherAmapApiValue, - // BUGLY_APP_CHANNEL - CHANNEL_VALUE : "fOchTaxi", - // 在启动的时候把Task给清空 - ACTIVITY_ROOT : true, - // Activity的朝向 - SCREEN_ORIENTATION: "landscape" - ] - - // 是否需要实时上报坐标 - buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true' - // GPS数据提供源: 0-Android系统,1-工控机,2-OBU - buildConfigField 'int', 'GPS_PROVIDER', "1" - - // 构建的应用身份类型,具体查看 README.md APP_IDENTITY_MODE规则 - buildConfigField 'String', 'APP_IDENTITY_MODE', "\"Taxi_Driver_DFHQ\"" - // 连接的工控机IP地址 - buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.1.102\"" - // 构建的是否是演示(美化)模式 - buildConfigField 'boolean', 'IS_DEMO_MODE', 'false' - // 构建的是否要动态更换模型 - buildConfigField 'boolean', 'IS_CAR_MODEL_CHANGE', 'true' - // 是否需要重写状态栏 - buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' - - // 构建 是否支持多屏异显异交互 - buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'false' - - //Taxi不能启动自驾的档位 - buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_P);add(chassis.Chassis.GearPosition.GEAR_R);}}' - } - -} \ No newline at end of file diff --git a/app/productFlavors/fOchTaxiPassenger.gradle b/app/productFlavors/fOchTaxiPassenger.gradle deleted file mode 100644 index a762c8f8c8..0000000000 --- a/app/productFlavors/fOchTaxiPassenger.gradle +++ /dev/null @@ -1,56 +0,0 @@ -project.android.productFlavors { - // 衡阳-联想Pad-网约车-出租车-乘客端 - fOchTaxiPassenger { - externalNativeBuild { - ndk { - // 设置支持的SO库架构 - abiFilters "armeabi-v7a", "arm64-v8a" - } - } - minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo - targetSdkVersion rootProject.ext.android.targetSdkVersionPadLenovo - versionCode rootProject.versionCode as int - versionName rootProject.versionName - // 应用包名 - applicationId rootProject.ext.android.fLauncherApplicationId - dimension "vehicle" - - // 车机类型,主要用于区分自研车机还是别人家的车机,自研车机类型为0 - buildConfigField 'int', 'CAR_MACHINE_TYPE', '2' - - // 配置AndroidManifest.xml中用到的参数 - manifestPlaceholders = [ - // 高德地图鉴权信息 - AMAP_API_VALUE : rootProject.ext.android.fLauncherAmapApiValue, - // BUGLY_APP_CHANNEL - CHANNEL_VALUE : "fOchTaxiPassenger", - // 在启动的时候把Task给清空 - ACTIVITY_ROOT : false, - // Activity的朝向 - SCREEN_ORIENTATION: "landscape" - ] - - // 是否需要实时上报坐标 - buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true' - // GPS数据提供源: 0-Android系统,1-工控机,2-OBU - buildConfigField 'int', 'GPS_PROVIDER', "1" - - // 构建的应用身份类型,具体查看 README.md APP_IDENTITY_MODE规则 - buildConfigField 'String', 'APP_IDENTITY_MODE', "\"Taxi_Passenger_DFHQ\"" - // 连接的工控机IP地址 - buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.1.103\"" - // 构建的是否是演示(美化)模式 - buildConfigField 'boolean', 'IS_DEMO_MODE', 'false' - // 构建的是否要动态更换模型 - buildConfigField 'boolean', 'IS_CAR_MODEL_CHANGE', 'true' - // 是否需要重写状态栏 - buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' - - // 构建 是否支持多屏异显异交互 - buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'true' - - //Taxi不能启动自驾的档位 - buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_P);add(chassis.Chassis.GearPosition.GEAR_R);}}' - } - -} \ No newline at end of file diff --git a/app/productFlavors/fPadLenovo.gradle b/app/productFlavors/fPadLenovo.gradle deleted file mode 100644 index f9cbdfbc63..0000000000 --- a/app/productFlavors/fPadLenovo.gradle +++ /dev/null @@ -1,52 +0,0 @@ -project.android.productFlavors { - // 衡阳-联想Pad - fPadLenovo { - externalNativeBuild { - ndk { - // 设置支持的SO库架构 - abiFilters "armeabi-v7a", "arm64-v8a" - } - } - minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo - targetSdkVersion rootProject.ext.android.targetSdkVersionPadLenovo - // 应用包名 - applicationId rootProject.ext.android.fLauncherApplicationId - dimension "vehicle" - - // 车机类型,主要用于区分自研车机还是别人家的车机,自研车机类型为0 - buildConfigField 'int', 'CAR_MACHINE_TYPE', '2' - // 配置AndroidManifest.xml中用到的参数 - manifestPlaceholders = [ - // 高德地图鉴权信息 - AMAP_API_VALUE : rootProject.ext.android.fLauncherAmapApiValue, - // BUGLY_APP_CHANNEL - CHANNEL_VALUE : "fPadLenovo", - // 在启动的时候把Task给清空 - ACTIVITY_ROOT : true, - // Activity的朝向 - SCREEN_ORIENTATION: "landscape" - ] - - // 是否需要实时上报坐标 - buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true' - // GPS数据提供源: 0-Android系统,1-工控机,2-OBU - buildConfigField 'int', 'GPS_PROVIDER', "1" - - // 构建的应用身份类型,具体查看 README.md APP_IDENTITY_MODE规则 - buildConfigField 'String', 'APP_IDENTITY_MODE', "\"FPad_Noop_Base\"" - // 连接的工控机IP地址 - buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.1.104\"" - // 构建的是否是演示(美化)模式 - buildConfigField 'boolean', 'IS_DEMO_MODE', 'false' - // 构建的是否要动态更换模型 - buildConfigField 'boolean', 'IS_CAR_MODEL_CHANGE', 'true' - // 是否需要重写状态栏 - buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' - - // 构建 是否支持多屏异显异交互 - buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'false' - - //不能启动自驾的档位 - buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'null' - } -} \ No newline at end of file diff --git a/app/productFlavors/flavorsFilterConfig.gradle b/app/productFlavors/flavorsFilterConfig.gradle deleted file mode 100644 index cb76ba69b5..0000000000 --- a/app/productFlavors/flavorsFilterConfig.gradle +++ /dev/null @@ -1,169 +0,0 @@ - -project.android.variantFilter { variant -> - def names = variant.flavors*.name - //要检查特定的构建类型,请使用variant.buildType.name ==“ ” - if(names.contains("mogo")) { - // region 过滤noop 的flavors 不带och业务的 - if (names.contains("noop")&&!names.contains("fPadLenovo")) { - //Gradle会忽略满足上述条件的所有变体 - setIgnore(true) - } - // endregion - // region 过滤sweper 的flavors - if (names.contains("sweeper") && !names.contains("fOchSweeper")) { - //Gradle会忽略满足上述条件的所有变体 - setIgnore(true) - } - // endregion - // region 过滤shuttle 的flavors - if (names.contains("shuttle")) { - //Gradle会忽略满足上述条件的所有变体 - if (names.contains("fOchShuttle")) { - } else if (names.contains("fOchShuttleM2")) { - } else if (names.contains("fOchShuttlePassenger")) { - } else if (names.contains("fOchShuttlePassengerM2")) { - } else { - setIgnore(true) - } - } - // endregion - // region 过滤taxi 的flavors - if (names.contains("taxi")) { - //Gradle会忽略满足上述条件的所有变体 - if (names.contains("fOchTaxi")) { - } else if (names.contains("fOchTaxiPassenger")) { - } else if (names.contains("fPadLenovo")) { - } else if (names.contains("fMultiDisplayOchTaxi")) { - } else { - setIgnore(true) - } - } - // endregion - // region 过滤bus 的flavors - if (names.contains("bus")) { - //Gradle会忽略满足上述条件的所有变体 - if (names.contains("fOchBus")) { - } else if (names.contains("fOchBusPassenger")) { - } else if (names.contains("fMultiDisplayOchBus")) { - } else { - setIgnore(true) - } - } - // endregion - // region 过滤charter 包车 的flavors - if (names.contains("charter")) { - //Gradle会忽略满足上述条件的所有变体 - if (names.contains("ochDriverM1")) { - } else if (names.contains("ochPassengerM1")) { - } else if (names.contains("fMultiDisplaySweeper")) { - } else { - setIgnore(true) - } - } - // endregion - } - else if(names.contains("dali")){ - // region 过滤noop 的flavors 不带och业务的 - if (names.contains("noop")&&!names.contains("fPadLenovo")) { - //Gradle会忽略满足上述条件的所有变体 - setIgnore(true) - } - // endregion - // region 过滤sweper 的flavors - if (names.contains("sweeper")) { - //Gradle会忽略满足上述条件的所有变体 - setIgnore(true) - } - // endregion - // region 过滤taxi 的flavors - if (names.contains("taxi")) { - setIgnore(true) - } - // endregion - // region 过滤shuttle 的flavors - if (names.contains("shuttle")) { - //Gradle会忽略满足上述条件的所有变体 - if (names.contains("fOchShuttle")) { - } else if (names.contains("fOchShuttleM2")) { - } else if (names.contains("fOchShuttlePassenger")) { - } else if (names.contains("fOchShuttlePassengerM2")) { - } else { - setIgnore(true) - } - } - // endregion - // region 过滤bus 的flavors - if (names.contains("bus")) { - //Gradle会忽略满足上述条件的所有变体 - if (names.contains("fOchBus")) { - } else if (names.contains("fOchBusPassenger")) { - } else if (names.contains("fMultiDisplayOchBus")) { - } else { - setIgnore(true) - } - } - // endregion - // region 过滤charter 包车 的flavors - if (names.contains("charter")) { - //Gradle会忽略满足上述条件的所有变体 - if (names.contains("ochDriverM1")) { - } else if (names.contains("ochPassengerM1")) { - } else { - setIgnore(true) - } - } - // endregion - } - else if(names.contains("yantai")){// - // region 过滤noop 的flavors 不带och业务的 - if (names.contains("noop")&&!names.contains("fPadLenovo")) { - //Gradle会忽略满足上述条件的所有变体 - setIgnore(true) - } - // endregion - // region 过滤sweper 的flavors - if (names.contains("sweeper") && !names.contains("fOchSweeper")) { - //Gradle会忽略满足上述条件的所有变体 - setIgnore(true) - } - // endregion - // region 过滤shuttle 的flavors - if (names.contains("shuttle")) { - //Gradle会忽略满足上述条件的所有变体 - if (names.contains("fOchShuttle")) { - } else if (names.contains("fOchShuttlePassenger")) { - } else { - setIgnore(true) - } - } - // endregion - // region 过滤taxi 的flavors - if (names.contains("taxi")) { - //Gradle会忽略满足上述条件的所有变体 - setIgnore(true) - } - // endregion - // region 过滤bus 的flavors - if (names.contains("bus")) { - //Gradle会忽略满足上述条件的所有变体 - setIgnore(true) - } - // endregion - // region 过滤charter 包车 的flavors - if (names.contains("charter")) { - //Gradle会忽略满足上述条件的所有变体 - if (names.contains("ochDriverM1")) { - } else if (names.contains("ochPassengerM1")) { - } else { - setIgnore(true) - } - } - // endregion - } - else { - setIgnore(true) - } -} - - - diff --git a/app/productFlavors/ochDriverM1.gradle b/app/productFlavors/ochDriverM1.gradle deleted file mode 100644 index 7d02b12688..0000000000 --- a/app/productFlavors/ochDriverM1.gradle +++ /dev/null @@ -1,55 +0,0 @@ -project.android.productFlavors { - // 衡阳-联想Pad-网约车-小巴车 - ochDriverM1 { - externalNativeBuild { - ndk { - // 设置支持的SO库架构 - abiFilters "armeabi-v7a", "arm64-v8a" - } - } - minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo - targetSdkVersion rootProject.ext.android.targetSdkVersionPadLenovo - versionCode rootProject.versionCode as int - versionName rootProject.versionName - // 应用包名 - applicationId rootProject.ext.android.fLauncherApplicationId - dimension "vehicle" - matchingFallbacks = ['driverm1'] - - // 车机类型,主要用于区分自研车机还是别人家的车机,自研车机类型为0 - buildConfigField 'int', 'CAR_MACHINE_TYPE', '2' - // 配置AndroidManifest.xml中用到的参数 - manifestPlaceholders = [ - // 高德地图鉴权信息 - AMAP_API_VALUE : rootProject.ext.android.fLauncherAmapApiValue, - // BUGLY_APP_CHANNEL - CHANNEL_VALUE : "fOchBus", - // 在启动的时候把Task给清空 - ACTIVITY_ROOT : true, - // Activity的朝向 - SCREEN_ORIENTATION: "landscape" - ] - - // 是否需要实时上报坐标 - buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true' - // GPS数据提供源: 0-Android系统,1-工控机,2-OBU - buildConfigField 'int', 'GPS_PROVIDER', "1" - - // 构建的应用身份类型,具体查看 README.md APP_IDENTITY_MODE规则 - buildConfigField 'String', 'APP_IDENTITY_MODE', "\"Charter_Driver_M1\"" - // 连接的工控机IP地址 - buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.8.102\"" - // 构建的是否是演示(美化)模式 - buildConfigField 'boolean', 'IS_DEMO_MODE', 'false' - // 构建的是否要动态更换模型 - buildConfigField 'boolean', 'IS_CAR_MODEL_CHANGE', 'false' - // 是否需要重写状态栏 - buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' - - // 构建 是否支持多屏异显异交互 - buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'false' - - //M1不能启动自驾的档位 - buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'null' - } -} \ No newline at end of file diff --git a/app/productFlavors/ochPassengerM1.gradle b/app/productFlavors/ochPassengerM1.gradle deleted file mode 100644 index 67af2a0def..0000000000 --- a/app/productFlavors/ochPassengerM1.gradle +++ /dev/null @@ -1,55 +0,0 @@ -project.android.productFlavors { - // 衡阳-联想Pad-网约车-小巴车-乘客端 - ochPassengerM1 { - externalNativeBuild { - ndk { - // 设置支持的SO库架构 - abiFilters "armeabi-v7a", "arm64-v8a" - } - } - minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo - targetSdkVersion rootProject.ext.android.targetSdkVersionPadLenovo - // 应用包名 - applicationId rootProject.ext.android.fLauncherApplicationId - dimension "vehicle" - // 和 och/mogo-och-bus-passenger 的flavors的m1对应 - matchingFallbacks = ['m1'] - - // 车机类型,主要用于区分自研车机还是别人家的车机,自研车机类型为0 - buildConfigField 'int', 'CAR_MACHINE_TYPE', '2' - - // 配置AndroidManifest.xml中用到的参数 - manifestPlaceholders = [ - // 高德地图鉴权信息 - AMAP_API_VALUE : rootProject.ext.android.fLauncherAmapApiValue, - // BUGLY_APP_CHANNEL - CHANNEL_VALUE : "fOchBusPassenger", - // 在启动的时候把Task给清空 - ACTIVITY_ROOT : true, - // Activity的朝向 - SCREEN_ORIENTATION: "landscape" - ] - - // 是否需要实时上报坐标 - buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true' - // GPS数据提供源: 0-Android系统,1-工控机,2-OBU - buildConfigField 'int', 'GPS_PROVIDER', "1" - - // 构建的应用身份类型,具体查看 README.md APP_IDENTITY_MODE规则 - buildConfigField 'String', 'APP_IDENTITY_MODE', "\"Charter_Passenger_M1\"" - // 连接的工控机IP地址 - buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.8.103\"" - // 构建的是否是演示(美化)模式 - buildConfigField 'boolean', 'IS_DEMO_MODE', 'false' - // 构建的是否要动态更换模型 - buildConfigField 'boolean', 'IS_CAR_MODEL_CHANGE', 'false' - // 是否需要重写状态栏 - buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'true' - - // 构建 是否支持多屏异显异交互 - buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'false' - - //M1不能启动自驾的档位 - buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'null' - } -} \ No newline at end of file diff --git a/app/regroup.gradle b/app/regroup.gradle index d21831358a..8d0fdf84e7 100644 --- a/app/regroup.gradle +++ b/app/regroup.gradle @@ -3,14 +3,14 @@ afterEvaluate { def launcher = [ "fPadLenovo", - "fOchSweeper", + "ochFT", "fOchTaxi", - "fOchBus", - "fOchBusPassenger", + "ochJL", + "ochJL", "fOchBusPassengerM1", - "fOchShuttlePassengerM2", - "fOchShuttle", - "fOchShuttlePassenger", + "ochM2", + "ochJL", + "ochJL", "fOchTaxiPassenger", "MultiDisplayOchBus", "MultiDisplayOchTaxi"] diff --git a/app/script/flavorfilter/flavors.json b/app/script/flavorfilter/flavors.json new file mode 100644 index 0000000000..9fd192a912 --- /dev/null +++ b/app/script/flavorfilter/flavors.json @@ -0,0 +1,51 @@ +{ + "mogo": { + "noop" :{ + "driver":["fPadLenovo"] + }, + "sweeper" :{ + "driver": ["ochFT"] + }, + "shuttle" :{ + "driver": ["ochJL","ochM2"], + "passenger": ["ochJL","ochM2"] + }, + "taxi" :{ + "driver": ["ochDFHQ"], + "driverpassenger": ["ochDFHQ"], + "passenger": ["ochDFHQ"] + }, + "bus" :{ + "driver": ["ochJL"], + "driverpassenger": ["ochJL"], + "passenger": ["ochJL"] + }, + "charter" :{ + "driver": ["ochM1"], + "passenger": ["ochM1"] + } + }, + "dali": { + "shuttle" :{ + "driver": ["ochJL","ochM2"], + "passenger": ["ochJL","ochM2"] + }, + "charter" :{ + "driver": ["ochM1"], + "passenger": ["ochM1"] + } + }, + "yantai": { + "sweeper" :{ + "driver": ["ochFT"] + }, + "shuttle" :{ + "driver": ["ochJL","ochM2"], + "passenger": ["ochJL","ochM2"] + }, + "charter" :{ + "driver": ["ochM1"], + "passenger": ["ochM1"] + } + } +} \ No newline at end of file diff --git a/app/script/flavorfilter/flavorsFilterConfig.gradle b/app/script/flavorfilter/flavorsFilterConfig.gradle new file mode 100644 index 0000000000..87c0a86212 --- /dev/null +++ b/app/script/flavorfilter/flavorsFilterConfig.gradle @@ -0,0 +1,53 @@ +import groovy.json.JsonSlurper + + +File file = new File("${rootDir}/app/script/flavorfilter/flavors.json") +def jsonSlurper = new JsonSlurper() +// 解析json +def config = jsonSlurper.parse(file) + +project.android.variantFilter { variant -> + def names = variant.flavors*.name + //要检查特定的构建类型,请使用variant.buildType.name ==“ ” +// println "------$names" + def projectContain = true + config.each { projectKey,projectValue -> + if(names.contains(projectKey)){ + projectContain = false + def productContain = true + projectValue.each{productKey,productValue-> + if(names.contains(productKey)){ + productContain =false + def roleContain = true + productValue.each{roleKey,roleValue-> + if(names.contains(roleKey)){ + roleContain =false + def vehicleContain = true + roleValue.each{vehicleValue-> + if (names.contains(vehicleValue)) { + println "need $names" + vehicleContain = false + } + } + if(vehicleContain){ + setIgnore(true) + } + } + } + if(roleContain){ + setIgnore(true) + } + } + } + if(productContain){ + setIgnore(true) + } + } + } + if(projectContain){ + setIgnore(true) + } +} + + + diff --git a/app/functions/README.md b/app/script/functions/README.md similarity index 100% rename from app/functions/README.md rename to app/script/functions/README.md diff --git a/app/script/functions/och.gradle b/app/script/functions/och.gradle new file mode 100644 index 0000000000..29d99eae0f --- /dev/null +++ b/app/script/functions/och.gradle @@ -0,0 +1,33 @@ +// 网约车服务:仅小巴车、出租车渠道用 +project.dependencies { + if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { + fPadLenovoImplementation(rootProject.ext.dependencies.mogoochnoop) + + // Bus司机端 +// fMultiDisplayOchBusImplementation(rootProject.ext.dependencies.mogoochbus) +// // Bus乘客端 +// fMultiDisplayOchBusImplementation(rootProject.ext.dependencies.mogoochbus) +// +// // taxi司机端 +// fMultiDisplayOchTaxiImplementation(rootProject.ext.dependencies.mogoochtaxi) +// // taxi乘客端 +// fMultiDisplayOchTaxiImplementation(rootProject.ext.dependencies.mogoochtaxi) + + } else { + fPadLenovoImplementation (project(':OCH:mogo-och-noop')) + + // 多屏幕-Bus司机端 +// fMultiDisplayOchBusImplementation (project(':OCH:mogo-och-bus')) +// // 多屏幕-Bus乘客端 +// fMultiDisplayOchBusImplementation (project(':OCH:mogo-och-bus-passenger')) +// +// // taxi司机端 +// fMultiDisplayOchTaxiImplementation (project(':OCH:mogo-och-taxi')) +// // 多屏幕-taxi乘客端 +// fMultiDisplayOchTaxiImplementation (project(':OCH:mogo-och-taxi-passenger')) +// +// // 清扫车-多屏幕 +// fMultiDisplaySweeperImplementation (project(':OCH:mogo-och-sweeper')) + + } +} diff --git a/app/script/productFlavors/bus.gradle b/app/script/productFlavors/bus.gradle new file mode 100644 index 0000000000..295d5a7295 --- /dev/null +++ b/app/script/productFlavors/bus.gradle @@ -0,0 +1,36 @@ +apply from: "./script/utils.gradle" + +project.android.productFlavors { + bus { + dimension "product" + + manifestPlaceholders = [ + // 标识 + CHANNEL_VALUE_HEAD: "Bus", + // 在启动的时候把Task给清空 + ACTIVITY_ROOT : true, + // Activity的朝向 + SCREEN_ORIENTATION:"landscape", + ] + + // ①标识 + buildConfigField 'String', 'APP_IDENTITY_MODE_HEAD', "\"Bus\"" + + // ②连接的工控机IP地址 + buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.8.102\"" + + // ③是否需要重写状态栏 + buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' + + // ④构建 是否支持多屏异显异交互 + buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'false' + + if(isCurrentDriver("bus")){ + project.dependencies.add('implementation', project.project(':OCH:mogo-och-bus')) + } + if(isCurrentPassenger("bus")){ + project.dependencies.add('implementation', project.project(':OCH:mogo-och-bus-passenger')) + } + } +} + diff --git a/app/script/productFlavors/charter.gradle b/app/script/productFlavors/charter.gradle new file mode 100644 index 0000000000..5c4d34e613 --- /dev/null +++ b/app/script/productFlavors/charter.gradle @@ -0,0 +1,35 @@ +apply from: "./script/utils.gradle" + +project.android.productFlavors { + // 包车业务 + charter{ + dimension "product" + + manifestPlaceholders = [ + CHANNEL_VALUE_HEAD: "Charter", + // 在启动的时候把Task给清空 + ACTIVITY_ROOT : true, + // Activity的朝向 + SCREEN_ORIENTATION:"landscape", + ] + // ①标识 + buildConfigField 'String', 'APP_IDENTITY_MODE_HEAD', "\"Charter\"" + + // ②连接的工控机IP地址 + buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.8.102\"" + + // ④构建 是否支持多屏异显异交互 + buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'false' + + if(isCurrentDriver("charter")){ + // ③是否需要重写状态栏 + buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' + project.dependencies.add('implementation', project.project(':OCH:mogo-och-charter')) + } + if(isCurrentPassenger("charter")){ + // ③是否需要重写状态栏 + buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'true' + project.dependencies.add('implementation', project.project(':OCH:mogo-och-charter-passenger')) + } + } +} \ No newline at end of file diff --git a/app/script/productFlavors/noop.gradle b/app/script/productFlavors/noop.gradle new file mode 100644 index 0000000000..12de255384 --- /dev/null +++ b/app/script/productFlavors/noop.gradle @@ -0,0 +1,32 @@ +project.android.productFlavors { + // 空业务 主要是给鹰眼使用 + noop { + dimension "product" + + manifestPlaceholders = [ + // 标识 + CHANNEL_VALUE_HEAD: "Noop", + // 在启动的时候把Task给清空 + ACTIVITY_ROOT : true, + // Activity的朝向 + SCREEN_ORIENTATION:"landscape", + ] + + // ①标识 + buildConfigField 'String', 'APP_IDENTITY_MODE_HEAD', "\"FPad\"" + + // ②连接的工控机IP地址 + buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.1.104\"" + + // ③是否需要重写状态栏 + buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' + + // ④构建 是否支持多屏异显异交互 + buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'false' + + if(isCurrentDriver("noop")){ + project.dependencies.add('implementation', project.project(':OCH:mogo-och-noop')) + } + + } +} \ No newline at end of file diff --git a/app/script/productFlavors/shuttle.gradle b/app/script/productFlavors/shuttle.gradle new file mode 100644 index 0000000000..2544d9c22c --- /dev/null +++ b/app/script/productFlavors/shuttle.gradle @@ -0,0 +1,48 @@ +apply from: "./script/utils.gradle" + +project.android.productFlavors { + // 接驳车业务 + shuttle { + dimension "product" + + manifestPlaceholders = [ + // 标识 + CHANNEL_VALUE_HEAD: "Shuttle", + // 在启动的时候把Task给清空 + ACTIVITY_ROOT : true, + ] + + // ①标识 + buildConfigField 'String', 'APP_IDENTITY_MODE_HEAD', "\"Shuttle\"" + + // ②连接的工控机IP地址 + buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.8.102\"" + + if (isCurrentDriver("shuttle")) { + // ③是否需要重写状态栏 + buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' + // ④构建 是否支持多屏异显异交互 + buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'false' + project.dependencies.add('implementation', project.project(':OCH:mogo-och-shuttle')) + manifestPlaceholders.put("SCREEN_ORIENTATION", "landscape") + } + if (isCurrentPassenger("shuttle")) { + if(isM2()){ + // ③是否需要重写状态栏 + buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'true' + // ④构建 是否支持多屏异显异交互 + buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'false' + manifestPlaceholders.put("SCREEN_ORIENTATION", "portrait") + } + if(isJL()){ + // ③是否需要重写状态栏 + buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' + // ④构建 是否支持多屏异显异交互 + buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'true' + manifestPlaceholders.put("SCREEN_ORIENTATION", "landscape") + } + + project.dependencies.add('implementation', project.project(':OCH:mogo-och-shuttle-passenger')) + } + } +} \ No newline at end of file diff --git a/app/script/productFlavors/sweeper.gradle b/app/script/productFlavors/sweeper.gradle new file mode 100644 index 0000000000..48a93a6e1e --- /dev/null +++ b/app/script/productFlavors/sweeper.gradle @@ -0,0 +1,32 @@ +project.android.productFlavors { + // 清扫车业务 + sweeper { + dimension "product" + + manifestPlaceholders = [ + // 标识 + CHANNEL_VALUE_HEAD: "Sweeper", + // 在启动的时候把Task给清空 + ACTIVITY_ROOT : true, + // Activity的朝向 + SCREEN_ORIENTATION:"landscape", + ] + + // ①标识 + buildConfigField 'String', 'APP_IDENTITY_MODE_HEAD', "\"Sweeper\"" + + // ②连接的工控机IP地址 + buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.8.102\"" + + // ③是否需要重写状态栏 + buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' + + // ④构建 是否支持多屏异显异交互 + buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'false' + + + if(isCurrentFlavors("sweeper")){ + project.dependencies.add('implementation', project.project(':OCH:mogo-och-sweeper')) + } + } +} \ No newline at end of file diff --git a/app/script/productFlavors/taxi.gradle b/app/script/productFlavors/taxi.gradle new file mode 100644 index 0000000000..963222eb2c --- /dev/null +++ b/app/script/productFlavors/taxi.gradle @@ -0,0 +1,34 @@ +project.android.productFlavors { + // 出租车业务 + taxi { + dimension "product" + + manifestPlaceholders = [ + CHANNEL_VALUE_HEAD: "Taxi", + // Activity的朝向 + SCREEN_ORIENTATION:"landscape", + ] + // ①标识 + buildConfigField 'String', 'APP_IDENTITY_MODE_HEAD', "\"Taxi\"" + + // ②连接的工控机IP地址 + buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.1.102\"" + + // ③是否需要重写状态栏 + buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' + + // ④构建 是否支持多屏异显异交互 + buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'false' + + if (isCurrentDriver("taxi")) { + project.dependencies.add('implementation', project.project(':OCH:mogo-och-taxi')) + // 在启动的时候把Task给清空 + manifestPlaceholders.put("ACTIVITY_ROOT", true) + } + if (isCurrentPassenger("taxi")) { + project.dependencies.add('implementation', project.project(':OCH:mogo-och-taxi-passenger')) + // 在启动的时候把Task给清空 + manifestPlaceholders.put("ACTIVITY_ROOT", false) + } + } +} \ No newline at end of file diff --git a/app/script/roleFlavors/driver.gradle b/app/script/roleFlavors/driver.gradle new file mode 100644 index 0000000000..255863cba2 --- /dev/null +++ b/app/script/roleFlavors/driver.gradle @@ -0,0 +1,37 @@ +project.android.productFlavors { + driver { + dimension "role" + externalNativeBuild { + ndk { + // 设置支持的SO库架构 + abiFilters "armeabi-v7a", "arm64-v8a" + } + } + + manifestPlaceholders = [ + CHANNEL_VALUE_BODY : "Driver", + ] + + minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo + targetSdkVersion rootProject.ext.android.targetSdkVersionPadLenovo + versionCode rootProject.versionCode as int + versionName rootProject.versionName + // 应用包名 + applicationId rootProject.ext.android.fLauncherApplicationId + + // ①标识 + buildConfigField 'String', 'APP_IDENTITY_MODE_BODY', "\"Driver\"" + + // ②车机类型,主要用于区分自研车机还是别人家的车机,自研车机类型为0 + buildConfigField 'int', 'CAR_MACHINE_TYPE', '2' + + // ③是否需要实时上报坐标 + buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true' + + // ④GPS数据提供源: 0-Android系统,1-工控机,2-OBU + buildConfigField 'int', 'GPS_PROVIDER', "1" + + // ⑤构建的是否是演示(美化)模式 + buildConfigField 'boolean', 'IS_DEMO_MODE', 'false' + } +} \ No newline at end of file diff --git a/app/script/roleFlavors/driverpassenger.gradle b/app/script/roleFlavors/driverpassenger.gradle new file mode 100644 index 0000000000..16d3557134 --- /dev/null +++ b/app/script/roleFlavors/driverpassenger.gradle @@ -0,0 +1,37 @@ +project.android.productFlavors { + driverpassenger { + dimension "role" + externalNativeBuild { + ndk { + // 设置支持的SO库架构 + abiFilters "armeabi-v7a", "arm64-v8a" + } + } + + manifestPlaceholders = [ + CHANNEL_VALUE_BODY : "Driver", + ] + + minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo + targetSdkVersion rootProject.ext.android.targetSdkVersionPadLenovo + versionCode rootProject.versionCode as int + versionName rootProject.versionName + // 应用包名 + applicationId rootProject.ext.android.fLauncherApplicationId + + // ①标识 + buildConfigField 'String', 'APP_IDENTITY_MODE_BODY', "\"Driver\"" + + // ②车机类型,主要用于区分自研车机还是别人家的车机,自研车机类型为0 + buildConfigField 'int', 'CAR_MACHINE_TYPE', '2' + + // ③是否需要实时上报坐标 + buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true' + + // ④GPS数据提供源: 0-Android系统,1-工控机,2-OBU + buildConfigField 'int', 'GPS_PROVIDER', "1" + + // ⑤构建的是否是演示(美化)模式 + buildConfigField 'boolean', 'IS_DEMO_MODE', 'false' + } +} \ No newline at end of file diff --git a/app/script/roleFlavors/passenger.gradle b/app/script/roleFlavors/passenger.gradle new file mode 100644 index 0000000000..b2ca2baf59 --- /dev/null +++ b/app/script/roleFlavors/passenger.gradle @@ -0,0 +1,35 @@ +project.android.productFlavors { + passenger { + dimension "role" + externalNativeBuild { + ndk { + // 设置支持的SO库架构 + abiFilters "armeabi-v7a", "arm64-v8a" + } + } + + manifestPlaceholders = [ + CHANNEL_VALUE_BODY : "Passenger", + ] + + minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo + targetSdkVersion rootProject.ext.android.targetSdkVersionPadLenovo + versionCode rootProject.versionCode as int + versionName rootProject.versionName + // 应用包名 + applicationId rootProject.ext.android.fLauncherApplicationId + + // ①标识 + buildConfigField 'String', 'APP_IDENTITY_MODE_BODY', "\"Passenger\"" + // ②车机类型,主要用于区分自研车机还是别人家的车机,自研车机类型为0 + buildConfigField 'int', 'CAR_MACHINE_TYPE', '2' + + // ③是否需要实时上报坐标 + buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true' + // ④GPS数据提供源: 0-Android系统,1-工控机,2-OBU + buildConfigField 'int', 'GPS_PROVIDER', "1" + + // ⑤构建的是否是演示(美化)模式 + buildConfigField 'boolean', 'IS_DEMO_MODE', 'false' + } +} \ No newline at end of file diff --git a/app/script/utils.gradle b/app/script/utils.gradle new file mode 100644 index 0000000000..9db724526c --- /dev/null +++ b/app/script/utils.gradle @@ -0,0 +1,70 @@ +boolean isCurrentDriver(String flavors) { + if(isDriver() && isCurrentFlavors(flavors)){ + return true + } + return false +} + +boolean isCurrentPassenger(String flavors) { + if(isPassenger() && isCurrentFlavors(flavors)){ + return true + } + return false +} + +boolean isDriver() { + for (String s : gradle.startParameter.taskNames) { + if (s.contains("Driver") | s.contains("driver")) { + return true + } + } + return false +} + +boolean isPassenger() { + for (String s : gradle.startParameter.taskNames) { + if (s.contains("Passenger") | s.contains("passenger")) { + return true + } + } + return false +} + +boolean isJL() { + for (String s : gradle.startParameter.taskNames) { + if (s.contains("OchJL") | s.contains("ochJL")) { + return true + } + } + return false +} + +boolean isM2() { + for (String s : gradle.startParameter.taskNames) { + if (s.contains("OchM2") | s.contains("ochM2")) { + return true + } + } + return false +} + +boolean isCurrentFlavors(String flavors){ + for (String s : gradle.startParameter.taskNames) { + + def lowerCase = flavors.toLowerCase() + if (s.toLowerCase().contains(lowerCase)) { + return true + } + } + return false +} + +ext { + isPassenger = this.&isPassenger + isDriver = this.&isDriver + isCurrentFlavors = this.&isCurrentFlavors + isCurrentDriver = this.&isCurrentDriver + isCurrentPassenger = this.&isCurrentPassenger + isJL = this.&isJL + isM2 = this.&isM2 +} \ No newline at end of file diff --git a/app/productFlavors/README.md b/app/script/vehicleFlavors/README.md similarity index 100% rename from app/productFlavors/README.md rename to app/script/vehicleFlavors/README.md diff --git a/app/script/vehicleFlavors/fPadLenovo.gradle b/app/script/vehicleFlavors/fPadLenovo.gradle new file mode 100644 index 0000000000..2491d98530 --- /dev/null +++ b/app/script/vehicleFlavors/fPadLenovo.gradle @@ -0,0 +1,22 @@ +project.android.productFlavors { + // 衡阳-联想Pad + fPadLenovo { + dimension "vehicle" + + + // 配置AndroidManifest.xml中用到的参数 + manifestPlaceholders = [ + // BUGLY_APP_CHANNEL + CHANNEL_VALUE_TAIL: "Noop", + ] + + // ①标识构建的应用身份类型,具体查看 README.md APP_IDENTITY_MODE规则 + buildConfigField 'String', 'APP_IDENTITY_MODE_TAIL', "\"Noop\"" + + // ②构建的是否要动态更换模型 + buildConfigField 'boolean', 'IS_CAR_MODEL_CHANGE', 'true' + + // ③不能启动自驾的档位 + buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'null' + } +} \ No newline at end of file diff --git a/app/script/vehicleFlavors/ochDFHQ.gradle b/app/script/vehicleFlavors/ochDFHQ.gradle new file mode 100644 index 0000000000..90e48b667a --- /dev/null +++ b/app/script/vehicleFlavors/ochDFHQ.gradle @@ -0,0 +1,25 @@ +project.android.productFlavors { + // 东风红旗 + ochDFHQ { + dimension "vehicle" + + + // 配置AndroidManifest.xml中用到的参数 + manifestPlaceholders = [ + // BUGLY_APP_CHANNEL + CHANNEL_VALUE_TAIL: "DFHQ", + ] + + + // ①标识构建的应用身份类型,具体查看 README.md APP_IDENTITY_MODE规则 + buildConfigField 'String', 'APP_IDENTITY_MODE_TAIL', "\"DFHQ\"" + + // ②构建的是否要动态更换模型 + buildConfigField 'boolean', 'IS_CAR_MODEL_CHANGE', 'true' + + // ③不能启动自驾的档位 + buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_P);add(chassis.Chassis.GearPosition.GEAR_R);}}' + + } + +} \ No newline at end of file diff --git a/app/script/vehicleFlavors/ochFT.gradle b/app/script/vehicleFlavors/ochFT.gradle new file mode 100644 index 0000000000..1f711ee29f --- /dev/null +++ b/app/script/vehicleFlavors/ochFT.gradle @@ -0,0 +1,22 @@ +project.android.productFlavors { + // 福田车 + ochFT { + dimension "vehicle" + + + // 配置AndroidManifest.xml中用到的参数 + manifestPlaceholders = [ + // BUGLY_APP_CHANNEL + CHANNEL_VALUE_TAIL: "FT", + ] + + // ①标识构建的应用身份类型,具体查看 README.md APP_IDENTITY_MODE规则 + buildConfigField 'String', 'APP_IDENTITY_MODE_TAIL', "\"FT\"" + + // ②构建的是否要动态更换模型 + buildConfigField 'boolean', 'IS_CAR_MODEL_CHANGE', 'true' + + // ③不能启动自驾的档位 + buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'null' + } +} \ No newline at end of file diff --git a/app/script/vehicleFlavors/ochJL.gradle b/app/script/vehicleFlavors/ochJL.gradle new file mode 100644 index 0000000000..831bdd7ecd --- /dev/null +++ b/app/script/vehicleFlavors/ochJL.gradle @@ -0,0 +1,22 @@ +project.android.productFlavors { + // 衡阳-联想Pad-网约车-小巴车 + ochJL { + dimension "vehicle" + matchingFallbacks = ['jinlvvan'] + + // 配置AndroidManifest.xml中用到的参数 + manifestPlaceholders = [ + // BUGLY_APP_CHANNEL + CHANNEL_VALUE_TAIL : "JL", + ] + + // ①标识构建的应用身份类型,具体查看 README.md APP_IDENTITY_MODE规则 + buildConfigField 'String', 'APP_IDENTITY_MODE_TAIL', "\"JL\"" + + // ②构建的是否要动态更换模型 + buildConfigField 'boolean', 'IS_CAR_MODEL_CHANGE', 'true' + + // ③不能启动自驾的档位 + buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_N);add(chassis.Chassis.GearPosition.GEAR_R);}}' + } +} \ No newline at end of file diff --git a/app/script/vehicleFlavors/ochM1.gradle b/app/script/vehicleFlavors/ochM1.gradle new file mode 100644 index 0000000000..27dd69aeee --- /dev/null +++ b/app/script/vehicleFlavors/ochM1.gradle @@ -0,0 +1,27 @@ +apply from: "./script/utils.gradle" + +project.android.productFlavors { + // 金旅M1车 + ochM1 { + dimension "vehicle" + + // 配置AndroidManifest.xml中用到的参数 + manifestPlaceholders = [ + // BUGLY_APP_CHANNEL + CHANNEL_VALUE_TAIL: "M1", + ] + + // ①标识构建的应用身份类型,具体查看 README.md APP_IDENTITY_MODE规则 + buildConfigField 'String', 'APP_IDENTITY_MODE_TAIL', "\"M1\"" + // ②构建的是否要动态更换模型 + buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'null' + + // ③不能启动自驾的档位 + buildConfigField 'boolean', 'IS_CAR_MODEL_CHANGE', 'false' + + if(isDriver()){ + matchingFallbacks = ['driverm1'] + } + + } +} \ No newline at end of file diff --git a/app/script/vehicleFlavors/ochM2.gradle b/app/script/vehicleFlavors/ochM2.gradle new file mode 100644 index 0000000000..2f016eb3fa --- /dev/null +++ b/app/script/vehicleFlavors/ochM2.gradle @@ -0,0 +1,23 @@ +project.android.productFlavors { + // 衡阳-联想Pad-网约车-小巴车-乘客端 + ochM2 { + dimension "vehicle" + // 和 och/mogo-och-bus-passenger 的flavors的m2对应 + matchingFallbacks = ['m2'] + + + //高德地图鉴权信息 + manifestPlaceholders = [ + CHANNEL_VALUE_TAIL: "M2", + ] + + // ①标识构建的应用身份类型,具体查看 README.md APP_IDENTITY_MODE规则 + buildConfigField 'String', 'APP_IDENTITY_MODE_TAIL', "\"M2\"" + + // ②构建的是否要动态更换模型 + buildConfigField 'boolean', 'IS_CAR_MODEL_CHANGE', 'false' + + // ③M2不能启动自驾的档位 + buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_N);add(chassis.Chassis.GearPosition.GEAR_P);add(chassis.Chassis.GearPosition.GEAR_R);}}' + } +} \ No newline at end of file diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 93042f91d2..c147f4e189 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -26,7 +26,7 @@ + android:value="${CHANNEL_VALUE_HEAD}_${CHANNEL_VALUE_BODY}_${CHANNEL_VALUE_TAIL}" />