Commit ed7782ef authored by linfeng's avatar linfeng

首页、旅游、营地和bug修复

parent 0ac80816
...@@ -37,13 +37,17 @@ dependencies { ...@@ -37,13 +37,17 @@ dependencies {
androidTestImplementation('com.android.support.test.espresso:espresso-core:2.2.2', { androidTestImplementation('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations' exclude group: 'com.android.support', module: 'support-annotations'
}) })
api project(path:':OkGo') api project(path: ':OkGo')
api project(path:':Utils') api project(path: ':Utils')
//鲁班图片压缩 https://github.com/Curzibn/Luban //鲁班图片压缩 https://github.com/Curzibn/Luban
api 'top.zibin:Luban:1.1.8' api 'top.zibin:Luban:1.1.8'
//权限申请 https://github.com/googlesamples/easypermissions //权限申请 https://github.com/googlesamples/easypermissions
api 'pub.devrel:easypermissions:2.0.0' api 'pub.devrel:easypermissions:2.0.0'
//Glide //Glide
api "com.github.bumptech.glide:glide:$rootProject.ext.glideVersion" api "com.github.bumptech.glide:glide:$rootProject.ext.glideVersion"
api 'io.reactivex.rxjava2:rxandroid:2.0.2'
api 'io.reactivex.rxjava2:rxjava:2.1.12'
//annotationProcessor "com.github.bumptech.glide:glide:$rootProject.ext.glideVersion" //annotationProcessor "com.github.bumptech.glide:glide:$rootProject.ext.glideVersion"
} }
package com.rv.home.rv.until.bus; package com.frame.base.bus;
public abstract class Event { public abstract class Event {
long id; long id;
......
package com.rv.home.rv.until.bus; package com.frame.base.bus;
import io.reactivex.disposables.CompositeDisposable; import io.reactivex.disposables.CompositeDisposable;
import io.reactivex.disposables.Disposable; import io.reactivex.disposables.Disposable;
......
package com.rv.home.rv.until.bus; package com.frame.base.bus;
public class PaymentFailedEvent extends Event { public class PaymentFailedEvent extends Event {
} }
package com.rv.home.rv.until.bus; package com.frame.base.bus;
public class PaymentSuccessfulEvent extends Event { public class PaymentSuccessfulEvent extends Event {
} }
package com.rv.home.rv.until.bus; package com.frame.base.bus;
import java.util.Map; import java.util.Map;
import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentHashMap;
......
package com.frame.base.url;
/**
* ARouter上面的注解需要我们写路径标识
*/
public final class Constance {
public static final String ACTIVITY_URL_ORDERLIST ="/ui/main/home/order/OrderListActivity";
}
apply plugin: 'com.android.library'
apply plugin: 'com.jakewharton.butterknife'
android {
compileSdkVersion 28
defaultConfig {
minSdkVersion 15
targetSdkVersion 28
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
api 'com.jakewharton:butterknife:9.0.0-rc1'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
annotationProcessor 'com.jakewharton:butterknife-compiler:9.0.0-rc1'
api project(':RvWrapper')
}
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.rv.camp">
</manifest>
\ No newline at end of file
package com.rv.camp;
import android.content.Intent;
import android.graphics.Rect;
import android.os.Bundle;
import android.support.v7.widget.GridLayoutManager;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.frame.rv.ModuleEventUtil;
import com.frame.rv.OnModuleEventListener;
import com.frame.rv.config.RvFrameConfig;
import com.frame.rv.widget.BaseTabLayout;
import com.ruiwenliu.wrapper.base.BaseBean;
import com.ruiwenliu.wrapper.base.BaseStatusActivity;
import com.ruiwenliu.wrapper.weight.TitleView;
import com.rv.camp.adapter.CampListAdapter;
import com.rv.camp.adapter.CampTypeListAdapter;
import com.rv.camp.api.CampApi;
import com.rv.camp.bean.CampListBean;
import com.rv.camp.bean.CampTypeBean;
import com.rv.camp.camp.CampDetailActivity;
import com.rv.camp.presenter.CampPresenter;
import com.yuyife.okgo.OkGoUtil;
import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import butterknife.BindView;
import butterknife.OnClick;
/**
* 营地
*/
public class CampActivity extends BaseStatusActivity<CampPresenter> implements BaseQuickAdapter.RequestLoadMoreListener{
@BindView(R2.id.travel_tab_layout)
BaseTabLayout travelTabLayout;
@BindView(R2.id.rv_content)
RecyclerView rvContent;
@BindView(R2.id.rv_type)
RecyclerView rvType;
@BindView(R2.id.v_shadow)
View vShadow;
private boolean isOpen = true;
private CampListAdapter campAdapter;
private CampTypeListAdapter campTypeListAdapter;
private int mPage;
private int countPage;
private String type =null;
@Override
protected int setLayout() {
return R.layout.activity_camp;
}
@Override
protected void initView(Bundle savedInstanceState, TitleView titleView, Intent intent) {
showTitle(false);
ModuleEventUtil.currentActivity = this;
travelTabLayout.setCurrent(OnModuleEventListener.MODULE_CAMP);
campAdapter = new CampListAdapter();
rvContent.setLayoutManager(new GridLayoutManager(mActivity, 2));
rvContent.addItemDecoration(new AbSpacesItemDecoration(15));// 分割线。
rvContent.setNestedScrollingEnabled(false);
rvContent.setAdapter(campAdapter);
campTypeListAdapter = new CampTypeListAdapter();
rvType.setLayoutManager(new LinearLayoutManager(mActivity, LinearLayoutManager.VERTICAL, false));
rvType.setAdapter(campTypeListAdapter);
campTypeListAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
CampTypeBean.DataBean item = (CampTypeBean.DataBean) adapter.getItem(position);
type = item.getId();
onRefresh();
rvType.setVisibility(View.GONE);
vShadow.setVisibility(View.GONE);
isOpen = true;
campTypeListAdapter.setSelectPosition(position);
}
});
campAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
CampListBean.DataBeanX.DataBean item = (CampListBean.DataBeanX.DataBean) adapter.getItem(position);
startActivity(CampDetailActivity.getIntent(mActivity,item));
}
});
}
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
ModuleEventUtil.currentActivity = this;
}
@Override
public void onShowResult(int requestType, BaseBean result) {
switch (requestType) {
case 0:
processData((CampListBean) result);
break;
case 1:
processTypeData((CampTypeBean) result);
break;
}
}
@Override
public void onDestroy() {
super.onDestroy();
if (ModuleEventUtil.getOnModuleEventListener() != null) {
ModuleEventUtil.getOnModuleEventListener().onClear();
}
}
@OnClick({R2.id.tv_camp_type, R2.id.iv_camp_map,R2.id.v_shadow})
public void onViewClicked(View view) {
int id = view.getId();
if (id == R.id.tv_camp_type) {
//类型
if (isOpen){
rvType.setVisibility(View.VISIBLE);
vShadow.setVisibility(View.VISIBLE);
}else {
rvType.setVisibility(View.GONE);
vShadow.setVisibility(View.GONE);
}
isOpen = !isOpen;
} else if (id == R.id.iv_camp_map) {
//地图
}else if (id == R.id.v_shadow){
rvType.setVisibility(View.GONE);
vShadow.setVisibility(View.GONE);
isOpen = true;
}
}
@Override
protected void loadData(Bundle savedInstanceState, Intent intent) {
super.loadData(savedInstanceState, intent);
onRefresh();
getCampTypeList();
}
@Override
public void onLoadMoreRequested() {
if (mPage >= countPage) {
campAdapter.loadMoreEnd();
} else {
mPage++;
getCampList(mPage);
}
}
/**
* 获取营地列表
*/
private void getCampList(int page) {
Map<String, Object> map = new LinkedHashMap<>();
map.put("page", page);
if (type !=null) {
map.put("type", type);
}
mPresenter.getData(RvFrameConfig.VEHICLE_CAMPLIST, 0, CampApi.TRAVEL_CAMPSITESHOP, CampListBean.class, map, page == 1 ? true : false);
}
private void getCampTypeList(){
mPresenter.getData(RvFrameConfig.VEHICLE_CAMPLIST,1,CampApi.TRAVEL_CAMPSITETAG, CampTypeBean.class,false);
}
private void processTypeData(CampTypeBean bean) {
campTypeListAdapter.setNewData(bean.getData());
}
/**
* 刷新数据
*/
private void onRefresh() {
mPage = 1;
getCampList(mPage);
}
private void processData(CampListBean bean) {
if (mPage == 1) {
if (bean.getData().getTotalCount() == 0) {
campAdapter.setEmptyView(getEmptyView(rvContent, -1, "还没有营地信息!"));
return;
}
countPage = bean.getData().getTotalPage();
campAdapter.setNewData(bean.getData().getData());
campAdapter.loadMoreComplete();
} else {
campAdapter.addData(bean.getData().getData());
campAdapter.loadMoreComplete();
}
}
public class AbSpacesItemDecoration extends RecyclerView.ItemDecoration {
private int space;
public AbSpacesItemDecoration(int space) {
this.space = space;
}
@Override
public void getItemOffsets(Rect outRect, View view, RecyclerView parent, RecyclerView.State state) {
outRect.left = space;
outRect.right = space;
outRect.bottom = space;
outRect.top = space;
}
}
}
package com.rv.camp.adapter;
import android.widget.ImageView;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.frame.base.glide.GlideManager;
import com.rv.camp.R;
import com.rv.camp.bean.CampListBean;
/**
* 营地列表
*/
public class CampListAdapter extends BaseQuickAdapter<CampListBean.DataBeanX.DataBean, BaseViewHolder> {
public CampListAdapter() {
super(R.layout.rv_item_camp_list);
}
@Override
protected void convert(BaseViewHolder helper, final CampListBean.DataBeanX.DataBean item) {
GlideManager.getInstance(mContext).loadImage(item.getUrl(), (ImageView)helper.getView(R.id.iv_icon));
helper.setText(R.id.tv_type,item.getStoreTypeName());
helper.setText(R.id.tv_name,item.getName());
helper.setText(R.id.tv_city,item.getCityName());
}
}
package com.rv.camp.adapter;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.rv.camp.R;
import com.rv.camp.bean.CampTypeBean;
/**
* 营地类型列表
*/
public class CampTypeListAdapter extends BaseQuickAdapter<CampTypeBean.DataBean, BaseViewHolder> {
private int selectPosition;
public CampTypeListAdapter() {
super(R.layout.rv_item_camp_type_list);
}
@Override
protected void convert(BaseViewHolder helper, final CampTypeBean.DataBean item) {
helper.setText(R.id.tv_type_name,item.getName());
if(selectPosition==mData.indexOf(item)){
helper.setVisible(R.id.iv_select,true);
helper.setTextColor(R.id.tv_type_name,mContext.getResources().getColor(R.color.gray_FFB74B));
}else {
helper.setVisible(R.id.iv_select,false);
helper.setTextColor(R.id.tv_type_name,mContext.getResources().getColor(R.color.textGray));
}
}
public void setSelectPosition(int position){
this.selectPosition=position;
notifyDataSetChanged();
}
}
package com.rv.camp.api;
import com.frame.rv.config.RvFrameConfig;
public interface CampApi extends RvFrameConfig {
//营地列表
String TRAVEL_CAMPSITESHOP = HOST + "/api/campsite/campsiteShop/app/unauth/shops";
//营地类型列表
String TRAVEL_CAMPSITETAG = HOST + "/api/campsite/campsiteTag/app/unauth/tags";
//营地详情H5
String TRAVEL_CAMPSITEDETAI = HOST + "/h5/appHtml/view/campsiteDetail.html";
}
package com.rv.camp.bean;
import com.ruiwenliu.wrapper.base.BaseBean;
import java.io.Serializable;
import java.util.List;
/**
* 营地列表
*/
public class CampListBean extends BaseBean {
private DataBeanX data;
private int code;
public DataBeanX getData() {
return data;
}
public void setData(DataBeanX data) {
this.data = data;
}
public int getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
}
public static class DataBeanX {
private int totalCount;
private int totalPage;
private int pageNum;
private List<DataBean> data;
public int getTotalCount() {
return totalCount;
}
public void setTotalCount(int totalCount) {
this.totalCount = totalCount;
}
public int getTotalPage() {
return totalPage;
}
public void setTotalPage(int totalPage) {
this.totalPage = totalPage;
}
public int getPageNum() {
return pageNum;
}
public void setPageNum(int pageNum) {
this.pageNum = pageNum;
}
public List<DataBean> getData() {
return data;
}
public void setData(List<DataBean> data) {
this.data = data;
}
public static class DataBean implements Serializable {
private String id;//": 1,------>店铺id
private String name;//": "asdf", --->店铺名
private String logo;//": "sdfasd", --->店铺logo
private String url;//": "asdfsadf", --->链接地址
private String provinceName;//": "广东省",
private String cityName;//": "广州市",
private String storeTypeName;//": "上海游", --->店铺类型
private String storeld;//": "1", ---->店铺类型id
private String longitude;//": 116.308479,--->经度
private String latitude;//": 39.983171---->纬度
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getLogo() {
return logo;
}
public void setLogo(String logo) {
this.logo = logo;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getProvinceName() {
return provinceName;
}
public void setProvinceName(String provinceName) {
this.provinceName = provinceName;
}
public String getCityName() {
return cityName;
}
public void setCityName(String cityName) {
this.cityName = cityName;
}
public String getStoreTypeName() {
return storeTypeName;
}
public void setStoreTypeName(String storeTypeName) {
this.storeTypeName = storeTypeName;
}
public String getStoreld() {
return storeld;
}
public void setStoreld(String storeld) {
this.storeld = storeld;
}
public String getLongitude() {
return longitude;
}
public void setLongitude(String longitude) {
this.longitude = longitude;
}
public String getLatitude() {
return latitude;
}
public void setLatitude(String latitude) {
this.latitude = latitude;
}
}
}
}
package com.rv.camp.bean;
import com.chad.library.adapter.base.entity.MultiItemEntity;
import com.ruiwenliu.wrapper.base.BaseBean;
import java.io.Serializable;
import java.util.List;
public class CampTypeBean extends BaseBean {
private List<DataBean> data;
private int code;
public List<DataBean> getData() {
return data;
}
public void setData(List<DataBean> data) {
this.data = data;
}
public int getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
}
public static class DataBean implements Serializable{
private String id;// : 1,
private String name;// "上海游"
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
}
package com.rv.camp.camp;
import android.annotation.TargetApi;
import android.content.ClipboardManager;
import android.content.Context;
import android.content.Intent;
import android.os.Build;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.webkit.JavascriptInterface;
import android.webkit.WebChromeClient;
import android.webkit.WebResourceRequest;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import com.ruiwenliu.wrapper.base.BaseBean;
import com.ruiwenliu.wrapper.base.BaseStatusActivity;
import com.ruiwenliu.wrapper.weight.TitleView;
import com.rv.camp.R;
import com.rv.camp.R2;
import com.rv.camp.api.CampApi;
import com.rv.camp.bean.CampListBean;
import com.rv.camp.bean.CampTypeBean;
import com.rv.camp.presenter.CampPresenter;
import com.yuyife.okgo.OkGoUtil;
import butterknife.BindView;
import static com.ruiwenliu.wrapper.weight.webview.SafeWebView.hasKitkat;
/**
* 营地详情
*/
public class CampDetailActivity extends BaseStatusActivity<CampPresenter> {
@BindView(R2.id.webView)
WebView mWebView;
private String webUrl;
private CampListBean.DataBeanX.DataBean dataBean;
public static Intent getIntent(Context context, CampListBean.DataBeanX.DataBean dataBean) {
return new Intent(context, CampDetailActivity.class)
.putExtra("dataBean", dataBean);
}
@Override
protected int setLayout() {
return R.layout.activity_camp_detail;
}
@Override
protected void initView(Bundle savedInstanceState, TitleView titleView, Intent intent) {
titleView.setTitle("营地详情");
dataBean = (CampListBean.DataBeanX.DataBean) intent.getSerializableExtra("dataBean");
webUrl = CampApi.TRAVEL_CAMPSITEDETAI + "?id=" + dataBean.getId() +"&longitude=" +dataBean.getLongitude()+"&latitude=" +dataBean.getLatitude();
Log.i("CampDetailActivity", "initView: " +webUrl);
initWeb();
}
@Override
public void onShowResult(int requestType, BaseBean result) {
}
@TargetApi(Build.VERSION_CODES.JELLY_BEAN)
private void initWeb() {
WebSettings webSettings = mWebView.getSettings();
if (webSettings == null) return;
// 支持 Js 使用
webSettings.setJavaScriptEnabled(true);
// 开启DOM缓存,默认状态下是不支持LocalStorage的
webSettings.setDomStorageEnabled(true);
// 开启数据库缓存
webSettings.setDatabaseEnabled(true);
// 支持自动加载图片
webSettings.setLoadsImagesAutomatically(hasKitkat());
// 设置 WebView 的缓存模式
webSettings.setCacheMode(WebSettings.LOAD_DEFAULT);
// 支持启用缓存模式
webSettings.setAppCacheEnabled(true);
// 设置 AppCache 最大缓存值(现在官方已经不提倡使用,已废弃)
// webSettings.setAppCacheMaxSize(8 * 1024 * 1024);
// Android 私有缓存存储,如果你不调用setAppCachePath方法,WebView将不会产生这个目录
webSettings.setAppCachePath(getCacheDir().getAbsolutePath());
// 数据库路径
// if (!hasKitkat()) {
// webSettings.setDatabasePath(getDatabasePath("html").getPath());
// }
// 关闭密码保存提醒功能
// webSettings.setSavePassword(false);
// 支持缩放
webSettings.setSupportZoom(true);
// 设置 UserAgent 属性
webSettings.setUserAgentString("");
// 允许加载本地 html 文件/false
webSettings.setAllowFileAccess(true);
// 允许通过 file url 加载的 Javascript 读取其他的本地文件,Android 4.1 之前默认是true,在 Android 4.1 及以后默认是false,也就是禁止
webSettings.setAllowFileAccessFromFileURLs(true);
// 允许通过 file url 加载的 Javascript 可以访问其他的源,包括其他的文件和 http,https 等其他的源,
// Android 4.1 之前默认是true,在 Android 4.1 及以后默认是false,也就是禁止
// 如果此设置是允许,则 setAllowFileAccessFromFileURLs 不起做用
webSettings.setAllowUniversalAccessFromFileURLs(true);
mWebView.addJavascriptInterface(new AndroidJs(), "AndroidJs");
mWebView.loadUrl(webUrl);
mWebView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
return super.shouldOverrideUrlLoading(view, request);
}
});
mWebView.setWebChromeClient(new WebChromeClient() {
@Override
public void onProgressChanged(WebView view, int newProgress) {
super.onProgressChanged(view, newProgress);
if (newProgress == 85) {
onHideLoading();
}
}
});
}
public class AndroidJs {
@JavascriptInterface
public String getToken() {
return OkGoUtil.getToken();
}
}
@Override
protected void onStart() {
super.onStart();
}
@Override
public void onResume() {
super.onResume();
mWebView.onResume();// 生命周期onResume
}
@Override
protected void onPause() {
super.onPause();
mWebView.onPause();//生命周期onPause
}
@Override
public void onDestroy() {
super.onDestroy();
mWebView.stopLoading();// 停止当前加载
mWebView.clearMatches();// 清除网页查找的高亮匹配字符。
mWebView.clearHistory();// 清除当前 WebView 访问的历史记录
mWebView.clearSslPreferences();//清除ssl信息
mWebView.clearCache(true);//清空网页访问留下的缓存数据。需要注意的时,由于缓存是全局的,所以只要是WebView用到的缓存都会被清空,即便其他地方也会使用到。该方法接受一个参数,从命名即可看出作用。若设为false,则只清空内存里的资源缓存,而不清空磁盘里的。
mWebView.loadUrl("about:blank");// 清空当前加载
mWebView.removeAllViews();// 清空子 View
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.JELLY_BEAN_MR2) {
mWebView.removeJavascriptInterface("AndroidNative");// 向 Web端注入 java 对象
}
// mWebView.addJavascriptInterface(new AndroidJs(),"AndroidJs");
mWebView.destroy();// 生命周期销毁
}
}
package com.rv.camp.presenter;
import com.frame.rv.config.RvFrameConfig;
import com.ruiwenliu.wrapper.presenter.MvpPresenter;
/**
* Created by Amuse
* Date:2019/3/4.
* Desc:
*/
public class CampPresenter extends MvpPresenter {
@Override
/**
* 域名地址
*/
public String getBaseUrl() {
return RvFrameConfig.AUTH_POST;
}
}
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<LinearLayout
android:id="@+id/travel_fragment_layout"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:background="@color/colorWrite"
android:orientation="vertical">
<RelativeLayout
android:background="@color/colorWrite"
android:layout_width="match_parent"
android:layout_height="@dimen/size_55">
<TextView
android:id="@+id/tv_camp_type"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_centerVertical="true"
android:layout_marginLeft="@dimen/size_15"
android:drawableRight="@drawable/camp_open_member"
android:drawablePadding="@dimen/size_10"
android:gravity="center_vertical"
android:text="类型"
android:textColor="@color/textMain"
android:textSize="@dimen/text_16" />
<ImageView
android:id="@+id/iv_camp_map"
android:layout_width="@dimen/size_35"
android:layout_height="@dimen/size_35"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="@dimen/size_15"
android:padding="@dimen/size_8"
android:src="@drawable/camp_rentingcar_icon_plat" />
</RelativeLayout>
<include layout="@layout/common_line" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1">
<android.support.v7.widget.RecyclerView
android:id="@+id/rv_content"
android:paddingLeft="@dimen/size_12"
android:paddingRight="@dimen/size_12"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<View
android:id="@+id/v_shadow"
android:visibility="gone"
android:background="@color/gray_50000000"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
<android.support.v7.widget.RecyclerView
android:id="@+id/rv_type"
android:visibility="gone"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</RelativeLayout>
</LinearLayout>
<com.frame.rv.widget.BaseTabLayout
android:id="@+id/travel_tab_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<WebView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:id="@+id/webView" />
<TextView
android:id="@+id/tv_scheduled_camp"
android:layout_width="match_parent"
android:layout_height="@dimen/size_55"
android:background="@color/gray_FFB74B"
android:textColor="@color/colorWrite"
android:textSize="@dimen/text_16"
android:gravity="center"
android:text="预定营地"/>
</LinearLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/ll_item_rv_enthusiast"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/colorWrite"
android:orientation="vertical">
<RelativeLayout
android:background="@color/black"
android:layout_width="@dimen/size_150"
android:layout_height="@dimen/size_180">
<ImageView
android:id="@+id/iv_icon"
android:layout_width="@dimen/size_150"
android:layout_height="@dimen/size_180"
android:scaleType="centerCrop" />
<TextView
android:id="@+id/tv_type"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/colorWrite"
android:gravity="center"
android:background="@drawable/campsite_icon_label"
android:textSize="@dimen/text_10"
android:text="湖泊型"/>
</RelativeLayout>
<TextView
android:id="@+id/tv_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/size_5"
android:paddingLeft="@dimen/size_5"
android:paddingRight="@dimen/size_5"
android:text="休闲小镇房车露营168号营地"
android:textColor="@color/colorMain"
android:textSize="@dimen/text_12" />
<TextView
android:id="@+id/tv_city"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/size_5"
android:layout_marginBottom="@dimen/size_10"
android:paddingLeft="@dimen/size_5"
android:drawablePadding="@dimen/size_5"
android:drawableLeft="@drawable/campsite_icon_citylocation"
android:text="惠州"
android:textColor="@color/gray_707070"
android:textSize="@dimen/text_10" />
</LinearLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/colorWrite"
android:orientation="vertical">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="@dimen/size_50"
android:layout_marginLeft="@dimen/size_15"
android:layout_marginRight="@dimen/size_15"
android:gravity="center_vertical"
android:orientation="horizontal">
<TextView
android:id="@+id/tv_type_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:maxLines="1"
android:textSize="@dimen/text_14"
android:textColor="@color/textGray"
android:text="山地型"/>
<ImageView
android:id="@+id/iv_select"
android:layout_alignParentRight="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="gone"
android:src="@drawable/common_icon_pitchon"/>
</RelativeLayout>
<include layout="@layout/common_line"/>
</LinearLayout>
\ No newline at end of file
<resources>
<string name="app_name">RvCamp</string>
</resources>
...@@ -46,5 +46,6 @@ dependencies { ...@@ -46,5 +46,6 @@ dependencies {
api project(path: ':RvTravel') api project(path: ':RvTravel')
api project(path: ':RvHome') api project(path: ':RvHome')
api project(path: ':RvMine') api project(path: ':RvMine')
api project(path: ':RvCamp')
} }
...@@ -104,10 +104,10 @@ ...@@ -104,10 +104,10 @@
<application <application
android:name=".RvClientApplication" android:name=".RvClientApplication"
android:allowBackup="true" android:allowBackup="true"
android:icon="@mipmap/ic_launcher" android:icon="@mipmap/logo"
android:label="@string/app_name" android:label="@string/app_name"
android:resizeableActivity="false" android:resizeableActivity="false"
android:roundIcon="@mipmap/ic_launcher_round" android:roundIcon="@mipmap/logo"
android:supportsRtl="true" android:supportsRtl="true"
android:theme="@style/AppTheme.NoActionBar.SwipeBack" android:theme="@style/AppTheme.NoActionBar.SwipeBack"
...@@ -148,13 +148,14 @@ ...@@ -148,13 +148,14 @@
<!-- umShare 相关 start --> <!-- umShare 相关 start -->
<!-- WeiXin callback --> <!-- WeiXin callback -->
<activity <activity
android:name="com.rv.home.rv.wxapi.WXEntryActivity" android:name=".wxapi.WXEntryActivity"
android:configChanges="keyboardHidden|orientation|screenSize" android:configChanges="keyboardHidden|orientation|screenSize"
android:exported="true" android:exported="true"
android:screenOrientation="portrait" android:screenOrientation="portrait"
android:theme="@android:style/Theme.Translucent.NoTitleBar" /> android:theme="@android:style/Theme.Translucent.NoTitleBar" />
<activity <activity
android:name="com.rv.home.rv.wxapi.WXPayEntryActivity" android:name=".wxapi.WXPayEntryActivity"
android:exported="true" android:exported="true"
android:launchMode="singleTop" > android:launchMode="singleTop" >
</activity> </activity>
...@@ -394,9 +395,39 @@ ...@@ -394,9 +395,39 @@
<activity android:name="com.rv.rvmine.personal.SuccessfulCertificationActivity" <activity android:name="com.rv.rvmine.personal.SuccessfulCertificationActivity"
android:launchMode="singleTask" android:launchMode="singleTask"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<!--选择出游人-->
<activity android:name="com.rv.rvmine.traveler.ChooseAVisitorActivity"
android:launchMode="singleTask"
android:screenOrientation="portrait" />
<!--关于我们-->
<activity android:name="com.rv.rvmine.traveler.AboutUsActivity"
android:launchMode="singleTask"
android:screenOrientation="portrait" />
<!--收藏-->
<activity android:name="com.rv.rvmine.traveler.CollectionActivity"
android:launchMode="singleTask"
android:screenOrientation="portrait" />
<activity android:name="com.rv.home.rv.module.basic.WebActivity"
android:launchMode="singleTask"
android:screenOrientation="portrait" />
<!--=================================================================--> <!--=================================================================-->
<!--=================================营地=======================================-->
<!--营地首页-->
<activity android:name="com.rv.camp.CampActivity"
android:launchMode="singleTask"
android:screenOrientation="portrait" />
<!--营地详情-->
<activity android:name="com.rv.camp.camp.CampDetailActivity"
android:launchMode="singleTask"
android:screenOrientation="portrait" />
</application> </application>
</manifest> </manifest>
\ No newline at end of file
...@@ -4,12 +4,20 @@ import com.base.utils.tools.android.IntentUtil; ...@@ -4,12 +4,20 @@ import com.base.utils.tools.android.IntentUtil;
import com.frame.base.FrameApp; import com.frame.base.FrameApp;
import com.frame.rv.ModuleEventUtil; import com.frame.rv.ModuleEventUtil;
import com.frame.rv.OnModuleEventListener; import com.frame.rv.OnModuleEventListener;
import com.frame.rv.config.RvFrameConfig;
import com.rv.camp.CampActivity;
import com.rv.home.rv.module.ApiConfig;
import com.rv.home.rv.module.ui.login.LoginRvActivity; import com.rv.home.rv.module.ui.login.LoginRvActivity;
import com.rv.home.rv.module.ui.main.HomeActivity; import com.rv.home.rv.module.ui.main.HomeActivity;
import com.rv.rvmine.MineActivity; import com.rv.rvmine.MineActivity;
import com.rv.rvmine.bean.UserInfoBean;
import com.rv.rvmine.traveler.AddAVisitorActivity; import com.rv.rvmine.traveler.AddAVisitorActivity;
import com.rv.travel.GoOtherUtil; import com.rv.travel.GoOtherUtil;
import com.rv.travel.TravelActivity; import com.rv.travel.TravelActivity;
import com.yuyife.okgo.OkGoUtil;
import java.util.LinkedHashMap;
import java.util.Map;
public class ModuleUtil { public class ModuleUtil {
private static int currentModule = -1; private static int currentModule = -1;
...@@ -38,8 +46,11 @@ public class ModuleUtil { ...@@ -38,8 +46,11 @@ public class ModuleUtil {
break; break;
case OnModuleEventListener.MODULE_CAMP: case OnModuleEventListener.MODULE_CAMP:
if (currentModule == OnModuleEventListener.MODULE_CAMP) return; if (currentModule == OnModuleEventListener.MODULE_CAMP) return;
if (ModuleEventUtil.currentActivity != null) {
//Toast.makeText(FrameApp.getInstance(), "营地", Toast.LENGTH_SHORT).show(); IntentUtil.goActivityWithAnimationAlpha(ModuleEventUtil.currentActivity, CampActivity.class);
} else {
IntentUtil.startActivity(FrameApp.getInstance(), CampActivity.class);
}
break; break;
case OnModuleEventListener.MODULE_FIND: case OnModuleEventListener.MODULE_FIND:
...@@ -102,7 +113,7 @@ public class ModuleUtil { ...@@ -102,7 +113,7 @@ public class ModuleUtil {
switch (type) { switch (type) {
case OnModuleEventListener.MODULE_TRAVEL_MEMBER_ADD: case OnModuleEventListener.MODULE_TRAVEL_MEMBER_ADD:
//添加出游人 //添加出游人
FrameApp.getInstance().startActivity(AddAVisitorActivity.getIntent(FrameApp.getInstance())); FrameApp.getInstance().startActivity(AddAVisitorActivity.getIntent(FrameApp.getInstance(),null));
break; break;
case OnModuleEventListener.MODULE_TRAVEL_MEMBER_FINISH: case OnModuleEventListener.MODULE_TRAVEL_MEMBER_FINISH:
......
package com.test.rv; package com.test.rv;
import android.app.Activity; import android.app.Activity;
import com.alibaba.android.arouter.launcher.ARouter;
import com.baidu.mapapi.CoordType; import com.baidu.mapapi.CoordType;
import com.baidu.mapapi.SDKInitializer; import com.baidu.mapapi.SDKInitializer;
import com.base.utils.Config; import com.base.utils.Config;
...@@ -35,6 +35,9 @@ import me.jessyan.autosize.onAdaptListener; ...@@ -35,6 +35,9 @@ import me.jessyan.autosize.onAdaptListener;
public class RvClientApplication extends FrameApp { public class RvClientApplication extends FrameApp {
final public static String token = "eyJhbGciOiJSUzI1NiJ9.eyJzdWIiOiIxMzc2NjY2NjY2NiIsInVzZXJJZCI6IjE1IiwicmVxdWVzdFR5cGUiOiJBUFAiLCJleHAiOjE1NTk4MDU4Mjd9.NAzU25an3hqrbQI2dsroONtckMmQZRUikqBXxThGRQb578Adq7lQKM-jPw2ViCuXUcGuNRPG47d1hCzyRZH_-8nkG2ls7F0zRMATbcWIL0fozLKS4puMYT_I359JIdp_a6onEmfX0RMunupp0tbRlrbdaVLIIXIvA4nU8b_b4Rc"; final public static String token = "eyJhbGciOiJSUzI1NiJ9.eyJzdWIiOiIxMzc2NjY2NjY2NiIsInVzZXJJZCI6IjE1IiwicmVxdWVzdFR5cGUiOiJBUFAiLCJleHAiOjE1NTk4MDU4Mjd9.NAzU25an3hqrbQI2dsroONtckMmQZRUikqBXxThGRQb578Adq7lQKM-jPw2ViCuXUcGuNRPG47d1hCzyRZH_-8nkG2ls7F0zRMATbcWIL0fozLKS4puMYT_I359JIdp_a6onEmfX0RMunupp0tbRlrbdaVLIIXIvA4nU8b_b4Rc";
//ARouter 调试开关
private boolean isDedugARouter = true;
@Override @Override
public void onCreate() { public void onCreate() {
super.onCreate(); super.onCreate();
...@@ -75,10 +78,21 @@ public class RvClientApplication extends FrameApp { ...@@ -75,10 +78,21 @@ public class RvClientApplication extends FrameApp {
ModuleUtil.register(); ModuleUtil.register();
if (isDedugARouter){
ARouter.openLog();
ARouter.openDebug();
}
ARouter.init(RvClientApplication.this);
} }
@Override
public void onTerminate() {
super.onTerminate();
ARouter.getInstance().destroy();
}
@Override @Override
public void onConfig() { public void onConfig() {
//此方法在父类的onCreate()中调用 //此方法在父类的onCreate()中调用
...@@ -101,7 +115,7 @@ public class RvClientApplication extends FrameApp { ...@@ -101,7 +115,7 @@ public class RvClientApplication extends FrameApp {
* 初始化友盟 5c99e2ce3fc195cb1e000cc2 * 初始化友盟 5c99e2ce3fc195cb1e000cc2
* https://mobile.umeng.com/platform/config/apps/create * https://mobile.umeng.com/platform/config/apps/create
*/ */
private void initUM(){ private void initUM() {
//设置LOG开关,默认为false //设置LOG开关,默认为false
UMConfigure.setLogEnabled(true); UMConfigure.setLogEnabled(true);
UMConfigure.init(this, "5bc3fed7b465f5eedb000027", "MeiYeYi", UMConfigure.DEVICE_TYPE_PHONE, null); UMConfigure.init(this, "5bc3fed7b465f5eedb000027", "MeiYeYi", UMConfigure.DEVICE_TYPE_PHONE, null);
...@@ -114,7 +128,7 @@ public class RvClientApplication extends FrameApp { ...@@ -114,7 +128,7 @@ public class RvClientApplication extends FrameApp {
} }
private void initAuto(){ private void initAuto() {
//当 App 中出现多进程, 并且您需要适配所有的进程, 就需要在 App 初始化时调用 initCompatMultiProcess() //当 App 中出现多进程, 并且您需要适配所有的进程, 就需要在 App 初始化时调用 initCompatMultiProcess()
//在 Demo 中跳转的三方库中的 DefaultErrorActivity 就是在另外一个进程中, 所以要想适配这个 Activity 就需要调用 initCompatMultiProcess() //在 Demo 中跳转的三方库中的 DefaultErrorActivity 就是在另外一个进程中, 所以要想适配这个 Activity 就需要调用 initCompatMultiProcess()
......
...@@ -2,9 +2,12 @@ package com.test.rv; ...@@ -2,9 +2,12 @@ package com.test.rv;
import android.support.v7.app.AppCompatActivity; import android.support.v7.app.AppCompatActivity;
import android.os.Bundle; import android.os.Bundle;
import android.view.KeyEvent;
import android.widget.Toast;
public class RvClientTestActivity extends AppCompatActivity { public class RvClientTestActivity extends AppCompatActivity {
@Override @Override
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
......
package com.rv.home.rv.wxapi; package com.test.rv.wxapi;
import com.umeng.socialize.weixin.view.WXCallbackActivity; import com.umeng.socialize.weixin.view.WXCallbackActivity;
......
package com.rv.home.rv.wxapi; package com.test.rv.wxapi;
import android.content.Intent; import android.content.Intent;
...@@ -6,23 +6,24 @@ import android.os.Bundle; ...@@ -6,23 +6,24 @@ import android.os.Bundle;
import android.util.Log; import android.util.Log;
import android.widget.TextView; import android.widget.TextView;
import com.frame.base.bus.PaymentFailedEvent;
import com.frame.base.bus.PaymentSuccessfulEvent;
import com.frame.base.bus.RxBus;
import com.frame.rv.config.RvFrameConfig; import com.frame.rv.config.RvFrameConfig;
import com.ruiwenliu.wrapper.base.BaseBean; import com.ruiwenliu.wrapper.base.BaseBean;
import com.ruiwenliu.wrapper.weight.TitleView; import com.ruiwenliu.wrapper.weight.TitleView;
import com.rv.home.R;
import com.rv.home.R2; import com.rv.home.R2;
import com.rv.home.rv.module.basic.BaseStatusActivity; import com.rv.home.rv.module.basic.BaseStatusActivity;
import com.rv.home.rv.module.basic.presenter.CommonPresenter; import com.rv.home.rv.module.basic.presenter.CommonPresenter;
import com.rv.home.rv.module.ui.main.home.order.OrderListActivity; import com.rv.home.rv.module.ui.main.home.order.OrderListActivity;
import com.rv.home.rv.until.bus.PaymentFailedEvent;
import com.rv.home.rv.until.bus.PaymentSuccessfulEvent;
import com.rv.home.rv.until.bus.RxBus;
import com.tencent.mm.opensdk.constants.ConstantsAPI; import com.tencent.mm.opensdk.constants.ConstantsAPI;
import com.tencent.mm.opensdk.modelbase.BaseReq; import com.tencent.mm.opensdk.modelbase.BaseReq;
import com.tencent.mm.opensdk.modelbase.BaseResp; import com.tencent.mm.opensdk.modelbase.BaseResp;
import com.tencent.mm.opensdk.openapi.IWXAPI; import com.tencent.mm.opensdk.openapi.IWXAPI;
import com.tencent.mm.opensdk.openapi.IWXAPIEventHandler; import com.tencent.mm.opensdk.openapi.IWXAPIEventHandler;
import com.tencent.mm.opensdk.openapi.WXAPIFactory; import com.tencent.mm.opensdk.openapi.WXAPIFactory;
import com.test.rv.R;
import butterknife.BindView; import butterknife.BindView;
import butterknife.OnClick; import butterknife.OnClick;
......
<resources> <resources>
<string name="app_name">RVClient</string> <string name="app_name">滴房车</string>
</resources> </resources>
...@@ -10,13 +10,15 @@ package com.frame.rv.config; ...@@ -10,13 +10,15 @@ package com.frame.rv.config;
public interface RvFrameConfig extends RvFrameConstant { public interface RvFrameConfig extends RvFrameConstant {
String HOST = "https://xxtest.upyuns.com"; String HOST = "https://xxtest.upyuns.com";
// String HOST = "http://10.1.37.248:8765"; // String HOST = "http://10.1.37.248:8765";
// String HOST = "http://10.1.37.192:8765"; // String HOST = "http://10.1.37.244:9527";
String ADMIN_POST =HOST + "/api/admin/"; String ADMIN_POST =HOST + "/api/admin/";
String AUTH_POST = HOST + "/api/auth/"; String AUTH_POST = HOST + "/api/auth/";
String VEHICLE_POST = HOST + "/vehicle/";//租车 String VEHICLE_POST = HOST + "/vehicle/";//租车
String VEHICLE_CAR_POST = HOST + "/vehicle/";//租车 String VEHICLE_CAR_POST = HOST + "/vehicle/";//租车
String VEHICLE_UPLOAD = HOST + "/api/universal/"; String VEHICLE_UPLOAD = HOST + "/api/universal/";
String VEHICLE_ORDER = HOST + "/api/order/"; String VEHICLE_ORDER = HOST + "/api/order/";
String VEHICLE_TOURUSER = HOST + "/api/tour/";
String VEHICLE_CAMPLIST = HOST + "/api/campsite/";
String APP_ID = "wx9c9d978e5698d00f";//微信注册ID String APP_ID = "wx9c9d978e5698d00f";//微信注册ID
......
...@@ -25,7 +25,10 @@ android { ...@@ -25,7 +25,10 @@ android {
dependencies { dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs') implementation fileTree(include: ['*.jar'], dir: 'libs')
api 'com.jakewharton:butterknife:8.8.1' api 'com.jakewharton:butterknife:9.0.0-rc1'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1' implementation 'com.android.support.constraint:constraint-layout:1.1.3'
annotationProcessor 'com.jakewharton:butterknife-compiler:9.0.0-rc1'
api 'com.google.zxing:core:3.3.0'
api project(':RvWrapper') api project(':RvWrapper')
api project(':RvTravel')
} }
...@@ -2,4 +2,8 @@ ...@@ -2,4 +2,8 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android" <manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.rv.home"> package="com.rv.home">
<application>
<activity android:name=".rv.module.ui.main.home.HomeFragment"></activity>
</application>
</manifest> </manifest>
\ No newline at end of file
This diff is collapsed.
...@@ -739,7 +739,7 @@ ...@@ -739,7 +739,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_alignParentRight="true" android:layout_alignParentRight="true"
android:layout_weight="1" android:layout_weight="1"
android:text="¥100" android:text="¥100/日"
android:textColor="@color/textMain" android:textColor="@color/textMain"
android:textSize="@dimen/text_14" /> android:textSize="@dimen/text_14" />
...@@ -799,7 +799,7 @@ ...@@ -799,7 +799,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_alignParentRight="true" android:layout_alignParentRight="true"
android:layout_weight="1" android:layout_weight="1"
android:text="¥100" android:text="¥100/日"
android:textColor="@color/textMain" android:textColor="@color/textMain"
android:textSize="@dimen/text_14" /> android:textSize="@dimen/text_14" />
...@@ -848,6 +848,7 @@ ...@@ -848,6 +848,7 @@
android:id="@+id/tv_passenger_know" android:id="@+id/tv_passenger_know"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:checked="true"
android:paddingLeft="@dimen/size_10" android:paddingLeft="@dimen/size_10"
android:button="@drawable/selector_rv_check" android:button="@drawable/selector_rv_check"
android:text="@string/rv_passenger_security" android:text="@string/rv_passenger_security"
......
...@@ -177,6 +177,7 @@ ...@@ -177,6 +177,7 @@
</RelativeLayout> </RelativeLayout>
<RelativeLayout <RelativeLayout
android:visibility="gone"
android:id="@+id/rl_card_copy" android:id="@+id/rl_card_copy"
android:layout_marginTop="@dimen/size_20" android:layout_marginTop="@dimen/size_20"
android:layout_marginRight="@dimen/size_80" android:layout_marginRight="@dimen/size_80"
......
...@@ -17,6 +17,7 @@ ...@@ -17,6 +17,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:id="@+id/cb_driving" android:id="@+id/cb_driving"
android:enabled="false"
android:layout_gravity="center_vertical" android:layout_gravity="center_vertical"
/> />
<TextView <TextView
......
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:gravity="center_horizontal"> android:gravity="center_horizontal">
<LinearLayout <LinearLayout
android:layout_width="@dimen/size_170" android:layout_width="@dimen/size_170"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="@dimen/size_10" android:layout_marginTop="@dimen/size_15"
android:paddingLeft="@dimen/size_8"
android:paddingRight="@dimen/size_8"
android:layout_gravity="center_horizontal" android:layout_gravity="center_horizontal"
android:orientation="vertical"> android:orientation="vertical">
...@@ -15,17 +17,16 @@ ...@@ -15,17 +17,16 @@
android:id="@+id/iv_goods" android:id="@+id/iv_goods"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="@dimen/size_150" android:layout_height="@dimen/size_150"
android:scaleType="centerCrop" android:scaleType="centerCrop" />
/>
<TextView <TextView
android:id="@+id/tv_name" android:id="@+id/tv_name"
android:layout_width="match_parent" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="@dimen/size_10" android:layout_marginTop="@dimen/size_10"
android:ellipsize="end" android:ellipsize="end"
android:maxLines="1" android:maxLines="1"
android:text="555" android:text="大通自行式C型房车(旅居版)"
android:textColor="@color/textMain" android:textColor="@color/textMain"
android:textSize="@dimen/text_16" /> android:textSize="@dimen/text_16" />
...@@ -36,7 +37,7 @@ ...@@ -36,7 +37,7 @@
android:layout_marginTop="@dimen/size_3" android:layout_marginTop="@dimen/size_3"
android:ellipsize="end" android:ellipsize="end"
android:maxLines="1" android:maxLines="1"
android:text="" android:text="烧烤·麻将·微波炉"
android:textColor="@color/textGray" android:textColor="@color/textGray"
android:textSize="@dimen/text_12" /> android:textSize="@dimen/text_12" />
...@@ -45,7 +46,7 @@ ...@@ -45,7 +46,7 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="@dimen/size_5" android:layout_marginTop="@dimen/size_5"
android:text="" android:text="¥3500/天"
android:textColor="@color/colorAuxiliaryRed" android:textColor="@color/colorAuxiliaryRed"
android:textSize="@dimen/text_16" /> android:textSize="@dimen/text_16" />
</LinearLayout> </LinearLayout>
......
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
android:id="@+id/ll_item_rv_enthusiast"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="@dimen/size_150"
android:layout_height="wrap_content"
android:background="@color/colorWrite"
android:orientation="vertical">
<ImageView
android:id="@+id/iv_activity"
android:scaleType="centerCrop"
android:layout_width="@dimen/size_150"
android:layout_height="@dimen/size_180" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/size_5"
android:paddingLeft="@dimen/size_5"
android:paddingRight="@dimen/size_5"
android:textSize="@dimen/text_14"
android:textColor="@color/colorMain"
android:text="行摄川西邂逅生命中未知的精彩"/>
<RelativeLayout
android:layout_marginTop="@dimen/size_5"
android:layout_marginBottom="@dimen/size_10"
android:paddingLeft="@dimen/size_5"
android:paddingRight="@dimen/size_5"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal">
<ImageView
android:layout_width="@dimen/size_15"
android:layout_height="@dimen/size_15"
android:src="@drawable/aa_ivava"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/size_3"
android:textSize="@dimen/text_8"
android:text="房车旅行家Rose"/>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:gravity="center_vertical"
android:orientation="horizontal">
<ImageView
android:layout_width="@dimen/size_15"
android:layout_height="@dimen/size_15"
android:src="@drawable/aa_icon_like"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/size_3"
android:textColor="#FFB74B"
android:textSize="@dimen/text_8"
android:text="10589"/>
</LinearLayout>
</RelativeLayout>
</LinearLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<ImageView
android:id="@+id/iv_rv_tour"
android:layout_width="@dimen/size_240"
android:layout_height="@dimen/size_150"
android:scaleType="centerCrop"/>
</LinearLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TextView
android:layout_alignParentBottom="true"
android:id="@+id/tv_rvtour_label"
android:layout_width="@dimen/size_70"
android:layout_height="@dimen/size_30"
android:textColor="@color/textGray"
android:gravity="center"
android:layout_gravity="center_vertical"
android:maxLength="3"
android:textSize="@dimen/text_12"
android:background="@drawable/shape_rv_dark_gray_circle"
android:text="浪漫游"/>
</RelativeLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<ImageView
android:id="@+id/iv_activity"
android:layout_width="@dimen/size_240"
android:layout_height="@dimen/size_150"/>
</LinearLayout>
\ No newline at end of file
...@@ -116,7 +116,7 @@ ...@@ -116,7 +116,7 @@
<string name="rv_delete">删除</string> <string name="rv_delete">删除</string>
<string name="rv_driving_data_null">您还没有驾驶员哦</string> <string name="rv_driving_data_null">您还没有驾驶员哦</string>
<string name="rv_car_type_data_null">未找到筛选数据</string> <string name="rv_car_type_data_null">未找到筛选数据</string>
<string name="rv_day_toast">租车天数必须大于0</string> <string name="rv_day_toast">租车天数必须大于1</string>
<string name="rv_driving_info">驾驶人信息</string> <string name="rv_driving_info">驾驶人信息</string>
<string name="rv_rb"></string> <string name="rv_rb"></string>
<string name="rv_id_card">身份证号</string> <string name="rv_id_card">身份证号</string>
......
...@@ -15,28 +15,25 @@ import android.widget.TextView; ...@@ -15,28 +15,25 @@ import android.widget.TextView;
import com.base.utils.tools.android.IntentUtil; import com.base.utils.tools.android.IntentUtil;
import com.base.utils.ui.image.round.RoundImageView; import com.base.utils.ui.image.round.RoundImageView;
import com.frame.base.browse.ActivityImageBrowseInt; import com.frame.base.browse.ActivityImageBrowseInt;
import com.frame.base.bus.RxBus;
import com.frame.base.glide.GlideManager; import com.frame.base.glide.GlideManager;
import com.frame.rv.config.RvFrameConfig;
import com.frame.rv.widget.BaseTabLayout;
import com.frame.rv.ModuleEventUtil; import com.frame.rv.ModuleEventUtil;
import com.frame.rv.OnModuleEventListener; import com.frame.rv.OnModuleEventListener;
import com.frame.rv.config.RvFrameConfig;
import com.frame.rv.widget.BaseTabLayout;
import com.ruiwenliu.wrapper.base.BaseBean; import com.ruiwenliu.wrapper.base.BaseBean;
import com.ruiwenliu.wrapper.base.BaseStatusActivity; import com.ruiwenliu.wrapper.base.BaseStatusActivity;
import com.ruiwenliu.wrapper.util.UtilsManager;
import com.ruiwenliu.wrapper.weight.TitleView; import com.ruiwenliu.wrapper.weight.TitleView;
import com.rv.home.rv.module.ApiConfig; import com.rv.home.rv.module.ApiConfig;
import com.rv.home.rv.module.basic.presenter.CommonPresenter; import com.rv.home.rv.module.basic.presenter.CommonPresenter;
import com.rv.home.rv.module.ui.login.LoginRvActivity; import com.rv.home.rv.module.ui.login.LoginRvActivity;
import com.rv.home.rv.module.ui.main.home.ConfirmOrderActivity; import com.rv.home.rv.module.ui.main.home.DrivingListActivity;
import com.rv.home.rv.module.ui.main.home.bean.OrderPayBean;
import com.rv.home.rv.module.ui.main.home.order.OrderListActivity; import com.rv.home.rv.module.ui.main.home.order.OrderListActivity;
import com.rv.home.rv.module.ui.main.home.order.bean.OrderListBean; import com.rv.rvmine.bean.UserInfoBean;
import com.rv.home.rv.until.bus.PaymentFailedEvent;
import com.rv.home.rv.until.bus.PaymentSuccessfulEvent;
import com.rv.home.rv.until.bus.RxBus;
import com.rv.rvmine.bean.UserInfo;
import com.rv.rvmine.personal.IDCardCertificationActivity; import com.rv.rvmine.personal.IDCardCertificationActivity;
import com.rv.rvmine.rxbusevent.UserInfoEvent; import com.rv.rvmine.rxbusevent.UserInfoEvent;
import com.rv.rvmine.traveler.ChooseAVisitorActivity;
import com.rv.rvmine.traveler.CollectionActivity;
import com.rv.rvmine.traveler.PersonalInformationActivity; import com.rv.rvmine.traveler.PersonalInformationActivity;
import com.rv.rvmine.traveler.SettingActivity; import com.rv.rvmine.traveler.SettingActivity;
import com.yuyife.banner.Banner; import com.yuyife.banner.Banner;
...@@ -51,6 +48,7 @@ import java.util.List; ...@@ -51,6 +48,7 @@ import java.util.List;
import java.util.Map; import java.util.Map;
import butterknife.BindView; import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick; import butterknife.OnClick;
import io.reactivex.functions.Consumer; import io.reactivex.functions.Consumer;
import io.reactivex.schedulers.Schedulers; import io.reactivex.schedulers.Schedulers;
...@@ -94,8 +92,6 @@ public class MineActivity extends BaseStatusActivity<CommonPresenter> { ...@@ -94,8 +92,6 @@ public class MineActivity extends BaseStatusActivity<CommonPresenter> {
RelativeLayout rlItemCollection; RelativeLayout rlItemCollection;
@BindView(R2.id.rl_item_personal_information) @BindView(R2.id.rl_item_personal_information)
RelativeLayout rlItemPersonalInformation; RelativeLayout rlItemPersonalInformation;
@BindView(R2.id.rl_item_information)
RelativeLayout rlItemInformation;
@BindView(R2.id.rl_item_setting) @BindView(R2.id.rl_item_setting)
RelativeLayout rlItemSetting; RelativeLayout rlItemSetting;
@BindView(R2.id.travel_fragment_layout) @BindView(R2.id.travel_fragment_layout)
...@@ -103,6 +99,8 @@ public class MineActivity extends BaseStatusActivity<CommonPresenter> { ...@@ -103,6 +99,8 @@ public class MineActivity extends BaseStatusActivity<CommonPresenter> {
@BindView(R2.id.mine_banner) @BindView(R2.id.mine_banner)
Banner mineBanner; Banner mineBanner;
private UserInfoBean.UserInfo info;
@Override @Override
protected int setLayout() { protected int setLayout() {
return R.layout.activity_mine; return R.layout.activity_mine;
...@@ -158,7 +156,7 @@ public class MineActivity extends BaseStatusActivity<CommonPresenter> { ...@@ -158,7 +156,7 @@ public class MineActivity extends BaseStatusActivity<CommonPresenter> {
} }
@OnClick({R2.id.iv_avatar, R2.id.tv_login, R2.id.tv_verified, R2.id.rl_item_to_be_paid, R2.id.rl_item_staying, R2.id.rl_item_traveling, R2.id.rl_item_completed, R2.id.rl_item_all, R2.id.rl_item_collection, R2.id.rl_item_personal_information, R2.id.rl_item_information, R2.id.rl_item_setting}) @OnClick({R2.id.iv_avatar, R2.id.tv_login, R2.id.tv_verified, R2.id.rl_item_to_be_paid, R2.id.rl_item_staying, R2.id.rl_item_traveling, R2.id.rl_item_completed, R2.id.rl_item_all, R2.id.rl_item_collection, R2.id.rl_item_personal_information, R2.id.rl_item_setting,R2.id.rl_item_driver,R2.id.rl_item_traveler})
public void onViewClicked(View view) { public void onViewClicked(View view) {
int id = view.getId(); int id = view.getId();
if (id == R.id.iv_avatar) { if (id == R.id.iv_avatar) {
...@@ -199,24 +197,33 @@ public class MineActivity extends BaseStatusActivity<CommonPresenter> { ...@@ -199,24 +197,33 @@ public class MineActivity extends BaseStatusActivity<CommonPresenter> {
if (isLogin()) return; if (isLogin()) return;
startActivity(OrderListActivity.getIntent(mActivity, 4)); startActivity(OrderListActivity.getIntent(mActivity, 4));
}else if (id ==R.id.rl_item_my_release){
//我的发布
if (isLogin()) return;
} else if (id == R.id.rl_item_collection) { } else if (id == R.id.rl_item_collection) {
//收藏 //收藏
if (isLogin()) return; if (isLogin()) return;
showToast("该功能还在开发中"); startActivity(CollectionActivity.getIntent(mActivity));
} else if (id == R.id.rl_item_personal_information) { } else if (id == R.id.rl_item_personal_information) {
//个人资料 //个人资料
if (isLogin()) return; if (isLogin()) return;
startActivity(PersonalInformationActivity.getIntent(mActivity)); startActivity(PersonalInformationActivity.getIntent(mActivity,info));
} else if (id == R.id.rl_item_information) {
//信息
if (isLogin()) return;
showToast("该功能还在开发中");
} else if (id == R.id.rl_item_setting) { } else if (id == R.id.rl_item_setting) {
//设置 //设置
if (isLogin()) return;
startActivityForResult(SettingActivity.getIntent(mActivity), 101); startActivityForResult(SettingActivity.getIntent(mActivity), 101);
}else if (id == R.id.rl_item_driver){
//驾驶人
if (isLogin()) return;
startActivity(DrivingListActivity.getIntent(mActivity,null));
}else if (id == R.id.rl_item_traveler){
//出游人
if (isLogin()) return;
startActivity(ChooseAVisitorActivity.getIntent(mActivity));
} }
} }
...@@ -281,7 +288,7 @@ public class MineActivity extends BaseStatusActivity<CommonPresenter> { ...@@ -281,7 +288,7 @@ public class MineActivity extends BaseStatusActivity<CommonPresenter> {
Map<String, Object> headMap = new LinkedHashMap<>(); Map<String, Object> headMap = new LinkedHashMap<>();
if (OkGoUtil.getToken() != null) { if (OkGoUtil.getToken() != null) {
headMap.put("Authorization", OkGoUtil.getToken()); headMap.put("Authorization", OkGoUtil.getToken());
mPresenter.getData(RvFrameConfig.ADMIN_POST, 0, ApiConfig.HTTP_URL_APP_USER_INFO, UserInfo.class, headMap, false); mPresenter.getDataHead(RvFrameConfig.ADMIN_POST, 0, ApiConfig.HTTP_URL_APP_USER_INFO, UserInfoBean.class, headMap, false);
} }
} }
...@@ -302,22 +309,25 @@ public class MineActivity extends BaseStatusActivity<CommonPresenter> { ...@@ -302,22 +309,25 @@ public class MineActivity extends BaseStatusActivity<CommonPresenter> {
public void onShowResult(int requestType, BaseBean result) { public void onShowResult(int requestType, BaseBean result) {
switch (requestType) { switch (requestType) {
case 0: case 0:
userInfoData((UserInfo) result); userInfoData((UserInfoBean) result);
break; break;
} }
} }
private void userInfoData(UserInfo info) { private void userInfoData(UserInfoBean infoBean) {
if (info !=null) { if (infoBean != null) {
GlideManager.getInstance(mActivity).loadImage(info.getHeadimgurl(), ivAvatar); info = infoBean.getData();
tvNickname.setText(info.getUsername()); if (info !=null) {
if (info.getCertificationStatus() ==0){ //实名认证状态:0-未认证,1-已认证 GlideManager.getInstance(mActivity).loadImage(info.getHeadimgurl(), ivAvatar);
tvVerified.setText("未实名认证"); tvNickname.setText(info.getUsername());
tvVerified.setEnabled(true); if (info.getCertificationStatus() == 0) { //实名认证状态:0-未认证,1-已认证
}else if (info.getCertificationStatus() == 1){ tvVerified.setText("未实名认证");
tvVerified.setEnabled(true);
} else if (info.getCertificationStatus() == 1) {
tvVerified.setText("已实名认证"); tvVerified.setText("已实名认证");
tvVerified.setEnabled(false); tvVerified.setEnabled(false);
} }
}
} }
} }
...@@ -328,4 +338,11 @@ public class MineActivity extends BaseStatusActivity<CommonPresenter> { ...@@ -328,4 +338,11 @@ public class MineActivity extends BaseStatusActivity<CommonPresenter> {
ModuleEventUtil.getOnModuleEventListener().onClear(); ModuleEventUtil.getOnModuleEventListener().onClear();
} }
} }
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// TODO: add setContentView(...) invocation
ButterKnife.bind(this);
}
} }
package com.rv.rvmine.adapter;
import android.widget.CompoundButton;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.rv.home.rv.module.ui.main.home.bean.DrivingListBean;
import com.rv.rvmine.R;
import com.rv.rvmine.bean.TravelerListBean;
import java.util.ArrayList;
import java.util.List;
/**
* Desc:出游人列表
*/
public class TravelerListAdapter extends BaseQuickAdapter<TravelerListBean.DataBean, BaseViewHolder> {
public TravelerListAdapter() {
super(R.layout.rv_item_traveler_list);
}
@Override
protected void convert(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());
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);
}
});
}
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);
}
/**
* 获取选中的出游人数据
* @return
*/
public List<TravelerListBean.DataBean> getSelectItem(){
List<TravelerListBean.DataBean> list=new ArrayList<>();
for (TravelerListBean.DataBean dataBean:mData){
if(dataBean.selectType==1){
list.add(dataBean);
}
}
return list;
}
}
package com.rv.rvmine.bean;
import com.ruiwenliu.wrapper.base.BaseBean;
import java.io.Serializable;
import java.util.List;
/**
* Desc:出游人列表
*/
public class TravelerListBean extends BaseBean {
private List<DataBean> data;
private int code;
public List<DataBean> getData() {
return data;
}
public void setData(List<DataBean> data) {
this.data = data;
}
public int getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
}
public static class DataBean implements Serializable {
public int selectType;//是否选中
private Integer id;//": 5,
private String userid;//": 14,
private String name;//": "大飞飞",
private Integer sex;//": 0,
private String phone;//": "15668866666",
private String idCard;//": "558564646164949494",
private String crtTime;//": 1558754042768,
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;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getUserid() {
return userid;
}
public void setUserid(String userid) {
this.userid = userid;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getSex() {
return sex;
}
public void setSex(Integer sex) {
this.sex = sex;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String getIdCard() {
return idCard;
}
public void setIdCard(String idCard) {
this.idCard = idCard;
}
public String getCrtTime() {
return crtTime;
}
public void setCrtTime(String crtTime) {
this.crtTime = crtTime;
}
public String getUpdTime() {
return updTime;
}
public void setUpdTime(String updTime) {
this.updTime = updTime;
}
public String getIsdel() {
return isdel;
}
public void setIsdel(String isdel) {
this.isdel = isdel;
}
public Integer getIsChild() {
return isChild;
}
public void setIsChild(Integer isChild) {
this.isChild = isChild;
}
}
}
package com.rv.rvmine.bean;
import com.ruiwenliu.wrapper.base.BaseBean;
/**
* 获取用户信息
*/
public class UserInfo extends BaseBean {
//用户id
private int userid;
//imid
private int imUserid;
///账号(手机号)
private String username;
//微信openid
private String wxOpenid;
//微信unionid
private String unionid;
//qq
private String openid;
//状态:0-启用,1-禁用
private int status;
//身份证号
private String idNumber;
//实名认证状态:0-未认证,1-已认证
private int certificationStatus;
//会员
private int isMember;
//昵称
private String nickname;
//真实姓名
private String realname;
//头像
private String headimgurl;
//邮箱
private String email;
//性别 0-女,1-男
private int sex;
//生日
private String birthday;
//个性签名
private String personSign;
//备注
private String remark;
public int getUserid() {
return userid;
}
public void setUserid(int userid) {
this.userid = userid;
}
public int getImUserid() {
return imUserid;
}
public void setImUserid(int imUserid) {
this.imUserid = imUserid;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getWxOpenid() {
return wxOpenid;
}
public void setWxOpenid(String wxOpenid) {
this.wxOpenid = wxOpenid;
}
public String getUnionid() {
return unionid;
}
public void setUnionid(String unionid) {
this.unionid = unionid;
}
public String getOpenid() {
return openid;
}
public void setOpenid(String openid) {
this.openid = openid;
}
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
public String getIdNumber() {
return idNumber;
}
public void setIdNumber(String idNumber) {
this.idNumber = idNumber;
}
public int getCertificationStatus() {
return certificationStatus;
}
public void setCertificationStatus(int certificationStatus) {
this.certificationStatus = certificationStatus;
}
public int getIsMember() {
return isMember;
}
public void setIsMember(int isMember) {
this.isMember = isMember;
}
public String getNickname() {
return nickname;
}
public void setNickname(String nickname) {
this.nickname = nickname;
}
public String getRealname() {
return realname;
}
public void setRealname(String realname) {
this.realname = realname;
}
public String getHeadimgurl() {
return headimgurl;
}
public void setHeadimgurl(String headimgurl) {
this.headimgurl = headimgurl;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public int getSex() {
return sex;
}
public void setSex(int sex) {
this.sex = sex;
}
public String getBirthday() {
return birthday;
}
public void setBirthday(String birthday) {
this.birthday = birthday;
}
public String getPersonSign() {
return personSign;
}
public void setPersonSign(String personSign) {
this.personSign = personSign;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
}
package com.rv.rvmine.bean;
import com.ruiwenliu.wrapper.base.BaseBean;
import com.rv.home.rv.module.ui.main.home.order.bean.OrderListBean;
import java.io.Serializable;
/**
* 获取用户信息
*/
public class UserInfoBean extends BaseBean {
private UserInfo data;
private boolean rel;
public UserInfo getData() {
return data;
}
public void setData(UserInfo data) {
this.data = data;
}
public boolean isRel() {
return rel;
}
public void setRel(boolean rel) {
this.rel = rel;
}
public static class UserInfo implements Serializable {
private Integer id;
//用户id
private Integer userid;
//imid
private Integer imUserid;
///账号(手机号)
private String username;
//微信openid
private String wxOpenid;
//微信unionid
private String unionid;
//qq
private String openid;
//状态:0-启用,1-禁用
private Integer status;
//身份证号
private String idNumber;
//实名认证状态:0-未认证,1-已认证
private Integer certificationStatus;
//会员
private Integer isMember;
//昵称
private String nickname;
//真实姓名
private String realname;
//头像
private String headimgurl;
//邮箱
private String email;
//性别 0-女,1-男
private Integer sex;
//生日
private String birthday;
//个性签名
private String personSign;
//备注
private String remark;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public Integer getUserid() {
return userid;
}
public void setUserid(Integer userid) {
this.userid = userid;
}
public Integer getImUserid() {
return imUserid;
}
public void setImUserid(Integer imUserid) {
this.imUserid = imUserid;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getWxOpenid() {
return wxOpenid;
}
public void setWxOpenid(String wxOpenid) {
this.wxOpenid = wxOpenid;
}
public String getUnionid() {
return unionid;
}
public void setUnionid(String unionid) {
this.unionid = unionid;
}
public String getOpenid() {
return openid;
}
public void setOpenid(String openid) {
this.openid = openid;
}
public Integer getStatus() {
return status;
}
public void setStatus(Integer status) {
this.status = status;
}
public String getIdNumber() {
return idNumber;
}
public void setIdNumber(String idNumber) {
this.idNumber = idNumber;
}
public Integer getCertificationStatus() {
return certificationStatus;
}
public void setCertificationStatus(Integer certificationStatus) {
this.certificationStatus = certificationStatus;
}
public Integer getIsMember() {
return isMember;
}
public void setIsMember(Integer isMember) {
this.isMember = isMember;
}
public String getNickname() {
return nickname;
}
public void setNickname(String nickname) {
this.nickname = nickname;
}
public String getRealname() {
return realname;
}
public void setRealname(String realname) {
this.realname = realname;
}
public String getHeadimgurl() {
return headimgurl;
}
public void setHeadimgurl(String headimgurl) {
this.headimgurl = headimgurl;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public Integer getSex() {
return sex;
}
public void setSex(Integer sex) {
this.sex = sex;
}
public String getBirthday() {
return birthday;
}
public void setBirthday(String birthday) {
this.birthday = birthday;
}
public String getPersonSign() {
return personSign;
}
public void setPersonSign(String personSign) {
this.personSign = personSign;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
}
}
...@@ -13,16 +13,14 @@ import android.widget.LinearLayout; ...@@ -13,16 +13,14 @@ import android.widget.LinearLayout;
import android.widget.RelativeLayout; import android.widget.RelativeLayout;
import android.widget.TextView; import android.widget.TextView;
import com.frame.base.bus.RxBus;
import com.frame.base.glide.GlideManager; import com.frame.base.glide.GlideManager;
import com.frame.rv.config.RvFrameConfig; import com.frame.rv.config.RvFrameConfig;
import com.ruiwenliu.wrapper.util.ViewHolder; import com.ruiwenliu.wrapper.util.ViewHolder;
import com.ruiwenliu.wrapper.util.permission.RxPermission; import com.ruiwenliu.wrapper.util.permission.RxPermission;
import com.rv.home.rv.module.ApiConfig; import com.rv.home.rv.module.ApiConfig;
import com.rv.home.rv.module.basic.dialog.PickerDialog; import com.rv.home.rv.module.basic.dialog.PickerDialog;
import com.rv.home.rv.module.ui.main.home.DrivingUploadActivity;
import com.rv.home.rv.module.ui.main.home.bean.ImageUploadBean; import com.rv.home.rv.module.ui.main.home.bean.ImageUploadBean;
import com.rv.home.rv.until.bus.PaymentSuccessfulEvent;
import com.rv.home.rv.until.bus.RxBus;
import com.rv.rvmine.R2; import com.rv.rvmine.R2;
import com.ruiwenliu.wrapper.base.BaseBean; import com.ruiwenliu.wrapper.base.BaseBean;
import com.ruiwenliu.wrapper.base.BaseStatusActivity; import com.ruiwenliu.wrapper.base.BaseStatusActivity;
...@@ -283,8 +281,8 @@ public class IDCardCertificationActivity extends BaseStatusActivity<PickerPresen ...@@ -283,8 +281,8 @@ public class IDCardCertificationActivity extends BaseStatusActivity<PickerPresen
private void verified(String name, String idCard) { private void verified(String name, String idCard) {
strCard ="https://xxtest.upyuns.com/image/app/20190605092021.jpg"; // strCard ="https://xxtest.upyuns.com/image/app/20190605092021.jpg";
strCardCopy = "https://xxtest.upyuns.com/image/app/20190605092036.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);
} }
......
package com.rv.rvmine.rxbusevent; package com.rv.rvmine.rxbusevent;
import com.rv.home.rv.until.bus.Event; import com.frame.base.bus.Event;
public class UserInfoEvent extends Event { public class UserInfoEvent extends Event {
} }
package com.rv.rvmine.traveler;
import android.content.Context;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import com.ruiwenliu.wrapper.base.BaseBean;
import com.ruiwenliu.wrapper.weight.TitleView;
import com.rv.home.rv.module.basic.BaseStatusActivity;
import com.rv.home.rv.module.basic.presenter.CommonPresenter;
import com.rv.rvmine.R;
/**
* 关于我们
*/
public class AboutUsActivity extends BaseStatusActivity<CommonPresenter> {
public static Intent getIntent(Context context) {
return new Intent(context, AboutUsActivity.class);
}
@Override
protected int setLayout() {
return R.layout.activity_about_us;
}
@Override
protected void initView(Bundle savedInstanceState, TitleView titleView, Intent intent) {
titleView.setTitle("关于我们");
}
@Override
public void onShowResult(int requestType, BaseBean result) {
}
}
...@@ -7,12 +7,23 @@ import android.view.View; ...@@ -7,12 +7,23 @@ import android.view.View;
import android.widget.CheckBox; import android.widget.CheckBox;
import android.widget.EditText; import android.widget.EditText;
import com.base.utils.ui.datetime.selector.util.TextUtil;
import com.frame.rv.config.RvFrameConfig;
import com.ruiwenliu.wrapper.base.BaseBean; import com.ruiwenliu.wrapper.base.BaseBean;
import com.ruiwenliu.wrapper.base.BaseStatusActivity; import com.ruiwenliu.wrapper.base.BaseStatusActivity;
import com.ruiwenliu.wrapper.weight.TitleView; import com.ruiwenliu.wrapper.weight.TitleView;
import com.rv.home.rv.module.ApiConfig;
import com.rv.home.rv.module.basic.presenter.CommonPresenter; import com.rv.home.rv.module.basic.presenter.CommonPresenter;
import com.rv.home.rv.module.ui.main.home.DrivingUploadActivity;
import com.rv.home.rv.module.ui.main.home.bean.DrivingListBean;
import com.rv.rvmine.R; import com.rv.rvmine.R;
import com.rv.rvmine.R2; import com.rv.rvmine.R2;
import com.rv.rvmine.bean.TravelerListBean;
import com.yuyife.okgo.OkGoUtil;
import java.io.Serializable;
import java.util.LinkedHashMap;
import java.util.Map;
import butterknife.BindView; import butterknife.BindView;
import butterknife.ButterKnife; import butterknife.ButterKnife;
...@@ -40,11 +51,11 @@ public class AddAVisitorActivity extends BaseStatusActivity<CommonPresenter> { ...@@ -40,11 +51,11 @@ public class AddAVisitorActivity extends BaseStatusActivity<CommonPresenter> {
EditText etPhone; EditText etPhone;
private int identityType = 0; private int identityType = 0;
private int setType = 0; private int sexType = 1;
private int avisitorId;
public static Intent getIntent(Context context) { public static Intent getIntent(Context context, TravelerListBean.DataBean bean) {
return new Intent(context, AddAVisitorActivity.class); return new Intent(context, AddAVisitorActivity.class).putExtra("bean", bean);
} }
@Override @Override
...@@ -54,30 +65,68 @@ public class AddAVisitorActivity extends BaseStatusActivity<CommonPresenter> { ...@@ -54,30 +65,68 @@ public class AddAVisitorActivity extends BaseStatusActivity<CommonPresenter> {
@Override @Override
protected void initView(Bundle savedInstanceState, TitleView titleView, Intent intent) { protected void initView(Bundle savedInstanceState, TitleView titleView, Intent intent) {
titleView.setTitle(getString(R.string.add_a_visitor_title)); TravelerListBean.DataBean dataBean = (TravelerListBean.DataBean) intent.getSerializableExtra("bean");
if (dataBean !=null){
titleView.setTitle("编辑出游人");
avisitorId = dataBean.getId();
identityType = dataBean.getIsChild();
sexType = dataBean.getSex();
if (0== dataBean.getIsChild()){
cbAdult.setChecked(true);
cbChild.setChecked(false);
}else{
cbAdult.setChecked(false);
cbChild.setChecked(true);
}
if (0 == dataBean.getSex()){
cbMan.setChecked(false);
cbGirl.setChecked(true);
}else {
cbMan.setChecked(true);
cbGirl.setChecked(false);
}
etTravelerName.setText(dataBean.getName());
etIdCard.setText(dataBean.getIdCard());
etPhone.setText(dataBean.getPhone());
}else {
titleView.setTitle(getString(R.string.add_a_visitor_title));
}
titleView.setText(R.id.tv_title_right, getString(R.string.rv_save)); titleView.setText(R.id.tv_title_right, getString(R.string.rv_save));
titleView.setChildClickListener(R.id.tv_title_right, new View.OnClickListener() { titleView.setChildClickListener(R.id.tv_title_right, new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
String name = etTravelerName.getText().toString().trim();
finish(); if (TextUtil.isEmpty(name)){
showToast("姓名不能为空!");
return;
}
String idCard = etIdCard.getText().toString().trim();
if (TextUtil.isEmpty(idCard)){
showToast("身份证号不能为空!");
return;
}
String phone = etPhone.getText().toString().trim();
if (TextUtil.isEmpty(phone)){
showToast("手机号码不能为空!");
return;
}
addAVisitor(name,idCard,phone);
} }
}); });
} }
@Override @Override
public void onShowResult(int requestType, BaseBean result) { public void onShowResult(int requestType, BaseBean result) {
setResult(RESULT_OK);
finish(); finish();
} }
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// TODO: add setContentView(...) invocation
ButterKnife.bind(this);
}
@OnClick({R2.id.cb_adult, R2.id.cb_child, R2.id.cb_man, R2.id.cb_girl}) @OnClick({R2.id.cb_adult, R2.id.cb_child, R2.id.cb_man, R2.id.cb_girl})
public void onViewClicked(View view) { public void onViewClicked(View view) {
int id = view.getId(); int id = view.getId();
...@@ -95,12 +144,100 @@ public class AddAVisitorActivity extends BaseStatusActivity<CommonPresenter> { ...@@ -95,12 +144,100 @@ public class AddAVisitorActivity extends BaseStatusActivity<CommonPresenter> {
//男 //男
cbMan.setChecked(true); cbMan.setChecked(true);
cbGirl.setChecked(false); cbGirl.setChecked(false);
setType = 0; sexType = 1;
} else if (id == R.id.cb_girl) { } else if (id == R.id.cb_girl) {
//女 //女
cbMan.setChecked(false); cbMan.setChecked(false);
cbGirl.setChecked(true); cbGirl.setChecked(true);
setType = 1; sexType = 0;
}
}
/**
* 编辑或修改出游人信息
* @param name
* @param idCard
* @param phone
*/
private void addAVisitor(String name, String idCard, String phone) {
mPresenter.postBodyData(RvFrameConfig.VEHICLE_TOURUSER, 0, ApiConfig.HTTP_URL_ADDANDUPDATE, BaseBean.class, new addTraveler(avisitorId == 0 ? null : avisitorId, name, sexType, phone, idCard, identityType), getHeadMap(), true);
}
private Map<String, Object> getHeadMap() {
Map<String, Object> headMap = new LinkedHashMap<>();
if (OkGoUtil.getToken() != null)
headMap.put("Authorization", OkGoUtil.getToken());
return headMap;
}
private class addTraveler {
private Integer id;
private String name;
private Integer sex; //1男 0女
private String phone;
private String idCard;
private Integer isChild;
public addTraveler(Integer id, String name, Integer sex, String phone, String idCard, Integer isChild) {
this.id = id;
this.name = name;
this.sex = sex;
this.phone = phone;
this.idCard = idCard;
this.isChild = isChild;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getSex() {
return sex;
}
public void setSex(Integer sex) {
this.sex = sex;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String getIdCard() {
return idCard;
}
public void setIdCard(String idCard) {
this.idCard = idCard;
}
public Integer getIsChild() {
return isChild;
}
public void setIsChild(Integer isChild) {
this.isChild = isChild;
} }
} }
} }
package com.rv.rvmine.traveler;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.frame.rv.config.RvFrameConfig;
import com.ruiwenliu.wrapper.base.BaseBean;
import com.ruiwenliu.wrapper.weight.TitleView;
import com.rv.rvmine.R2;
import com.rv.home.rv.module.ApiConfig;
import com.rv.home.rv.module.basic.BaseStatusActivity;
import com.rv.home.rv.module.basic.presenter.CommonPresenter;
import com.rv.home.rv.module.ui.main.home.bean.DrivingListBean;
import com.rv.rvmine.R;
import com.rv.rvmine.adapter.TravelerListAdapter;
import com.rv.rvmine.bean.TravelerListBean;
import com.yuyife.okgo.OkGoUtil;
import java.util.LinkedHashMap;
import java.util.Map;
import butterknife.BindView;
import butterknife.ButterKnife;
/**
* 选择出游人
*/
public class ChooseAVisitorActivity extends BaseStatusActivity<CommonPresenter> {
@BindView(R2.id.recyclerView)
RecyclerView recyclerView;
private TravelerListAdapter mAdapter;
private final int TYPE_REQUEST_ADD = 105;
private final int TYPE_REQUEST_EDIT = 2;
private int mPage;
private int countPage;
public static Intent getIntent(Context context) {
return new Intent(context, ChooseAVisitorActivity.class);
}
@Override
protected int setLayout() {
return R.layout.activity_choose_avisitor;
}
@Override
protected void initView(Bundle savedInstanceState, TitleView titleView, Intent intent) {
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() {
@Override
public void onClick(View v) {
startActivityForResult(AddAVisitorActivity.getIntent(mActivity,null), TYPE_REQUEST_ADD);
}
});
mAdapter = new TravelerListAdapter();
recyclerView.setLayoutManager(new LinearLayoutManager(mActivity));
recyclerView.setAdapter(mAdapter);
mAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
// getIntent().putExtra("bean", mAdapter.getItem(position));
// setResult(RESULT_OK, getIntent());
// finish();
}
});
mAdapter.setOnItemChildClickListener(new BaseQuickAdapter.OnItemChildClickListener() {
@Override
public void onItemChildClick(BaseQuickAdapter adapter, View view, int position) {
if (view.getId() == R.id.tv_edit) {
startActivityForResult(AddAVisitorActivity.getIntent(mActivity, mAdapter.getItem(position)), TYPE_REQUEST_ADD);
}
}
});
}
@Override
protected void loadData(Bundle savedInstanceState, Intent intent) {
super.loadData(savedInstanceState, intent);
getDrivingList();
}
@Override
public void onShowResult(int requestType, BaseBean result) {
processData((TravelerListBean) result);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == TYPE_REQUEST_ADD && resultCode == RESULT_OK) {
getDrivingList();
}
}
/**
*
*/
private void getDrivingList() {
Map<String, Object> headMap = new LinkedHashMap<>();
if (OkGoUtil.getToken() != null)
headMap.put("Authorization", OkGoUtil.getToken());
mPresenter.getDataHead(RvFrameConfig.VEHICLE_TOURUSER, 0, ApiConfig.HTTP_URL_GETTOURUSERLIST, TravelerListBean.class, headMap, true);
}
private void processData(TravelerListBean bean) {
if (bean.getData() == null || bean.getData().size() == 0) {
mAdapter.setEmptyView(getEmptyView(recyclerView, -1, "您还没有出游人信息哦"));
return;
}
mAdapter.setNewData(bean.getData());
}
}
package com.rv.rvmine.traveler;
import android.content.Context;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.RecyclerView;
import com.rv.rvmine.R2;
import com.ruiwenliu.wrapper.base.BaseBean;
import com.ruiwenliu.wrapper.weight.TitleView;
import com.rv.home.rv.module.basic.BaseStatusActivity;
import com.rv.home.rv.module.basic.presenter.CommonPresenter;
import com.rv.rvmine.R;
import butterknife.BindView;
public class CollectionActivity extends BaseStatusActivity<CommonPresenter> {
@BindView(R2.id.recyclerView)
RecyclerView recyclerView;
public static Intent getIntent(Context context) {
return new Intent(context, CollectionActivity.class);
}
@Override
protected int setLayout() {
return R.layout.activity_collection;
}
@Override
protected void initView(Bundle savedInstanceState, TitleView titleView, Intent intent) {
titleView.setTitle("收藏");
}
@Override
public void onShowResult(int requestType, BaseBean result) {
}
@Override
protected void loadData(Bundle savedInstanceState, Intent intent) {
super.loadData(savedInstanceState, intent);
}
}
...@@ -4,18 +4,17 @@ import android.content.Context; ...@@ -4,18 +4,17 @@ import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.os.Bundle; import android.os.Bundle;
import android.view.View; import android.view.View;
import android.widget.TextView;
import com.ruiwenliu.wrapper.base.BaseBean; import com.ruiwenliu.wrapper.base.BaseBean;
import com.ruiwenliu.wrapper.base.BaseStatusActivity; import com.ruiwenliu.wrapper.base.BaseStatusActivity;
import com.ruiwenliu.wrapper.util.UtilsManager; import com.ruiwenliu.wrapper.util.UtilsManager;
import com.ruiwenliu.wrapper.weight.TitleView; import com.ruiwenliu.wrapper.weight.TitleView;
import com.rv.home.rv.module.basic.presenter.CommonPresenter; import com.rv.home.rv.module.basic.presenter.CommonPresenter;
import com.rv.home.rv.module.ui.login.RegisteredActivity;
import com.rv.rvmine.R; import com.rv.rvmine.R;
import com.rv.rvmine.R2; import com.rv.rvmine.R2;
import com.yuyife.okgo.OkGoUtil; import com.yuyife.okgo.OkGoUtil;
import butterknife.BindView;
import butterknife.ButterKnife; import butterknife.ButterKnife;
import butterknife.OnClick; import butterknife.OnClick;
...@@ -51,10 +50,27 @@ public class SettingActivity extends BaseStatusActivity<CommonPresenter> { ...@@ -51,10 +50,27 @@ public class SettingActivity extends BaseStatusActivity<CommonPresenter> {
ButterKnife.bind(this); ButterKnife.bind(this);
} }
@OnClick(R2.id.tv_out_sign) @OnClick({R2.id.rl_item_change_password,R2.id.ll_item_app_push,R2.id.rl_item_clear_cache,R2.id.rl_item_check_for_updates,R2.id.rl_item_about_us,R2.id.tv_out_sign})
public void onViewClicked(View view) { public void onViewClicked(View view) {
int id = view.getId(); int id = view.getId();
if (id == R.id.tv_out_sign) { if (id == R.id.rl_item_change_password){
//修改密码
startActivity(RegisteredActivity.getIntent(mActivity, 1));
}else if (id == R.id.ll_item_app_push){
//App推送消息
}else if (id == R.id.rl_item_clear_cache){
//清除缓存
}else if (id == R.id.rl_item_check_for_updates){
//检查更新
}else if (id == R.id.rl_item_about_us){
//关于我们
startActivity(AboutUsActivity.getIntent(mActivity));
}else if (id == R.id.tv_out_sign){
//退出登录 //退出登录
UtilsManager.getInstance(mActivity).clearShareData("city_json"); UtilsManager.getInstance(mActivity).clearShareData("city_json");
UtilsManager.getInstance(mActivity).setShNull(); UtilsManager.getInstance(mActivity).setShNull();
......
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="8dp" />
<solid android:color="@color/colorGray" />
</shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/colorLine"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/colorWrite"
android:orientation="vertical"
android:paddingLeft="@dimen/size_15"
android:paddingRight="@dimen/size_15">
<ImageView
android:layout_width="@dimen/size_60"
android:layout_height="@dimen/size_80"
android:layout_gravity="center"
android:layout_marginTop="@dimen/size_80"
android:src="@drawable/mycenter_icon_logo" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/size_15"
android:layout_marginBottom="@dimen/size_15"
android:text=" 欣新房车网络科技(广东)股份有限公司是欣新房车控股集团旗下子公司,是一家致力于打造全球最大的互联网房车服务平台,是依托集团线下实体的房车资源通过互联网线上引流开展滴滴房车、异地取车、异地还车及房车旅游实现房车资源共享、营地资源共享,全球资源协同,汇聚房车行业上下游资源,为用户提供高效快捷的房车出行服务,打造全球最大的房车云服务平台。通过房车旅游社交大数据为智慧房车、智慧旅游提供服务。房车生活已经来临,房车旅游必将流行,携手欣新,共创辉煌。"
android:textColor="@color/textGray"
android:textSize="@dimen/text_12" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/size_15"
android:background="@color/colorWrite"
android:orientation="vertical"
android:paddingLeft="@dimen/size_15"
android:paddingRight="@dimen/size_15">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="@dimen/size_50">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:text="客服热线"
android:textColor="@color/colorMain"
android:textSize="@dimen/text_14" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:text="4000-369-369"
android:textColor="@color/textGray"
android:textSize="@dimen/text_14" />
</RelativeLayout>
<include layout="@layout/common_line" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="@dimen/size_50">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:text="房车小助手"
android:textColor="@color/colorMain"
android:textSize="@dimen/text_14" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:text="欣新房车"
android:textColor="@color/textGray"
android:textSize="@dimen/text_14" />
</RelativeLayout>
<include layout="@layout/common_line" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="@dimen/size_50">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:text="隐私政策"
android:textColor="@color/colorMain"
android:textSize="@dimen/text_14" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:src="@drawable/common_icon_rig_black" />
</RelativeLayout>
</LinearLayout>
</LinearLayout>
\ No newline at end of file
...@@ -193,7 +193,7 @@ ...@@ -193,7 +193,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:background="@null" android:background="@null"
android:hint="@string/et_id_card_hint" android:hint="@string/et_id_card_hint"
android:maxLength="10" android:maxLength="18"
android:paddingLeft="@dimen/size_5" android:paddingLeft="@dimen/size_5"
android:text="" android:text=""
android:textColor="@color/textMain" android:textColor="@color/textMain"
...@@ -228,7 +228,7 @@ ...@@ -228,7 +228,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:background="@null" android:background="@null"
android:hint="@string/et_phone_hint" android:hint="@string/et_phone_hint"
android:maxLength="10" android:maxLength="11"
android:inputType="phone|number" android:inputType="phone|number"
android:paddingLeft="@dimen/size_5" android:paddingLeft="@dimen/size_5"
android:text="" android:text=""
......
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<include layout="@layout/common_rv"/>
</LinearLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<include layout="@layout/common_rv"/>
</LinearLayout>
\ No newline at end of file
...@@ -49,7 +49,6 @@ ...@@ -49,7 +49,6 @@
android:id="@+id/tv_nickname" android:id="@+id/tv_nickname"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="176****8888"
android:textColor="@color/colorYellow" android:textColor="@color/colorYellow"
android:textSize="@dimen/text_16" android:textSize="@dimen/text_16"
android:visibility="gone" /> android:visibility="gone" />
...@@ -177,7 +176,7 @@ ...@@ -177,7 +176,7 @@
<LinearLayout <LinearLayout
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="@dimen/size_40" android:layout_marginTop="@dimen/size_30"
android:layout_marginBottom="@dimen/size_15" android:layout_marginBottom="@dimen/size_15"
android:orientation="horizontal"> android:orientation="horizontal">
...@@ -313,6 +312,30 @@ ...@@ -313,6 +312,30 @@
android:paddingTop="@dimen/size_25" android:paddingTop="@dimen/size_25"
android:paddingBottom="@dimen/size_15"> android:paddingBottom="@dimen/size_15">
<RelativeLayout
android:id="@+id/rl_item_my_release"
android:layout_width="0dp"
android:layout_height="@dimen/size_60"
android:layout_weight="1"
android:orientation="vertical">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:src="@drawable/mycenter_icon_myrelease" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/size_18"
android:text="@string/tv_my_release"
android:textColor="@color/colorMain"
android:textSize="@dimen/size_12" />
</RelativeLayout>
<RelativeLayout <RelativeLayout
android:id="@+id/rl_item_collection" android:id="@+id/rl_item_collection"
android:layout_width="0dp" android:layout_width="0dp"
...@@ -362,7 +385,7 @@ ...@@ -362,7 +385,7 @@
</RelativeLayout> </RelativeLayout>
<RelativeLayout <RelativeLayout
android:id="@+id/rl_item_information" android:id="@+id/rl_item_setting"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="@dimen/size_60" android:layout_height="@dimen/size_60"
android:layout_weight="1" android:layout_weight="1"
...@@ -380,13 +403,13 @@ ...@@ -380,13 +403,13 @@
android:layout_alignParentBottom="true" android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true" android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/size_18" android:layout_marginTop="@dimen/size_18"
android:text="@string/tv_information" android:text="@string/tv_setting"
android:textColor="@color/colorMain" android:textColor="@color/colorMain"
android:textSize="@dimen/size_12" /> android:textSize="@dimen/size_12" />
</RelativeLayout> </RelativeLayout>
<RelativeLayout <RelativeLayout
android:id="@+id/rl_item_setting" android:id="@+id/rl_item_driver"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="@dimen/size_60" android:layout_height="@dimen/size_60"
android:layout_weight="1" android:layout_weight="1"
...@@ -396,7 +419,7 @@ ...@@ -396,7 +419,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_centerHorizontal="true" android:layout_centerHorizontal="true"
android:src="@drawable/mycenter_icon_notes" /> android:src="@drawable/mycenter_icon_driver" />
<TextView <TextView
android:layout_width="wrap_content" android:layout_width="wrap_content"
...@@ -404,12 +427,72 @@ ...@@ -404,12 +427,72 @@
android:layout_alignParentBottom="true" android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true" android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/size_18" android:layout_marginTop="@dimen/size_18"
android:text="@string/tv_setting" android:text="@string/tv_driver"
android:textColor="@color/colorMain" android:textColor="@color/colorMain"
android:textSize="@dimen/size_12" /> android:textSize="@dimen/size_12" />
</RelativeLayout> </RelativeLayout>
</LinearLayout> </LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="@dimen/size_3"
android:paddingBottom="@dimen/size_15"
android:background="@color/colorWrite"
android:orientation="horizontal">
<RelativeLayout
android:id="@+id/rl_item_traveler"
android:layout_width="0dp"
android:layout_height="@dimen/size_60"
android:layout_weight="1"
android:orientation="vertical">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:src="@drawable/mycenter_icon_traveler" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/size_18"
android:text="@string/tv_traveler"
android:textColor="@color/colorMain"
android:textSize="@dimen/size_12" />
</RelativeLayout>
<RelativeLayout
android:layout_width="0dp"
android:layout_height="@dimen/size_60"
android:layout_weight="1"
android:orientation="vertical">
</RelativeLayout>
<RelativeLayout
android:layout_width="0dp"
android:layout_height="@dimen/size_60"
android:layout_weight="1"
android:orientation="vertical">
</RelativeLayout>
<RelativeLayout
android:layout_width="0dp"
android:layout_height="@dimen/size_60"
android:layout_weight="1"
android:orientation="vertical">
</RelativeLayout>
<RelativeLayout
android:layout_width="0dp"
android:layout_height="@dimen/size_60"
android:layout_weight="1"
android:orientation="vertical">
</RelativeLayout>
</LinearLayout>
<com.yuyife.banner.Banner <com.yuyife.banner.Banner
android:layout_marginTop="@dimen/size_15" android:layout_marginTop="@dimen/size_15"
......
...@@ -5,13 +5,156 @@ ...@@ -5,13 +5,156 @@
android:background="@color/colorLine" android:background="@color/colorLine"
android:orientation="vertical"> android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/colorWrite"
android:paddingLeft="@dimen/size_15"
android:paddingRight="@dimen/size_15"
android:orientation="vertical">
<RelativeLayout
android:id="@+id/rl_item_change_password"
android:layout_width="match_parent"
android:layout_height="@dimen/size_50">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:textColor="@color/colorMain"
android:textSize="@dimen/text_16"
android:text="修改密码"/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_alignParentRight="true"
android:src="@drawable/common_icon_rig_black"/>
</RelativeLayout>
<include layout="@layout/common_line"/>
<LinearLayout
android:id="@+id/ll_item_app_push"
android:layout_width="match_parent"
android:layout_height="@dimen/size_50"
android:gravity="center_vertical"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/colorMain"
android:textSize="@dimen/text_16"
android:text="APP推送"/>
<TextView
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:textColor="@color/colorGray"
android:layout_marginLeft="@dimen/size_8"
android:textSize="@dimen/text_10"
android:text="重要信息通知,我们会计时通知您"/>
<com.suke.widget.SwitchButton
android:id="@+id/switch_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_marginTop="@dimen/size_15"
android:background="@color/colorWrite"
android:layout_width="match_parent"
android:paddingLeft="@dimen/size_15"
android:paddingRight="@dimen/size_15"
android:orientation="vertical"
android:layout_height="wrap_content">
<RelativeLayout
android:id="@+id/rl_item_clear_cache"
android:layout_width="match_parent"
android:layout_height="@dimen/size_50">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:textColor="@color/colorMain"
android:textSize="@dimen/text_16"
android:text="清除缓存"/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_alignParentRight="true"
android:src="@drawable/common_icon_rig_black"/>
</RelativeLayout>
<include layout="@layout/common_line"/>
<RelativeLayout
android:id="@+id/rl_item_check_for_updates"
android:layout_width="match_parent"
android:layout_height="@dimen/size_50">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:textColor="@color/colorMain"
android:textSize="@dimen/text_16"
android:text="检查更新"/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_alignParentRight="true"
android:src="@drawable/common_icon_rig_black"/>
</RelativeLayout>
<include layout="@layout/common_line"/>
<RelativeLayout
android:id="@+id/rl_item_about_us"
android:layout_width="match_parent"
android:layout_height="@dimen/size_50">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:textColor="@color/colorMain"
android:textSize="@dimen/text_16"
android:text="关于我们"/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_alignParentRight="true"
android:src="@drawable/common_icon_rig_black"/>
</RelativeLayout>
</LinearLayout>
<TextView <TextView
android:id="@+id/tv_out_sign" android:id="@+id/tv_out_sign"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="@dimen/size_50" android:layout_height="@dimen/size_50"
android:layout_marginTop="@dimen/size_70"
android:layout_marginLeft="@dimen/size_40"
android:layout_marginRight="@dimen/size_40"
android:gravity="center" android:gravity="center"
android:textColor="@color/text_Main" android:textColor="@color/colorWrite"
android:background="@drawable/shape_rv_bg_yellow" android:background="@drawable/shape_rv_button_light_gray"
android:text="退出登录"/> android:text="退出登录"/>
</LinearLayout> </LinearLayout>
......
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:background="@color/colorWrite"
android:orientation="vertical"
android:paddingLeft="@dimen/size_15"
android:paddingTop="@dimen/size_15"
android:paddingRight="@dimen/size_15"
android:layout_height="wrap_content"
tools:ignore="MissingDefaultResource">
<LinearLayout
android:id="@+id/ll_item_draveler"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_marginBottom="@dimen/size_15"
android:layout_height="wrap_content">
<CheckBox
android:id="@+id/cb_draveler"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical" />
<LinearLayout
android:layout_marginLeft="@dimen/size_15"
android:layout_weight="1"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/tv_name"
android:textSize="@dimen/text_14"
android:textColor="@color/colorMain"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="李伟"
/>
<TextView
android:id="@+id/tv_phone"
android:textSize="@dimen/text_14"
android:textColor="@color/textGray"
android:layout_width="wrap_content"
android:layout_marginLeft="@dimen/size_8"
android:layout_height="wrap_content"
android:text="15946512558" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/size_3"
android:orientation="horizontal">
<TextView
android:textSize="@dimen/text_14"
android:textColor="@color/colorMain"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=" 身份证号" />
<TextView
android:id="@+id/tv_id_card"
android:textSize="@dimen/text_14"
android:textColor="@color/textGray"
android:layout_width="wrap_content"
android:maxLines="1"
android:layout_marginLeft="@dimen/size_8"
android:layout_height="wrap_content"
android:text="54112019880210" />
</LinearLayout>
</LinearLayout>
<TextView
android:visibility="gone"
android:id="@+id/tv_default"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/shape_rv_bg_yellow"
android:padding="@dimen/size_5"
android:layout_gravity="center_vertical"
android:layout_marginRight="@dimen/size_8"
android:textColor="@color/gray_FBB336"
android:text="默认"/>
<View
android:layout_marginRight="@dimen/size_5"
android:layout_gravity="center_vertical"
android:layout_width="@dimen/size_half"
android:layout_height="@dimen/size_25"
android:background="@color/colorGray"
/>
<TextView
android:layout_below="@id/tv_edit"
android:textSize="@dimen/text_14"
android:textColor="@color/textGray"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:id="@+id/tv_edit"
android:text="@string/rv_edit"
/>
</LinearLayout>
<include layout="@layout/common_line"/>
</LinearLayout>
...@@ -34,4 +34,7 @@ ...@@ -34,4 +34,7 @@
<string name="cb_adult_hint">成人</string> <string name="cb_adult_hint">成人</string>
<string name="cb_child_hint">儿童</string> <string name="cb_child_hint">儿童</string>
<string name="add_a_visitor_title">添加出游人</string> <string name="add_a_visitor_title">添加出游人</string>
<string name="tv_driver">驾驶人</string>
<string name="tv_traveler">出游人</string>
<string name="tv_my_release">我的发布</string>
</resources> </resources>
...@@ -43,7 +43,8 @@ android { ...@@ -43,7 +43,8 @@ android {
}) })
//api project(path: ':WXPay') //api project(path: ':WXPay')
api project(path: ':RvFrame') api project(path: ':RvFrame')
api 'com.jakewharton:butterknife:8.8.1' api 'com.jakewharton:butterknife:9.0.0-rc1'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1' annotationProcessor 'com.jakewharton:butterknife-compiler:9.0.0-rc1'
implementation 'com.github.zcweng:switch-button:0.0.3@aar'
} }
} }
...@@ -8,6 +8,7 @@ import com.lzy.okgo.callback.StringCallback; ...@@ -8,6 +8,7 @@ import com.lzy.okgo.callback.StringCallback;
import com.lzy.okgo.model.Response; import com.lzy.okgo.model.Response;
import com.rv.travel.bean.BeanBanner; import com.rv.travel.bean.BeanBanner;
import com.rv.travel.bean.BeanHot; import com.rv.travel.bean.BeanHot;
import com.rv.travel.bean.BeanOrderPay;
import com.rv.travel.bean.BeanOrderResponse; import com.rv.travel.bean.BeanOrderResponse;
import com.rv.travel.bean.BeanRim; import com.rv.travel.bean.BeanRim;
import com.rv.travel.bean.BeanTravelMember; import com.rv.travel.bean.BeanTravelMember;
...@@ -487,4 +488,56 @@ public class ApiUtil { ...@@ -487,4 +488,56 @@ public class ApiUtil {
} }
}); });
} }
/**
*订单支付
*/
public static void payOrder(
String orderNo,
String payWay,
String type,
final OnApiResponseCallback<BeanOrderPay, String> callback) {
Map<String, String> map = new HashMap<>();
map.put("orderNo", orderNo);
map.put("payWay", payWay);
map.put("type", type);
String url = TravelApi.COMMIT_ORDER_PAY;
OkGoUtil.postJson(url, map, new StringCallback() {
@Override
public void onSuccess(Response<String> response) {
LogUtil.e(ApiUtil.class, "onSuccess commitOrder:" + response.body());
if (callback == null) return;
String status = OkGoUtil.getStringToJson(response.body(), ApiKey.STATUS);
if (status == null) {
callback.done(null, ApiKey.ERROR_NO_STATUS);
return;
}
if (!status.equals(ApiKey.STATUS_200)) {
callback.done(null, ApiKey.ERROR_PREFIX + "--status" + status + "--message" + OkGoUtil.getStringToJson(response.body(), ApiKey.MESSAGE));
return;
}
JSONObject data = OkGoUtil.getJsonObjectToJson(response.body(), ApiKey.DATA);
BeanOrderPay bean = null;
if (data != null) {
bean = new Gson().fromJson(data.toString(), new TypeToken<BeanOrderPay>() {
}.getType());
}
callback.done(bean, null);
}
@Override
public void onError(Response<String> response) {
super.onError(response);
LogUtil.e(ApiUtil.class, "onError commitOrder:" + response.body());
LogUtil.e(ApiUtil.class, "onError commitOrder:" + response.message());
if (callback != null) {
callback.done(null, response.message());
}
}
});
}
} }
...@@ -20,4 +20,6 @@ public interface TravelApi extends RvFrameConfig { ...@@ -20,4 +20,6 @@ public interface TravelApi extends RvFrameConfig {
String COMMIT_ORDER = HOST + "/api/order/orderTour/add"; String COMMIT_ORDER = HOST + "/api/order/orderTour/add";
//查费用明细 //查费用明细
String QUERY_TRAVEL_MONEY_DETAIL = HOST + "/api/order/orderTour/calculate-price"; String QUERY_TRAVEL_MONEY_DETAIL = HOST + "/api/order/orderTour/calculate-price";
//订单支付
String COMMIT_ORDER_PAY = HOST + "/api/order/baseOrder/pay";
} }
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
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