[m1]
[1.1.2] [提前结束页面]
This commit is contained in:
@@ -399,6 +399,9 @@ object CharterPassengerModel {
|
||||
}
|
||||
return null
|
||||
}
|
||||
fun hasOrder():Boolean{
|
||||
return orderInfo != null
|
||||
}
|
||||
// endregion
|
||||
|
||||
// region车辆服务状态轮询
|
||||
@@ -636,20 +639,9 @@ object CharterPassengerModel {
|
||||
return Pair(0, false)
|
||||
}
|
||||
|
||||
fun endOrder() {
|
||||
fun endOrder(callback: OchCommonServiceCallback<BaseData>?) {
|
||||
orderInfo?.orderNo?.let {
|
||||
BusPassengerServiceManager.endOrder(
|
||||
mContext, it, object : OchCommonServiceCallback<BaseData> {
|
||||
override fun onSuccess(data: BaseData?) {
|
||||
if (null != data && 0 == data.code) {
|
||||
ToastUtils.showShort("结束成功")
|
||||
}
|
||||
}
|
||||
|
||||
override fun onFail(code: Int, msg: String) {
|
||||
ToastUtils.showShort("$code:$msg")
|
||||
}
|
||||
})
|
||||
BusPassengerServiceManager.endOrder(mContext, it, callback)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -9,11 +9,11 @@ package com.mogo.och.bus.passenger.model
|
||||
* 20 已登出,
|
||||
*/
|
||||
enum class OrderStatusEnum(val code: Int) {
|
||||
NoOrderUnuse( 0 ), //无订单车闲置 m1_order_noorder.xml 无订单页面
|
||||
OrderNoLine( 10), //有订单无线路 m1_order_lineside 选择线路页面
|
||||
OrdersWithLine( 20), //有订单有线路 m1_order_lineside 选择线路页面隐藏掉确定取消
|
||||
NoOrderUse( 30),; //无订单车不闲置 m1_order_end.xml 开门关门页面
|
||||
|
||||
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
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
package com.mogo.och.bus.passenger.presenter
|
||||
|
||||
import androidx.lifecycle.LifecycleOwner
|
||||
import com.mogo.eagle.core.data.BaseData
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.mogo.och.bus.passenger.model.CharterPassengerModel
|
||||
import com.mogo.och.bus.passenger.ui.M1EarlyEndOrderFragment
|
||||
import com.mogo.och.common.module.biz.network.OchCommonServiceCallback
|
||||
|
||||
class BusPassengerFunctionEarlyEndOrderPresenter(view: M1EarlyEndOrderFragment?) :
|
||||
BusBasePassengerFunctionDevicePresenter<M1EarlyEndOrderFragment?>(view) {
|
||||
|
||||
override fun onCreate(owner: LifecycleOwner) {
|
||||
super.onCreate(owner)
|
||||
}
|
||||
|
||||
override fun onResume(owner: LifecycleOwner) {
|
||||
super.onResume(owner)
|
||||
}
|
||||
|
||||
override fun onDestroy(owner: LifecycleOwner) {
|
||||
super.onDestroy(owner)
|
||||
|
||||
}
|
||||
|
||||
fun endOrder() {
|
||||
CharterPassengerModel.endOrder(object : OchCommonServiceCallback<BaseData> {
|
||||
override fun onSuccess(data: BaseData?) {
|
||||
if (null != data && 0 == data.code) {
|
||||
ToastUtils.showShort("结束成功")
|
||||
mView?.closeDialogContaion()
|
||||
}
|
||||
}
|
||||
|
||||
override fun onFail(code: Int, msg: String) {
|
||||
ToastUtils.showShort("$code:$msg")
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
}
|
||||
@@ -40,6 +40,7 @@ class BusPassengerPresenter(view: MainFragment?) :
|
||||
CharterPassengerModel.setiDistanceTimeCallback(this)
|
||||
CharterPassengerModel.setCarTypeChangeListener(this)
|
||||
CallerTelematicListenerManager.addListener(TAG, msgReceived)
|
||||
setCarChangeListener(R.raw.aiqinghao)
|
||||
//BusPassengerModel.setMoGoAutopilotPlanningListener(this)
|
||||
|
||||
}
|
||||
@@ -156,21 +157,21 @@ class BusPassengerPresenter(view: MainFragment?) :
|
||||
override fun setCarChangeListener(productType: Int?) {
|
||||
when (productType) {
|
||||
OrderInfoResponse.M1_LOVE -> {
|
||||
CallerMapUIServiceManager.getMapUIController()?.changeCurrentIcon(R.raw.aiqinghao)
|
||||
HdMapBuildConfig.currentCarVrIconRes = R.raw.aiqinghao
|
||||
mView?.setCarModle(R.raw.aiqinghao)
|
||||
}
|
||||
OrderInfoResponse.M1_FAMILY -> {
|
||||
CallerMapUIServiceManager.getMapUIController()?.changeCurrentIcon(R.raw.jiatinghao)
|
||||
HdMapBuildConfig.currentCarVrIconRes = R.raw.jiatinghao
|
||||
mView?.setCarModle(R.raw.jiatinghao)
|
||||
}
|
||||
OrderInfoResponse.M1_FRIENDLY -> {
|
||||
CallerMapUIServiceManager.getMapUIController()?.changeCurrentIcon(R.raw.pengyouhao)
|
||||
HdMapBuildConfig.currentCarVrIconRes = R.raw.pengyouhao
|
||||
mView?.setCarModle(R.raw.pengyouhao)
|
||||
}
|
||||
else -> {
|
||||
CallerMapUIServiceManager.getMapUIController()?.changeCurrentIcon(R.raw.aiqinghao)
|
||||
HdMapBuildConfig.currentCarVrIconRes = R.raw.aiqinghao
|
||||
mView?.setCarModle(R.raw.aiqinghao)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fun haveOrder():Boolean {
|
||||
return CharterPassengerModel.hasOrder()
|
||||
}
|
||||
}
|
||||
@@ -28,6 +28,7 @@ class M1ContainFragment :
|
||||
var tab: String = VIDEOTAB
|
||||
var fragmentTag: String = M1VideoFragment.TAG
|
||||
var fragment: Fragment? = null
|
||||
var isEarlyClose:Boolean = false
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
@@ -37,6 +38,7 @@ class M1ContainFragment :
|
||||
savedInstanceState?.let {
|
||||
tab = it.getString(SELECTTAB, tab)
|
||||
}
|
||||
isEarlyClose = tab==SETTINGENDORDERTAB
|
||||
setStyle(STYLE_NO_TITLE, R.style.DialogFullScreen) //dialog全屏
|
||||
}
|
||||
|
||||
@@ -62,6 +64,15 @@ class M1ContainFragment :
|
||||
childFragmentManager.findFragmentByTag(M1OrderFragment.TAG)
|
||||
?: M1OrderFragment.newInstance()
|
||||
}
|
||||
SETTINGENDORDERTAB -> {
|
||||
fragment =
|
||||
childFragmentManager.findFragmentByTag(M1EarlyEndOrderFragment.TAG)
|
||||
?: M1EarlyEndOrderFragment.newInstance(object :ContainDismiss{
|
||||
override fun closeDialog() {
|
||||
dismissAllowingStateLoss()
|
||||
}
|
||||
})
|
||||
}
|
||||
else -> {}
|
||||
}
|
||||
fragment?.let {
|
||||
@@ -155,7 +166,11 @@ class M1ContainFragment :
|
||||
private val settingOrder = CompoundButton.OnCheckedChangeListener { _, isChecked ->
|
||||
CallerLogger.d(M_BUS_P+TAG, "settingOrder$isChecked")
|
||||
if (isChecked) {
|
||||
tab = SETTINGORDERTAB
|
||||
if(isEarlyClose){
|
||||
tab = SETTINGENDORDERTAB
|
||||
}else{
|
||||
tab = SETTINGORDERTAB
|
||||
}
|
||||
fragmentTag = M1OrderFragment.TAG
|
||||
cb_bp_video_player.isChecked = false
|
||||
cb_bp_setting_device.isChecked = false
|
||||
@@ -234,6 +249,7 @@ class M1ContainFragment :
|
||||
SETTINGDEVICETAB -> cb_bp_setting_device.isChecked = true
|
||||
SETTINGSOFTTAB -> cb_bp_setting_soft.isChecked = true
|
||||
SETTINGORDERTAB -> cb_bp_setting_order.isChecked = true
|
||||
SETTINGENDORDERTAB -> cb_bp_setting_order.isChecked = true
|
||||
else -> {}
|
||||
}
|
||||
super.onViewStateRestored(savedInstanceState)
|
||||
@@ -246,6 +262,7 @@ class M1ContainFragment :
|
||||
const val SETTINGSOFTTAB = "SettingSoftTab"
|
||||
const val SETTINGDEVICETAB = "SettingDeviceTab"
|
||||
const val SETTINGORDERTAB = "SettingOrderTab"
|
||||
const val SETTINGENDORDERTAB = "SettingEndOrderTab"
|
||||
|
||||
const val SELECTTAB = "SELECTTAB"
|
||||
|
||||
@@ -257,4 +274,8 @@ class M1ContainFragment :
|
||||
return fragment
|
||||
}
|
||||
}
|
||||
|
||||
interface ContainDismiss{
|
||||
fun closeDialog()
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,59 @@
|
||||
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.BusPassengerFunctionEarlyEndOrderPresenter
|
||||
import kotlinx.android.synthetic.m1.m1_order_early_end.*
|
||||
|
||||
/**
|
||||
* @author: yangyakun
|
||||
* @date: 2023/1/28
|
||||
*/
|
||||
class M1EarlyEndOrderFragment :
|
||||
MvpFragment<M1EarlyEndOrderFragment?, BusPassengerFunctionEarlyEndOrderPresenter?>() {
|
||||
|
||||
private var dismiss: M1ContainFragment.ContainDismiss?=null
|
||||
|
||||
override fun getLayoutId(): Int {
|
||||
return R.layout.m1_order_early_end
|
||||
}
|
||||
|
||||
override fun getTagName(): String {
|
||||
return TAG
|
||||
}
|
||||
|
||||
override fun initViews() {
|
||||
tv_early_end_cancle.onClick {
|
||||
closeDialogContaion()
|
||||
}
|
||||
tv_early_end_submit.onClick {
|
||||
mPresenter?.endOrder()
|
||||
}
|
||||
}
|
||||
|
||||
fun closeDialogContaion(){
|
||||
this.dismiss?.closeDialog()
|
||||
}
|
||||
|
||||
override fun createPresenter(): BusPassengerFunctionEarlyEndOrderPresenter {
|
||||
return BusPassengerFunctionEarlyEndOrderPresenter(this)
|
||||
}
|
||||
|
||||
|
||||
companion object {
|
||||
const val TAG = "BusPassengerFunctionOrderFragment"
|
||||
@JvmStatic
|
||||
fun newInstance(dismiss: M1ContainFragment.ContainDismiss): M1EarlyEndOrderFragment {
|
||||
val args = Bundle()
|
||||
val fragment = M1EarlyEndOrderFragment()
|
||||
fragment.arguments = args
|
||||
fragment.setContainDismiss(dismiss)
|
||||
return fragment
|
||||
}
|
||||
}
|
||||
private fun setContainDismiss(dismiss: M1ContainFragment.ContainDismiss) {
|
||||
this.dismiss = dismiss
|
||||
}
|
||||
}
|
||||
@@ -6,6 +6,8 @@ import androidx.fragment.app.DialogFragment
|
||||
import androidx.fragment.app.Fragment
|
||||
import com.mogo.commons.AbsMogoApplication
|
||||
import com.mogo.commons.mvp.MvpFragment
|
||||
import com.mogo.eagle.core.data.config.HdMapBuildConfig
|
||||
import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager
|
||||
import com.mogo.eagle.core.function.hmi.ui.msgbox.MMsgBoxButtonView
|
||||
import com.mogo.eagle.core.function.hmi.ui.setting.ToggleDebugView
|
||||
import com.mogo.eagle.core.utilcode.kotlin.onClick
|
||||
@@ -57,8 +59,11 @@ class MainFragment :
|
||||
}
|
||||
iv_end_order.onClick {
|
||||
if (LoginStatusManager.isLogin()) {
|
||||
// TODO: 结束订单
|
||||
CharterPassengerModel.endOrder()
|
||||
if(mPresenter?.haveOrder()==true){
|
||||
openSettingPage(M1ContainFragment.SETTINGENDORDERTAB)
|
||||
}else{
|
||||
ToastUtils.showShort("没有订单无法结束订单")
|
||||
}
|
||||
}else{
|
||||
ToastUtils.showShort(AbsMogoApplication.getApp().getString(R.string.m1_please_login_driver))
|
||||
}
|
||||
@@ -148,6 +153,11 @@ class MainFragment :
|
||||
tv_distance_arrive_time.text = arrivedTime
|
||||
}
|
||||
|
||||
fun setCarModle(int: Int){
|
||||
CallerMapUIServiceManager.getMapUIController()?.changeCurrentIcon(R.raw.aiqinghao)
|
||||
HdMapBuildConfig.currentCarVrIconRes = R.raw.aiqinghao
|
||||
}
|
||||
|
||||
override fun createPresenter(): BusPassengerPresenter {
|
||||
return BusPassengerPresenter(this)
|
||||
}
|
||||
|
||||
@@ -5,6 +5,16 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
tools:parentTag="androidx.constraintlayout.widget.ConstraintLayout">
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="0dp"
|
||||
android:clickable="true"
|
||||
android:background="@drawable/bus_p_function_setting_soft_b_shape"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintDimensionRatio="1031:500"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintWidth_percent="0.53698">
|
||||
<!--提前结束包车页面-->
|
||||
<ImageView
|
||||
android:id="@+id/iv_early_end"
|
||||
@@ -38,7 +48,7 @@
|
||||
android:layout_height="@dimen/dp_60"/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_site_cancle"
|
||||
android:id="@+id/tv_early_end_cancle"
|
||||
android:text="取消"
|
||||
android:textSize="@dimen/dp_20"
|
||||
app:layout_constraintStart_toStartOf="@+id/iv_site_cancle_submit_bg"
|
||||
@@ -50,7 +60,7 @@
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="0dp"/>
|
||||
<TextView
|
||||
android:id="@+id/tv_site_submit"
|
||||
android:id="@+id/tv_early_end_submit"
|
||||
android:text="确认"
|
||||
android:textSize="@dimen/dp_20"
|
||||
android:gravity="center"
|
||||
@@ -68,5 +78,6 @@
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical" />
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
Reference in New Issue
Block a user