Commit 1632103a authored by linfeng's avatar linfeng

Merge branch 'dev-member-john' of http://113.105.137.151:22280/lify/rvapp

parents 43112fbb f02312c2
...@@ -3,7 +3,6 @@ package com.rv.rvmine.adapter; ...@@ -3,7 +3,6 @@ package com.rv.rvmine.adapter;
import android.view.View; import android.view.View;
import android.widget.CheckBox; import android.widget.CheckBox;
import android.widget.CompoundButton; import android.widget.CompoundButton;
import android.widget.Toast;
import com.chad.library.adapter.base.BaseQuickAdapter; import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder; import com.chad.library.adapter.base.BaseViewHolder;
...@@ -39,14 +38,14 @@ public class TravelerListAdapter extends BaseQuickAdapter<TravelerListBean.DataB ...@@ -39,14 +38,14 @@ public class TravelerListAdapter extends BaseQuickAdapter<TravelerListBean.DataB
helper.itemView.findViewById(R.id.cb_draveler).setVisibility(View.GONE); helper.itemView.findViewById(R.id.cb_draveler).setVisibility(View.GONE);
} else { } else {
if (item.getStatus()) { if (item.getStatus()) {
helper.setChecked(R.id.cb_draveler, true); helper.setImageResource(R.id.cb_draveler, R.drawable.common_icon_select);
} else { } else {
helper.setChecked(R.id.cb_draveler, false); helper.setImageResource(R.id.cb_draveler, R.drawable.common_icon_unselect);
} }
helper.setOnCheckedChangeListener(R.id.cb_draveler, new CompoundButton.OnCheckedChangeListener() { helper.itemView.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { public void onClick(View view) {
boolean status = item.getStatus(); boolean status = item.getStatus();
boolean result = false; boolean result = false;
if (mListener != null) { if (mListener != null) {
...@@ -58,26 +57,7 @@ public class TravelerListAdapter extends BaseQuickAdapter<TravelerListBean.DataB ...@@ -58,26 +57,7 @@ public class TravelerListAdapter extends BaseQuickAdapter<TravelerListBean.DataB
} else { } else {
mListener.showError(); mListener.showError();
} }
((CheckBox) helper.itemView.findViewById(R.id.cb_draveler)).setChecked(status); helper.setImageResource(R.id.cb_draveler, status ? R.drawable.common_icon_select : R.drawable.common_icon_unselect);
}
});
helper.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// ((CheckBox)helper.itemView.findViewById(R.id.cb_draveler)).setChecked(item.getStatus());
// boolean status = item.getStatus();
// boolean result = false;
// if (mListener != null) {
// result = mListener.select(item, status ? 0 : 1);
// }
// if (result) { // 动作成功
// status = !status;
// item.setStatus(status);
// } else {
// mListener.showError();
// }
((CheckBox) helper.itemView.findViewById(R.id.cb_draveler)).setChecked(!item.getStatus());
} }
}); });
} }
......
...@@ -40,6 +40,7 @@ import java.sql.Array; ...@@ -40,6 +40,7 @@ import java.sql.Array;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collections; import java.util.Collections;
import java.util.Comparator; import java.util.Comparator;
import java.util.Iterator;
import java.util.LinkedHashMap; import java.util.LinkedHashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -49,7 +50,9 @@ import butterknife.BindView; ...@@ -49,7 +50,9 @@ import butterknife.BindView;
import butterknife.OnClick; import butterknife.OnClick;
/** /**
* 选择出游人 * 选择出游人 / 选择出游人
* <p>
* 添加
*/ */
@Route(path = Constance.ACTIVITY_URL_CHOOSEAVISITOR) @Route(path = Constance.ACTIVITY_URL_CHOOSEAVISITOR)
public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter> { public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter> {
...@@ -70,10 +73,9 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter> ...@@ -70,10 +73,9 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter>
private DeletePopupWindow deletePopupWindow; private DeletePopupWindow deletePopupWindow;
private List<TravelerListBean.DataBean> visitors = new ArrayList<>(); private List<TravelerListBean.DataBean> visitors = new ArrayList<>();
private TravelerListBean.DataBean deletBean = null; private TravelerListBean.DataBean deletBean = null;
private List<TravelerListBean.DataBean> adults = new ArrayList<>(); private List<Integer> adults;
private List<TravelerListBean.DataBean> childs = new ArrayList<>(); private List<Integer> childs;
private String hasChoIdCards; // 传过来的已经选择的身份证
private int adultNumber; //成人数量 private int adultNumber; //成人数量
private int childBumber; // 小孩数量 private int childBumber; // 小孩数量
...@@ -94,6 +96,24 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter> ...@@ -94,6 +96,24 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter>
if (childBumber > 0) { if (childBumber > 0) {
childs = new ArrayList<>(childBumber); childs = new ArrayList<>(childBumber);
} }
String hasChoiceAdults = intent.getStringExtra("hasChoiceAdults");
if (!TextUtils.isEmpty(hasChoiceAdults)) {
String[] choiceAdult = hasChoiceAdults.split(";");
if (adults != null && choiceAdult.length > 0) {
for (String s : choiceAdult) {
adults.add(Integer.valueOf(s));
}
}
}
String hasChoiceChilds = intent.getStringExtra("hasChoiceChilds");
if (!TextUtils.isEmpty(hasChoiceChilds)) {
String[] choiceChilds = hasChoiceChilds.split(";");
if (childs != null && choiceChilds.length > 0) {
for (String s : choiceChilds) {
childs.add(Integer.valueOf(s));
}
}
}
StringBuilder builder = new StringBuilder(); StringBuilder builder = new StringBuilder();
builder.append("请选择"); builder.append("请选择");
...@@ -112,7 +132,6 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter> ...@@ -112,7 +132,6 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter>
btnConfim.setVisibility(View.VISIBLE); btnConfim.setVisibility(View.VISIBLE);
} }
hasChoIdCards = intent.getStringExtra("hasChoice");
if (openType == 0) { if (openType == 0) {
titleView.setTitle("出游人"); titleView.setTitle("出游人");
} else { } else {
...@@ -162,7 +181,6 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter> ...@@ -162,7 +181,6 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter>
} }
deletePopupWindow.showAsDropDown(view, view.getWidth() / 2 - deletePopupWindow.getContentView().getMeasuredWidth() / 2, deletePopupWindow.showAsDropDown(view, view.getWidth() / 2 - deletePopupWindow.getContentView().getMeasuredWidth() / 2,
-deletePopupWindow.getContentView().getHeight()); -deletePopupWindow.getContentView().getHeight());
} }
...@@ -170,7 +188,6 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter> ...@@ -170,7 +188,6 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter>
public void onViewClicked(View view) { public void onViewClicked(View view) {
int id = view.getId(); int id = view.getId();
if (id == R.id.btn_confirm) { if (id == R.id.btn_confirm) {
if (mAdapter != null) {
int remainChild = 0; int remainChild = 0;
int remainAdult = 0; int remainAdult = 0;
if (childs != null) { if (childs != null) {
...@@ -187,51 +204,37 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter> ...@@ -187,51 +204,37 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter>
ArrayList<String> phones = new ArrayList<>(); ArrayList<String> phones = new ArrayList<>();
ArrayList<String> idcards = new ArrayList<>(); ArrayList<String> idcards = new ArrayList<>();
ArrayList<String> ids = new ArrayList<>(); ArrayList<String> ids = new ArrayList<>();
if (adults != null) for (TravelerListBean.DataBean bean : visitors) {
for (TravelerListBean.DataBean bean : adults) { if (adults != null && adults.contains(bean.getId())) {
names.add(bean.getName()); names.add(bean.getName());
phones.add(bean.getPhone()); phones.add(bean.getPhone());
idcards.add(bean.getIdCard()); idcards.add(bean.getIdCard());
ids.add(bean.getId() + ""); ids.add(bean.getId() + "");
} }
}
if (childs != null) for (TravelerListBean.DataBean bean : visitors) {
for (TravelerListBean.DataBean bean : childs) { if (childs != null && childs.contains(bean.getId())) {
names.add(bean.getName()); names.add(bean.getName());
phones.add(bean.getPhone()); phones.add(bean.getPhone());
idcards.add(bean.getIdCard()); idcards.add(bean.getIdCard());
ids.add(bean.getId() + ""); ids.add(bean.getId() + "");
} }
Intent intent1 = getIntent();
intent1.putStringArrayListExtra("name", names);
intent1.putStringArrayListExtra("phone", phones);
intent1.putStringArrayListExtra("idcard", idcards);
intent1.putStringArrayListExtra("id", ids);
setResult(RESULT_OK, intent1);
finish();
} }
Intent intent = getIntent();
intent.putStringArrayListExtra("name", names);
intent.putStringArrayListExtra("phone", phones);
intent.putStringArrayListExtra("idcard", idcards);
intent.putStringArrayListExtra("id", ids);
setResult(RESULT_OK, intent);
finish();
} }
} }
// @Override @Override
// public void finish() { public void finish() {
// if (openType != 0) { super.finish();
// 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 @Override
protected void loadData(Bundle savedInstanceState, Intent intent) { protected void loadData(Bundle savedInstanceState, Intent intent) {
...@@ -254,9 +257,9 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter> ...@@ -254,9 +257,9 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter>
mAdapter.notifyDataSetChanged(); mAdapter.notifyDataSetChanged();
} }
if (adults != null) if (adults != null)
adults.remove(deletBean); adults.remove(deletBean.getId());
if (childs != null) if (childs != null)
childs.remove(deletBean); childs.remove(deletBean.getId());
deletBean = null; deletBean = null;
} }
} }
...@@ -289,21 +292,21 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter> ...@@ -289,21 +292,21 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter>
return; return;
} }
visitors.clear(); visitors.clear();
// if (adults != null) adults.clear();
// if (childs != null) childs.clear();
for (TravelerListBean.DataBean b : bean.getData()) { for (TravelerListBean.DataBean b : bean.getData()) {
if (!TextUtils.isEmpty(hasChoIdCards) && hasChoIdCards.contains(b.getIdCard())) { if (b.getIsChild() == 0) { // 成人
if (adults != null && adults.contains(b.getId())) {
b.setStatus(true);
}
} else { // 儿童
if (childs != null && childs.contains(b.getId())) {
b.setStatus(true); b.setStatus(true);
if (b.getIsChild() == 0) {
if (adults != null)
adults.add(b);
} else {
if (childs != null)
childs.add(b);
} }
} }
visitors.add(b); visitors.add(b);
} }
dealAdults();
dealChilds();
Collections.sort(visitors, new Comparator<TravelerListBean.DataBean>() { Collections.sort(visitors, new Comparator<TravelerListBean.DataBean>() {
@Override @Override
...@@ -321,6 +324,43 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter> ...@@ -321,6 +324,43 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter>
} }
} }
private void dealAdults() {
if (adults != null) {
Iterator<Integer> iterator = adults.iterator();
while (iterator.hasNext()) {
Integer integer = iterator.next();
boolean isContain = false;
for (TravelerListBean.DataBean bean : visitors) {
if (bean.getId() == integer.intValue()) {
isContain = true;
}
}
if (!isContain) {
iterator.remove();
}
}
}
}
private void dealChilds() {
if (childs != null) {
Iterator<Integer> iterator = childs.iterator();
while (iterator.hasNext()) {
Integer integer = iterator.next();
boolean isContain = false;
for (TravelerListBean.DataBean bean : visitors) {
if (bean.getId() == integer.intValue()) {
isContain = true;
}
}
if (!isContain) {
iterator.remove();
}
}
}
}
private void deleteDriver() { private void deleteDriver() {
if (deletBean != null) { if (deletBean != null) {
Map<String, Object> headMap = new LinkedHashMap<>(); Map<String, Object> headMap = new LinkedHashMap<>();
...@@ -335,34 +375,22 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter> ...@@ -335,34 +375,22 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter>
public boolean select(TravelerListBean.DataBean bean, int action) { public boolean select(TravelerListBean.DataBean bean, int action) {
if (bean != null) { if (bean != null) {
if (bean.getIsChild() == 0) { // 成人 if (bean.getIsChild() == 0) { // 成人
if (adultNumber == 0) { if (adultNumber == 0) return false;
return false; if (action == 0) return adults.remove(bean.getId());
} else { // 选中
if (action == 0) { // 取消选中 if (adults.contains(bean.getId())) return false;
return adults.remove(bean); if (adults.size() >= adultNumber) return false;
} else { // 选中 return adults.add(bean.getId());
if (adults.contains(bean)) {
return false;
}
if (adults.size() >= adultNumber) {
return false;
}
return adults.add(bean);
} }
} else { // 儿童 } else { // 儿童
if (childBumber == 0) { if (childBumber == 0) return false;
return false;
} if (action == 0) return childs.remove(bean.getId());
if (action == 0) {
return childs.remove(bean); else {
} else { if (childs.contains(bean.getId())) return false;
if (childs.contains(bean)) { if (childs.size() >= childBumber) return false;
return false; return childs.add(bean.getId());
}
if (childs.size() >= childBumber) {
return false;
}
return childs.add(bean);
} }
} }
} }
......
...@@ -17,13 +17,10 @@ ...@@ -17,13 +17,10 @@
android:layout_marginBottom="@dimen/size_15" android:layout_marginBottom="@dimen/size_15"
android:orientation="horizontal"> android:orientation="horizontal">
<CheckBox <ImageView
android:checked="false"
android:focusable="false"
android:focusableInTouchMode="false"
android:id="@+id/cb_draveler" android:id="@+id/cb_draveler"
android:layout_width="wrap_content" android:layout_width="@dimen/size_15"
android:layout_height="wrap_content" android:layout_height="@dimen/size_15"
android:layout_gravity="center_vertical" /> android:layout_gravity="center_vertical" />
<LinearLayout <LinearLayout
......
...@@ -8,6 +8,7 @@ import android.support.annotation.Nullable; ...@@ -8,6 +8,7 @@ import android.support.annotation.Nullable;
import android.support.v4.widget.PopupWindowCompat; import android.support.v4.widget.PopupWindowCompat;
import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView; import android.support.v7.widget.RecyclerView;
import android.text.TextUtils;
import android.view.Gravity; import android.view.Gravity;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
...@@ -150,7 +151,7 @@ public class TravelerConfirmOrderActivity extends BaseStatusActivity<TourismPres ...@@ -150,7 +151,7 @@ public class TravelerConfirmOrderActivity extends BaseStatusActivity<TourismPres
double childPrice = dataBean.getChildPrice(); double childPrice = dataBean.getChildPrice();
double adultPrice = dataBean.getPrice(); double adultPrice = dataBean.getPrice();
price = Arith.mul(Double.valueOf(childNum), Double.valueOf(childPrice)) + Arith.mul(Double.valueOf(adultNum), Double.valueOf(adultPrice)); price = Arith.mul(Double.valueOf(childNum), Double.valueOf(childPrice)) + Arith.mul(Double.valueOf(adultNum), Double.valueOf(adultPrice));
tvPaymentAmount.setText(String.format("¥%1$s",new BigDecimal(price).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue())); tvPaymentAmount.setText(String.format("¥%1$s", new BigDecimal(price).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()));
for (int i = 0; i < Integer.valueOf(dataBean.getAdultNum()); i++) { for (int i = 0; i < Integer.valueOf(dataBean.getAdultNum()); i++) {
BeanVisitorInformation travelMember = new BeanVisitorInformation(); BeanVisitorInformation travelMember = new BeanVisitorInformation();
...@@ -175,18 +176,24 @@ public class TravelerConfirmOrderActivity extends BaseStatusActivity<TourismPres ...@@ -175,18 +176,24 @@ public class TravelerConfirmOrderActivity extends BaseStatusActivity<TourismPres
public void onItemClick(BaseQuickAdapter adapter, View view, int position) { public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
mPosition = position; mPosition = position;
tourist = (BeanVisitorInformation) adapter.getItem(position); tourist = (BeanVisitorInformation) adapter.getItem(position);
StringBuffer buffer = new StringBuffer(); StringBuffer bufferAdults = new StringBuffer();
StringBuffer bufferChilds = new StringBuffer();
for (BeanVisitorInformation information : mVisitorInformationAdapter.getData()) { for (BeanVisitorInformation information : mVisitorInformationAdapter.getData()) {
if (information != null) { if (information != null) {
buffer.append(information.getIdCard()) if ("0".equals(information.getIsChild()) && !TextUtils.isEmpty(information.getId())) {
.append(";"); bufferAdults.append(information.getId()).append(";");
} else if("1".equals(information.getIsChild()) && !TextUtils.isEmpty(information.getId())) {
bufferChilds.append(information.getId()).append(";");
}
} }
} }
ARouter.getInstance().build(Constance.ACTIVITY_URL_CHOOSEAVISITOR) ARouter.getInstance().build(Constance.ACTIVITY_URL_CHOOSEAVISITOR)
.withInt("adult_number", Integer.valueOf(dataBean.getAdultNum())) .withInt("adult_number", Integer.valueOf(dataBean.getAdultNum()))
.withInt("child_number", Integer.valueOf(dataBean.getChildNum())) .withInt("child_number", Integer.valueOf(dataBean.getChildNum()))
.withString("hasChoiceAdults", bufferAdults.length() == 0 ? "" : bufferAdults.substring(0, bufferAdults.length() - 1))
.withString("hasChoiceChilds", bufferChilds.length() == 0 ? "" : bufferChilds.substring(0, bufferChilds.length() - 1))
.withInt("openType", 1) .withInt("openType", 1)
.withString("hasChoice", buffer.toString())
.navigation(mActivity, 104); .navigation(mActivity, 104);
} }
}); });
......
...@@ -130,6 +130,8 @@ public class MemberCenterActivity extends BaseStatusActivity<MemberPresenter> { ...@@ -130,6 +130,8 @@ public class MemberCenterActivity extends BaseStatusActivity<MemberPresenter> {
.subscribe(new Consumer<PaymentSuccessfulEvent>() { .subscribe(new Consumer<PaymentSuccessfulEvent>() {
@Override @Override
public void accept(PaymentSuccessfulEvent payEvent) throws Exception { public void accept(PaymentSuccessfulEvent payEvent) throws Exception {
Class aClass = Class.forName("com.rv.rvmine.rxbusevent.UserInfoEvent");
RxBus.post(aClass.newInstance());
startActivityForResult(OrderListActivity.getIntent(MemberCenterActivity.this, 3), REQUEST_PAY); startActivityForResult(OrderListActivity.getIntent(MemberCenterActivity.this, 3), REQUEST_PAY);
} }
}); });
......
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