[Taxi/Bus Driver 2.5.1] taxi 订单页优化
This commit is contained in:
@@ -68,13 +68,18 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie
|
||||
private static OCHTaxiFragment mTaxiFragment;
|
||||
private static boolean serverHadNoData = false;
|
||||
|
||||
public OCHTaxiPersonalDialogFragment(){
|
||||
}
|
||||
|
||||
public OCHTaxiPersonalDialogFragment(OCHTaxiFragment taxiFragment){
|
||||
mTaxiFragment = taxiFragment;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
|
||||
getDialog().requestWindowFeature(Window.FEATURE_NO_TITLE);
|
||||
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container,
|
||||
@Nullable Bundle savedInstanceState) {
|
||||
// getDialog().requestWindowFeature(Window.FEATURE_NO_TITLE);
|
||||
View view = inflater.inflate(R.layout.taxi_orders_list_view, container, false);
|
||||
initView(view);
|
||||
return view;
|
||||
@@ -87,6 +92,8 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie
|
||||
getDialog().setCanceledOnTouchOutside(true);
|
||||
Window window = getDialog().getWindow();
|
||||
//dialog padding 去掉
|
||||
window.getDecorView().setPadding(0,0,0,0);
|
||||
window.setDimAmount(0f);
|
||||
WindowManager.LayoutParams params = window.getAttributes();
|
||||
params.x = 0;
|
||||
params.y = 0;
|
||||
@@ -94,12 +101,13 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie
|
||||
Point point = new Point();
|
||||
windowManager.getDefaultDisplay().getSize(point);
|
||||
params.width = (int)(point.x * 0.375);
|
||||
params.height = point.y;
|
||||
Log.d(TAG,"width= "+params.width+"height= "+params.height);
|
||||
params.height = ViewGroup.LayoutParams.MATCH_PARENT;
|
||||
window.setAttributes(params);
|
||||
window.getDecorView().setBackgroundColor(Color.parseColor("#00FFFFFF"));//设置背景, 不然显示不全
|
||||
//设置背景, 不然显示不全
|
||||
window.getDecorView().setBackgroundColor(Color.parseColor("#00FFFFFF"));
|
||||
window.setGravity(Gravity.LEFT|Gravity.BOTTOM);
|
||||
}
|
||||
|
||||
private void initView(View view) {
|
||||
initOperationTabDatas(view);
|
||||
mCloseIv = view.findViewById(R.id.module_och_taxi_order_list_close_iv);
|
||||
@@ -178,15 +186,28 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie
|
||||
public void onPageScrollStateChanged(int state) {
|
||||
}
|
||||
});
|
||||
mOperationViewPager.setAdapter(new OrdersOperationFragmentAdapter(getChildFragmentManager(), FragmentPagerAdapter.BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT));
|
||||
mOperationViewPager.setAdapter(new OrdersOperationFragmentAdapter(getChildFragmentManager()
|
||||
, FragmentPagerAdapter.BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT));
|
||||
fragments.get(0).setmType(0);
|
||||
mTaxiFragment.queryDriverServiceData();
|
||||
|
||||
if (mTaxiFragment == null){
|
||||
dismiss();
|
||||
}else {
|
||||
mTaxiFragment.queryDriverServiceData();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新运营数据 时间和订单数
|
||||
* @param dailyTimeDuration
|
||||
* @param dailyOrderNum
|
||||
*/
|
||||
public void onServiceDataUpdate(long dailyTimeDuration, long dailyOrderNum){
|
||||
for (int i=0; i< fragments.size();i++){
|
||||
fragments.get(i).updateData(dailyTimeDuration,dailyOrderNum);
|
||||
}
|
||||
}
|
||||
|
||||
private void changeOperationTabLayoutTabUI(TabLayout.Tab tab, boolean isSelected) {
|
||||
TextView textView = (TextView) tab.getCustomView().findViewById(R.id.operation_tab_title);
|
||||
ImageView imageView = (ImageView) tab.getCustomView().findViewById(R.id.operation_tab_line_iv);
|
||||
@@ -232,9 +253,20 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie
|
||||
});
|
||||
mOrdersRv.setAdapter(mAdapter);
|
||||
}
|
||||
|
||||
/**
|
||||
* 请求订单数据
|
||||
* @param page
|
||||
* @param size
|
||||
*/
|
||||
private void requestOrdersList(int page, int size){
|
||||
mTaxiFragment.queryOrdersList(page,size);
|
||||
}
|
||||
|
||||
/**
|
||||
* 订单数据结果返回
|
||||
* @param ordersList
|
||||
*/
|
||||
public void onOrdersListPageRefresh(List<OrderQueryRespBean.Result> ordersList){
|
||||
if (null == ordersList && mNextPage == 0){//无数据
|
||||
mOrdersRv.setVisibility(View.GONE);
|
||||
@@ -256,6 +288,7 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie
|
||||
mAdapter.notifyDataSetChanged();
|
||||
mNextPage = mNextPage +1;
|
||||
}
|
||||
|
||||
class OrderAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder>{
|
||||
private static final int ORDER_DETAIL_ITEM = 0;
|
||||
private static final int DAY_GROUP_ITEM = 1;
|
||||
@@ -270,11 +303,13 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie
|
||||
@Override
|
||||
public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||
if (viewType == ORDER_DETAIL_ITEM){
|
||||
View view = LayoutInflater.from(context).inflate(R.layout.taxi_orders_list_item,parent,false);
|
||||
View view = LayoutInflater.from(context).inflate(R.layout.taxi_orders_list_item,parent
|
||||
,false);
|
||||
OrderDetailViewHolder viewHolder = new OrderDetailViewHolder(view);
|
||||
return viewHolder;
|
||||
}else if (viewType == DAY_GROUP_ITEM){
|
||||
View view = LayoutInflater.from(context).inflate(R.layout.taxi_orders_list_day_item,parent,false);
|
||||
View view = LayoutInflater.from(context).inflate(R.layout.taxi_orders_list_day_item,parent
|
||||
,false);
|
||||
DayGroupViewHolder viewHolder = new DayGroupViewHolder(view);
|
||||
return viewHolder;
|
||||
}
|
||||
@@ -289,8 +324,9 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie
|
||||
if (holder instanceof DayGroupViewHolder){
|
||||
DayGroupViewHolder groupViewHolder = (DayGroupViewHolder)holder;
|
||||
groupViewHolder.dayGroupTv.setText(OchTaxiUtils.getYMDTime(queryRespBean.createTime));
|
||||
bindOrderDetailData(queryRespBean,groupViewHolder.orderTimeTv,groupViewHolder.startStationTv,groupViewHolder.endStationTv,
|
||||
groupViewHolder.orderStatusBt,groupViewHolder.orderTypeBt,groupViewHolder.orderNumTv);
|
||||
bindOrderDetailData(queryRespBean,groupViewHolder.orderTimeTv,groupViewHolder.startStationTv
|
||||
, groupViewHolder.endStationTv, groupViewHolder.orderStatusBt,groupViewHolder.orderTypeBt
|
||||
,groupViewHolder.orderNumTv);
|
||||
if (isNoLineItem(position)){
|
||||
groupViewHolder.dividerLine.setVisibility(View.VISIBLE);
|
||||
}else {
|
||||
@@ -303,7 +339,8 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie
|
||||
}
|
||||
}else if (holder instanceof OrderDetailViewHolder){
|
||||
OrderDetailViewHolder detailViewHolder = (OrderDetailViewHolder)holder;
|
||||
bindOrderDetailData(queryRespBean,detailViewHolder.orderTimeTv,detailViewHolder.startStationTv,detailViewHolder.endStationTv,
|
||||
bindOrderDetailData(queryRespBean,detailViewHolder.orderTimeTv,
|
||||
detailViewHolder.startStationTv,detailViewHolder.endStationTv,
|
||||
detailViewHolder.orderStatusBt,detailViewHolder.orderTypeBt,detailViewHolder.orderNumTv);
|
||||
if (isNoLineItem(position)){
|
||||
detailViewHolder.dividerLine.setVisibility(View.VISIBLE);
|
||||
@@ -352,8 +389,10 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie
|
||||
public int getItemCount() {
|
||||
return orders.size();
|
||||
}
|
||||
|
||||
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
|
||||
private void bindOrderDetailData(OrderQueryRespBean.Result queryRespBean, TextView orderTimeTv, TextView startStationTv, TextView endStationTv,
|
||||
private void bindOrderDetailData(OrderQueryRespBean.Result queryRespBean, TextView orderTimeTv,
|
||||
TextView startStationTv, TextView endStationTv,
|
||||
Button orderStatusBt, Button orderTypeBt, TextView orderNumTv){
|
||||
Calendar calendar= Calendar.getInstance();
|
||||
calendar.setTimeInMillis(queryRespBean.createTime);
|
||||
@@ -364,6 +403,7 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie
|
||||
orderTypeBt.setText(getOrderType(queryRespBean.orderType,orderTypeBt));
|
||||
orderNumTv.setText("订单编号:"+String.valueOf(queryRespBean.orderId));
|
||||
}
|
||||
|
||||
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
|
||||
private String getOrderStatus(int status, Button button){
|
||||
OrderStatusEnum orderStatus = OrderStatusEnum.valueOf(status);
|
||||
@@ -379,6 +419,7 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie
|
||||
return "服务中";
|
||||
}
|
||||
}
|
||||
|
||||
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
|
||||
private String getOrderType(int type, Button button){
|
||||
if (type == OrderTypeEnum.Reserved.getType()){
|
||||
@@ -391,6 +432,7 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class OrderDetailViewHolder extends RecyclerView.ViewHolder{
|
||||
|
||||
protected TextView orderTimeTv;
|
||||
@@ -420,6 +462,7 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class DayGroupViewHolder extends OrderDetailViewHolder{
|
||||
|
||||
private TextView dayGroupTv;
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
android:id="@+id/module_och_taxi_order_list"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingBottom="94px">
|
||||
android:paddingBottom="50px">
|
||||
|
||||
</androidx.recyclerview.widget.RecyclerView>
|
||||
</RelativeLayout>
|
||||
|
||||
@@ -68,13 +68,15 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie
|
||||
private static OCHTaxiFragment mTaxiFragment;
|
||||
private static boolean serverHadNoData = false;
|
||||
|
||||
public OCHTaxiPersonalDialogFragment(){
|
||||
}
|
||||
|
||||
public OCHTaxiPersonalDialogFragment(OCHTaxiFragment taxiFragment){
|
||||
mTaxiFragment = taxiFragment;
|
||||
}
|
||||
@Nullable
|
||||
@Override
|
||||
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
|
||||
getDialog().requestWindowFeature(Window.FEATURE_NO_TITLE);
|
||||
View view = inflater.inflate(R.layout.taxi_orders_list_view, container, false);
|
||||
initView(view);
|
||||
return view;
|
||||
@@ -87,6 +89,8 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie
|
||||
getDialog().setCanceledOnTouchOutside(true);
|
||||
Window window = getDialog().getWindow();
|
||||
//dialog padding 去掉
|
||||
window.getDecorView().setPadding(0,0,0,0);
|
||||
window.setDimAmount(0f);
|
||||
WindowManager.LayoutParams params = window.getAttributes();
|
||||
params.x = 0;
|
||||
params.y = 0;
|
||||
@@ -94,7 +98,7 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie
|
||||
Point point = new Point();
|
||||
windowManager.getDefaultDisplay().getSize(point);
|
||||
params.width = (int)(point.x * 0.375);
|
||||
params.height = point.y;
|
||||
params.height = ViewGroup.LayoutParams.MATCH_PARENT;
|
||||
Log.d(TAG,"width= "+params.width+"height= "+params.height);
|
||||
window.setAttributes(params);
|
||||
window.getDecorView().setBackgroundColor(Color.parseColor("#00FFFFFF"));//设置背景, 不然显示不全
|
||||
@@ -180,13 +184,20 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie
|
||||
});
|
||||
mOperationViewPager.setAdapter(new OrdersOperationFragmentAdapter(getChildFragmentManager(), FragmentPagerAdapter.BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT));
|
||||
fragments.get(0).setmType(0);
|
||||
mTaxiFragment.queryDriverServiceData();
|
||||
|
||||
if (mTaxiFragment == null){
|
||||
dismiss();
|
||||
}else {
|
||||
mTaxiFragment.queryDriverServiceData();
|
||||
}
|
||||
}
|
||||
|
||||
public void onServiceDataUpdate(long dailyTimeDuration, long dailyOrderNum){
|
||||
for (int i=0; i< fragments.size();i++){
|
||||
fragments.get(i).updateData(dailyTimeDuration,dailyOrderNum);
|
||||
}
|
||||
}
|
||||
|
||||
private void changeOperationTabLayoutTabUI(TabLayout.Tab tab, boolean isSelected) {
|
||||
TextView textView = (TextView) tab.getCustomView().findViewById(R.id.operation_tab_title);
|
||||
ImageView imageView = (ImageView) tab.getCustomView().findViewById(R.id.operation_tab_line_iv);
|
||||
@@ -232,9 +243,11 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie
|
||||
});
|
||||
mOrdersRv.setAdapter(mAdapter);
|
||||
}
|
||||
|
||||
private void requestOrdersList(int page, int size){
|
||||
mTaxiFragment.queryOrdersList(page,size);
|
||||
}
|
||||
|
||||
public void onOrdersListPageRefresh(List<OrderQueryRespBean.Result> ordersList){
|
||||
if (null == ordersList && mNextPage == 0){//无数据
|
||||
mOrdersRv.setVisibility(View.GONE);
|
||||
@@ -256,6 +269,7 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie
|
||||
mAdapter.notifyDataSetChanged();
|
||||
mNextPage = mNextPage +1;
|
||||
}
|
||||
|
||||
class OrderAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder>{
|
||||
private static final int ORDER_DETAIL_ITEM = 0;
|
||||
private static final int DAY_GROUP_ITEM = 1;
|
||||
@@ -352,6 +366,7 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie
|
||||
public int getItemCount() {
|
||||
return orders.size();
|
||||
}
|
||||
|
||||
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
|
||||
private void bindOrderDetailData(OrderQueryRespBean.Result queryRespBean, TextView orderTimeTv, TextView startStationTv, TextView endStationTv,
|
||||
Button orderStatusBt, Button orderTypeBt, TextView orderNumTv){
|
||||
@@ -364,6 +379,7 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie
|
||||
orderTypeBt.setText(getOrderType(queryRespBean.orderType,orderTypeBt));
|
||||
orderNumTv.setText("订单编号:"+String.valueOf(queryRespBean.orderId));
|
||||
}
|
||||
|
||||
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
|
||||
private String getOrderStatus(int status, Button button){
|
||||
OrderStatusEnum orderStatus = OrderStatusEnum.valueOf(status);
|
||||
@@ -379,6 +395,7 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie
|
||||
return "服务中";
|
||||
}
|
||||
}
|
||||
|
||||
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
|
||||
private String getOrderType(int type, Button button){
|
||||
if (type == OrderTypeEnum.Reserved.getType()){
|
||||
@@ -391,6 +408,7 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class OrderDetailViewHolder extends RecyclerView.ViewHolder{
|
||||
|
||||
protected TextView orderTimeTv;
|
||||
@@ -420,6 +438,7 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class DayGroupViewHolder extends OrderDetailViewHolder{
|
||||
|
||||
private TextView dayGroupTv;
|
||||
|
||||
@@ -79,10 +79,11 @@
|
||||
android:id="@+id/module_och_taxi_order_list"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingBottom="94px">
|
||||
android:paddingBottom="50px">
|
||||
|
||||
</androidx.recyclerview.widget.RecyclerView>
|
||||
</RelativeLayout>
|
||||
|
||||
<include
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
|
||||
Reference in New Issue
Block a user