Commit e3aa37c2 authored by jianglx's avatar jianglx

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

parents 7926b332 a6bae431
......@@ -8,8 +8,8 @@ android {
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode 124
versionName "1.2.4"
versionCode 125
versionName "1.2.5"
multiDexEnabled true
//新版Gradle 是 implementation 为了兼容compile,写上这句话
......@@ -60,6 +60,7 @@ android {
}
}
}
}
}
//打包的时间
......
......@@ -14,12 +14,10 @@
<uses-permission android:name="android.permission.CALL_PHONE" /> <!-- 打电话 -->
<uses-permission android:name="android.permission.SEND_SMS" /> <!-- 发送短信 -->
<uses-permission android:name="android.permission.CAMERA" /> <!-- 照相机 -->
<uses-permission android:name="android.permission.CAPTURE_AUDIO_OUTPUT" />
<uses-permission android:name="android.permission.WAKE_LOCK" /> <!-- 不熄屏 -->
<uses-permission android:name="android.permission.GET_PACKAGE_SIZE" /> <!-- 获得包大小 -->
<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES" /> <!-- 强制退出程序 -->
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" /> <!-- 系统警告窗口 -->
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" /> <!-- 安装卸载文件系统 -->
<!-- ===================高德定位=================== -->
<!-- 用于进行网络定位 -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <!-- 用于访问GPS定位 -->
......@@ -80,18 +78,18 @@
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <!-- 访问网络,网络定位需要上网 -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_CONFIGURATION" />
<uses-permission android:name="android.permission.CAMERA" /> <!-- 通知栏权限 -->
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />
<uses-permission android:name="android.permission.READ_LOGS" />
<supports-screens
android:anyDensity="true"
android:largeScreens="true"
android:normalScreens="false"
android:normalScreens="true"
android:resizeable="true"
android:smallScreens="true" /> <!-- OpenGLES 2.0 -->
android:smallScreens="true" />
<!-- OpenGLES 2.0 -->
<uses-feature
android:glEsVersion="0x00020000"
android:required="true" />
......@@ -264,22 +262,7 @@
android:name="com.rv.home.rv.module.ui.main.home.order.GetOnTheCarQRCodeActivity"
android:screenOrientation="portrait" /> <!-- ================================================================= -->
<!-- 旅行模块 -->
<activity
android:name="com.rv.travel.TravelActivity"
android:configChanges="orientation|keyboardHidden"
android:launchMode="singleTask"
android:maxAspectRatio="2.4"
android:screenOrientation="portrait"
android:theme="@style/MyFrameTheme"
android:windowSoftInputMode="adjustResize|stateHidden" />
<activity
android:name="com.rv.travel.other.TravelFragmentActivity"
android:configChanges="orientation|keyboardHidden"
android:launchMode="singleTask"
android:maxAspectRatio="2.4"
android:screenOrientation="portrait"
android:theme="@style/MyFrameTheme"
android:windowSoftInputMode="adjustResize|stateHidden" /> <!-- 查看预览图 -->
<!-- 查看预览图 -->
<activity
android:name="com.ruiwenliu.wrapper.browse.ActivityImageBrowseInt"
android:configChanges="orientation|keyboardHidden"
......
......@@ -27,9 +27,6 @@ android {
repositories {
flatDir {
dirs 'libs' //this way we can find the .aar file in libs folder
// 所有Module应该保持一致,要么加上,要么去掉
//aar包引入
//compile(name:'camerascan-1.0', ext:'aar')
}
}
}
......@@ -56,6 +53,9 @@ android {
//api project(path: ':WXPay')
api "com.tencent.mm.opensdk:wechat-sdk-android-with-mta:$rootProject.ext.wechatPayVersion"
// 支付宝 SDK AAR 包所需的配置
api files('libs/alipaySdk-15.6.5-20190718211148.aar')
//适配器
api "com.github.CymChad:BaseRecyclerViewAdapterHelper:$rootProject.ext.quickAdapterVersion"
......
......@@ -10,6 +10,7 @@ package com.frame.rv.config;
public interface RvFrameConfig extends RvFrameConstant {
// String HOST = "https://xxtest.upyuns.com";
// String HOST = "http://10.1.37.192:8765";
// String HOST = "http://10.1.37.245:10000";
String HOST = "https://dev.dfangche.com";
String ADMIN_POST = HOST + "/api/admin/";
String AUTH_POST = HOST + "/api/auth/";
......
package com.frame.rv.widget; import java.util.Map; import android.text.TextUtils; public class PayResult { private String resultStatus; private String result; private String memo; public PayResult(Map<String, String> rawResult) { if (rawResult == null) { return; } for (String key : rawResult.keySet()) { if (TextUtils.equals(key, "resultStatus")) { resultStatus = rawResult.get(key); } else if (TextUtils.equals(key, "result")) { result = rawResult.get(key); } else if (TextUtils.equals(key, "memo")) { memo = rawResult.get(key); } } } @Override public String toString() { return "resultStatus={" + resultStatus + "};memo={" + memo + "};result={" + result + "}"; } /** * @return the resultStatus */ public String getResultStatus() { return resultStatus; } /** * @return the memo */ public String getMemo() { return memo; } /** * @return the result */ public String getResult() { return result; }}
\ No newline at end of file
......@@ -49,6 +49,7 @@ android {
androidTestImplementation('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
//api project(path: ':WXPay')
api project(path: ':RvFrame')
api 'com.jakewharton:butterknife:9.0.0-rc1'
......
......@@ -59,4 +59,5 @@ dependencies {
api 'com.davemorrissey.labs:subsampling-scale-image-view:3.9.0'
implementation 'com.alibaba:fastjson:1.2.21'
implementation project(':component_utils')
}
......@@ -11,7 +11,6 @@ buildscript {
maven {
url "https://jitpack.io"
}
}
dependencies {
classpath 'com.android.tools.build:gradle:3.2.1'
......@@ -26,6 +25,11 @@ allprojects {
repositories {
google()
jcenter()
// 支付宝 SDK AAR 包所需的配置
flatDir {
dirs 'libs'
}
maven {
url "http://mvn.mob.com/android"
}
......
......@@ -19,6 +19,7 @@ android {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}
......@@ -29,4 +30,5 @@ dependencies {
annotationProcessor 'com.jakewharton:butterknife-compiler:9.0.0-rc1'
api project(':RvWrapper')
api project(':component_resource')
}
package com.rv.component.dialog;
import android.content.Context;
import android.support.annotation.NonNull;
import android.view.Gravity;
import android.view.ViewGroup;
import com.ruiwenliu.wrapper.dialog.BaseDialog;
/**
* 实名认证温馨提示
*/
public class VerifiedTipsDialog extends BaseDialog {
public VerifiedTipsDialog(@NonNull Context context) {
super(context);
setDialogParams(ViewGroup.LayoutParams.MATCH_PARENT,ViewGroup.LayoutParams.WRAP_CONTENT, Gravity.CENTER);
}
@Override
public int getViewLayout() {
return R.layout.rv_dialog_verified_tips;
}
}
<?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:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/size_40"
android:layout_marginRight="@dimen/size_40"
android:background="@color/colorWrite"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="@dimen/size_60"
android:gravity="center"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="实名认证"
android:textColor="@color/colorMain"
android:textSize="@dimen/text_18" />
</LinearLayout>
<TextView
android:id="@+id/tv_content"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/size_15"
android:layout_marginRight="@dimen/size_15"
android:layout_marginBottom="@dimen/size_26"
android:text="为了确保您的资金安全,提现需要进行实名认证。"
android:textColor="@color/textGray"
android:textSize="@dimen/size_16" />
<include layout="@layout/common_line" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="@dimen/size_60"
android:orientation="horizontal">
<TextView
android:id="@+id/tv_cancel"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center"
android:text="我在想想" />
<View
android:layout_width="@dimen/size_half"
android:layout_height="match_parent"
android:layout_marginTop="@dimen/size_10"
android:layout_marginBottom="@dimen/size_10"
android:background="@color/colorLine" />
<TextView
android:id="@+id/tv_ok"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:textColor="@color/colorMain"
android:gravity="center"
android:text="确定" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
\ No newline at end of file
......@@ -39,5 +39,7 @@ dependencies {
annotationProcessor'com.alibaba:arouter-compiler:1.1.4'
api project(':RvWrapper')
api project(':component_control')
api project(':component_resource')
}
......@@ -52,6 +52,7 @@ public class CampFragment extends BaseFragment<CampPresenter> implements BaseQui
@BindView(R2.id.refresh)
SimpleRefreshLayout mSimpleRefreshLayout;
private boolean isOpen = true;
private CampListAdapter campAdapter;
private CampTypeListAdapter campTypeListAdapter;
......
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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">
<com.baidu.mapapi.map.MapView
android:id="@+id/bmapView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:clickable="true" />
<ImageView
android:id="@+id/iv_back"
android:layout_width="@dimen/size_40"
android:layout_height="@dimen/size_40"
android:layout_marginLeft="@dimen/size_5"
android:layout_marginTop="@dimen/size_10"
android:padding="@dimen/size_8"
android:src="@drawable/rv_common_icon_back_dark" />
<ImageView
android:id="@+id/iv_location"
android:layout_alignParentRight="true"
android:layout_width="@dimen/size_50"
android:layout_height="@dimen/size_50"
android:layout_marginLeft="@dimen/size_5"
android:layout_marginTop="@dimen/size_10"
android:layout_marginRight="@dimen/size_15"
android:padding="@dimen/size_8"
android:src="@drawable/rv_location" />
<!--<ImageView-->
<!--android:layout_width="wrap_content"-->
<!--android:id="@+id/iv_center"-->
<!--android:visibility="gone"-->
<!--android:layout_centerInParent="true"-->
<!--android:layout_height="wrap_content"-->
<!--android:src="@drawable/im_map_button_pres"-->
<!--/>-->
<LinearLayout
android:layout_marginLeft="@dimen/size_30"
android:layout_marginRight="@dimen/size_30"
android:layout_alignParentBottom="true"
android:layout_marginBottom="@dimen/size_30"
android:layout_width="match_parent"
android:padding="@dimen/size_15"
android:visibility="gone"
android:id="@+id/ll_visible"
android:background="@color/colorWrite"
android:orientation="horizontal"
android:layout_height="wrap_content">
<RelativeLayout
android:layout_weight="1"
android:paddingRight="@dimen/size_10"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="@color/textMain"
android:textSize="@dimen/text_18"
android:drawablePadding="@dimen/size_5"
android:drawableLeft="@drawable/rv_common_icon_logo"
android:id="@+id/tv_name"
android:text=""
/>
<TextView
android:layout_marginTop="@dimen/size_8"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="@color/textGray"
android:textSize="@dimen/text_14"
android:layout_below="@id/tv_name"
android:id="@+id/tv_address"
android:text=""
/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="@color/textGray"
android:textSize="@dimen/text_14"
android:layout_below="@id/tv_address"
android:id="@+id/tv_phone"
android:text=""
/>
</RelativeLayout>
<RelativeLayout
android:id="@+id/rl_navigation"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:layout_centerHorizontal="true"
android:src="@drawable/rv_rentingcar_icon_gps"
android:layout_width="@dimen/size_30"
android:layout_height="@dimen/size_30"
/>
<TextView
android:textColor="@color/textMain"
android:textSize="@dimen/text_12"
android:layout_centerHorizontal="true"
android:text="去这里"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/size_35"
/>
</RelativeLayout>
</LinearLayout>
</RelativeLayout>
......@@ -54,4 +54,5 @@ dependencies {
api project(':component_control')
api project(':plugin_imcamera')
}
......@@ -128,7 +128,7 @@ public class DiscoveryFragment extends BaseFragment<DiscoveryPresenter> {
List<String> list = new ArrayList<>();
list.add(_mActivity.getString(R.string.discovery_recommend));
list.add(_mActivity.getString(R.string.discovery_pat));
list.add(_mActivity.getString(R.string.discovery_short_video));
// list.add(_mActivity.getString(R.string.discovery_short_video));
list.add(_mActivity.getString(R.string.discovery_question_and_answer));
menuAdapter.setNewData(list);
menuAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
......@@ -173,7 +173,7 @@ public class DiscoveryFragment extends BaseFragment<DiscoveryPresenter> {
List<BaseFragment> list = new ArrayList<>();
list.add(RecommendFragment.getInstance(TYPE_RECOMMEND));
list.add(PatFragment.getInstance(TYPE_PAT));
list.add(ShortVideoFragment.getInstance(TYPE_SHORT_VIDEO));
// list.add(ShortVideoFragment.getInstance(TYPE_SHORT_VIDEO));
list.add(QuestionAndAnswerFragment.getInstance(TYPE_QUESTION_AND_ANSWER));
return list;
}
......
......@@ -51,4 +51,5 @@ dependencies {
implementation 'com.alibaba:fastjson:1.2.21'
api files('libs/ShareInstall_1.2.0.aar')
}
......@@ -366,7 +366,7 @@ public class CarDetailActivity extends BaseStatusActivity<CommonPresenter> {
if (platform.name().equals("WEIXIN_FAVORITE")) {
showToast(platform + " 收藏成功啦");
showToast(" 收藏成功啦");
} else {
if (platform != SHARE_MEDIA.MORE && platform != SHARE_MEDIA.SMS
......@@ -381,7 +381,7 @@ public class CarDetailActivity extends BaseStatusActivity<CommonPresenter> {
&& platform != SHARE_MEDIA.GOOGLEPLUS
&& platform != SHARE_MEDIA.YNOTE
&& platform != SHARE_MEDIA.EVERNOTE) {
showToast(platform + "分享成功啦");
showToast("分享成功啦");
}
......
......@@ -4,8 +4,11 @@ import android.annotation.SuppressLint;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.support.v4.widget.PopupWindowCompat;
import android.text.Html;
import android.text.TextUtils;
import android.util.Log;
import android.view.Gravity;
import android.view.View;
......@@ -19,6 +22,7 @@ import android.widget.TextView;
import com.alibaba.android.arouter.launcher.ARouter;
import com.alibaba.fastjson.JSON;
import com.alipay.sdk.app.PayTask;
import com.base.utils.ui.datetime.selector.util.TextUtil;
import com.frame.base.bus.LoginUserInfoEvent;
import com.frame.base.bus.Observer;
......@@ -28,6 +32,7 @@ import com.frame.base.bus.RxBus;
import com.frame.base.url.Constance;
import com.frame.base.view.StarBar;
import com.frame.rv.config.RvFrameConfig;
import com.frame.rv.widget.PayResult;
import com.ruiwenliu.wrapper.SPConstance;
import com.ruiwenliu.wrapper.base.BaseBean;
import com.ruiwenliu.wrapper.bean.BeanUserInfo;
......@@ -48,6 +53,7 @@ import com.rv.home.rv.module.basic.presenter.CommonPresenter;
import com.rv.home.rv.module.ui.main.home.bean.CarTypeListBean;
import com.rv.home.rv.module.ui.main.home.bean.ConfirmOrderBean;
import com.rv.home.rv.module.ui.main.home.bean.DrivingListBean;
import com.rv.home.rv.module.ui.main.home.bean.OrderAliPayBean;
import com.rv.home.rv.module.ui.main.home.bean.OrderDataBean;
import com.rv.home.rv.module.ui.main.home.bean.OrderPayBean;
import com.rv.home.rv.module.ui.main.home.bean.OrderPriceBean;
......@@ -77,6 +83,7 @@ import io.reactivex.schedulers.Schedulers;
* Desc:确认订单
*/
public class ConfirmOrderActivity extends BaseStatusActivity<CommonPresenter> {
private static final int SDK_ALI_PAY_FLAG = 11;
@BindView(R2.id.iv_goods)
ImageView ivGoods;
@BindView(R2.id.tv_name)
......@@ -257,15 +264,14 @@ public class ConfirmOrderActivity extends BaseStatusActivity<CommonPresenter> {
break;
case 1:
ConfirmOrderBean orderBean = (ConfirmOrderBean) result;
orderPay(orderBean.getData().getNo(), 1, 1);
orderPay(orderBean.getData().getNo());
// startActivity(OrderListActivity.getIntent(mActivity,OrderListActivity.TYPE_FOR_PAYMENT));
break;
case 2:
pay((OrderPayBean) result);
break;
case 3:
startActivity(OrderListActivity.getIntent(mActivity, 0));
finish();
aliPayData((OrderAliPayBean) result);
break;
case 4:
CouponBean couponBean = (CouponBean) result;
......@@ -459,7 +465,6 @@ public class ConfirmOrderActivity extends BaseStatusActivity<CommonPresenter> {
int i = v.getId();
if (i == R.id.iv_close) {
dismiss();
createOrder(3);
} else if (i == R.id.ll_item_wechat) {
payType = 1;
helper.setChecked(R.id.rb_wechat, true);
......@@ -467,9 +472,8 @@ public class ConfirmOrderActivity extends BaseStatusActivity<CommonPresenter> {
} else if (i == R.id.ll_item_alipay) {
payType = 2;
showToast("该功能还没有开通!");
// helper.setChecked(R.id.rb_wechat,false);
// helper.setChecked(R.id.rb_alipay,true);
helper.setChecked(R.id.rb_wechat, false);
helper.setChecked(R.id.rb_alipay, true);
} else if (i == R.id.tv_pay_immediately) {
dismiss();
createOrder(1);
......@@ -513,11 +517,16 @@ public class ConfirmOrderActivity extends BaseStatusActivity<CommonPresenter> {
/**
* 订单支付
*/
private void orderPay(String orderNo, int payWay, int type) {
private void orderPay(String orderNo) {
Map<String, Object> headMap = new LinkedHashMap<>();
if (OkGoUtil.getToken() != null)
headMap.put("Authorization", OkGoUtil.getToken());
mPresenter.postBodyData(RvFrameConfig.VEHICLE_ORDER, 2, ApiConfig.HTTP_URL_PAY_THE_CALLBACK, OrderPayBean.class, new payBody(orderNo, payWay, type), headMap, true);
if (payType == 1) {
mPresenter.postBodyData(RvFrameConfig.VEHICLE_ORDER, 2, ApiConfig.HTTP_URL_PAY_THE_CALLBACK, OrderPayBean.class, new payBody(orderNo, payType, 1), headMap, true);
} else {
mPresenter.postBodyData(RvFrameConfig.VEHICLE_ORDER, 3, ApiConfig.HTTP_URL_PAY_THE_CALLBACK, OrderAliPayBean.class, new payBody(orderNo, payType, 1), headMap, true);
}
}
/**
......@@ -763,6 +772,11 @@ public class ConfirmOrderActivity extends BaseStatusActivity<CommonPresenter> {
return View.MeasureSpec.makeMeasureSpec(View.MeasureSpec.getSize(measureSpec), mode);
}
/**
* 微信支付
*
* @param data
*/
private void pay(OrderPayBean data) {
try {
......@@ -779,9 +793,62 @@ public class ConfirmOrderActivity extends BaseStatusActivity<CommonPresenter> {
} catch (Exception e) {
showToast("异常");
}
}
/**
* 显示支付宝签名
*/
public void aliPayData(final OrderAliPayBean bean) {
Runnable payRunnable = new Runnable() {
@Override
public void run() {
PayTask alipay = new PayTask(ConfirmOrderActivity.this);
Map<String, String> result = alipay.payV2(bean.getData(), true);
Log.i("msp", result.toString());
Message msg = new Message();
msg.what = SDK_ALI_PAY_FLAG;
msg.obj = result;
mHandler.sendMessage(msg);
}
};
Thread payThread = new Thread(payRunnable);
payThread.start();
}
/**
* 支付宝返回数据handler
*/
@SuppressLint("HandlerLeak")
private Handler mHandler = new Handler() {
public void handleMessage(Message msg) {
switch (msg.what) {
case SDK_ALI_PAY_FLAG: {
@SuppressWarnings("unchecked")
PayResult payResult = new PayResult((Map<String, String>) msg.obj);
String resultStatus = payResult.getResultStatus();
// 判断resultStatus 为9000则代表支付成功
if (TextUtils.equals(resultStatus, "9000")) {
startActivity(OrderListActivity.getIntent(mActivity, 1));
finish();
} else if ("6001".equals(resultStatus)) {
startActivity(OrderListActivity.getIntent(mActivity, 0));
showToast("支付取消!");
finish();
} else {
// 该笔订单真实的支付结果,需要依赖服务端的异步通知。
showToast(payResult.toString());
}
break;
}
}
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
......
package com.rv.home.rv.module.ui.main.home.bean;
import com.google.gson.annotations.SerializedName;
import com.ruiwenliu.wrapper.base.BaseBean;
/**
* 支付宝订单支付
*/
public class OrderAliPayBean extends BaseBean{
private String data;
public String getData() {
return data;
}
public void setData(String data) {
this.data = data;
}
}
......@@ -9,13 +9,17 @@ import android.os.Message;
import android.support.annotation.Nullable;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import com.alipay.sdk.app.PayTask;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.entity.MultiItemEntity;
import com.frame.base.bus.PaymentSuccessfulEvent;
import com.frame.base.bus.RxBus;
import com.frame.rv.config.RvFrameConfig;
import com.frame.rv.widget.PayResult;
import com.ruiwenliu.wrapper.base.BaseBean;
import com.ruiwenliu.wrapper.base.BaseFragment;
import com.ruiwenliu.wrapper.util.ViewHolder;
......@@ -26,7 +30,9 @@ import com.rv.home.R;
import com.rv.home.R2;
import com.rv.home.rv.module.ApiConfig;
import com.rv.home.rv.module.basic.presenter.CommonPresenter;
import com.rv.home.rv.module.ui.main.home.ConfirmOrderActivity;
import com.rv.home.rv.module.ui.main.home.bean.EffectiveTimeBean;
import com.rv.home.rv.module.ui.main.home.bean.OrderAliPayBean;
import com.rv.home.rv.module.ui.main.home.bean.OrderPayBean;
import com.rv.home.rv.module.ui.main.home.order.adapter.ForPaymentAdapter;
import com.rv.home.rv.module.ui.main.home.order.bean.OrderListBean;
......@@ -61,6 +67,9 @@ public class ForPaymentFragment extends BaseFragment<CommonPresenter> implements
private int mPage;
private int countPage;
private IWXAPI api;
private int payType;//选择支付类型
private static final int SDK_ALI_PAY_FLAG = 11;
private OrderListBean.DataBeanX.DataBean payBean = null;
private int payPosition = -1;
......@@ -169,6 +178,9 @@ public class ForPaymentFragment extends BaseFragment<CommonPresenter> implements
case 1:
pay((OrderPayBean) result);
break;
case 2:
aliPayData((OrderAliPayBean) result);
break;
}
}
......@@ -252,13 +264,16 @@ public class ForPaymentFragment extends BaseFragment<CommonPresenter> implements
if (id == R.id.iv_close) {
dismiss();
} else if (id == R.id.ll_item_wechat) {
payType = 1;
helper.setChecked(R.id.rb_wechat, true);
helper.setChecked(R.id.rb_alipay, false);
} else if (id == R.id.ll_item_alipay) {
showToast("该功能还没有开通!");
payType = 2;
helper.setChecked(R.id.rb_wechat, false);
helper.setChecked(R.id.rb_alipay, true);
} else if (id == R.id.tv_pay_immediately) {
dismiss();
createOrder(no, 1, 1);
createOrder(no);
}
}
}, R.id.iv_close, R.id.ll_item_wechat, R.id.ll_item_alipay, R.id.tv_pay_immediately);
......@@ -269,10 +284,14 @@ public class ForPaymentFragment extends BaseFragment<CommonPresenter> implements
}
private void createOrder(String orderNo, int payWay, int type) {
private void createOrder(String orderNo) {
Map<String, Object> headMap = new LinkedHashMap<>();
headMap.put("Authorization", OkGoUtil.getToken());
mPresenter.postBodyData(RvFrameConfig.VEHICLE_ORDER, 1, ApiConfig.HTTP_URL_PAY_THE_CALLBACK, OrderPayBean.class, new payBody(orderNo, payWay, type), headMap, true);
if (payType == 1) {
mPresenter.postBodyData(RvFrameConfig.VEHICLE_ORDER, 1, ApiConfig.HTTP_URL_PAY_THE_CALLBACK, OrderPayBean.class, new payBody(orderNo, payType, 1), headMap, true);
}else {
mPresenter.postBodyData(RvFrameConfig.VEHICLE_ORDER, 2, ApiConfig.HTTP_URL_PAY_THE_CALLBACK, OrderAliPayBean.class, new payBody(orderNo, payType, 1), headMap, true);
}
}
......@@ -332,4 +351,56 @@ public class ForPaymentFragment extends BaseFragment<CommonPresenter> implements
}
}
/**
* 显示支付宝签名
*/
public void aliPayData(final OrderAliPayBean bean) {
Runnable payRunnable = new Runnable() {
@Override
public void run() {
PayTask alipay = new PayTask(_mActivity);
Map<String, String> result = alipay.payV2(bean.getData(), true);
Log.i("msp", result.toString());
Message msg = new Message();
msg.what = SDK_ALI_PAY_FLAG;
msg.obj = result;
mHandler.sendMessage(msg);
}
};
Thread payThread = new Thread(payRunnable);
payThread.start();
}
/**
* 支付宝返回数据handler
*/
@SuppressLint("HandlerLeak")
private Handler mHandler = new Handler() {
public void handleMessage(Message msg) {
switch (msg.what) {
case SDK_ALI_PAY_FLAG: {
@SuppressWarnings("unchecked")
PayResult payResult = new PayResult((Map<String, String>) msg.obj);
String resultStatus = payResult.getResultStatus();
// 判断resultStatus 为9000则代表支付成功
if (TextUtils.equals(resultStatus, "9000")) {
RxBus.post(new PaymentSuccessfulEvent());
} else if ("6001".equals(resultStatus)) {
showToast("支付取消!");
} else {
// 该笔订单真实的支付结果,需要依赖服务端的异步通知。
showToast(payResult.toString());
}
break;
}
}
}
};
}
......@@ -9,6 +9,10 @@ import android.content.Intent;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import android.webkit.JavascriptInterface;
import android.webkit.WebChromeClient;
......@@ -21,11 +25,13 @@ import android.widget.ProgressBar;
import android.widget.TextView;
import com.alibaba.android.arouter.launcher.ARouter;
import com.alipay.sdk.app.PayTask;
import com.frame.base.bus.CancelOrderEvent;
import com.frame.base.bus.Observer;
import com.frame.base.bus.PaymentSuccessfulEvent;
import com.frame.base.bus.RxBus;
import com.frame.rv.config.RvFrameConfig;
import com.frame.rv.widget.PayResult;
import com.ruiwenliu.wrapper.base.BaseBean;
import com.ruiwenliu.wrapper.util.ViewHolder;
import com.ruiwenliu.wrapper.weight.TitleView;
......@@ -38,6 +44,7 @@ import com.rv.home.rv.module.ApiConfig;
import com.rv.home.rv.module.basic.BaseStatusActivity;
import com.rv.home.rv.module.basic.WebActivity;
import com.rv.home.rv.module.basic.presenter.PickerPresenter;
import com.rv.home.rv.module.ui.main.home.bean.OrderAliPayBean;
import com.rv.home.rv.module.ui.main.home.bean.OrderPayBean;
import com.rv.home.rv.module.ui.main.home.order.bean.OrderListBean;
import com.tencent.mm.opensdk.modelpay.PayReq;
......@@ -70,6 +77,7 @@ import static com.ruiwenliu.wrapper.weight.webview.SafeWebView.hasKitkat;
*/
public class OrderDetailActivity extends BaseStatusActivity<PickerPresenter> {
private static final int SDK_ALI_PAY_FLAG = 11;
@BindView(R2.id.tv_center)
TextView tvCenter;
......@@ -87,6 +95,7 @@ public class OrderDetailActivity extends BaseStatusActivity<PickerPresenter> {
private String webUrl;
private int status;
private String no;
private int payType;//选择支付类型
private final int TYPE_REQUEST_EVALUATION = 1;
private IWXAPI api;
......@@ -194,6 +203,9 @@ public class OrderDetailActivity extends BaseStatusActivity<PickerPresenter> {
case 0:
pay((OrderPayBean) result);
break;
case 1:
aliPayData((OrderAliPayBean) result);
break;
}
}
......@@ -307,13 +319,16 @@ public class OrderDetailActivity extends BaseStatusActivity<PickerPresenter> {
if (id == R.id.iv_close) {
dismiss();
} else if (id == R.id.ll_item_wechat) {
payType = 1;
helper.setChecked(R.id.rb_wechat, true);
helper.setChecked(R.id.rb_alipay, false);
} else if (id == R.id.ll_item_alipay) {
showToast("该功能还没有开通!");
payType = 2;
helper.setChecked(R.id.rb_wechat, false);
helper.setChecked(R.id.rb_alipay, true);
} else if (id == R.id.tv_pay_immediately) {
dismiss();
createOrder(no, 1, 1);
createOrder(no);
}
}
}, R.id.iv_close, R.id.ll_item_wechat, R.id.ll_item_alipay, R.id.tv_pay_immediately);
......@@ -323,10 +338,14 @@ public class OrderDetailActivity extends BaseStatusActivity<PickerPresenter> {
dialog.show();
}
private void createOrder(String orderNo, int payWay, int type) {
private void createOrder(String orderNo) {
Map<String, Object> headMap = new LinkedHashMap<>();
headMap.put("Authorization", OkGoUtil.getToken());
mPresenter.postBodyData(RvFrameConfig.VEHICLE_ORDER, 0, ApiConfig.HTTP_URL_PAY_THE_CALLBACK, OrderPayBean.class, new payBody(orderNo, payWay, type), headMap, true);
if (payType == 1) {
mPresenter.postBodyData(RvFrameConfig.VEHICLE_ORDER, 0, ApiConfig.HTTP_URL_PAY_THE_CALLBACK, OrderPayBean.class, new payBody(orderNo, payType, 1), headMap, true);
}else {
mPresenter.postBodyData(RvFrameConfig.VEHICLE_ORDER, 1, ApiConfig.HTTP_URL_PAY_THE_CALLBACK, OrderAliPayBean.class, new payBody(orderNo, payType, 1), headMap, true);
}
}
@Override
......@@ -394,6 +413,57 @@ public class OrderDetailActivity extends BaseStatusActivity<PickerPresenter> {
}
/**
* 显示支付宝签名
*/
public void aliPayData(final OrderAliPayBean bean) {
Runnable payRunnable = new Runnable() {
@Override
public void run() {
PayTask alipay = new PayTask(OrderDetailActivity.this);
Map<String, String> result = alipay.payV2(bean.getData(), true);
Log.i("msp", result.toString());
Message msg = new Message();
msg.what = SDK_ALI_PAY_FLAG;
msg.obj = result;
mHandler.sendMessage(msg);
}
};
Thread payThread = new Thread(payRunnable);
payThread.start();
}
/**
* 支付宝返回数据handler
*/
@SuppressLint("HandlerLeak")
private Handler mHandler = new Handler() {
public void handleMessage(Message msg) {
switch (msg.what) {
case SDK_ALI_PAY_FLAG: {
@SuppressWarnings("unchecked")
PayResult payResult = new PayResult((Map<String, String>) msg.obj);
String resultStatus = payResult.getResultStatus();
// 判断resultStatus 为9000则代表支付成功
if (TextUtils.equals(resultStatus, "9000")) {
RxBus.post(new PaymentSuccessfulEvent());
} else if ("6001".equals(resultStatus)) {
showToast("支付取消!");
} else {
// 该笔订单真实的支付结果,需要依赖服务端的异步通知。
showToast(payResult.toString());
}
break;
}
}
}
};
private void initWeb() {
WebSettings webSettings = mWebView.getSettings();
if (webSettings == null) return;
......
......@@ -8,6 +8,10 @@ import android.content.Intent;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import android.webkit.JavascriptInterface;
import android.webkit.WebChromeClient;
......@@ -19,10 +23,13 @@ import android.widget.LinearLayout;
import android.widget.ProgressBar;
import android.widget.TextView;
import com.alipay.sdk.app.PayTask;
import com.frame.base.bus.CancelOrderEvent;
import com.frame.base.bus.Observer;
import com.frame.base.bus.PaymentSuccessfulEvent;
import com.frame.base.bus.RxBus;
import com.frame.rv.config.RvFrameConfig;
import com.frame.rv.widget.PayResult;
import com.ruiwenliu.wrapper.base.BaseBean;
import com.ruiwenliu.wrapper.base.BaseStatusActivity;
import com.ruiwenliu.wrapper.util.ViewHolder;
......@@ -34,6 +41,7 @@ import com.rv.home.R2;
import com.rv.home.rv.module.ApiConfig;
import com.rv.home.rv.module.basic.WebActivity;
import com.rv.home.rv.module.basic.presenter.PickerPresenter;
import com.rv.home.rv.module.ui.main.home.bean.OrderAliPayBean;
import com.rv.home.rv.module.ui.main.home.bean.OrderPayBean;
import com.rv.home.rv.module.ui.main.home.order.bean.OrderListBean;
import com.tencent.mm.opensdk.modelpay.PayReq;
......@@ -57,7 +65,6 @@ import static com.ruiwenliu.wrapper.weight.webview.SafeWebView.hasKitkat;
*/
public class TravelOrderDetailsActivity extends BaseStatusActivity<PickerPresenter> {
private static final int TYPE_REQUEST_EVALUATION = 102;
@BindView(R2.id.pb_progress)
ProgressBar pbProgress;
......@@ -70,12 +77,14 @@ public class TravelOrderDetailsActivity extends BaseStatusActivity<PickerPresent
@BindView(R2.id.ll_item_bottom)
LinearLayout llItemBottom;
private static final int SDK_ALI_PAY_FLAG = 11;
private String webUrl;
private int status;
private String no;
private IWXAPI api;
private double orderAmount;
private OrderListBean.DataBeanX.DataBean dataBean;
private int payType;//选择支付类型
public static Intent getIntent(Context context, OrderListBean.DataBeanX.DataBean dataBean) {
......@@ -184,6 +193,9 @@ public class TravelOrderDetailsActivity extends BaseStatusActivity<PickerPresent
case 0:
pay((OrderPayBean) result);
break;
case 1:
aliPayData((OrderAliPayBean) result);
break;
}
}
......@@ -281,13 +293,16 @@ public class TravelOrderDetailsActivity extends BaseStatusActivity<PickerPresent
if (id == R.id.iv_close) {
dismiss();
} else if (id == R.id.ll_item_wechat) {
payType = 1;
helper.setChecked(R.id.rb_wechat, true);
helper.setChecked(R.id.rb_alipay, false);
} else if (id == R.id.ll_item_alipay) {
showToast("该功能还没有开通!");
payType = 2;
helper.setChecked(R.id.rb_wechat, false);
helper.setChecked(R.id.rb_alipay, true);
} else if (id == R.id.tv_pay_immediately) {
dismiss();
createOrder(no, 1, 1);
createOrder(no);
}
}
}, R.id.iv_close, R.id.ll_item_wechat, R.id.ll_item_alipay, R.id.tv_pay_immediately);
......@@ -298,10 +313,14 @@ public class TravelOrderDetailsActivity extends BaseStatusActivity<PickerPresent
}
private void createOrder(String orderNo, int payWay, int type) {
private void createOrder(String orderNo) {
Map<String, Object> headMap = new LinkedHashMap<>();
headMap.put("Authorization", OkGoUtil.getToken());
mPresenter.postBodyData(RvFrameConfig.VEHICLE_ORDER, 0, ApiConfig.HTTP_URL_PAY_THE_CALLBACK, OrderPayBean.class, new payBody(orderNo, payWay, type), headMap, true);
if (payType == 1) {
mPresenter.postBodyData(RvFrameConfig.VEHICLE_ORDER, 0, ApiConfig.HTTP_URL_PAY_THE_CALLBACK, OrderPayBean.class, new payBody(orderNo, payType, 1), headMap, true);
}else {
mPresenter.postBodyData(RvFrameConfig.VEHICLE_ORDER, 1, ApiConfig.HTTP_URL_PAY_THE_CALLBACK, OrderAliPayBean.class, new payBody(orderNo, payType, 1), headMap, true);
}
}
public class payBody {
......@@ -361,6 +380,57 @@ public class TravelOrderDetailsActivity extends BaseStatusActivity<PickerPresent
}
/**
* 显示支付宝签名
*/
public void aliPayData(final OrderAliPayBean bean) {
Runnable payRunnable = new Runnable() {
@Override
public void run() {
PayTask alipay = new PayTask(TravelOrderDetailsActivity.this);
Map<String, String> result = alipay.payV2(bean.getData(), true);
Log.i("msp", result.toString());
Message msg = new Message();
msg.what = SDK_ALI_PAY_FLAG;
msg.obj = result;
mHandler.sendMessage(msg);
}
};
Thread payThread = new Thread(payRunnable);
payThread.start();
}
/**
* 支付宝返回数据handler
*/
@SuppressLint("HandlerLeak")
private Handler mHandler = new Handler() {
public void handleMessage(Message msg) {
switch (msg.what) {
case SDK_ALI_PAY_FLAG: {
@SuppressWarnings("unchecked")
PayResult payResult = new PayResult((Map<String, String>) msg.obj);
String resultStatus = payResult.getResultStatus();
// 判断resultStatus 为9000则代表支付成功
if (TextUtils.equals(resultStatus, "9000")) {
RxBus.post(new PaymentSuccessfulEvent());
} else if ("6001".equals(resultStatus)) {
showToast("支付取消!");
} else {
// 该笔订单真实的支付结果,需要依赖服务端的异步通知。
showToast(payResult.toString());
}
break;
}
}
}
};
private void initWeb() {
WebSettings webSettings = mWebView.getSettings();
if (webSettings == null) return;
......
......@@ -51,4 +51,5 @@ dependencies {
api project(':plugin_coupon')
implementation project(':plugin_points')
implementation project(':plugin_wallet')
}
package com.rv.rvmine;
import android.annotation.SuppressLint;
import android.app.ActivityOptions;
import android.content.Context;
import android.content.Intent;
import android.os.Build;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.text.TextUtils;
......@@ -245,7 +247,11 @@ public class MineFragment extends BaseFragment<CommonPresenter> implements Simpl
}else if (id == R.id.iv_avatar) {
//头像
if (isLogin()) return;
startActivity(PersonalInformationActivity.getIntent(_mActivity, info));
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
startActivity(PersonalInformationActivity.getIntent(_mActivity, info), ActivityOptions.makeSceneTransitionAnimation(_mActivity,ivAvatar,"sharedView").toBundle());
}else {
startActivity(PersonalInformationActivity.getIntent(_mActivity, info));
}
} else if (id == R.id.tv_login) {
//登录
......
......@@ -76,6 +76,7 @@
android:id="@+id/iv_avatar"
android:layout_width="@dimen/size_60"
android:layout_height="@dimen/size_60"
android:transitionName="sharedView"
android:src="@drawable/common_icon_avatar_default" />
......
......@@ -31,7 +31,8 @@
android:layout_width="@dimen/size_60"
android:layout_height="@dimen/size_60"
android:layout_alignParentRight="true"
android:layout_centerVertical="true" />
android:layout_centerVertical="true"
android:transitionName="sharedView" />
</RelativeLayout>
<include layout="@layout/common_line" />
......@@ -77,8 +78,8 @@
<LinearLayout
android:layout_width="match_parent"
android:layout_height="@dimen/size_50"
android:visibility="gone"
android:gravity="center_vertical">
android:gravity="center_vertical"
android:visibility="gone">
<TextView
android:layout_width="wrap_content"
......@@ -89,13 +90,13 @@
android:textSize="@dimen/text_16" />
<EditText
android:enabled="false"
android:id="@+id/et_name"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginLeft="@dimen/size_15"
android:layout_weight="1"
android:background="@null"
android:enabled="false"
android:gravity="right|center_vertical"
android:hint="请输入姓名"
android:maxLength="10"
......@@ -188,13 +189,13 @@
android:textSize="@dimen/text_16" />
<EditText
android:enabled="false"
android:id="@+id/et_phone"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginLeft="@dimen/size_15"
android:layout_weight="1"
android:background="@null"
android:enabled="false"
android:gravity="right|center_vertical"
android:hint="请输入手机号"
android:inputType="phone|number"
......@@ -209,8 +210,8 @@
<LinearLayout
android:layout_width="match_parent"
android:layout_height="@dimen/size_50"
android:visibility="gone"
android:gravity="center_vertical">
android:gravity="center_vertical"
android:visibility="gone">
<TextView
android:layout_width="wrap_content"
......@@ -221,13 +222,13 @@
android:textSize="@dimen/text_16" />
<EditText
android:enabled="false"
android:id="@+id/et_id_card"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginLeft="@dimen/size_15"
android:layout_weight="1"
android:background="@null"
android:enabled="false"
android:gravity="right|center_vertical"
android:hint="请输入身份证号"
android:maxLength="18"
......
......@@ -45,4 +45,5 @@ dependencies {
api project(':RvWrapper')
api project(':component_control')
api project(':plugin_coupon')
}
......@@ -66,8 +66,8 @@ import io.reactivex.functions.Consumer;
* 旅游
*/
public class TourismFragment extends BaseFragment<TourismPresenter> implements BaseQuickAdapter.RequestLoadMoreListener, SimpleRefreshLayout.OnSimpleRefreshListener {
public class TourismFragment extends BaseFragment<TourismPresenter> implements SimpleRefreshLayout.OnSimpleRefreshListener {
//BaseQuickAdapter.RequestLoadMoreListener,
@BindView(R2.id.travel_city_text)
TextView travelCityText;
@BindView(R2.id.search_input)
......@@ -136,7 +136,7 @@ public class TourismFragment extends BaseFragment<TourismPresenter> implements B
mAllPopularAdapter = new AllPopularAdapter();
rvPopularMore.setLayoutManager(new GridLayoutManager(_mActivity, 3));
rvPopularMore.addItemDecoration(new AbSpacesItemDecoration(23));// 分割线。
rvPopularMore.setNestedScrollingEnabled(false);
// rvPopularMore.setNestedScrollingEnabled(false);
rvPopularMore.setAdapter(mAllPopularAdapter);
//周边游
......@@ -175,6 +175,18 @@ public class TourismFragment extends BaseFragment<TourismPresenter> implements B
.navigation();
}
});
mTourAroundAdapter.setOnLoadMoreListener(new BaseQuickAdapter.RequestLoadMoreListener() {
@Override
public void onLoadMoreRequested() {
if (mPage >= countPage) {
mTourAroundAdapter.loadMoreEnd();
} else {
mPage++;
getLoadTourAroundData(mPage);
}
}
},rvTourAround);
}
@Override
......@@ -382,15 +394,15 @@ public class TourismFragment extends BaseFragment<TourismPresenter> implements B
}
@Override
public void onLoadMoreRequested() {
if (mPage >= countPage) {
mTourAroundAdapter.loadMoreEnd();
} else {
mPage++;
getLoadTourAroundData(mPage);
}
}
// @Override
// public void onLoadMoreRequested() {
// if (mPage >= countPage) {
// mTourAroundAdapter.loadMoreEnd();
// } else {
// mPage++;
// getLoadTourAroundData(mPage);
// }
// }
@Override
......
package com.rv.tourism.bean;
import com.ruiwenliu.wrapper.base.BaseBean;
/**
* 支付宝订单支付
*/
public class BeanTourOrderAliPay extends BaseBean{
private String data;
public String getData() {
return data;
}
public void setData(String data) {
this.data = data;
}
}
......@@ -100,7 +100,7 @@ public class PopularTourListActivity extends BaseStatusActivity<TourismPresenter
mAllPopularAdapter = new AllPopularAdapter();
rvPopularMore.setLayoutManager(new GridLayoutManager(mActivity, 3));
rvPopularMore.addItemDecoration(new AbSpacesItemDecoration(23));// 分割线。
rvPopularMore.setNestedScrollingEnabled(false);
// rvPopularMore.setNestedScrollingEnabled(false);
rvPopularMore.setAdapter(mAllPopularAdapter);
titleView.setOnClickListener(new View.OnClickListener() {
......@@ -139,6 +139,18 @@ public class PopularTourListActivity extends BaseStatusActivity<TourismPresenter
}
});
mRecommendedRouteAdapter.setOnLoadMoreListener(new BaseQuickAdapter.RequestLoadMoreListener() {
@Override
public void onLoadMoreRequested() {
if (mPage >= countPage) {
mRecommendedRouteAdapter.loadMoreEnd();
} else {
mPage++;
getLoadPopularTourListData(mPage);
}
}
},rvRecommendedRoute);
}
@OnClick(R2.id.travel_hot_more_close)
......@@ -279,6 +291,16 @@ public class PopularTourListActivity extends BaseStatusActivity<TourismPresenter
ButterKnife.bind(this);
}
// @Override
// public void onLoadMoreRequested() {
// if (mPage >= countPage) {
// mRecommendedRouteAdapter.loadMoreEnd();
// } else {
// mPage++;
// getLoadPopularTourListData(mPage);
// }
// }
public class AbSpacesItemDecoration extends RecyclerView.ItemDecoration {
......
......@@ -360,7 +360,7 @@ public class TravelDetailsActivity extends BaseStatusActivity<TourismPresenter>
if (platform.name().equals("WEIXIN_FAVORITE")) {
showToast(platform + " 收藏成功啦");
showToast( " 收藏成功啦");
} else {
if (platform != SHARE_MEDIA.MORE && platform != SHARE_MEDIA.SMS
......@@ -375,7 +375,7 @@ public class TravelDetailsActivity extends BaseStatusActivity<TourismPresenter>
&& platform != SHARE_MEDIA.GOOGLEPLUS
&& platform != SHARE_MEDIA.YNOTE
&& platform != SHARE_MEDIA.EVERNOTE) {
showToast(platform + "分享成功啦");
showToast("分享成功啦");
}
......
......@@ -4,11 +4,14 @@ import android.annotation.SuppressLint;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.support.annotation.Nullable;
import android.support.v4.widget.PopupWindowCompat;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.text.TextUtils;
import android.util.Log;
import android.view.Gravity;
import android.view.View;
import android.view.ViewGroup;
......@@ -21,6 +24,7 @@ import android.widget.TextView;
import com.alibaba.android.arouter.launcher.ARouter;
import com.alibaba.fastjson.JSON;
import com.alipay.sdk.app.PayTask;
import com.base.utils.tools.java.DateUtil;
import com.base.utils.ui.datetime.selector.util.TextUtil;
import com.chad.library.adapter.base.BaseQuickAdapter;
......@@ -30,6 +34,7 @@ import com.frame.base.bus.PaymentSuccessfulEvent;
import com.frame.base.bus.RxBus;
import com.frame.base.url.Constance;
import com.frame.rv.config.RvFrameConfig;
import com.frame.rv.widget.PayResult;
import com.ruiwenliu.wrapper.base.BaseBean;
import com.ruiwenliu.wrapper.base.BaseStatusActivity;
import com.ruiwenliu.wrapper.util.ViewHolder;
......@@ -46,6 +51,7 @@ import com.rv.tourism.adapter.VisitorInformationAdapter;
import com.rv.tourism.api.TourismApi;
import com.rv.tourism.bean.BeanConfirmOrder;
import com.rv.tourism.bean.BeanOrderParam;
import com.rv.tourism.bean.BeanTourOrderAliPay;
import com.rv.tourism.bean.BeanTourOrderPay;
import com.rv.tourism.bean.BeanTourOrderResponse;
import com.rv.tourism.bean.BeanVisitorInformation;
......@@ -113,6 +119,7 @@ public class TravelerConfirmOrderActivity extends BaseStatusActivity<TourismPres
@BindView(R2.id.tv_coupon_amount)
TextView tvCouponAmount;
private static final int SDK_ALI_PAY_FLAG = 11;
private BeanOrderParam dataBean;
private VisitorInformationAdapter mVisitorInformationAdapter;
private List<BeanVisitorInformation> selectData = new ArrayList<>();
......@@ -126,6 +133,7 @@ public class TravelerConfirmOrderActivity extends BaseStatusActivity<TourismPres
private OrderPriceDetailBean orderPriceDetailBean;//订单价格明细实体类
private OrderPriceDetailPw detailPw;//显示订单价格明细弹窗
private BeanConfirmOrder info;
private int payType;//选择支付类型
private List<CouponBean.DataBean> couponDataList;//优惠券数据
......@@ -270,24 +278,22 @@ public class TravelerConfirmOrderActivity extends BaseStatusActivity<TourismPres
public void onShowResult(int requestType, BaseBean result) {
switch (requestType) {
case 0:
ARouter.getInstance().build(Constance.ACTIVITY_URL_ORDERLIST).navigation();
finish();
break;
case 1:
BeanTourOrderResponse orderBean = (BeanTourOrderResponse) result;
if (orderBean.getData().getRealAmount() ==0){
if (orderBean.getData().getRealAmount() == 0) {
ARouter.getInstance().build(Constance.ACTIVITY_URL_ORDERLIST)
.withInt("position", 1)
.navigation();
finish();
}else {
orderPay(orderBean.getData().getNo(), 1, 1);
} else {
orderPay(orderBean.getData().getNo());
}
break;
case 2:
case 1:
pay((BeanTourOrderPay) result);
break;
case 2:
aliPayData((BeanTourOrderAliPay) result);
break;
case 3:
setData((BeanConfirmOrder) result);
break;
......@@ -306,7 +312,7 @@ public class TravelerConfirmOrderActivity extends BaseStatusActivity<TourismPres
private void couponData(CouponBean couponBean) {
if (couponBean.getData() != null && couponBean.getData().size() > 0) {
couponDataList = couponBean.getData();
status =couponDataList.get(0).getStatus();
status = couponDataList.get(0).getStatus();
if ("1".equals(status)) {
couponAmount = couponDataList.get(0).getUsedAmount();
tvCouponAmount.setText("-¥" + couponDataList.get(0).getUsedAmount());
......@@ -345,10 +351,10 @@ public class TravelerConfirmOrderActivity extends BaseStatusActivity<TourismPres
childrenBeanList.add(childrenBean2);
}
if (price >couponAmount){
if (price > couponAmount) {
price = price - couponAmount; // 优惠券减
}else {
price =0.00;
} else {
price = 0.00;
}
......@@ -430,15 +436,15 @@ public class TravelerConfirmOrderActivity extends BaseStatusActivity<TourismPres
/**
* 订单支付
*/
private void orderPay(String orderNo, int payWay, int type) {
private void orderPay(String orderNo) {
Map<String, Object> headMap = new LinkedHashMap<>();
if (OkGoUtil.getToken() != null)
headMap.put("Authorization", OkGoUtil.getToken());
// Map<String, Object> map = new LinkedHashMap<>();
// map.put("orderNo",orderNo);
// map.put("payWay",payWay);
// map.put("type",type);
mPresenter.postBodyData(RvFrameConfig.VEHICLE_ORDER, 2, TourismApi.COMMIT_ORDER_PAY, BeanTourOrderPay.class, new payBody(orderNo, payWay, type), headMap, true);
if (payType == 1) {
mPresenter.postBodyData(RvFrameConfig.VEHICLE_ORDER, 1, TourismApi.COMMIT_ORDER_PAY, BeanTourOrderPay.class, new payBody(orderNo, payType, 1), headMap, true);
} else {
mPresenter.postBodyData(RvFrameConfig.VEHICLE_ORDER, 2, TourismApi.COMMIT_ORDER_PAY, BeanTourOrderAliPay.class, new payBody(orderNo, payType, 1), headMap, true);
}
}
......@@ -485,19 +491,19 @@ public class TravelerConfirmOrderActivity extends BaseStatusActivity<TourismPres
int i = v.getId();
if (i == R.id.iv_close) {
dismiss();
createOrder(name, phone, 0);
} else if (i == R.id.ll_item_wechat) {
payType = 1;
helper.setChecked(R.id.rb_wechat, true);
helper.setChecked(R.id.rb_alipay, false);
} else if (i == R.id.ll_item_alipay) {
showToast("该功能还没有开通!");
// helper.setChecked(R.id.rb_wechat,false);
// helper.setChecked(R.id.rb_alipay,true);
payType = 2;
helper.setChecked(R.id.rb_wechat, false);
helper.setChecked(R.id.rb_alipay, true);
} else if (i == R.id.tv_pay_immediately) {
dismiss();
createOrder(name, phone, 1);
createOrder(name, phone);
}
}
......@@ -506,7 +512,7 @@ public class TravelerConfirmOrderActivity extends BaseStatusActivity<TourismPres
}.show();
}
private void createOrder(String name, String phone, int payType) {
private void createOrder(String name, String phone) {
List<String> idList = new ArrayList<>();
for (BeanVisitorInformation bean : selectData) {
......@@ -515,12 +521,12 @@ public class TravelerConfirmOrderActivity extends BaseStatusActivity<TourismPres
String ids = idList.toString().replace("[", "").replace("]", "");
String endTime = "" + DateUtil.getDateByYYYYMMDD_java(dataBean.getEndTime());
String startTime = "" + DateUtil.getDateByYYYYMMDD_java(dataBean.getStartTime());
String couponIds = couponIdList.toString().replace("[", "").replace("]", "").replaceAll(" ","");
String couponIds = couponIdList.toString().replace("[", "").replace("]", "").replaceAll(" ", "");
Map<String, Object> headMap = new LinkedHashMap<>();
if (OkGoUtil.getToken() != null)
headMap.put("Authorization", OkGoUtil.getToken());
mPresenter.postBodyData(RvFrameConfig.ADMIN_POST, payType, TourismApi.COMMIT_ORDER, BeanTourOrderResponse.class, new Tourist(etMailbox.getText().toString().trim(), name, phone, dataBean.getEndAddr(), endTime, dataBean.getGoodId(), ids, dataBean.getSpePriceId(), dataBean.getStartAddr(), dataBean.getStartCompanyId(), startTime, dataBean.getSiteId(), isInsuranceType,couponIds), headMap, true);
mPresenter.postBodyData(RvFrameConfig.ADMIN_POST, 0, TourismApi.COMMIT_ORDER, BeanTourOrderResponse.class, new Tourist(etMailbox.getText().toString().trim(), name, phone, dataBean.getEndAddr(), endTime, dataBean.getGoodId(), ids, dataBean.getSpePriceId(), dataBean.getStartAddr(), dataBean.getStartCompanyId(), startTime, dataBean.getSiteId(), isInsuranceType, couponIds), headMap, true);
}
......@@ -547,8 +553,8 @@ public class TravelerConfirmOrderActivity extends BaseStatusActivity<TourismPres
mVisitorInformationAdapter.notifyDataSetChanged();
} else if (134 == requestCode && resultCode == RESULT_OK) {
List<CouponBean.DataBean> selectCouponList = JSON.parseArray(data.getStringExtra("selectCoupon"), CouponBean.DataBean.class);
List<CouponBean.DataBean> resultCouponList = JSON.parseArray(data.getStringExtra("resultCouponList"), CouponBean.DataBean.class);
if (resultCouponList !=null && resultCouponList.size() >0){
List<CouponBean.DataBean> resultCouponList = JSON.parseArray(data.getStringExtra("resultCouponList"), CouponBean.DataBean.class);
if (resultCouponList != null && resultCouponList.size() > 0) {
couponDataList = resultCouponList;
}
couponIdList.clear();
......@@ -620,6 +626,11 @@ public class TravelerConfirmOrderActivity extends BaseStatusActivity<TourismPres
}
/**
* 微信支付
*
* @param data
*/
private void pay(BeanTourOrderPay data) {
try {
......@@ -639,6 +650,63 @@ public class TravelerConfirmOrderActivity extends BaseStatusActivity<TourismPres
}
/**
* 显示支付宝签名
*/
public void aliPayData(final BeanTourOrderAliPay bean) {
Runnable payRunnable = new Runnable() {
@Override
public void run() {
PayTask alipay = new PayTask(TravelerConfirmOrderActivity.this);
Map<String, String> result = alipay.payV2(bean.getData(), true);
Log.i("msp", result.toString());
Message msg = new Message();
msg.what = SDK_ALI_PAY_FLAG;
msg.obj = result;
mHandler.sendMessage(msg);
}
};
Thread payThread = new Thread(payRunnable);
payThread.start();
}
/**
* 支付宝返回数据handler
*/
@SuppressLint("HandlerLeak")
private Handler mHandler = new Handler() {
public void handleMessage(Message msg) {
switch (msg.what) {
case SDK_ALI_PAY_FLAG: {
@SuppressWarnings("unchecked")
PayResult payResult = new PayResult((Map<String, String>) msg.obj);
String resultStatus = payResult.getResultStatus();
// 判断resultStatus 为9000则代表支付成功
if (TextUtils.equals(resultStatus, "9000")) {
ARouter.getInstance().build(Constance.ACTIVITY_URL_ORDERLIST)
.withInt("position", 1)
.navigation();
finish();
} else if ("6001".equals(resultStatus)) {
showToast("支付取消!");
ARouter.getInstance().build(Constance.ACTIVITY_URL_ORDERLIST).navigation();
finish();
} else {
// 该笔订单真实的支付结果,需要依赖服务端的异步通知。
// showToast(payResult.toString());
}
break;
}
}
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
......@@ -663,7 +731,7 @@ public class TravelerConfirmOrderActivity extends BaseStatusActivity<TourismPres
private int hasInsure;
private String tickerNos;
public Tourist(String contactEmail, String contactMan, String contactPhone, String endAddr, String endTime, String goodId, String tourUserIds, String spePriceId, String startAddr, String startCompanyId, String startTime, String siteId, int hasInsure,String tickerNos) {
public Tourist(String contactEmail, String contactMan, String contactPhone, String endAddr, String endTime, String goodId, String tourUserIds, String spePriceId, String startAddr, String startCompanyId, String startTime, String siteId, int hasInsure, String tickerNos) {
this.contactEmail = contactEmail;
this.contactMan = contactMan;
this.contactPhone = contactPhone;
......
......@@ -63,7 +63,7 @@
android:layout_height="@dimen/size_40"
android:layout_marginLeft="@dimen/size_10"
android:layout_weight="1"
android:background="@drawable/shape_rv_textview_tourism_translucent"
android:background="@drawable/shape_rv_textview_home_search"
android:gravity="center"
android:orientation="horizontal">
......
......@@ -42,4 +42,5 @@ dependencies {
api project(':component_utils')
api project(':component_control')
}
......@@ -43,4 +43,5 @@ dependencies {
api project(':component_resource')
api project(':component_utils')
}
......@@ -25,12 +25,13 @@
<LinearLayout
android:layout_width="match_parent"
android:layout_height="@dimen/size_60"
android:paddingLeft="@dimen/size_15"
android:paddingLeft="@dimen/size_5"
android:paddingRight="@dimen/size_5"
android:gravity="center_vertical"
android:background="@color/colorWrite">
<LinearLayout
android:visibility="gone"
android:id="@+id/ll_item_home"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
......
......@@ -28,4 +28,5 @@ dependencies {
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
annotationProcessor 'com.jakewharton:butterknife-compiler:9.0.0-rc1'
api project(':RvWrapper')
}
......@@ -33,6 +33,7 @@ dependencies {
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
implementation project(':component_dialog')
implementation project(':module_home')
api project(':module_home')
implementation project(':module_tourism')
}
......@@ -39,6 +39,7 @@ import com.ruiwenliu.wrapper.bean.UserInfoBean;
import com.rv.member.presenter.MemberPresenter;
import com.rv.component.utils.RvCache;
import com.rv.component.utils.CacheEnum;
import com.rv.tourism.bean.BeanTourOrderAliPay;
import com.tencent.mm.opensdk.openapi.IWXAPI;
import com.tencent.mm.opensdk.openapi.WXAPIFactory;
import com.yuyife.okgo.OkGoUtil;
......@@ -191,6 +192,9 @@ public class MemberCenterActivity extends BaseStatusActivity<MemberPresenter> {
case 3:
mPresenter.pay(MemberCenterActivity.this, api, (BeanTourOrderPay) result);
break;
case 4:
mPresenter.aliPay(MemberCenterActivity.this, (BeanTourOrderAliPay) result);
break;
}
}
......@@ -367,17 +371,14 @@ public class MemberCenterActivity extends BaseStatusActivity<MemberPresenter> {
int i = v.getId();
if (i == R.id.iv_close) {
dismiss();
// createOrder(name, phone, 0);
} else if (i == R.id.ll_item_wechat) {
payType = 1;
helper.setChecked(R.id.rb_wechat, true);
helper.setChecked(R.id.rb_alipay, false);
} else if (i == R.id.ll_item_alipay) {
showToast("该功能还没有开通!");
// payType = 2 ;
// helper.setChecked(R.id.rb_wechat,false);
// helper.setChecked(R.id.rb_alipay,true);
payType = 2 ;
helper.setChecked(R.id.rb_wechat,false);
helper.setChecked(R.id.rb_alipay,true);
} else if (i == R.id.tv_pay_immediately) {
dismiss();
......
package com.rv.member.presenter;
import android.annotation.SuppressLint;
import android.content.Context;
import android.os.Handler;
import android.os.Message;
import android.text.TextUtils;
import android.util.Log;
import android.widget.Toast;
import com.alibaba.android.arouter.launcher.ARouter;
import com.alipay.sdk.app.PayTask;
import com.frame.base.bus.PaymentFailedEvent;
import com.frame.base.bus.PaymentSuccessfulEvent;
import com.frame.base.bus.RxBus;
import com.frame.base.url.Constance;
import com.frame.rv.config.RvFrameConfig;
import com.frame.rv.widget.PayResult;
import com.ruiwenliu.wrapper.weight.ToastView;
import com.rv.home.rv.module.ApiConfig;
import com.rv.home.rv.module.basic.presenter.CommonPresenter;
import com.rv.member.MemberCenterActivity;
import com.rv.member.bean.MemberListBean;
import com.rv.member.bean.BeanTourOrderPay;
import com.rv.member.bean.MemberOrderBean;
import com.rv.member.bean.MemberOrderPostBodyBean;
import com.rv.member.bean.PayBodyBean;
import com.rv.tourism.api.TourismApi;
import com.rv.tourism.bean.BeanTourOrderAliPay;
import com.rv.tourism.other.TravelerConfirmOrderActivity;
import com.tencent.mm.opensdk.modelpay.PayReq;
import com.tencent.mm.opensdk.openapi.IWXAPI;
import com.yuyife.okgo.OkGoUtil;
......@@ -20,6 +36,7 @@ import java.util.LinkedHashMap;
import java.util.Map;
public class MemberPresenter extends CommonPresenter {
private static final int SDK_ALI_PAY_FLAG = 11;
public void pay(Context context, IWXAPI api, BeanTourOrderPay data) {
try {
......@@ -54,7 +71,57 @@ public class MemberPresenter extends CommonPresenter {
Map<String, Object> headMap = new LinkedHashMap<>();
if (OkGoUtil.getToken() != null)
headMap.put("Authorization", OkGoUtil.getToken());
postBodyData(RvFrameConfig.VEHICLE_ORDER, 3, ApiConfig.COMMIT_ORDER_PAY, BeanTourOrderPay.class, new PayBodyBean(orderNo, payWay, type), headMap, true);
if (payWay == 1) {
postBodyData(RvFrameConfig.VEHICLE_ORDER, 3, ApiConfig.COMMIT_ORDER_PAY, BeanTourOrderPay.class, new PayBodyBean(orderNo, payWay, type), headMap, true);
} else {
postBodyData(RvFrameConfig.VEHICLE_ORDER, 4, TourismApi.COMMIT_ORDER_PAY, BeanTourOrderAliPay.class, new PayBodyBean(orderNo, payWay, type), headMap, true);
}
}
public void aliPay(final MemberCenterActivity memberCenterActivity, final BeanTourOrderAliPay bean) {
Runnable payRunnable = new Runnable() {
@Override
public void run() {
PayTask alipay = new PayTask(memberCenterActivity);
Map<String, String> result = alipay.payV2(bean.getData(), true);
Log.i("msp", result.toString());
Message msg = new Message();
msg.what = SDK_ALI_PAY_FLAG;
msg.obj = result;
mHandler.sendMessage(msg);
}
};
Thread payThread = new Thread(payRunnable);
payThread.start();
}
/**
* 支付宝返回数据handler
*/
@SuppressLint("HandlerLeak")
private Handler mHandler = new Handler() {
public void handleMessage(Message msg) {
switch (msg.what) {
case SDK_ALI_PAY_FLAG: {
@SuppressWarnings("unchecked")
PayResult payResult = new PayResult((Map<String, String>) msg.obj);
String resultStatus = payResult.getResultStatus();
// 判断resultStatus 为9000则代表支付成功
if (TextUtils.equals(resultStatus, "9000")) {
RxBus.post(new PaymentSuccessfulEvent());
} else if ("6001".equals(resultStatus)) {
RxBus.post(new PaymentFailedEvent());
} else {
// 该笔订单真实的支付结果,需要依赖服务端的异步通知。
// showToast(payResult.toString());
}
break;
}
}
}
};
}
......@@ -34,5 +34,6 @@ dependencies {
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
api "com.google.code.gson:gson:$rootProject.ext.gsonVersion"
implementation project(':RvWrapper')
implementation project(':module_home')
api project(':module_home')
}
......@@ -35,5 +35,6 @@ dependencies {
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
implementation project(':module_home')
api project(':module_home')
}
......@@ -41,4 +41,5 @@ dependencies {
api project(':component_resource')
api project(':component_utils')
}
......@@ -30,4 +30,5 @@ dependencies {
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
implementation 'com.liulishuo.filedownloader:library:1.6.8'
implementation project(':RvWrapper')
}
......@@ -40,5 +40,5 @@ dependencies {
api project(':RvWrapper')
api project(':component_resource')
api project(':component_utils')
implementation project(':module_home')
api project(':module_home')
}
......@@ -17,7 +17,9 @@ import com.frame.base.bus.RxBus;
import com.frame.rv.config.RvFrameConfig;
import com.ruiwenliu.wrapper.base.BaseBean;
import com.ruiwenliu.wrapper.base.BaseStatusActivity;
import com.ruiwenliu.wrapper.bean.BeanUserInfo;
import com.ruiwenliu.wrapper.util.RxJavaManager;
import com.ruiwenliu.wrapper.util.listener.TextChangedListener;
import com.ruiwenliu.wrapper.weight.TitleView;
import com.rv.component.utils.Cookie;
import com.rv.home.rv.module.ApiConfig;
......@@ -81,7 +83,15 @@ public class SetPayPwdActivity extends BaseStatusActivity<CommonPresenter> {
@Override
protected void initView(Bundle savedInstanceState, TitleView titleView, Intent intent) {
titleView.setTitle("设置支付密码");
editListener(edtPhone);
editListener(edtIdentifyCode);
initRxbus();
BeanUserInfo.UserInfo userInfo = getUserInfo();
if (userInfo !=null){
edtPhone.setText(userInfo.getUsername());
edtPhone.setEnabled(false);
}
}
private void initRxbus() {
......@@ -95,6 +105,27 @@ public class SetPayPwdActivity extends BaseStatusActivity<CommonPresenter> {
});
}
/**
* 文本输入监听
*
* @param editText
*/
private void editListener(final EditText editText) {
editText.addTextChangedListener(new TextChangedListener() {
@Override
public void afterTextChanged(Editable s) {
super.afterTextChanged(s);
if (getPhone().length() > 0 && getCode().length() > 0) {
btnNext.setEnabled(true);
btnNext.setBackground(getResources().getDrawable(R.drawable.bg_next_btn_able));
} else {
btnNext.setEnabled(false);
btnNext.setBackground(getResources().getDrawable(R.drawable.bg_next_btn_unable));
}
}
});
}
private TextWatcher watcher = new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {
......
......@@ -2,10 +2,13 @@ package com.xxrv.wallet.activity;
import android.content.Intent;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.TextView;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.alibaba.android.arouter.launcher.ARouter;
import com.frame.base.bus.IDCardCertificationEvent;
import com.frame.base.bus.Observer;
import com.frame.base.bus.RxBus;
import com.frame.base.bus.WithdrawSuccessEvent;
......@@ -13,7 +16,15 @@ import com.frame.base.url.Constance;
import com.frame.rv.config.RvFrameConfig;
import com.ruiwenliu.wrapper.base.BaseBean;
import com.ruiwenliu.wrapper.base.BaseStatusActivity;
import com.ruiwenliu.wrapper.bean.BeanUserInfo;
import com.ruiwenliu.wrapper.util.ViewHolder;
import com.ruiwenliu.wrapper.weight.TitleView;
import com.rv.component.dialog.VerifiedTipsDialog;
import com.rv.home.rv.module.ApiConfig;
import com.rv.home.rv.module.ui.main.home.ConfirmOrderActivity;
import com.rv.home.rv.module.ui.main.home.dialog.TipsDialog;
import com.rv.home.rv.module.ui.main.home.order.CancelTheTripActivity;
import com.rv.home.rv.module.ui.main.home.order.bean.CancelTheTripBean;
import com.xxrv.wallet.R;
import com.xxrv.wallet.R2;
import com.xxrv.wallet.api.WalletApi;
......@@ -47,6 +58,8 @@ public class WalletActivity extends BaseStatusActivity<WalletPresenter> {
private String balance;
private BeanUserInfo.UserInfo userInfo;
@Override
protected int setLayout() {
......@@ -57,6 +70,7 @@ public class WalletActivity extends BaseStatusActivity<WalletPresenter> {
protected void initView(Bundle savedInstanceState, TitleView titleView, Intent intent) {
showTitle(false);
initRxbus();
userInfo = getUserInfo();
}
private void initRxbus() {
......@@ -65,7 +79,7 @@ public class WalletActivity extends BaseStatusActivity<WalletPresenter> {
.subscribe(new Observer<SetPasswordSuccessEvent>(disposable) {
@Override
public void onNext(SetPasswordSuccessEvent event) {
startActivity(WithdrawActivity.getIntent(mActivity,balance));
startActivity(WithdrawActivity.getIntent(mActivity, balance));
}
});
......@@ -77,6 +91,15 @@ public class WalletActivity extends BaseStatusActivity<WalletPresenter> {
getWalletList();
}
});
RxBus.tObservable(IDCardCertificationEvent.class)
.observeOn(Schedulers.newThread())
.subscribe(new Observer<IDCardCertificationEvent>(disposable) {
@Override
public void onNext(IDCardCertificationEvent event) {
getCheckSetPwd();
}
});
}
@Override
......@@ -86,16 +109,15 @@ public class WalletActivity extends BaseStatusActivity<WalletPresenter> {
setWalletData((WalletBean) result);
break;
case 1:
setCheckPwd((WalletCheckPwdBean)result);
setCheckPwd((WalletCheckPwdBean) result);
break;
}
}
private void setWalletData(WalletBean bean) {
if (bean != null && bean.getData() != null) {
balance = bean.getData().getBalance();
balance = bean.getData().getBalance();
tvWalletBalance.setText("¥" + bean.getData().getBalance());
tvTodayAmount.setText(bean.getData().getTodayAmount());
tvTotalAmount.setText(bean.getData().getTotalAmount());
......@@ -129,7 +151,33 @@ public class WalletActivity extends BaseStatusActivity<WalletPresenter> {
finish();
} else if (id == R.id.tv_item_withdraw) {
//提现
getCheckSetPwd();
if (userInfo != null) { ////实名认证状态:0-未认证,1-已认证
if (0==userInfo.getCertificationStatus()) {
new VerifiedTipsDialog(mActivity) {
@Override
public void helper(ViewHolder helper) {
super.helper(helper);
helper.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
int id = v.getId();
if (id == R.id.tv_ok) {
ARouter.getInstance()
.build(Constance.ACTIVITY_URL_IDCARDCERTIFICATION)
.navigation();
dismiss();
} else if (id == R.id.tv_cancel) {
dismiss();
}
}
}, R.id.tv_ok, R.id.tv_cancel);
}
}.show();
} else {
getCheckSetPwd();
}
}
} else if (id == R.id.rl_item_consumer_details) {
startActivity(new Intent(getApplicationContext(), ConsumeDetailActivity.class));
......@@ -156,10 +204,10 @@ public class WalletActivity extends BaseStatusActivity<WalletPresenter> {
private void setCheckPwd(WalletCheckPwdBean bean) {
if (bean !=null){
if (bean.isData()){ //true-设置过;false-没有
startActivity(WithdrawActivity.getIntent(mActivity,balance));
}else {
if (bean != null) {
if (bean.isData()) { //true-设置过;false-没有
startActivity(WithdrawActivity.getIntent(mActivity, balance));
} else {
startActivity(SetPayPwdActivity.getIntent(mActivity));
}
}
......
......@@ -19,11 +19,13 @@
android:layout_height="match_parent"
android:layout_weight="1"
android:maxLength="11"
android:enabled="true"
android:background="@color/white"
android:gravity="left|center_vertical"
android:hint="请输入该账号注册的手机号"
android:imeOptions="actionSend"
android:inputType="phone"
android:textColor="@color/colorMain"
android:textColorHint="@color/colorGray"
android:textSize="@dimen/sp_14" />
......
......@@ -15,7 +15,7 @@
android:orientation="horizontal"
android:weightSum="6">
<TextView
<EditText
android:id="@+id/edt_pwd1"
android:layout_width="0dp"
android:layout_height="@dimen/size_50"
......@@ -25,7 +25,7 @@
android:gravity="center"
android:inputType="numberPassword|textPassword" />
<TextView
<EditText
android:id="@+id/edt_pwd2"
android:layout_width="0dp"
android:layout_height="@dimen/size_50"
......@@ -36,7 +36,7 @@
android:gravity="center"
android:inputType="numberPassword|textPassword" />
<TextView
<EditText
android:id="@+id/edt_pwd3"
android:layout_width="0dp"
android:layout_height="@dimen/size_50"
......@@ -47,7 +47,7 @@
android:gravity="center"
android:inputType="numberPassword|textPassword" />
<TextView
<EditText
android:id="@+id/edt_pwd4"
android:layout_width="0dp"
android:layout_height="@dimen/size_50"
......@@ -58,7 +58,7 @@
android:gravity="center"
android:inputType="numberPassword|textPassword" />
<TextView
<EditText
android:id="@+id/edt_pwd5"
android:layout_width="0dp"
android:layout_height="@dimen/size_50"
......@@ -69,7 +69,7 @@
android:gravity="center"
android:inputType="numberPassword|textPassword" />
<TextView
<EditText
android:id="@+id/edt_pwd6"
android:layout_width="0dp"
android:layout_height="@dimen/size_50"
......
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