Commit dfc9dd1a authored by linfeng's avatar linfeng

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

parents 1a6a04c0 f3f1bc8a
......@@ -46,6 +46,7 @@ public class ApiConfig {
public static String HTTP_URL_CERTIFICATE = RvFrameConfig.VEHICLE_UPLOAD + "certif/app/certificate";//实名认证
public static String HTTP_URL_UPUSER_EDIT = RvFrameConfig.ADMIN_POST + "app/user/edit";//更新用户信息
public static String HTTP_URL_GETTOURUSERLIST = RvFrameConfig.VEHICLE_TOURUSER + "tourUser/app/unauth/getTourUserList";//获得全部出游人信息
public static String HTTP_URL_DELETEDRIVER = RvFrameConfig.VEHICLE_TOURUSER + "tourUser/app/del"; // 删除出游人
public static String HTTP_URL_ADDANDUPDATE = RvFrameConfig.VEHICLE_TOURUSER + "tourUser/app/addAndUpdate";//添加和更新出游人信息
public static String HTTP_URL_CAR_TYPE_NOTICE = RvFrameConfig.HOST + "/h5/appHtml/view/notice.html";//预定须知
......@@ -66,4 +67,6 @@ public class ApiConfig {
public static String HTTP_URL_VERSION_CHECK = "/api/app/version/app/unauth/info?version=%s"; // 检测版本
public static String HTTP_URL_FIND_BANNERLIST = RvFrameConfig.HOST + "/api/app/banner/app/unauth/findBannerlist"; // banner图接口
public static String HTTP_URL_EFFECTIVE_TIME = RvFrameConfig.VEHICLE_ORDER + "/baseOrder/app/unauth/getOrderParam" ; // 获取订单失效时间
}
......@@ -17,6 +17,7 @@ import android.widget.LinearLayout;
import android.widget.PopupWindow;
import android.widget.RatingBar;
import android.widget.TextView;
import android.widget.Toast;
import com.alibaba.android.arouter.launcher.ARouter;
import com.alibaba.fastjson.JSON;
......@@ -142,7 +143,7 @@ public class ConfirmOrderActivity extends BaseStatusActivity<CommonPresenter> {
private OrderDataBean dataBean;
private CarTypeListBean.DataBeanX.DataBean mCarBean;
private DrivingListBean.DataBeanX.DataBean drivingListBean;
private int drivingType ;//驾驶证类型1、欣新驾驶员2、自驾
private int drivingType = 0;//驾驶证类型1、欣新驾驶员2、自驾
private OrderPriceDetailPw detailPw;//显示订单价格明细弹窗
private OrderPriceDetailBean orderPriceDetailBean;//订单价格明细实体类
private IWXAPI api;
......@@ -257,7 +258,7 @@ public class ConfirmOrderActivity extends BaseStatusActivity<CommonPresenter> {
@OnClick({R2.id.rl_goods, R2.id.tv_get_car_address, R2.id.tv_out_car_address, R2.id.iv_add_driving,
R2.id.tv_detail, R2.id.tv_confirm_order, R2.id.tv_delete, R2.id.rb_xin_driving,
R2.id.rb_user_driving, R2.id.tv_contract_agreement, R2.id.tv_service_fee_show, R2.id.tv_vehicle_cleaning_fee_show,
R2.id.tv_lab3,R2.id.tv_deposit_hint,R2.id.tv_privilege_service_hint,R2.id.tv_booking_instructions_hint})
R2.id.tv_lab3, R2.id.tv_deposit_hint, R2.id.tv_privilege_service_hint, R2.id.tv_booking_instructions_hint})
public void onViewClicked(View view) {
int i = view.getId();
if (i == R.id.rl_goods) {
......@@ -315,26 +316,26 @@ public class ConfirmOrderActivity extends BaseStatusActivity<CommonPresenter> {
deductiblePriceType = 0;
}
getPayMoney();
}else if (i == R.id.tv_deposit_hint){
} else if (i == R.id.tv_deposit_hint) {
//欣新平台租车押金
ARouter.getInstance().build(Constance.ACTIVITY_URL_WEBVIEW)
.withString("title","欣新平台租车押金")
.withString("url",ApiConfig.HTTP_URL_CAR_TYPE_NOTICE)
.withInt("type",4)
.withString("title", "欣新平台租车押金")
.withString("url", ApiConfig.HTTP_URL_CAR_TYPE_NOTICE)
.withInt("type", 4)
.navigation();
}else if (i == R.id.tv_privilege_service_hint){
} else if (i == R.id.tv_privilege_service_hint) {
//尊享服务
ARouter.getInstance().build(Constance.ACTIVITY_URL_WEBVIEW)
.withString("title","尊享服务")
.withString("url",ApiConfig.HTTP_URL_CAR_TYPE_NOTICE)
.withInt("type",5)
.withString("title", "尊享服务")
.withString("url", ApiConfig.HTTP_URL_CAR_TYPE_NOTICE)
.withInt("type", 5)
.navigation();
}else if (i == R.id.tv_booking_instructions_hint){
//预订须知
} else if (i == R.id.tv_booking_instructions_hint) {
//预订须知
ARouter.getInstance().build(Constance.ACTIVITY_URL_WEBVIEW)
.withString("title","预订须知")
.withString("url",ApiConfig.HTTP_URL_CAR_TYPE_NOTICE)
.withInt("type",2)
.withString("title", "预订须知")
.withString("url", ApiConfig.HTTP_URL_CAR_TYPE_NOTICE)
.withInt("type", 2)
.navigation();
}
}
......@@ -343,6 +344,12 @@ public class ConfirmOrderActivity extends BaseStatusActivity<CommonPresenter> {
* 确定订单
*/
private void confirmOrder() {
if (drivingType == 0) {
showToast("未选择驾驶人");
return;
}
if (drivingType == 2 && drivingListBean == null) {
showToast(mActivity.getString(R.string.rv_add_driving_toast));
return;
......@@ -356,7 +363,7 @@ public class ConfirmOrderActivity extends BaseStatusActivity<CommonPresenter> {
@Override
public void helper(final ViewHolder helper) {
super.helper(helper);
helper.setText(R.id.tv_amount,tvPayMoney.getText().toString());
helper.setText(R.id.tv_amount, tvPayMoney.getText().toString());
helper.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
......@@ -408,7 +415,7 @@ public class ConfirmOrderActivity extends BaseStatusActivity<CommonPresenter> {
map.put("startTime", dataBean.getStartTime());
map.put("endTime", dataBean.getEndTime());
map.put("dayNum", dataBean.getDayNum());
mPresenter.getData(RvFrameConfig.VEHICLE_ORDER, 0, ApiConfig.HTTP_URL_GET_ORDER_PRICE, OrderPriceBean.class, map,headMap, true);
mPresenter.getData(RvFrameConfig.VEHICLE_ORDER, 0, ApiConfig.HTTP_URL_GET_ORDER_PRICE, OrderPriceBean.class, map, headMap, true);
}
/**
......@@ -471,32 +478,32 @@ public class ConfirmOrderActivity extends BaseStatusActivity<CommonPresenter> {
* 支付价格计算
*/
private void getPayMoney() {
if (priceBean !=null && priceBean.getData() ==null){
if (priceBean != null && priceBean.getData() == null) {
return;
}
ArrayList<OrderPriceDetailBean.ChildrenBean> childrenBeanList = new ArrayList<>(); //费用明细
double payMoney = 0.00;
double dayPrice = mCarBean.getVehicleModel().getSum();
int dayNum = dataBean.getDayNum();
if (isMemberType ==0) { //是否使用会员 0 不使用
if (isMemberType == 0) { //是否使用会员 0 不使用
payMoney = dayPrice * dayNum + priceBean.getData().getDeposit(); //租车和押金价格
OrderPriceDetailBean.ChildrenBean childrenBean2 = new OrderPriceDetailBean.ChildrenBean();
childrenBean2.setKey("车辆租赁费");
childrenBean2.setDetail("¥"+ dayPrice +"/天 *"+dayNum +"天" );
childrenBean2.setDetail("¥" + dayPrice + "/天 *" + dayNum + "天");
childrenBean2.setVal("¥" + dayPrice * dayNum);
childrenBeanList.add(childrenBean2);
}else {
if (info !=null){
if (dayNum >info.getRentFreeDays()){
payMoney = dayPrice *(dayNum -info.getRentFreeDays()) + priceBean.getData().getDeposit();
} else {
if (info != null) {
if (dayNum > info.getRentFreeDays()) {
payMoney = dayPrice * (dayNum - info.getRentFreeDays()) + priceBean.getData().getDeposit();
OrderPriceDetailBean.ChildrenBean childrenBean1 = new OrderPriceDetailBean.ChildrenBean();
childrenBean1.setKey("车辆租赁费");
childrenBean1.setDetail("¥"+ dayPrice +"/天 *"+ (dayNum -info.getRentFreeDays()) +"天" );
childrenBean1.setVal("¥" + dayPrice *(dayNum -info.getRentFreeDays()));
childrenBean1.setDetail("¥" + dayPrice + "/天 *" + (dayNum - info.getRentFreeDays()) + "天");
childrenBean1.setVal("¥" + dayPrice * (dayNum - info.getRentFreeDays()));
childrenBeanList.add(childrenBean1);
}else if (dayNum <= info.getRentFreeDays()){
payMoney = priceBean.getData().getDeposit();
} else if (dayNum <= info.getRentFreeDays()) {
payMoney = priceBean.getData().getDeposit();
}
}
}
......@@ -504,16 +511,16 @@ public class ConfirmOrderActivity extends BaseStatusActivity<CommonPresenter> {
payMoney = payMoney + priceBean.getData().getDriverAmount(); // + 专职司机
OrderPriceDetailBean.ChildrenBean childrenBean3 = new OrderPriceDetailBean.ChildrenBean();
childrenBean3.setKey("专职司机服务费");
childrenBean3.setDetail("¥"+ priceBean.getData().getDriverPrice() +"/天 *"+dayNum +"天" );
childrenBean3.setDetail("¥" + priceBean.getData().getDriverPrice() + "/天 *" + dayNum + "天");
childrenBean3.setVal("¥" + priceBean.getData().getDriverAmount());
childrenBeanList.add(childrenBean3);
}
if (deductiblePriceType ==1){
payMoney = payMoney +priceBean.getData().getDamageSafePrice() * dayNum; //+免赔付价格
if (deductiblePriceType == 1) {
payMoney = payMoney + priceBean.getData().getDamageSafePrice() * dayNum; //+免赔付价格
OrderPriceDetailBean.ChildrenBean childrenBean4 = new OrderPriceDetailBean.ChildrenBean();
childrenBean4.setKey("车损免赔费");
childrenBean4.setDetail("¥"+ priceBean.getData().getDamageSafePrice() +"/天 *"+dayNum +"天" );
childrenBean4.setDetail("¥" + priceBean.getData().getDamageSafePrice() + "/天 *" + dayNum + "天");
childrenBean4.setVal("¥" + priceBean.getData().getDamageSafePrice() * dayNum);
childrenBeanList.add(childrenBean4);
}
......@@ -524,7 +531,7 @@ public class ConfirmOrderActivity extends BaseStatusActivity<CommonPresenter> {
OrderPriceDetailBean.ChildrenBean childrenBean = new OrderPriceDetailBean.ChildrenBean();
childrenBean.setKey("租房车押金");
childrenBean.setVal("¥"+priceBean.getData().getDeposit());
childrenBean.setVal("¥" + priceBean.getData().getDeposit());
childrenBeanList.add(childrenBean);
orderPriceDetailBean.setChildren(childrenBeanList);
}
......
package com.rv.home.rv.module.ui.main.home.bean;
import com.ruiwenliu.wrapper.base.BaseBean;
public class EffectiveTimeBean extends BaseBean {
private EffectiveData data;
private boolean rel;
public EffectiveData getData() {
return data;
}
public void setData(EffectiveData data) {
this.data = data;
}
public boolean isRel() {
return rel;
}
public void setRel(boolean rel) {
this.rel = rel;
}
public static class EffectiveData {
private float insurePrice;
private long actRent;
private long actTour;
public float getInsurePrice() {
return insurePrice;
}
public void setInsurePrice(float insurePrice) {
this.insurePrice = insurePrice;
}
public long getActRent() {
return actRent;
}
public void setActRent(long actRent) {
this.actRent = actRent;
}
public long getActTour() {
return actTour;
}
public void setActTour(long actTour) {
this.actTour = actTour;
}
}
}
......@@ -77,10 +77,12 @@ public class AllOrderFragment extends BaseFragment<CommonPresenter> implements B
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
OrderListBean.DataBeanX.DataBean dataBean = (OrderListBean.DataBeanX.DataBean) adapter.getItem(position);
if (1 ==dataBean.getType()) {
if (1 == dataBean.getType()) {
startActivityForResult(OrderDetailActivity.getIntent(_mActivity, dataBean), 1);
}else if (2== dataBean.getType()){
} else if (2 == dataBean.getType()) {
startActivityForResult(TravelOrderDetailsActivity.getIntent(_mActivity, dataBean), 2);
} else if (3 == dataBean.getType()) {
startActivityForResult(TravelOrderDetailsActivity.getIntent(_mActivity, dataBean),3);
}
}
});
......@@ -92,32 +94,32 @@ public class AllOrderFragment extends BaseFragment<CommonPresenter> implements B
int id = view.getId();
OrderListBean.DataBeanX.DataBean dataBean = (OrderListBean.DataBeanX.DataBean) adapter.getItem(position);
// 0–删除 1–创建订单 2–取消 3–待付款 4–待出行 5–出行中(进行中) 6–已完成
switch (dataBean.getStatusX()){
case 3:
if (id == R.id.tv_process){
payShowSelect(dataBean.getNo(),dataBean.getOrderAmount());
}else if (id == R.id.tv_camp_process){
payShowSelect(dataBean.getNo(),dataBean.getOrderAmount());
}else if (id == R.id.tv_member_pay){
payShowSelect(dataBean.getNo(),dataBean.getOrderAmount());
}
break;
case 4:
if (id == R.id.tv_process){
startActivity(PickUpTheCarQRCodeActivity.getIntent(_mActivity,dataBean));
}else if (id == R.id.tv_camp_process){
startActivity(GetOnTheCarQRCodeActivity.getIntent(_mActivity,dataBean));
}
break;
case 5:
if (id == R.id.tv_process){
}else if (id == R.id.tv_camp_process){
startActivity(GetOnTheCarQRCodeActivity.getIntent(_mActivity,dataBean));
}
break;
case 6:
break;
}
switch (dataBean.getStatusX()) {
case 3:
if (id == R.id.tv_process) {
payShowSelect(dataBean.getNo(), dataBean.getOrderAmount());
} else if (id == R.id.tv_camp_process) {
payShowSelect(dataBean.getNo(), dataBean.getOrderAmount());
} else if (id == R.id.tv_member_pay) {
payShowSelect(dataBean.getNo(), dataBean.getOrderAmount());
}
break;
case 4:
if (id == R.id.tv_process) {
startActivity(PickUpTheCarQRCodeActivity.getIntent(_mActivity, dataBean));
} else if (id == R.id.tv_camp_process) {
startActivity(GetOnTheCarQRCodeActivity.getIntent(_mActivity, dataBean));
}
break;
case 5:
if (id == R.id.tv_process) {
} else if (id == R.id.tv_camp_process) {
startActivity(GetOnTheCarQRCodeActivity.getIntent(_mActivity, dataBean));
}
break;
case 6:
break;
}
}
});
......@@ -185,8 +187,8 @@ public class AllOrderFragment extends BaseFragment<CommonPresenter> implements B
countPage = bean.getData().getTotalPage();
mAdapter.addNewData(bean);
mSimpleRefreshLayout.onRefreshComplete();
if(bean.getData().getTotalCount()==0){
mAdapter.setEmptyView(getEmptyView(recyclerView,-1,_mActivity.getString(R.string.rv_select_not_data)));
if (bean.getData().getTotalCount() == 0) {
mAdapter.setEmptyView(getEmptyView(recyclerView, -1, _mActivity.getString(R.string.rv_select_not_data)));
mAdapter.notifyDataSetChanged();
}
......@@ -210,19 +212,19 @@ public class AllOrderFragment extends BaseFragment<CommonPresenter> implements B
@Override
public void onClick(View v) {
int id = v.getId();
if (id == R.id.iv_close){
if (id == R.id.iv_close) {
dismiss();
}else if (id == R.id.ll_item_wechat){
} else if (id == R.id.ll_item_wechat) {
helper.setChecked(R.id.rb_wechat, true);
helper.setChecked(R.id.rb_alipay, false);
}else if (id == R.id.ll_item_alipay){
} else if (id == R.id.ll_item_alipay) {
showToast("该功能还没有开通!");
}else if (id == R.id.tv_pay_immediately){
} else if (id == R.id.tv_pay_immediately) {
dismiss();
createOrder(no, 1, 1);
}
}
},R.id.iv_close, R.id.ll_item_wechat, R.id.ll_item_alipay, R.id.tv_pay_immediately);
}, R.id.iv_close, R.id.ll_item_wechat, R.id.ll_item_alipay, R.id.tv_pay_immediately);
}
};
dialog.setCanceledOnTouchOutside(false);
......
......@@ -33,7 +33,7 @@ import butterknife.BindView;
* Desc:已完成
*/
public class CompletedFragment extends BaseFragment<CommonPresenter>implements BaseQuickAdapter.RequestLoadMoreListener, SimpleRefreshLayout.OnSimpleRefreshListener {
public class CompletedFragment extends BaseFragment<CommonPresenter> implements BaseQuickAdapter.RequestLoadMoreListener, SimpleRefreshLayout.OnSimpleRefreshListener {
@BindView(R2.id.recyclerView)
RecyclerView recyclerView;
......@@ -42,7 +42,7 @@ public class CompletedFragment extends BaseFragment<CommonPresenter>implements B
CompletedAdapter mAdapter;
private int mPage;
private int countPage;
private final int TYPE_REQUEST_EVALUATION=1;
private final int TYPE_REQUEST_EVALUATION = 1;
public static CompletedFragment getInstance(int type) {
Bundle bundl = new Bundle();
......@@ -72,9 +72,9 @@ public class CompletedFragment extends BaseFragment<CommonPresenter>implements B
OrderListBean.DataBeanX.DataBean dataBean = (OrderListBean.DataBeanX.DataBean) adapter.getItem(position);
int i = view.getId();
if (i == R.id.tv_process) {
startActivityForResult(EvaluationActivity.getIntent(_mActivity,dataBean), TYPE_REQUEST_EVALUATION);
}else if (i == R.id.tv_camp_process){
startActivityForResult(EvaluationActivity.getIntent(_mActivity,dataBean), TYPE_REQUEST_EVALUATION);
startActivityForResult(EvaluationActivity.getIntent(_mActivity, dataBean), TYPE_REQUEST_EVALUATION);
} else if (i == R.id.tv_camp_process) {
startActivityForResult(EvaluationActivity.getIntent(_mActivity, dataBean), TYPE_REQUEST_EVALUATION);
}
}
});
......@@ -83,10 +83,12 @@ public class CompletedFragment extends BaseFragment<CommonPresenter>implements B
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
OrderListBean.DataBeanX.DataBean dataBean = (OrderListBean.DataBeanX.DataBean) adapter.getItem(position);
if (1 ==dataBean.getType()) {
if (1 == dataBean.getType()) {
startActivityForResult(OrderDetailActivity.getIntent(_mActivity, dataBean), 1);
}else if (2== dataBean.getType()){
} else if (2 == dataBean.getType()) {
startActivityForResult(TravelOrderDetailsActivity.getIntent(_mActivity, dataBean), 2);
} else if (3 == dataBean.getType()) {
startActivity(TravelOrderDetailsActivity.getIntent(_mActivity, dataBean));
}
}
});
......@@ -131,8 +133,6 @@ public class CompletedFragment extends BaseFragment<CommonPresenter>implements B
}
private void orderData(int page) {
Map<String, Object> headMap = new LinkedHashMap<>();
if (OkGoUtil.getToken() != null)
......@@ -154,8 +154,8 @@ public class CompletedFragment extends BaseFragment<CommonPresenter>implements B
countPage = bean.getData().getTotalPage();
mAdapter.addNewData(bean);
mSimpleRefreshLayout.onRefreshComplete();
if(bean.getData().getTotalCount()==0){
mAdapter.setEmptyView(getEmptyView(recyclerView,-1,_mActivity.getString(R.string.rv_select_not_data)));
if (bean.getData().getTotalCount() == 0) {
mAdapter.setEmptyView(getEmptyView(recyclerView, -1, _mActivity.getString(R.string.rv_select_not_data)));
mAdapter.notifyDataSetChanged();
}
......@@ -166,5 +166,4 @@ public class CompletedFragment extends BaseFragment<CommonPresenter>implements B
}
}
......@@ -27,6 +27,7 @@ import com.rv.home.R;
import com.rv.home.R2;
import com.rv.home.rv.module.ApiConfig;
import com.rv.home.rv.module.basic.presenter.CommonPresenter;
import com.rv.home.rv.module.ui.main.home.bean.EffectiveTimeBean;
import com.rv.home.rv.module.ui.main.home.bean.OrderPayBean;
import com.rv.home.rv.module.ui.main.home.order.adapter.ForPaymentAdapter;
import com.rv.home.rv.module.ui.main.home.order.bean.OrderListBean;
......@@ -59,6 +60,7 @@ public class ForPaymentFragment extends BaseFragment<CommonPresenter> implements
private int mPage;
private int countPage;
private IWXAPI api;
private long effTime = 0; // 失效时间
public static ForPaymentFragment getInstance(int type) {
Bundle bundl = new Bundle();
......@@ -88,11 +90,11 @@ public class ForPaymentFragment extends BaseFragment<CommonPresenter> implements
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
OrderListBean.DataBeanX.DataBean dataBean = (OrderListBean.DataBeanX.DataBean) adapter.getItem(position);
if (1 ==dataBean.getType()) {
if (1 == dataBean.getType()) {
startActivityForResult(OrderDetailActivity.getIntent(_mActivity, dataBean), 1);
}else if (2== dataBean.getType()){
} else if (2 == dataBean.getType()) {
startActivityForResult(TravelOrderDetailsActivity.getIntent(_mActivity, dataBean), 2);
}else if (3 == dataBean.getType()){
} else if (3 == dataBean.getType()) {
}
}
......@@ -102,15 +104,15 @@ public class ForPaymentFragment extends BaseFragment<CommonPresenter> implements
@Override
public void onItemChildClick(BaseQuickAdapter adapter, View view, int position) {
int id = view.getId();
if (id == R.id.tv_process){
if (id == R.id.tv_process) {
OrderListBean.DataBeanX.DataBean dataBean = (OrderListBean.DataBeanX.DataBean) adapter.getItem(position);
payShowSelect(dataBean.getNo(),dataBean.getOrderAmount());
}else if (id == R.id.tv_camp_process){
payShowSelect(dataBean.getNo(), dataBean.getOrderAmount());
} else if (id == R.id.tv_camp_process) {
OrderListBean.DataBeanX.DataBean dataBean = (OrderListBean.DataBeanX.DataBean) adapter.getItem(position);
payShowSelect(dataBean.getNo(),dataBean.getOrderAmount());
}else if (id == R.id.tv_member_pay){
payShowSelect(dataBean.getNo(), dataBean.getOrderAmount());
} else if (id == R.id.tv_member_pay) {
OrderListBean.DataBeanX.DataBean dataBean = (OrderListBean.DataBeanX.DataBean) adapter.getItem(position);
payShowSelect(dataBean.getNo(),dataBean.getOrderAmount());
payShowSelect(dataBean.getNo(), dataBean.getOrderAmount());
}
}
});
......@@ -118,7 +120,7 @@ public class ForPaymentFragment extends BaseFragment<CommonPresenter> implements
@Override
protected void loadData(Bundle savedInstanceState) {
getEffectiveTime();
}
@SuppressLint("CheckResult")
......@@ -143,6 +145,24 @@ public class ForPaymentFragment extends BaseFragment<CommonPresenter> implements
case 1:
pay((OrderPayBean) result);
break;
case 2:
EffectiveTimeBean bean = (EffectiveTimeBean) result;
if (bean != null && bean.isRel() && bean.getData() != null) {
effTime = bean.getData().getActRent();
startTime();
}
break;
}
}
/******
* 开始计时
* @param
*/
private void startTime() {
if (effTime != 0l && mAdapter != null && mAdapter.getData() != null) {
mAdapter.setEffTime(effTime);
}
}
......@@ -156,6 +176,7 @@ public class ForPaymentFragment extends BaseFragment<CommonPresenter> implements
public void onRefresh() {
mPage = 1;
orderData(mPage);
}
@Override
......@@ -173,11 +194,15 @@ public class ForPaymentFragment extends BaseFragment<CommonPresenter> implements
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(resultCode==RESULT_OK){
if (resultCode == RESULT_OK) {
onRefresh();
}
}
private void getEffectiveTime() {
mPresenter.getData(2, ApiConfig.HTTP_URL_EFFECTIVE_TIME, EffectiveTimeBean.class, false);
}
private void orderData(int page) {
Map<String, Object> headMap = new LinkedHashMap<>();
if (OkGoUtil.getToken() != null)
......@@ -199,8 +224,8 @@ public class ForPaymentFragment extends BaseFragment<CommonPresenter> implements
countPage = bean.getData().getTotalPage();
mAdapter.addNewData(bean);
mSimpleRefreshLayout.onRefreshComplete();
if(bean.getData().getTotalCount()==0){
mAdapter.setEmptyView(getEmptyView(recyclerView,-1,_mActivity.getString(R.string.rv_select_not_data)));
if (bean.getData().getTotalCount() == 0) {
mAdapter.setEmptyView(getEmptyView(recyclerView, -1, _mActivity.getString(R.string.rv_select_not_data)));
mAdapter.notifyDataSetChanged();
}
......@@ -223,19 +248,19 @@ public class ForPaymentFragment extends BaseFragment<CommonPresenter> implements
@Override
public void onClick(View v) {
int id = v.getId();
if (id == R.id.iv_close){
if (id == R.id.iv_close) {
dismiss();
}else if (id == R.id.ll_item_wechat){
} else if (id == R.id.ll_item_wechat) {
helper.setChecked(R.id.rb_wechat, true);
helper.setChecked(R.id.rb_alipay, false);
}else if (id == R.id.ll_item_alipay){
} else if (id == R.id.ll_item_alipay) {
showToast("该功能还没有开通!");
}else if (id == R.id.tv_pay_immediately){
} else if (id == R.id.tv_pay_immediately) {
dismiss();
createOrder(no, 1, 1);
}
}
},R.id.iv_close, R.id.ll_item_wechat, R.id.ll_item_alipay, R.id.tv_pay_immediately);
}, R.id.iv_close, R.id.ll_item_wechat, R.id.ll_item_alipay, R.id.tv_pay_immediately);
}
};
dialog.setCanceledOnTouchOutside(false);
......
......@@ -135,7 +135,7 @@ public class OrderDetailActivity extends BaseStatusActivity<PickerPresenter> {
initRxBus();
api = WXAPIFactory.createWXAPI(mActivity, RvFrameConfig.APP_ID);
dataBean = (OrderListBean.DataBeanX.DataBean) intent.getSerializableExtra("dataBean");
if (dataBean !=null){
if (dataBean != null) {
status = dataBean.getStatusX();
no = dataBean.getNo();
orderAmount = dataBean.getOrderAmount();
......@@ -155,6 +155,9 @@ public class OrderDetailActivity extends BaseStatusActivity<PickerPresenter> {
tvPickUpTheCar.setText(mActivity.getString(R.string.rv_return_car));
break;
case 6:
if (dataBean.getType() == 3) {
tvCancelOrder.setVisibility(View.GONE);
}
tvCancelOrder.setText(mActivity.getString(R.string.deposit_information));
tvPickUpTheCar.setText(mActivity.getString(R.string.rv_to_evaluate));
break;
......@@ -228,13 +231,13 @@ public class OrderDetailActivity extends BaseStatusActivity<PickerPresenter> {
payShowSelect(no, orderAmount);
break;
case 4:
startActivity(PickUpTheCarQRCodeActivity.getIntent(mActivity,dataBean));
startActivity(PickUpTheCarQRCodeActivity.getIntent(mActivity, dataBean));
break;
case 5:
startActivity(PickUpTheCarQRCodeActivity.getIntent(mActivity,dataBean));
startActivity(PickUpTheCarQRCodeActivity.getIntent(mActivity, dataBean));
break;
case 6:
startActivityForResult(EvaluationActivity.getIntent(mActivity,dataBean), TYPE_REQUEST_EVALUATION);
startActivityForResult(EvaluationActivity.getIntent(mActivity, dataBean), TYPE_REQUEST_EVALUATION);
break;
}
}
......@@ -425,7 +428,7 @@ public class OrderDetailActivity extends BaseStatusActivity<PickerPresenter> {
mWebView.post(new Runnable() {
@Override
public void run() {
ClipboardUtil.setText(mActivity,no);
ClipboardUtil.setText(mActivity, no);
}
});
}
......
......@@ -21,6 +21,7 @@ public class ForPaymentAdapter extends BaseMultiItemQuickAdapter<MultiItemEntity
public static final int TYPE_FOR_PAYMENT = 1; //1--租车;2--旅游
public static final int TYPE_TO_TRAVEL = 2;
public static final int TYPE_TO_MEMBER = 3;
private long effTime = 0l;
public ForPaymentAdapter(List<MultiItemEntity> data) {
super(data);
......@@ -75,10 +76,10 @@ public class ForPaymentAdapter extends BaseMultiItemQuickAdapter<MultiItemEntity
break;
case TYPE_TO_MEMBER:
OrderListBean.DataBeanX.DataBean dataBean3 = (OrderListBean.DataBeanX.DataBean) item;
if (dataBean3 ==null){
if (dataBean3 == null) {
return;
}
if (dataBean3.getOrderMemberDetail() ==null){
if (dataBean3.getOrderMemberDetail() == null) {
return;
}
......@@ -86,7 +87,7 @@ public class ForPaymentAdapter extends BaseMultiItemQuickAdapter<MultiItemEntity
helper.setText(R.id.tv_order_state, mContext.getString(R.string.rv_order_for_payment));
helper.loadRoundImage(mContext, dataBean3.getPicture(), (ImageView) helper.getView(R.id.iv_goods), 10);
helper.setText(R.id.tv_name, dataBean3.getName());
helper.setText(R.id.tv_content,dataBean3.getOrderMemberDetail().getContent() );
helper.setText(R.id.tv_content, dataBean3.getOrderMemberDetail().getContent());
helper.setText(R.id.tv_price, String.format("¥%1$s", dataBean3.getOrderAmount()));
helper.setText(R.id.tv_member_pay, mContext.getString(R.string.rv_to_pay_for));
helper.addOnClickListener(R.id.tv_member_pay);
......@@ -101,4 +102,8 @@ public class ForPaymentAdapter extends BaseMultiItemQuickAdapter<MultiItemEntity
notifyDataSetChanged();
}
public void setEffTime(long effTime) {
this.effTime = effTime;
}
}
......@@ -672,7 +672,7 @@
android:id="@+id/ll_layout_member_hint"
android:layout_width="match_parent"
android:layout_height="@dimen/size_50"
android:visibility="gone"
android:visibility="visible"
android:gravity="center_vertical"
android:orientation="horizontal">
......
package com.rv.rvmine.bean;
public class DeleteInfo {
private int id;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public DeleteInfo(int id) {
this.id = id;
}
}
package com.rv.rvmine.bean;
import com.ruiwenliu.wrapper.base.BaseBean;
public class DeleteVistorBean extends BaseBean {
private boolean rel;
public boolean isRel() {
return rel;
}
public void setRel(boolean rel) {
this.rel = rel;
}
}
......@@ -4,8 +4,12 @@ import android.Manifest;
import android.annotation.SuppressLint;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.os.Build;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.v4.app.ActivityCompat;
import android.support.v4.content.ContextCompat;
import android.text.TextUtils;
import android.view.View;
import android.widget.EditText;
......@@ -13,6 +17,7 @@ import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;
import android.widget.Toast;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.base.utils.ui.datetime.selector.util.TextUtil;
......@@ -36,6 +41,7 @@ import com.yuyife.okgo.OkGoUtil;
import java.io.File;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import butterknife.BindView;
......@@ -45,6 +51,7 @@ import io.reactivex.functions.Consumer;
import okhttp3.MediaType;
import okhttp3.MultipartBody;
import okhttp3.RequestBody;
import pub.devrel.easypermissions.AppSettingsDialog;
import pub.devrel.easypermissions.EasyPermissions;
import top.zibin.luban.Luban;
import top.zibin.luban.OnCompressListener;
......@@ -53,7 +60,7 @@ import top.zibin.luban.OnCompressListener;
* 实名认证
*/
@Route(path = Constance.ACTIVITY_URL_IDCARDCERTIFICATION)
public class IDCardCertificationActivity extends BaseStatusActivity<PickerPresenter> {
public class IDCardCertificationActivity extends BaseStatusActivity<PickerPresenter> implements EasyPermissions.PermissionCallbacks {
@BindView(R2.id.et_name)
EditText etName;
......@@ -79,6 +86,7 @@ public class IDCardCertificationActivity extends BaseStatusActivity<PickerPresen
private int cardType;
private String strCard;
private String strCardCopy;
private String[] photoPermissions = {};
public static Intent getIntent(Context context) {
......@@ -124,11 +132,11 @@ public class IDCardCertificationActivity extends BaseStatusActivity<PickerPresen
@OnClick({R2.id.rl_card, R2.id.rl_card_copy, R2.id.tv_ok})
public void onViewClicked(View view) {
int id = view.getId();
if (id == R.id.rl_card){
if (id == R.id.rl_card) {
showPickerDialog(0);
}else if (id == R.id.rl_card_copy){
} else if (id == R.id.rl_card_copy) {
showPickerDialog(1);
}else if (id == R.id.tv_ok){
} else if (id == R.id.tv_ok) {
String name = etName.getText().toString().trim();
if (TextUtils.isEmpty(name)) {
showToast("姓名不能为空!");
......@@ -156,7 +164,7 @@ public class IDCardCertificationActivity extends BaseStatusActivity<PickerPresen
return;
}
verified(name,idCard);
verified(name, idCard);
}
}
......@@ -166,9 +174,9 @@ public class IDCardCertificationActivity extends BaseStatusActivity<PickerPresen
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == mPresenter.TYPE_ALBUM_CODE) {
if (data != null && data.getData() != null) {
if (cardType == 0){
if (cardType == 0) {
llCard.setVisibility(View.GONE);
}else {
} else {
llCardCopy.setVisibility(View.GONE);
}
GlideManager.getInstance(mActivity).loadImage(mPresenter.getUriUrl(data.getData()), cardType == 0 ? ivCard : ivCardCopy);
......@@ -178,9 +186,9 @@ public class IDCardCertificationActivity extends BaseStatusActivity<PickerPresen
}
if (requestCode == mPresenter.TYPE_CAMERA_CODE) {
if (!TextUtil.isEmpty(mPresenter.gerCameraStoreUrl())) {
if (cardType == 0){
if (cardType == 0) {
llCard.setVisibility(View.GONE);
}else {
} else {
llCardCopy.setVisibility(View.GONE);
}
String url = String.format("%1$s%2$s", "file://", mPresenter.gerCameraStoreUrl());
......@@ -188,10 +196,14 @@ public class IDCardCertificationActivity extends BaseStatusActivity<PickerPresen
uploadFile(new File(mPresenter.gerCameraStoreUrl()), "camera");
}
}
if (requestCode == AppSettingsDialog.DEFAULT_SETTINGS_REQ_CODE) {
processPicker();
}
}
private int typeCamera;
/**
* 显示相机弹窗
*/
......@@ -206,11 +218,13 @@ public class IDCardCertificationActivity extends BaseStatusActivity<PickerPresen
public void onClick(View v) {
int i = v.getId();
if (i == com.rv.home.R.id.btn_camera) {
processPicker(mPresenter.TYPE_CAMERA_CODE);
typeCamera = mPresenter.TYPE_CAMERA_CODE;
processPicker();
dismiss();
} else if (i == com.rv.home.R.id.btn_album) {
processPicker(mPresenter.TYPE_ALBUM_CODE);
typeCamera = mPresenter.TYPE_ALBUM_CODE;
processPicker();
dismiss();
} else if (i == com.rv.home.R.id.btn_cancel) {
......@@ -228,47 +242,72 @@ public class IDCardCertificationActivity extends BaseStatusActivity<PickerPresen
* 打开相机和相册
*
* @param type 1、相机2、相册
* <p>
* 此处方法不奏效
*/
// @SuppressLint("CheckResult")
// private void processPicker(final int type) {
// /**
// * 6.0以上手机做权限处理
// */
// if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
// new RxPermission(mActivity).request(
// new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE,
// Manifest.permission.CAMERA}).subscribe(new Consumer<Boolean>() {
// @Override
// public void accept(Boolean aBoolean) throws Exception {
// if (aBoolean == true) {
// switch (type) {
// case 1001:
// mPresenter.openCamera(false);
// break;
// case 1002:
// mPresenter.openAlbum(false);
// break;
// }
//
// }
// }
// });
// } else {
// switch (type) {
// case 1001:
// mPresenter.openCamera(false);
// break;
// case 1002:
// mPresenter.openAlbum(false);
// break;
// }
// }
// }
private String[] cameraPermissions = {Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.CAMERA,Manifest.permission.READ_EXTERNAL_STORAGE};
private void processPicker() {
@SuppressLint("CheckResult")
private void processPicker(final int type) {
/**
* 6.0以上手机做权限处理
*/
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
new RxPermission(mActivity).request(
Manifest.permission.WRITE_EXTERNAL_STORAGE,
Manifest.permission.CAMERA).subscribe(new Consumer<Boolean>() {
@Override
public void accept(Boolean aBoolean) throws Exception {
if (aBoolean == true) {
switch (type) {
case 1001:
mPresenter.openCamera(false);
break;
case 1002:
mPresenter.openAlbum(false);
break;
}
}
}
});
} else {
switch (type) {
case 1001:
mPresenter.openCamera(false);
break;
case 1002:
mPresenter.openAlbum(false);
break;
int checkResult = ContextCompat.checkSelfPermission(this, Manifest.permission.CAMERA) ;
if (checkResult == PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this, cameraPermissions, 1);
}
// if (!EasyPermissions.hasPermissions(this, cameraPermissions)) {
// EasyPermissions.requestPermissions(this, "拍照需要此权限", 1, cameraPermissions);
// return;
// }
}
switch (typeCamera) {
case 1001:
mPresenter.openCamera(false);
break;
case 1002:
mPresenter.openAlbum(false);
break;
}
}
/**
* 上传文件
*
......@@ -308,7 +347,7 @@ public class IDCardCertificationActivity extends BaseStatusActivity<PickerPresen
private void verified(String name, String idCard) {
// strCard ="https://xxtest.upyuns.com/image/app/20190605092021.jpg";
// strCardCopy = "https://xxtest.upyuns.com/image/app/20190605092036.jpg";
mPresenter.postBodyData(RvFrameConfig.VEHICLE_CAR_POST, 1, ApiConfig.HTTP_URL_CERTIFICATE, BaseBean.class, new Verified(name,idCard,0, strCard, strCardCopy), getHeadMap(), true);
mPresenter.postBodyData(RvFrameConfig.VEHICLE_CAR_POST, 1, ApiConfig.HTTP_URL_CERTIFICATE, BaseBean.class, new Verified(name, idCard, 0, strCard, strCardCopy), getHeadMap(), true);
}
......@@ -319,6 +358,19 @@ public class IDCardCertificationActivity extends BaseStatusActivity<PickerPresen
return headMap;
}
@Override
public void onPermissionsGranted(int requestCode, @NonNull List<String> perms) {
processPicker();
}
@Override
public void onPermissionsDenied(int requestCode, @NonNull List<String> perms) {
Toast.makeText(this, "用户授权失败", Toast.LENGTH_SHORT).show();
if (EasyPermissions.somePermissionPermanentlyDenied(this, perms)) {
new AppSettingsDialog.Builder(this).build().show();
}
}
private class Verified {
private String name;
......
......@@ -62,23 +62,23 @@ public class AddAVisitorActivity extends BaseStatusActivity<CommonPresenter> {
@Override
protected void initView(Bundle savedInstanceState, TitleView titleView, Intent intent) {
TravelerListBean.DataBean dataBean = (TravelerListBean.DataBean) intent.getSerializableExtra("bean");
if (dataBean !=null){
if (dataBean != null) {
titleView.setTitle("编辑出游人");
avisitorId = dataBean.getId();
identityType = dataBean.getIsChild();
sexType = dataBean.getSex();
if (0== dataBean.getIsChild()){
if (0 == dataBean.getIsChild()) {
cbAdult.setChecked(true);
cbChild.setChecked(false);
}else{
} else {
cbAdult.setChecked(false);
cbChild.setChecked(true);
}
if (0 == dataBean.getSex()){
if (0 == dataBean.getSex()) {
cbMan.setChecked(false);
cbGirl.setChecked(true);
}else {
} else {
cbMan.setChecked(true);
cbGirl.setChecked(false);
}
......@@ -86,7 +86,7 @@ public class AddAVisitorActivity extends BaseStatusActivity<CommonPresenter> {
etIdCard.setText(dataBean.getIdCard());
etPhone.setText(dataBean.getPhone());
}else {
} else {
titleView.setTitle(getString(R.string.add_a_visitor_title));
}
......@@ -96,23 +96,25 @@ public class AddAVisitorActivity extends BaseStatusActivity<CommonPresenter> {
@Override
public void onClick(View v) {
String name = etTravelerName.getText().toString().trim();
if (TextUtil.isEmpty(name)){
if (TextUtil.isEmpty(name)) {
showToast("姓名不能为空!");
return;
}
String idCard = etIdCard.getText().toString().trim();
if (TextUtil.isEmpty(idCard)){
String idCard = null, phone = null;
idCard = etIdCard.getText().toString().trim();
if (TextUtil.isEmpty(idCard)) {
showToast("身份证号不能为空!");
return;
}
String phone = etPhone.getText().toString().trim();
if (TextUtil.isEmpty(phone)){
showToast("手机号码不能为空!");
return;
if (identityType == 0) {
phone = etPhone.getText().toString().trim();
if (TextUtil.isEmpty(phone)) {
showToast("手机号码不能为空!");
return;
}
}
addAVisitor(name,idCard,phone);
addAVisitor(name, idCard, phone);
}
});
}
......@@ -152,6 +154,7 @@ public class AddAVisitorActivity extends BaseStatusActivity<CommonPresenter> {
/**
* 编辑或修改出游人信息
*
* @param name
* @param idCard
* @param phone
......
......@@ -6,6 +6,7 @@ import android.os.Bundle;
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.chad.library.adapter.base.BaseQuickAdapter;
......@@ -19,10 +20,15 @@ import com.rv.home.rv.module.basic.BaseStatusActivity;
import com.rv.home.rv.module.basic.presenter.CommonPresenter;
import com.rv.rvmine.R;
import com.rv.rvmine.adapter.TravelerListAdapter;
import com.rv.rvmine.bean.DeleteInfo;
import com.rv.rvmine.bean.DeleteVistorBean;
import com.rv.rvmine.bean.TravelerListBean;
import com.rv.rvmine.view.DeletePopupWindow;
import com.yuyife.okgo.OkGoUtil;
import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import butterknife.BindView;
......@@ -41,6 +47,10 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter>
private final int TYPE_REQUEST_EDIT = 2;
private int mPage;
private int countPage;
private int visitorType;
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);
......@@ -54,6 +64,8 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter>
@Override
protected void initView(Bundle savedInstanceState, TitleView titleView, Intent intent) {
visitorType = intent.getIntExtra("visitorType", -1);
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() {
......@@ -89,6 +101,31 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter>
}
}
});
mAdapter.setOnItemLongClickListener(new BaseQuickAdapter.OnItemLongClickListener() {
@Override
public boolean onItemLongClick(BaseQuickAdapter adapter, View view, int position) {
TravelerListBean.DataBean item = mAdapter.getItem(position);
showDeletePopupWindow(item, view);
return true;
}
});
}
private void showDeletePopupWindow(final TravelerListBean.DataBean item, View view) {
if (deletePopupWindow == null) {
deletePopupWindow = new DeletePopupWindow(this, new View.OnClickListener() {
@Override
public void onClick(View view) {
deleteDriver(item);
deletePopupWindow.dismiss();
}
});
deletePopupWindow.getContentView().measure(View.MeasureSpec.UNSPECIFIED, View.MeasureSpec.UNSPECIFIED);
}
deletePopupWindow.showAsDropDown(view, view.getWidth() / 2 - deletePopupWindow.getContentView().getMeasuredWidth() / 2,
-deletePopupWindow.getContentView().getHeight() / 2);
}
@Override
......@@ -99,7 +136,22 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter>
@Override
public void onShowResult(int requestType, BaseBean result) {
processData((TravelerListBean) result);
if (requestType == 0) {
processData((TravelerListBean) result);
} else if (requestType == 1) {
DeleteVistorBean bean = (DeleteVistorBean) result;
if (bean != null) {
if (bean.isRel()) {
if (deletBean != null) {
if (visitors.remove(deletBean)) {
mAdapter.notifyDataSetChanged();
}
deletBean = null;
}
}
}
}
}
......@@ -127,7 +179,29 @@ public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter>
mAdapter.setEmptyView(getEmptyView(recyclerView, -1, "您还没有出游人信息哦"));
return;
}
mAdapter.setNewData(bean.getData());
visitors.clear();
if (visitorType == -1) {
visitors.addAll(bean.getData());
} else {
for (TravelerListBean.DataBean b : bean.getData()) {
if (visitorType == b.getIsChild().intValue()) {
visitors.add(b);
}
}
}
if (visitors.isEmpty()) {
mAdapter.setEmptyView(getEmptyView(recyclerView, -1, "您还没有出游人信息哦"));
} else {
mAdapter.setNewData(visitors);
}
}
private void deleteDriver(TravelerListBean.DataBean item) {
deletBean = item;
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);
}
}
package com.rv.rvmine.view;
import android.app.Activity;
import android.content.Context;
import android.graphics.drawable.ColorDrawable;
import android.view.LayoutInflater;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.view.WindowManager;
import android.widget.LinearLayout.LayoutParams;
import android.widget.PopupWindow;
import com.rv.rvmine.R;
/**
* 发布文字、图片...
*/
public class DeletePopupWindow extends PopupWindow {
public DeletePopupWindow(final Activity context, OnClickListener onClickListener) {
super(context);
LayoutInflater inflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
ViewGroup menuView = (ViewGroup) inflater.inflate(R.layout.popu_delete, null);
menuView.findViewById(R.id.tv_delete).setOnClickListener(onClickListener);
this.setContentView(menuView);
// 设置SelectPicPopupWindow弹出窗体的宽
this.setWidth(LayoutParams.WRAP_CONTENT);
// 设置SelectPicPopupWindow弹出窗体的高
this.setHeight(LayoutParams.WRAP_CONTENT);
// 设置SelectPicPopupWindow弹出窗体可点击
this.setFocusable(true);
// // 设置SelectPicPopupWindow弹出窗体动画效果
// this.setAnimationStyle(R.style.Buttom_Popwindow);
//设置SelectPicPopupWindow弹出窗体的背景
// 透明背景,
this.setBackgroundDrawable(new ColorDrawable(0));
// WindowManager.LayoutParams lp = context.getWindow().getAttributes();
// lp.alpha = 0.7f;
// context.getWindow().setAttributes(lp);
//
setOnDismissListener(new OnDismissListener() {
@Override
public void onDismiss() {
WindowManager.LayoutParams lp = context.getWindow().getAttributes();
lp.alpha = 1f;
context.getWindow().setAttributes(lp);
}
});
}
}
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="2dp" />
<solid android:color="@color/white" />
<stroke
android:width="1dp"
android:color="@color/gray_EEEEEE" />
</shape>
\ No newline at end of file
......@@ -171,7 +171,9 @@ public class TravelerConfirmOrderActivity extends BaseStatusActivity<TourismPres
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
mPosition = position;
tourist = (BeanVisitorInformation) adapter.getItem(position);
ARouter.getInstance().build(Constance.ACTIVITY_URL_CHOOSEAVISITOR).navigation(mActivity, 104);
ARouter.getInstance().build(Constance.ACTIVITY_URL_CHOOSEAVISITOR)
.withInt("visitorType", Integer.valueOf(tourist.getIsChild()))
.navigation(mActivity, 104);
}
});
......@@ -248,7 +250,7 @@ public class TravelerConfirmOrderActivity extends BaseStatusActivity<TourismPres
}
private void setData(BeanConfirmOrder data) {
info = data;
info = data;
tvInsuranceInformation.setText(String.format("¥%1$s%2$s", data.getData().getInsurePrice(), "/人"));
getPayMoney();
}
......@@ -258,26 +260,26 @@ public class TravelerConfirmOrderActivity extends BaseStatusActivity<TourismPres
OrderPriceDetailBean.ChildrenBean childrenBean1 = new OrderPriceDetailBean.ChildrenBean();
childrenBean1.setKey("成人出游人费用");
childrenBean1.setDetail("¥"+ dataBean.getPrice() +"/人 *"+dataBean.getAdultNum() +"人" );
childrenBean1.setDetail("¥" + dataBean.getPrice() + "/人 *" + dataBean.getAdultNum() + "人");
childrenBean1.setVal("¥" + Integer.valueOf(dataBean.getPrice()) * Integer.valueOf(dataBean.getAdultNum()));
childrenBeanList.add(childrenBean1);
if (childNum >0){
if (childNum > 0) {
OrderPriceDetailBean.ChildrenBean childrenBean2 = new OrderPriceDetailBean.ChildrenBean();
childrenBean2.setKey("儿童出游人费用");
childrenBean2.setDetail("¥"+ dataBean.getChildPrice() +"/人 *"+dataBean.getChildNum() +"人" );
childrenBean2.setDetail("¥" + dataBean.getChildPrice() + "/人 *" + dataBean.getChildNum() + "人");
childrenBean2.setVal("¥" + Integer.valueOf(dataBean.getChildPrice()) * Integer.valueOf(dataBean.getChildNum()));
childrenBeanList.add(childrenBean2);
}
if (isInsuranceType ==1){
if (isInsuranceType == 1) {
long day = DateUtils.compareDateDay(dataBean.getEndTime(), dataBean.getStartTime());
OrderPriceDetailBean.ChildrenBean childrenBean3 = new OrderPriceDetailBean.ChildrenBean();
childrenBean3.setKey("保险费用");
childrenBean3.setDetail("¥"+ info.getData().getInsurePrice() +"/人 *"+ (adultNum+childNum) +"人 *" + day +"天" );
childrenBean3.setVal("¥" + info.getData().getInsurePrice() * (adultNum+childNum) * day);
childrenBean3.setDetail("¥" + info.getData().getInsurePrice() + "/人 *" + (adultNum + childNum) + "人 *" + day + "天");
childrenBean3.setVal("¥" + info.getData().getInsurePrice() * (adultNum + childNum) * day);
childrenBeanList.add(childrenBean3);
tvPaymentAmount.setText(String.format("¥%1$s", price+ (info.getData().getInsurePrice() * (adultNum+childNum) * day)));
}else {
tvPaymentAmount.setText(String.format("¥%1$s", price + (info.getData().getInsurePrice() * (adultNum + childNum) * day)));
} else {
tvPaymentAmount.setText(String.format("¥%1$s", price));
}
......@@ -297,23 +299,22 @@ public class TravelerConfirmOrderActivity extends BaseStatusActivity<TourismPres
} else if (id == R.id.tv_confirm_order) {
//确认订单
confirmOrder();
}else if (id == R.id.rl_item_notice){
} else if (id == R.id.rl_item_notice) {
ARouter.getInstance().build(Constance.ACTIVITY_URL_WEBVIEW)
.withString("title","预订须知")
.withString("url",TourismApi.HTTP_URL_CAR_TYPE_NOTICE)
.withInt("type",14)
.withString("title", "预订须知")
.withString("url", TourismApi.HTTP_URL_CAR_TYPE_NOTICE)
.withInt("type", 14)
.navigation();
}else if (id == R.id.tv_contract){
ARouter.getInstance().build(Constance.ACTIVITY_URL_WEBVIEW)
.withString("title","合同协议")
.withString("url",TourismApi.HTTP_URL_CAR_TYPE_NOTICE)
.withInt("type",16)
} else if (id == R.id.tv_contract) {
ARouter.getInstance().build(Constance.ACTIVITY_URL_WEBVIEW)
.withString("title", "合同协议")
.withString("url", TourismApi.HTTP_URL_CAR_TYPE_NOTICE)
.withInt("type", 16)
.navigation();
}
}
/**
* 订单支付
*/
......@@ -406,7 +407,7 @@ public class TravelerConfirmOrderActivity extends BaseStatusActivity<TourismPres
Map<String, Object> headMap = new LinkedHashMap<>();
if (OkGoUtil.getToken() != null)
headMap.put("Authorization", OkGoUtil.getToken());
mPresenter.postBodyData(RvFrameConfig.ADMIN_POST, payType, TourismApi.COMMIT_ORDER, BeanTourOrderResponse.class, new Tourist(etMailbox.getText().toString().trim(), name, phone, dataBean.getEndAddr(), endTime, dataBean.getGoodId(), ids, dataBean.getSpePriceId(), dataBean.getStartAddr(), dataBean.getStartCompanyId(), startTime, dataBean.getSiteId(),isInsuranceType), headMap, true);
mPresenter.postBodyData(RvFrameConfig.ADMIN_POST, payType, TourismApi.COMMIT_ORDER, BeanTourOrderResponse.class, new Tourist(etMailbox.getText().toString().trim(), name, phone, dataBean.getEndAddr(), endTime, dataBean.getGoodId(), ids, dataBean.getSpePriceId(), dataBean.getStartAddr(), dataBean.getStartCompanyId(), startTime, dataBean.getSiteId(), isInsuranceType), headMap, true);
}
......@@ -477,7 +478,6 @@ public class TravelerConfirmOrderActivity extends BaseStatusActivity<TourismPres
}
private void pay(BeanTourOrderPay data) {
try {
......@@ -520,7 +520,7 @@ public class TravelerConfirmOrderActivity extends BaseStatusActivity<TourismPres
private String siteId;
private int hasInsure;
public Tourist(String contactEmail, String contactMan, String contactPhone, String endAddr, String endTime, String goodId, String tourUserIds, String spePriceId, String startAddr, String startCompanyId, String startTime, String siteId,int hasInsure) {
public Tourist(String contactEmail, String contactMan, String contactPhone, String endAddr, String endTime, String goodId, String tourUserIds, String spePriceId, String startAddr, String startCompanyId, String startTime, String siteId, int hasInsure) {
this.contactEmail = contactEmail;
this.contactMan = contactMan;
this.contactPhone = contactPhone;
......
......@@ -34,4 +34,5 @@ dependencies {
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
implementation project(':component_dialog')
implementation project(':module_home')
implementation project(':module_tourism')
}
package com.rv.member;
import android.content.Context;
import android.content.Intent;
import android.os.Handler;
import android.os.Looper;
import android.os.Message;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.GridLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.ruiwenliu.wrapper.base.BaseBean;
import com.ruiwenliu.wrapper.base.BaseFragment;
import com.ruiwenliu.wrapper.base.BaseStatusActivity;
import com.ruiwenliu.wrapper.util.ScaleUtils;
import com.ruiwenliu.wrapper.weight.TitleView;
import com.ruiwenliu.wrapper.weight.horizontal.GallerySnapHelper;
import com.ruiwenliu.wrapper.weight.horizontal.SpaceItemDecoration;
import com.rv.home.rv.module.basic.presenter.CommonPresenter;
import com.rv.home.rv.module.ui.main.adapter.TabAdapter;
import com.rv.home.rv.module.ui.main.home.adapter.OrderMenuAdapter;
import com.rv.member.bean.UserInfoBean;
import com.rv.member.fragment.AllDayDetailFragment;
import com.rv.member.fragment.GiveDetailFragment;
import com.rv.member.fragment.UserDetailFragment;
import com.rv.member.view.FreeDayProgressView;
import java.util.ArrayList;
import java.util.List;
import butterknife.BindView;
public class FreesDayActivity extends BaseStatusActivity<CommonPresenter> {
@BindView(R2.id.progress_view)
FreeDayProgressView progressView;
@BindView(R2.id.tv_has_use_day)
TextView tvHasUseDay;
@BindView(R2.id.recyclerview)
RecyclerView recyclerView;
@BindView(R2.id.viewpager)
ViewPager viewpager;
private OrderMenuAdapter menuAdapter;
private TabAdapter mAdapter;
private int menuPosition;
public static Intent getIntent(Context context, UserInfoBean infoBean) {
Intent intent = new Intent(context, FreesDayActivity.class);
intent.putExtra("userinfo", infoBean);
return intent;
}
@Override
protected int setLayout() {
return R.layout.activity_frees_day;
}
@Override
protected void initView(Bundle savedInstanceState, TitleView titleView, Intent intent) {
menuPosition = 0;
titleView.setTitle("租车免费天数");
// handler.sendMessageDelayed(new Message(), 3000);
initRecyclerView();
initViewpager();
}
@Override
protected void loadData(Bundle savedInstanceState, Intent intent) {
super.loadData(savedInstanceState, intent);
}
@Override
public void onShowResult(int requestType, BaseBean result) {
}
/**
* 初始化RecyclerView
*/
private void initRecyclerView() {
recyclerView.setLayoutManager(new GridLayoutManager(mActivity, 3));
menuAdapter = new OrderMenuAdapter();
recyclerView.setAdapter(menuAdapter);
recyclerView.addItemDecoration(new SpaceItemDecoration(3));
GallerySnapHelper snapHelper = new GallerySnapHelper();
snapHelper.attachToRecyclerView(recyclerView);
List<String> list = new ArrayList<>();
String[] city = getResources().getStringArray(R.array.free_day_list);
for (String a : city) {
list.add(a);
}
menuAdapter.setNewData(list);
menuAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
menuAdapter.setSelectItem(position);
viewpager.setCurrentItem(position);
}
});
}
/**
* 初始化Viewpager
*/
private void initViewpager() {
mAdapter = new TabAdapter(getSupportFragmentManager(), getListFragment());
viewpager.setAdapter(mAdapter);
viewpager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageSelected(int position) {
menuAdapter.setSelectItem(position);
}
@Override
public void onPageScrollStateChanged(int state) {
}
});
viewpager.setOffscreenPageLimit(mAdapter.getCount());
menuAdapter.setSelectItem(menuPosition);
viewpager.setCurrentItem(menuPosition);
}
private List<BaseFragment> getListFragment() {
List<BaseFragment> list = new ArrayList<>();
list.add(UserDetailFragment.getInstance());
list.add(GiveDetailFragment.getInstance());
list.add(AllDayDetailFragment.getInstance());
return list;
}
Handler handler = new Handler(Looper.getMainLooper()) {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
progressView.setData(28, 9, listener);
}
};
private FreeDayProgressView.DrawListener listener = new FreeDayProgressView.DrawListener() {
@Override
public void drawFinish(int progressWidth) {
Toast.makeText(FreesDayActivity.this, "绘制完成", Toast.LENGTH_SHORT).show();
LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(tvHasUseDay.getLayoutParams());
lp.setMargins(progressWidth + ScaleUtils.dip2px(getApplicationContext(), 5), 0, 0, 0);
tvHasUseDay.setLayoutParams(lp);
tvHasUseDay.setVisibility(View.VISIBLE);
tvHasUseDay.setText("已消耗" + 9 + "天");
}
};
}
......@@ -9,6 +9,7 @@ import android.support.annotation.Nullable;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;
......@@ -83,6 +84,7 @@ public class MemberCenterActivity extends BaseStatusActivity<MemberPresenter> {
private UserInfoBean.UserInfo info;
private IWXAPI api;
private int memberLevel = 0; // 会员等级
private int freeUseDay = 0; // 免费租车天数
public static Intent getIntent(Context context) {
return new Intent(context, MemberCenterActivity.class);
......@@ -103,7 +105,6 @@ public class MemberCenterActivity extends BaseStatusActivity<MemberPresenter> {
@SuppressLint("CheckResult")
private void initRxBus() {
RxBus.tObservable(PaymentSuccessfulEvent.class)
.observeOn(Schedulers.io())
.subscribe(new Consumer<PaymentSuccessfulEvent>() {
......@@ -119,6 +120,7 @@ public class MemberCenterActivity extends BaseStatusActivity<MemberPresenter> {
@Override
public void accept(PaymentFailedEvent payEvent) throws Exception {
if (mActivity.getClass().equals(MemberCenterActivity.class)) {
Log.e("xxxxxxxxxxxxxx", "xxxxxxxxxxxxxxxxxxxxxxxxxx");
ARouter.getInstance().build(Constance.ACTIVITY_URL_ORDERLIST).navigation();
finish();
}
......@@ -132,7 +134,7 @@ public class MemberCenterActivity extends BaseStatusActivity<MemberPresenter> {
switch (requestType) {
case 0:
if (adapter == null) {
adapter = new MemberListAdapter(((MemberListBean) result).getData(), memberLevel, MemberCenterActivity.this, payListener);
adapter = new MemberListAdapter(((MemberListBean) result).getData(), memberLevel, freeUseDay, MemberCenterActivity.this, payListener);
recyclerView.setAdapter(adapter);
} else {
adapter.setDate(((MemberListBean) result).getData());
......@@ -163,10 +165,8 @@ public class MemberCenterActivity extends BaseStatusActivity<MemberPresenter> {
} else if (id == R.id.tv_verified) {
//实名认证
if (!isLogin()) return;
ComponentName componentName = new ComponentName(MemberCenterActivity.this, "com.rv.rvmine.personal.IDCardCertificationActivity");
Intent intent = new Intent();
intent.setComponent(componentName);
startActivityForResult(intent, REQUEST_VERIFIED);
ARouter.getInstance().build(Constance.ACTIVITY_URL_IDCARDCERTIFICATION)
.navigation(this, REQUEST_VERIFIED);
} else if (id == R.id.iv_title) {
finish();
} else if (id == R.id.tv_consume_record) {
......@@ -247,17 +247,17 @@ public class MemberCenterActivity extends BaseStatusActivity<MemberPresenter> {
tvVerified.setVisibility(View.VISIBLE);
if (info != null) {
ivMember.setVisibility(View.VISIBLE);
freeUseDay = info.getRentFreeDays();
if (info.getIsMember() == 0) {
memberLevel = 0;
if (adapter != null) {
adapter.setMemberLevel(memberLevel);
adapter.setMemberLevel(memberLevel, freeUseDay);
}
ivMember.setImageResource(R.drawable.mycenter_icon_goldmembership_1);
} else {
memberLevel = info.getMemberLevel();
if (adapter != null) {
adapter.setMemberLevel(memberLevel);
adapter.setMemberLevel(memberLevel, freeUseDay);
}
switch (info.getMemberLevel()) {
case 1:
......@@ -314,6 +314,7 @@ public class MemberCenterActivity extends BaseStatusActivity<MemberPresenter> {
} else if (i == R.id.ll_item_wechat) {
payType = 1;
helper.setChecked(R.id.rb_wechat, true);
helper.setChecked(R.id.rb_alipay, false);
} else if (i == R.id.ll_item_alipay) {
showToast("该功能还没有开通!");
......
......@@ -21,11 +21,14 @@ import android.widget.RelativeLayout;
import android.widget.TextView;
import android.widget.Toast;
import com.alibaba.android.arouter.launcher.ARouter;
import com.frame.base.url.Constance;
import com.ruiwenliu.wrapper.util.glide.GlideManager;
import com.rv.member.R;
import com.rv.member.bean.MemberListBean;
import com.rv.member.view.MemberCardView;
import com.rv.tourism.api.TourismApi;
import java.util.List;
......@@ -35,6 +38,7 @@ public class MemberListAdapter extends RecyclerView.Adapter<RecyclerView.ViewHol
private List<MemberListBean.MemberCard> mData;
private PayListener payListener;
private int memberLevel;
private int freeUseDay;
private GridMemerAdapter adapter;
private MemberListBean.MemberCard selectCard;
private int selectPostion;
......@@ -43,8 +47,9 @@ public class MemberListAdapter extends RecyclerView.Adapter<RecyclerView.ViewHol
void pay(MemberListBean.MemberCard card);
}
public void setMemberLevel(int memberLevel) {
public void setMemberLevel(int memberLevel, int freeUseDay) {
this.memberLevel = memberLevel;
this.freeUseDay = freeUseDay;
notifyDataSetChanged();
}
......@@ -53,8 +58,9 @@ public class MemberListAdapter extends RecyclerView.Adapter<RecyclerView.ViewHol
notifyDataSetChanged();
}
public MemberListAdapter(@Nullable List<MemberListBean.MemberCard> data, int memberLevel, Context context, PayListener listener) {
public MemberListAdapter(@Nullable List<MemberListBean.MemberCard> data, int memberLevel, int freeUseDay, Context context, PayListener listener) {
this.memberLevel = memberLevel;
this.freeUseDay = freeUseDay;
this.mContext = context;
this.payListener = listener;
selectPostion = 1;
......@@ -112,6 +118,16 @@ public class MemberListAdapter extends RecyclerView.Adapter<RecyclerView.ViewHol
SpannableString spannableString = new SpannableString(viewHolder.tv_agreement.getText());
spannableString.setSpan(new ForegroundColorSpan(Color.parseColor("#FFB74B")), 6, spannableString.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
viewHolder.tv_agreement.setText(spannableString);
viewHolder.tv_agreement.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
ARouter.getInstance().build(Constance.ACTIVITY_URL_WEBVIEW)
.withString("title", "合同协议")
.withString("url", TourismApi.HTTP_URL_CAR_TYPE_NOTICE)
.withInt("type", 18)
.navigation();
}
});
viewHolder.img_agree.setImageResource(hasAgree ? R.drawable.common_icon_selected : R.drawable.common_icon_radio_unche);
viewHolder.btn_buy.setBackgroundResource(hasAgree ? R.drawable.shape_rv_bg_dark_yellow : R.drawable.shape_rv_bg_btn_grap_yellow);
......@@ -189,27 +205,23 @@ public class MemberListAdapter extends RecyclerView.Adapter<RecyclerView.ViewHol
private void setMemeberTop(final HeadViewHolder viewHolder) {
if (memberLevel > 0) {
viewHolder.rlTop.setVisibility(View.VISIBLE);
viewHolder.imgFreedayTop.setText(freeUseDay + "天");
viewHolder.tvFreedayTop.setText("免费用车" + freeUseDay + "天");
switch (memberLevel) {
case 1:
viewHolder.imgDiscountTop.setImageResource(R.drawable.member_discount_8);
viewHolder.tvDiscountTop.setText("租车8折");
viewHolder.imgFreedayTop.setImageResource(R.drawable.member_free_day_5);
viewHolder.tvFreedayTop.setText("免费用车" + mData.get(1).getNumber() + "天");
break;
case 2:
viewHolder.imgDiscountTop.setImageResource(R.drawable.member_discount_7);
viewHolder.tvDiscountTop.setText("租车7折");
viewHolder.imgFreedayTop.setImageResource(R.drawable.member_free_day_12);
viewHolder.tvFreedayTop.setText("免费用车" + mData.get(2).getNumber() + "天");
break;
case 3:
viewHolder.imgDiscountTop.setImageResource(R.drawable.member_discount_6);
viewHolder.tvDiscountTop.setText("租车6折");
viewHolder.imgFreedayTop.setImageResource(R.drawable.member_free_day_28);
viewHolder.tvFreedayTop.setText("免费用车" + mData.get(3).getNumber() + "天");
break;
}
} else {
viewHolder.rlTop.setVisibility(View.GONE);
}
......@@ -258,7 +270,7 @@ public class MemberListAdapter extends RecyclerView.Adapter<RecyclerView.ViewHol
ImageView imgDiscountTop;
TextView tvDiscountTop;
Button btnDisountUse;
ImageView imgFreedayTop;
TextView imgFreedayTop;
TextView tvFreedayTop;
Button btnFreedayUse;
......
......@@ -2,7 +2,7 @@
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!--空心框 圆角 少量红-->
<corners android:radius="@dimen/ui_dimen_radius" />
<corners android:radius="5dp" />
<stroke
android:width="@dimen/ui_dimen_stroke"
android:color="@color/colorYellow" />
......
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="5dp" />
<solid android:color="@color/input_grap" />
</shape>
\ No newline at end of file
......@@ -87,7 +87,7 @@
android:layout_width="@dimen/size_150"
android:layout_height="@dimen/size_40"
android:layout_gravity="center"
android:background="@drawable/resource_drawable_shape_yellow_line"
android:background="@drawable/shape_rv_bg_btn_yellow"
android:gravity="center"
android:text="@string/tv_login"
android:textColor="@color/colorYellow"
......@@ -97,9 +97,9 @@
<TextView
android:id="@+id/tv_verified"
android:layout_width="@dimen/text_90"
android:layout_height="@dimen/text_30"
android:background="@drawable/resource_drawable_shape_yellow_line"
android:layout_width="@dimen/size_80"
android:layout_height="27dp"
android:background="@drawable/shape_rv_bg_btn_yellow"
android:gravity="center"
android:text="未实名认证"
android:textColor="@color/colorYellow"
......
......@@ -59,11 +59,20 @@
android:gravity="center"
android:orientation="vertical">
<ImageView
<TextView
android:id="@+id/img_freeday_top"
android:layout_width="@dimen/size_50"
android:layout_width="wrap_content"
android:layout_height="@dimen/size_50"
android:layout_marginTop="13dp" />
android:layout_marginTop="13dp"
android:background="@drawable/bg_member_free_day"
android:fontFamily="serif"
android:gravity="center"
android:minWidth="@dimen/size_50"
android:paddingLeft="@dimen/size_5"
android:paddingRight="@dimen/size_5"
android:textColor="@color/white"
android:textSize="@dimen/text_22"
android:textStyle="bold" />
<TextView
android:id="@+id/tv_freeday_top"
......
......@@ -2,4 +2,5 @@
<resources>
<color name="white">#ffffff</color>
<color name="color_999">#999999</color>
<color name="input_grap">#EEEEEE</color>
</resources>
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