Commit 904aaa69 authored by jianglx's avatar jianglx

优化出游人的选择

parent c176a52b
......@@ -253,7 +253,7 @@ public class MineFragment extends BaseFragment<CommonPresenter> implements Simpl
} else if (id == R.id.rl_item_traveler) {
//出游人
if (isLogin()) return;
startActivity(ChooseAVisitorActivity.getIntent(_mActivity));
startActivity(new Intent(_mActivity, ChooseAVisitorActivity.class));
} else if (id == R.id.rl_item_my_pat) {
//我的拍拍
} else if (id == R.id.tv_view_privileges) {
......
package com.rv.rvmine.adapter;
import android.view.View;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import com.chad.library.adapter.base.BaseQuickAdapter;
......@@ -15,47 +17,72 @@ import java.util.List;
*/
public class TravelerListAdapter extends BaseQuickAdapter<TravelerListBean.DataBean, BaseViewHolder> {
public TravelerListAdapter() {
// private TravelerListBean.DataBean hasSelectBean = null;
private int openType;
public TravelerListAdapter(int openType) {
super(R.layout.rv_item_traveler_list);
this.openType = openType;
}
@Override
protected void convert(BaseViewHolder helper, final TravelerListBean.DataBean item) {
protected void convert(final BaseViewHolder helper, final TravelerListBean.DataBean item) {
helper.setText(R.id.tv_name, item.getName());
helper.setText(R.id.tv_phone, item.getPhone());
helper.setText(R.id.tv_id_card, item.getIdCard());
// if (hasSelectBean == null || hasSelectBean != item) {
// helper.setChecked(R.id.cb_draveler, false);
// } else {
// helper.setChecked(R.id.cb_draveler, true);
// }
helper.addOnClickListener(R.id.tv_edit);
helper.setOnCheckedChangeListener(R.id.cb_draveler, new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
int position =getPosition(item);
setItemState(isChecked, position);
if (openType == 0) {
helper.itemView.findViewById(R.id.cb_draveler).setVisibility(View.GONE);
} else {
if (item.getStatus()) {
helper.setChecked(R.id.cb_draveler, true);
} else {
helper.setChecked(R.id.cb_draveler, false);
}
helper.itemView.findViewById(R.id.cb_draveler).setEnabled(false);
// helper.setOnCheckedChangeListener(R.id.cb_draveler, new CompoundButton.OnCheckedChangeListener() {
// @Override
// public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
//
// boolean status = item.getStatus();
// status = !status;
// ((CheckBox) helper.itemView.findViewById(R.id.cb_draveler)).setChecked(status);
// item.setStatus(status);
// if (status) {
// hasSelectBean = item;
// } else {
// hasSelectBean = null;
// }
//// notifyDataSetChanged();
// }
// });
}
});
}
public int getPosition(TravelerListBean.DataBean item){
public int getPosition(TravelerListBean.DataBean item) {
return mData.indexOf(item);
}
/**
* 设置出游人选中状态
* @param check
* @param position
*/
public void setItemState(boolean check,int position){
mData.get(position).selectType=check==true?1:0;
notifyItemChanged(position);
}
// public TravelerListBean.DataBean getHasSelectBean() {
// return hasSelectBean;
// }
/**
* 获取选中的出游人数据
*
* @return
*/
public List<TravelerListBean.DataBean> getSelectItem(){
List<TravelerListBean.DataBean> list=new ArrayList<>();
for (TravelerListBean.DataBean dataBean:mData){
if(dataBean.selectType==1){
public List<TravelerListBean.DataBean> getSelectItem() {
List<TravelerListBean.DataBean> list = new ArrayList<>();
for (TravelerListBean.DataBean dataBean : mData) {
if (dataBean.getStatus()) {
list.add(dataBean);
}
}
......
......@@ -31,7 +31,6 @@ public class TravelerListBean extends BaseBean {
}
public static class DataBean implements Serializable {
public int selectType;//是否选中
private Integer id;//": 5,
private String userid;//": 14,
......@@ -43,15 +42,7 @@ public class TravelerListBean extends BaseBean {
private String updTime;//": 1558766256489,
private String isdel;//": 0,
private Integer isChild;//": 1
public int getSelectType() {
return selectType;
}
public void setSelectType(int selectType) {
this.selectType = selectType;
}
private boolean status = false; // 默认不选中
public Integer getId() {
return id;
}
......@@ -131,5 +122,13 @@ public class TravelerListBean extends BaseBean {
public void setIsChild(Integer isChild) {
this.isChild = isChild;
}
public boolean getStatus() {
return status;
}
public void setStatus(boolean status) {
this.status = status;
}
}
}
......@@ -3,12 +3,14 @@ package com.rv.rvmine.traveler;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.os.Parcelable;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.widget.Toast;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.alibaba.fastjson.JSON;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.frame.base.url.Constance;
import com.frame.rv.config.RvFrameConfig;
......@@ -48,14 +50,12 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter>
private int mPage;
private int countPage;
private int visitorType;
private int openType;
private DeletePopupWindow deletePopupWindow;
private List<TravelerListBean.DataBean> visitors = new ArrayList<>();
private TravelerListBean.DataBean deletBean = null;
public static Intent getIntent(Context context) {
return new Intent(context, ChooseAVisitorActivity.class);
}
private String hasChoIdCards; // 传过来的已经选择的身份证
@Override
protected int setLayout() {
......@@ -64,8 +64,10 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter>
@Override
protected void initView(Bundle savedInstanceState, TitleView titleView, Intent intent) {
visitorType = intent.getIntExtra("visitorType", -1);
visitorType = intent.getIntExtra("visitorType", -1);
openType = intent.getIntExtra("openType", 0);
hasChoIdCards = intent.getStringExtra("hasChoice");
titleView.setTitle("选择出游人");
titleView.setImageResource(R.id.iv_title_right, R.drawable.rv_common_icon_thestaff);
titleView.setChildClickListener(R.id.iv_title_right, new View.OnClickListener() {
......@@ -76,13 +78,18 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter>
});
mAdapter = new TravelerListAdapter();
mAdapter = new TravelerListAdapter(openType);
recyclerView.setLayoutManager(new LinearLayoutManager(mActivity));
recyclerView.setAdapter(mAdapter);
mAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
if (openType != -0) {
TravelerListBean.DataBean item = mAdapter.getItem(position);
if (item.getStatus()) {
Toast.makeText(getApplicationContext(), "不可重复添加", Toast.LENGTH_SHORT).show();
return;
}
Intent intent1 = getIntent();
intent1.putExtra("name", item.getName());
intent1.putExtra("phone", item.getPhone());
......@@ -91,6 +98,7 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter>
setResult(RESULT_OK, intent1);
finish();
}
}
});
mAdapter.setOnItemChildClickListener(new BaseQuickAdapter.OnItemChildClickListener() {
......@@ -128,6 +136,26 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter>
}
// @Override
// public void finish() {
// if (openType != 0) {
// Intent intent = new Intent();
// ArrayList<TravelerListBean.DataBean> selects;
//// if (selectBean == null) {
//// selectBean = mAdapter.getHasSelectBean();
//// }
//// if (selectBean != null) {
// intent.putExtra("name", selectBean.getName());
// intent.putExtra("phone", selectBean.getPhone());
// intent.putExtra("idcard", selectBean.getIdCard());
// intent.putExtra("id", selectBean.getId());
// setResult(RESULT_OK, intent);
//// }
//
// }
// super.finish();
// }
@Override
protected void loadData(Bundle savedInstanceState, Intent intent) {
super.loadData(savedInstanceState, intent);
......@@ -185,6 +213,9 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter>
} else {
for (TravelerListBean.DataBean b : bean.getData()) {
if (visitorType == b.getIsChild().intValue()) {
if (hasChoIdCards.contains(b.getIdCard())) {
b.setStatus(true);
}
visitors.add(b);
}
}
......@@ -201,7 +232,7 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter>
Map<String, Object> headMap = new LinkedHashMap<>();
if (OkGoUtil.getToken() != null)
headMap.put("Authorization", OkGoUtil.getToken());
mPresenter.postBodyData(1, ApiConfig.HTTP_URL_DELETEDRIVER , DeleteVistorBean.class, new DeleteInfo(deletBean.getId()), headMap, true);
mPresenter.postBodyData(1, ApiConfig.HTTP_URL_DELETEDRIVER, DeleteVistorBean.class, new DeleteInfo(deletBean.getId()), headMap, true);
}
}
......@@ -173,8 +173,17 @@ public class TravelerConfirmOrderActivity extends BaseStatusActivity<TourismPres
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
mPosition = position;
tourist = (BeanVisitorInformation) adapter.getItem(position);
StringBuffer buffer = new StringBuffer();
for (BeanVisitorInformation information : mVisitorInformationAdapter.getData()) {
if (information != null && information.getIsChild() == tourist.getIsChild()) {
buffer.append(information.getIdCard())
.append(";");
}
}
ARouter.getInstance().build(Constance.ACTIVITY_URL_CHOOSEAVISITOR)
.withInt("visitorType", Integer.valueOf(tourist.getIsChild()))
.withInt("openType", 1)
.withString("hasChoice", buffer.toString())
.navigation(mActivity, 104);
}
});
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment