From 7193f9b0c70a5a00aa01363fc17f3472c4be6355 Mon Sep 17 00:00:00 2001 From: wangmingjun Date: Thu, 24 Aug 2023 11:42:14 +0800 Subject: [PATCH] =?UTF-8?q?[6.0.0]=20=E9=87=8D=E6=9E=84=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E5=90=8E=E5=8F=96=E6=B6=88=E8=AE=A2=E5=8D=95=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E8=A7=A3=E5=86=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../taxi/ui/task/TaxiCurrentTaskFragment.kt | 4 +- .../taxi/ui/task/TaxiOrderCancelDialog.java | 69 +++++++++---------- 2 files changed, 36 insertions(+), 37 deletions(-) diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/task/TaxiCurrentTaskFragment.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/task/TaxiCurrentTaskFragment.kt index 767acbf4e7..8105055ed0 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/task/TaxiCurrentTaskFragment.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/task/TaxiCurrentTaskFragment.kt @@ -600,8 +600,8 @@ class TaxiCurrentTaskFragment : BaseFragment(), activity?.also { TaxiOrderCancelDialog( it, mCurrentTaskWithOrder!!.order!!.orderStatus - ) { - mViewModel.sendUiIntent(UnmannedIntent.CancelOrder(it)) + ) {type -> + mViewModel.sendUiIntent(UnmannedIntent.CancelOrder(type)) }.show() } } diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/task/TaxiOrderCancelDialog.java b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/task/TaxiOrderCancelDialog.java index 3cb666c534..0d595b0099 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/task/TaxiOrderCancelDialog.java +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/task/TaxiOrderCancelDialog.java @@ -1,4 +1,4 @@ -package com.mogo.och.taxi.ui.task; +package com.mogo.och.taxi.ui; import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAXI; @@ -22,17 +22,16 @@ import android.widget.TextView; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.core.utilcode.util.ToastUtils; +import com.mogo.och.taxi.constant.TaxiOrderStatusEnum; import com.mogo.och.taxi.R; import com.mogo.och.taxi.constant.TaxiOrderCancelReasons; -import com.mogo.och.taxi.constant.TaxiOrderStatusEnum; import java.lang.ref.WeakReference; - /** * @author: wangmingjun * @date: 2021/8/18 */ -public class TaxiOrderCancelDialog extends AlertDialog implements View.OnClickListener, AdapterView.OnItemClickListener { +public class TaxiOrderCancelDialog extends AlertDialog implements View.OnClickListener,AdapterView.OnItemClickListener { private static final String TAG = "OCHTaxiOrderCancelDial"; protected WeakReference contextWeakReference; @@ -40,10 +39,11 @@ public class TaxiOrderCancelDialog extends AlertDialog implements View.OnClickLi private ContentAdapter mContentAdapter; private int mOrderStatus;//1:预约单,其他为即时单的状态, 主要是控制乘客上车 乘客下车这几个选项的显示 private String[] mContentArrays; + private CommitReasonListener mCommitListener = null; - public TaxiOrderCancelDialog(Context context, int orderStatus, CommitReasonListener commitListener) { - super(context, R.style.OrderCancelDialog); + public TaxiOrderCancelDialog(Context context, int orderStatus,CommitReasonListener commitListener) { + super(context,R.style.OrderCancelDialog); this.mOrderStatus = orderStatus; contextWeakReference = new WeakReference<>(context); this.mCommitListener = commitListener; @@ -62,14 +62,14 @@ public class TaxiOrderCancelDialog extends AlertDialog implements View.OnClickLi case ArriveAtStart: mContentArrays = new String[]{TaxiOrderCancelReasons.CarBroken.getMsg(), TaxiOrderCancelReasons.DeviceBroken.getMsg(), TaxiOrderCancelReasons.BatteryLow.getMsg(), TaxiOrderCancelReasons.DriverIsIll.getMsg(), - TaxiOrderCancelReasons.PassengerNotArrive.getMsg(), TaxiOrderCancelReasons.UnContractPassenger.getMsg(), - TaxiOrderCancelReasons.PassengerCancel.getMsg(), TaxiOrderCancelReasons.Other.getMsg()}; + TaxiOrderCancelReasons.PassengerNotArrive.getMsg(),TaxiOrderCancelReasons.UnContractPassenger.getMsg(), + TaxiOrderCancelReasons.PassengerCancel.getMsg(),TaxiOrderCancelReasons.Other.getMsg()}; break; case OnTheWayToEnd: case ArriveAtEnd: mContentArrays = new String[]{TaxiOrderCancelReasons.CarBroken.getMsg(), TaxiOrderCancelReasons.DeviceBroken.getMsg(), TaxiOrderCancelReasons.BatteryLow.getMsg(), TaxiOrderCancelReasons.DriverIsIll.getMsg(), - TaxiOrderCancelReasons.PassengerStopOver.getMsg(), TaxiOrderCancelReasons.Other.getMsg()}; + TaxiOrderCancelReasons.PassengerStopOver.getMsg(),TaxiOrderCancelReasons.Other.getMsg()}; break; default: mContentArrays = new String[]{TaxiOrderCancelReasons.CarBroken.getMsg(), TaxiOrderCancelReasons.DeviceBroken.getMsg(), @@ -77,6 +77,7 @@ public class TaxiOrderCancelDialog extends AlertDialog implements View.OnClickLi TaxiOrderCancelReasons.PassengerNotArrive.getMsg(), TaxiOrderCancelReasons.PassengerStopOver.getMsg(), TaxiOrderCancelReasons.Other.getMsg()}; break; + } } @@ -95,7 +96,7 @@ public class TaxiOrderCancelDialog extends AlertDialog implements View.OnClickLi private void initWindowView() { Window window = getWindow(); //dialog padding 去掉 - window.getDecorView().setPadding(0, 0, 0, 0); + window.getDecorView().setPadding(0,0,0,0); window.setDimAmount(0.5f); window.getDecorView().setBackgroundColor(Color.parseColor("#00FFFFFF"));//设置背景, 不然显示不全 @@ -123,16 +124,16 @@ public class TaxiOrderCancelDialog extends AlertDialog implements View.OnClickLi @Override public void onClick(View v) { if (v.getId() == R.id.order_cancel_commit_tv) {//bt commit - if (!TextUtils.isEmpty(mCurrentReason) && TaxiOrderCancelReasons.getType(mCurrentReason) != 0) { - //todo 取消正在执行的任务 - if (mCommitListener != null) { - mCommitListener.cancelCurOrder(TaxiOrderCancelReasons.getType(mCurrentReason)); - } - dismiss(); - } else { - ToastUtils.showShort("取消原因不能为空"); - } - } else if (v.getId() == R.id.order_dialog_cancel_tv) {//close icon + if (!TextUtils.isEmpty(mCurrentReason) && TaxiOrderCancelReasons.getType(mCurrentReason) != 0) { + //todo 取消正在执行的任务 + if (mCommitListener != null){ + mCommitListener.cancelCurOrder(TaxiOrderCancelReasons.getType(mCurrentReason)); + } + dismiss(); + }else { + ToastUtils.showShort("取消原因不能为空"); + } + }else if (v.getId() == R.id.order_dialog_cancel_tv){//close icon mCurrentReason = ""; dismiss(); } @@ -140,27 +141,27 @@ public class TaxiOrderCancelDialog extends AlertDialog implements View.OnClickLi @Override public void onItemClick(AdapterView parent, View view, int position, long id) { - CallerLogger.INSTANCE.d(M_TAXI + TAG, "mCurrentReason =" + mContentArrays[position]); + CallerLogger.INSTANCE.d(M_TAXI + TAG,"mCurrentReason ="+ mContentArrays[position]); mCurrentReason = mContentArrays[position]; mContentAdapter.notifyCurrentReasons(mCurrentReason); } - interface CommitReasonListener { + public interface CommitReasonListener{ void cancelCurOrder(int type); } - class ContentAdapter extends BaseAdapter { + class ContentAdapter extends BaseAdapter{ + private Context context; private String[] datas; private LayoutInflater layoutInflater; private String currentReasons = ""; - public ContentAdapter(Context context, String[] array) { + public ContentAdapter(Context context, String[] array){ this.context = context; datas = array; layoutInflater = LayoutInflater.from(context); } - @Override public int getCount() { return datas.length; @@ -179,28 +180,26 @@ public class TaxiOrderCancelDialog extends AlertDialog implements View.OnClickLi @Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder viewHolder = null; - if (convertView == null) { - convertView = layoutInflater.inflate(R.layout.taxi_order_checkbox_item, null); + if (convertView == null){ + convertView = layoutInflater.inflate(R.layout.taxi_order_checkbox_item,null); viewHolder = new ViewHolder(); viewHolder.checkBoxTv = convertView.findViewById(R.id.item_checkbox); convertView.setTag(viewHolder); - } else { + }else { viewHolder = (ViewHolder) convertView.getTag(); } viewHolder.checkBoxTv.setText(datas[position]); - if (viewHolder.checkBoxTv.getText().toString().equals(currentReasons)) { - viewHolder.checkBoxTv.setCompoundDrawablesWithIntrinsicBounds(context.getResources().getDrawable(R.drawable.shape_size_taxi_selected_btn), null, null, null); - } else { - viewHolder.checkBoxTv.setCompoundDrawablesWithIntrinsicBounds(context.getResources().getDrawable(R.drawable.shape_size_taxi_unselected_btn), null, null, null); + if(viewHolder.checkBoxTv.getText().toString().equals(currentReasons)){ + viewHolder.checkBoxTv.setCompoundDrawablesWithIntrinsicBounds(context.getResources().getDrawable(R.drawable.shape_size_taxi_selected_btn),null,null,null); + }else { + viewHolder.checkBoxTv.setCompoundDrawablesWithIntrinsicBounds(context.getResources().getDrawable(R.drawable.shape_size_taxi_unselected_btn),null,null,null); } return convertView; } - - public void notifyCurrentReasons(String reason) { + public void notifyCurrentReasons(String reason){ currentReasons = reason; notifyDataSetChanged(); } - class ViewHolder { TextView checkBoxTv; }