Commit 772349fb authored by linfeng's avatar linfeng

bug修复

parent 6f5136e9
...@@ -23,7 +23,6 @@ import com.xxfc.discovery.bean.DiscoveryAskBean; ...@@ -23,7 +23,6 @@ import com.xxfc.discovery.bean.DiscoveryAskBean;
import com.xxfc.discovery.event.DiscoveryAddEvent; import com.xxfc.discovery.event.DiscoveryAddEvent;
import com.xxfc.discovery.presenter.DiscoveryPresenter; import com.xxfc.discovery.presenter.DiscoveryPresenter;
import com.yuyife.okgo.OkGoUtil; import com.yuyife.okgo.OkGoUtil;
import java.util.ArrayList;
import java.util.LinkedHashMap; import java.util.LinkedHashMap;
import java.util.Map; import java.util.Map;
......
package com.rv.home.rv.module.ui.main.home.order; package com.rv.home.rv.module.ui.main.home.order;
import android.annotation.SuppressLint;
import android.os.Bundle; import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.support.annotation.Nullable; import android.support.annotation.Nullable;
import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView; import android.support.v7.widget.RecyclerView;
import android.text.TextUtils;
import android.util.Log;
import android.view.View; import android.view.View;
import com.alipay.sdk.app.PayTask;
import com.chad.library.adapter.base.BaseQuickAdapter; import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.entity.MultiItemEntity; 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.config.RvFrameConfig;
import com.frame.rv.widget.PayResult;
import com.ruiwenliu.wrapper.base.BaseBean; import com.ruiwenliu.wrapper.base.BaseBean;
import com.ruiwenliu.wrapper.base.BaseFragment; import com.ruiwenliu.wrapper.base.BaseFragment;
import com.ruiwenliu.wrapper.util.ViewHolder; import com.ruiwenliu.wrapper.util.ViewHolder;
...@@ -19,6 +28,7 @@ import com.rv.home.R; ...@@ -19,6 +28,7 @@ import com.rv.home.R;
import com.rv.home.R2; import com.rv.home.R2;
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.main.home.bean.OrderAliPayBean;
import com.rv.home.rv.module.ui.main.home.bean.OrderPayBean; import com.rv.home.rv.module.ui.main.home.bean.OrderPayBean;
import com.rv.home.rv.module.ui.main.home.order.adapter.OrderListAdapter; import com.rv.home.rv.module.ui.main.home.order.adapter.OrderListAdapter;
import com.rv.home.rv.module.ui.main.home.order.bean.OrderListBean; import com.rv.home.rv.module.ui.main.home.order.bean.OrderListBean;
...@@ -50,6 +60,7 @@ public class AllOrderFragment extends BaseFragment<CommonPresenter> implements B ...@@ -50,6 +60,7 @@ public class AllOrderFragment extends BaseFragment<CommonPresenter> implements B
private int countPage; private int countPage;
private IWXAPI api; private IWXAPI api;
private int payType =1;//选择支付类型 private int payType =1;//选择支付类型
private static final int SDK_ALI_PAY_FLAG = 11;
public static AllOrderFragment getInstance(int type) { public static AllOrderFragment getInstance(int type) {
Bundle bundl = new Bundle(); Bundle bundl = new Bundle();
...@@ -140,6 +151,9 @@ public class AllOrderFragment extends BaseFragment<CommonPresenter> implements B ...@@ -140,6 +151,9 @@ public class AllOrderFragment extends BaseFragment<CommonPresenter> implements B
case 1: case 1:
pay((OrderPayBean) result); pay((OrderPayBean) result);
break; break;
case 2:
aliPayData((OrderAliPayBean) result);
break;
} }
} }
...@@ -204,6 +218,7 @@ public class AllOrderFragment extends BaseFragment<CommonPresenter> implements B ...@@ -204,6 +218,7 @@ public class AllOrderFragment extends BaseFragment<CommonPresenter> implements B
* 支付类型选择 * 支付类型选择
*/ */
private void payShowSelect(final String no, final double orderAmount) { private void payShowSelect(final String no, final double orderAmount) {
payType = 1;
PaymentTypeSelection dialog = new PaymentTypeSelection(_mActivity) { PaymentTypeSelection dialog = new PaymentTypeSelection(_mActivity) {
@Override @Override
public void helper(final ViewHolder helper) { public void helper(final ViewHolder helper) {
...@@ -226,7 +241,7 @@ public class AllOrderFragment extends BaseFragment<CommonPresenter> implements B ...@@ -226,7 +241,7 @@ public class AllOrderFragment extends BaseFragment<CommonPresenter> implements B
} else if (id == R.id.tv_pay_immediately) { } else if (id == R.id.tv_pay_immediately) {
dismiss(); 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); }, R.id.iv_close, R.id.ll_item_wechat, R.id.ll_item_alipay, R.id.tv_pay_immediately);
...@@ -237,10 +252,14 @@ public class AllOrderFragment extends BaseFragment<CommonPresenter> implements B ...@@ -237,10 +252,14 @@ public class AllOrderFragment extends BaseFragment<CommonPresenter> implements B
} }
private void createOrder(String orderNo, int payWay, int type) { private void createOrder(String orderNo) {
Map<String, Object> headMap = new LinkedHashMap<>(); Map<String, Object> headMap = new LinkedHashMap<>();
headMap.put("Authorization", OkGoUtil.getToken()); 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);
}
} }
...@@ -301,4 +320,55 @@ public class AllOrderFragment extends BaseFragment<CommonPresenter> implements B ...@@ -301,4 +320,55 @@ public class AllOrderFragment extends BaseFragment<CommonPresenter> implements B
} }
/**
* 显示支付宝签名
*/
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;
}
}
}
};
} }
...@@ -252,6 +252,7 @@ public class ForPaymentFragment extends BaseFragment<CommonPresenter> implements ...@@ -252,6 +252,7 @@ public class ForPaymentFragment extends BaseFragment<CommonPresenter> implements
* 支付类型选择 * 支付类型选择
*/ */
private void payShowSelect(final String no, final double orderAmount) { private void payShowSelect(final String no, final double orderAmount) {
payType = 1;
PaymentTypeSelection dialog = new PaymentTypeSelection(_mActivity) { PaymentTypeSelection dialog = new PaymentTypeSelection(_mActivity) {
@Override @Override
public void helper(final ViewHolder helper) { public void helper(final ViewHolder helper) {
......
...@@ -307,6 +307,7 @@ public class OrderDetailActivity extends BaseStatusActivity<PickerPresenter> { ...@@ -307,6 +307,7 @@ public class OrderDetailActivity extends BaseStatusActivity<PickerPresenter> {
* 支付类型选择 * 支付类型选择
*/ */
private void payShowSelect(final String no, final double orderAmount) { private void payShowSelect(final String no, final double orderAmount) {
payType = 1;
PaymentTypeSelection dialog = new PaymentTypeSelection(mActivity) { PaymentTypeSelection dialog = new PaymentTypeSelection(mActivity) {
@Override @Override
public void helper(final ViewHolder helper) { public void helper(final ViewHolder helper) {
......
...@@ -281,6 +281,7 @@ public class TravelOrderDetailsActivity extends BaseStatusActivity<PickerPresent ...@@ -281,6 +281,7 @@ public class TravelOrderDetailsActivity extends BaseStatusActivity<PickerPresent
* 支付类型选择 * 支付类型选择
*/ */
private void payShowSelect(final String no, final double orderAmount) { private void payShowSelect(final String no, final double orderAmount) {
payType = 1;
PaymentTypeSelection dialog = new PaymentTypeSelection(mActivity) { PaymentTypeSelection dialog = new PaymentTypeSelection(mActivity) {
@Override @Override
public void helper(final ViewHolder helper) { public void helper(final ViewHolder helper) {
......
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