[fea]
[driver ItinerarySummaryDialog]
This commit is contained in:
yangyakun
2024-07-05 18:04:15 +08:00
parent 27cf2b1d43
commit 332b044d7a
2 changed files with 50 additions and 0 deletions

View File

@@ -22,6 +22,7 @@ import com.mogo.eagle.core.data.map.MogoLocation;
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener;
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager;
import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager;
import com.mogo.eagle.core.function.hmi.ui.widget.ItinerarySummaryDialog;
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger;
import com.mogo.eagle.core.utilcode.util.DateTimeUtils;
import com.mogo.eagle.core.utilcode.util.ToastUtils;
@@ -98,6 +99,9 @@ public class TaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment
private volatile int saveOrderState = -1;
private ItinerarySummaryDialog dialog;
public static TaxiBeingServerdOrdersFragment newInstance(Activity activity, TaxiFragment taxiFragment) {
Bundle args = new Bundle();
@@ -144,6 +148,8 @@ public class TaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment
mNoDatasTv = view.findViewById(R.id.no_order_data_tv);
mNoDataView = view.findViewById(R.id.being_no_data_view);
dialog = new ItinerarySummaryDialog(getContext(),true,R.style.summary_dialog);
initOnClickListener();
initNaviView(view);
@@ -500,6 +506,9 @@ public class TaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment
TaxiOrderStatusEnum ochStatus = TaxiOrderStatusEnum.valueOf(status);
switch (ochStatus) {
case OnTheWayToStart:
if(dialog!=null&&dialog.isShowing()) {
dialog.dismiss();
}
mOrderCancel.setVisibility(View.VISIBLE);
VoiceNotice.showNotice(mActivity.getString(R.string.module_och_taxi_new_order));
mTtsLessThan200Tip = 0;
@@ -511,6 +520,9 @@ public class TaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment
setOrRemoveMapMaker(true, TaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint,R.raw.end_marker);
break;
case Cancel:
if(dialog!=null&&dialog.isShowing()) {
dialog.dismiss();
}
mCurrentOrder = null;
mTtsLessThan200Tip = 0;
isFirstStartAutopilotDone = true;
@@ -522,6 +534,9 @@ public class TaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment
break;
case ArriveAtStart:
case UserArriveAtStart:
if(dialog!=null&&dialog.isShowing()) {
dialog.dismiss();
}
mTtsLessThan200Tip = 0;
isFirstStartAutopilotDone = true;
mOrderCancel.setVisibility(View.VISIBLE);
@@ -535,6 +550,9 @@ public class TaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment
setOrRemoveMapMaker(true, TaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint,R.raw.end_marker);
break;
case OnTheWayToEnd:
if(dialog!=null&&dialog.isShowing()) {
dialog.dismiss();
}
mOrderCancel.setVisibility(View.VISIBLE);
if (mTaxiFragment != null) {
showNaviToEndStationFragment(false);
@@ -543,6 +561,9 @@ public class TaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment
setOrRemoveMapMaker(true, TaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint,R.raw.end_marker);
break;
case ArriveAtEnd:
if(dialog!=null&&!dialog.isShowing()) {
dialog.show();
}
mTtsLessThan200Tip = 0;
mOrderCancel.setVisibility(View.GONE);
//VoiceNotice.showNotice(mActivity.getString(R.string.module_och_taxi_order_auto_arrive_end_tip));
@@ -551,6 +572,9 @@ public class TaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment
setOrRemoveMapMaker(false, TaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint,R.raw.end_marker);
break;
case JourneyCompleted:
if(dialog!=null&&dialog.isShowing()) {
dialog.dismiss();
}
mCurrentOrder = null;
mTtsLessThan200Tip = 0;
isFirstStartAutopilotDone = true;

View File

@@ -13,6 +13,7 @@ import com.amap.api.navi.model.NaviLatLng
import com.mogo.commons.mvp.BaseFragment
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager.getState
import com.mogo.eagle.core.function.hmi.ui.widget.ItinerarySummaryDialog
import com.mogo.eagle.core.function.main.MainMoGoApplication
import com.mogo.eagle.core.network.utils.GsonUtil
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
@@ -73,6 +74,8 @@ class TaxiCurrentTaskFragment : BaseFragment(),
private var mPrepareTasCountDownTimer: CountDownTimer? = null
private var dialog:ItinerarySummaryDialog? = null
companion object {
const val TAG = M_TAXI + "TaxiCurrentTaskFragment"
@@ -101,6 +104,9 @@ class TaxiCurrentTaskFragment : BaseFragment(),
}
override fun initViews() {
context?.let {
dialog = ItinerarySummaryDialog(it,true,R.style.summary_dialog)
}
initOnClickListener()
initContainerView(false)
initTaskDebugViewListener()
@@ -548,12 +554,14 @@ class TaxiCurrentTaskFragment : BaseFragment(),
when (order.orderStatus) {
TaxiOrderStatusEnum.None.code -> { //无
dismissDialog()
initContainerView(false)
removeAllMapMarker()
}
TaxiOrderStatusEnum.ArriveAtEnd.code -> { //到达目的地
taskStatus.text = resources.getString(R.string.task_start_end_site)
showDialog()
updateStartAndEndStationPointByStatus(true)
updateTaskContainerBottomBtn(
getString(R.string.module_och_taxi_order_server_end),
@@ -565,6 +573,7 @@ class TaxiCurrentTaskFragment : BaseFragment(),
}
TaxiOrderStatusEnum.OnTheWayToEnd.code -> { //送驾中
dismissDialog()
taskStatus.text = resources.getString(R.string.task_start_end_site)
updateStartAndEndStationPointByStatus(true)
updateTaskContainerBottomBtn(
@@ -577,6 +586,7 @@ class TaxiCurrentTaskFragment : BaseFragment(),
TaxiOrderStatusEnum.UserArriveAtStart.code, TaxiOrderStatusEnum.ArriveAtStart.code -> {
//乘客到达上车点, 验证成功 ; 到达乘客上车点
dismissDialog()
taskStatus.text = resources.getString(R.string.arrived_start_site)
updateStartAndEndStationPointByStatus(false)
updateTaskContainerBottomBtn(
@@ -592,6 +602,7 @@ class TaxiCurrentTaskFragment : BaseFragment(),
}
TaxiOrderStatusEnum.OnTheWayToStart.code -> { //前往上车地点
dismissDialog()
taskStatus.text = resources.getString(R.string.task_start_start_site)
updateStartAndEndStationPointByStatus(false)
updateTaskContainerBottomBtn(
@@ -828,4 +839,19 @@ class TaxiCurrentTaskFragment : BaseFragment(),
mViewModel.startOrStopCurrentTaskWithOrderLoop(false)
super.onDestroy()
}
private fun showDialog(){
dialog?.let {
if(!it.isShowing){
it.show()
}
}
}
private fun dismissDialog(){
dialog?.let {
if(it.isShowing){
it.dismiss()
}
}
}
}