Skip to content

Commit

Permalink
微信支付联调
Browse files Browse the repository at this point in the history
  • Loading branch information
11hhlin1 committed Oct 14, 2016
1 parent 6f087f7 commit 000c66e
Show file tree
Hide file tree
Showing 7 changed files with 9,930 additions and 19 deletions.
1 change: 1 addition & 0 deletions app/src/main/java/com/gjj/shop/net/ApiConstants.java
Original file line number Diff line number Diff line change
Expand Up @@ -37,5 +37,6 @@ public class ApiConstants {
public static final String COLLECT_LIST = host+ "/collect/infoList";
public static final String COLLECT_GOOD = host+ "/collect/edit";
public static final String ADD_FEEDBACK = host+ "/feedback/add";
public static final String PAY_BY_WEIXIN = host+ "/pay/wx/appOrder";

}
93 changes: 93 additions & 0 deletions app/src/main/java/com/gjj/shop/order/ChoosePayWayFragment.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
package com.gjj.shop.order;

import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.RelativeLayout;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.gjj.applibrary.app.AppLib;
import com.gjj.applibrary.http.callback.JsonCallback;
import com.gjj.shop.R;
import com.gjj.shop.base.BaseFragment;
import com.gjj.shop.net.ApiConstants;
import com.gjj.shop.wxapi.ShareConstant;
import com.gjj.thirdaccess.WeiXinAccess;
import com.lzy.okhttputils.OkHttpUtils;
import com.lzy.okhttputils.cache.CacheMode;

import butterknife.Bind;
import butterknife.ButterKnife;
import butterknife.OnClick;
import okhttp3.Call;
import okhttp3.Response;

/**
* Created by Chuck on 2016/10/14.
*/

public class ChoosePayWayFragment extends BaseFragment {
@Bind(R.id.ali_pay_check)
CheckBox aliPayCheck;
@Bind(R.id.ali_pay_item)
RelativeLayout aliPayItem;
@Bind(R.id.weixin_pay_check)
CheckBox weixinPayCheck;
@Bind(R.id.weixin_pay_item)
RelativeLayout weixinPayItem;
@Bind(R.id.pay_btn)
Button payBtn;
String payInfo;
@Override
public int getContentViewLayout() {
return R.layout.fragment_pay_sure;
}

@Override
public void initView() {
payInfo = getArguments().getString("payInfo");
aliPayCheck.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if (isChecked) {
weixinPayCheck.setChecked(false);
}
}
});
weixinPayCheck.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked) {
aliPayCheck.setChecked(false);
}
}
});
}

@OnClick(R.id.pay_btn)
public void onClick() {
if(weixinPayCheck.isChecked()) {
OkHttpUtils.post(ApiConstants.PAY_BY_WEIXIN)
.tag(this)
.cacheMode(CacheMode.NO_CACHE)
// .upJson(JSON.toJSONString(commitOrderReq))
.execute(new JsonCallback<String>(String.class) {

@Override
public void onSuccess(String s, Call call, Response response) {
WeiXinAccess weiXinAccess = new WeiXinAccess(AppLib.getContext(), ShareConstant.WEXINAPPID);
JSONObject jsonObject = JSON.parseObject(s);
weiXinAccess.pay2weixin(jsonObject.getString("partnerid"),jsonObject.getString("prepayid"), jsonObject.getString("noncestr"),jsonObject.getString("timestamp"),jsonObject.getString("sign") );
}
});

} else {

}
}
}
22 changes: 12 additions & 10 deletions app/src/main/java/com/gjj/shop/order/EditOrderFragment.java
Original file line number Diff line number Diff line change
Expand Up @@ -240,17 +240,19 @@ private void commitOrder() {
@Override
public void onSuccess(String payBean, Call call, Response response) {
ToastUtil.shortToast(R.string.success);
WeiXinAccess weiXinAccess = new WeiXinAccess(AppLib.getContext(), ShareConstant.WEXINAPPID);
// weiXinAccess.pay2weixin();
Bundle bundle = new Bundle();
bundle.putString("payInfo", payBean);
PageSwitcher.switchToTopNavPage(getActivity(),ChoosePayWayFragment.class, bundle, getString(R.string.pay), "");

final String orderInfo = ""; // 订单信息
ForegroundTaskExecutor.executeTask(new Runnable() {
@Override
public void run() {
PayTask alipay = new PayTask(getActivity());
Map<String, String> result = alipay.payV2(orderInfo,true);
}
});

// final String orderInfo = ""; // 订单信息
// ForegroundTaskExecutor.executeTask(new Runnable() {
// @Override
// public void run() {
// PayTask alipay = new PayTask(getActivity());
// Map<String, String> result = alipay.payV2(orderInfo,true);
// }
// });
}

@Override
Expand Down
14 changes: 13 additions & 1 deletion app/src/main/java/com/gjj/shop/wxapi/WXPayEntryActivity.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package com.gjj.shop.wxapi;

import com.gjj.applibrary.log.L;
import com.gjj.applibrary.util.ToastUtil;
import com.gjj.shop.R;
import com.tencent.mm.sdk.constants.ConstantsAPI;
import com.tencent.mm.sdk.modelbase.BaseReq;
Expand Down Expand Up @@ -44,12 +45,23 @@ public void onReq(BaseReq req) {
@Override
public void onResp(BaseResp resp) {
L.d("onPayFinish, errCode = " + resp.errCode);

switch (resp.errCode) {
case 0:
ToastUtil.shortToast(R.string.success);
break;
case -1:
ToastUtil.shortToast(getApplicationContext(), "参数错误");
break;
case -2:
ToastUtil.shortToast(getApplicationContext(), "用户取消");
break;
}
if (resp.getType() == ConstantsAPI.COMMAND_PAY_BY_WX) {
// AlertDialog.Builder builder = new AlertDialog.Builder(this);
// builder.setTitle(R.string.app_tip);
// builder.setMessage(getString(R.string.pay_result_callback_msg, String.valueOf(resp.errCode)));
// builder.show();
}
finish();
}
}
91 changes: 91 additions & 0 deletions app/src/main/res/layout/fragment_pay_sure.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">

<TextView
android:layout_width="match_parent"
android:layout_height="@dimen/margin_88p"
android:textColor="@color/black"
android:paddingLeft="@dimen/margin_30p"
android:gravity="center_vertical|left"
android:text="选择支付方式"/>
<RelativeLayout
android:id="@+id/ali_pay_item"
android:layout_width="match_parent"
android:layout_height="53dp"
android:layout_marginTop="10dp"
android:background="@color/white">
<View
style="@style/top_horizontal_line" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="@dimen/textsize_14sp"
android:textColor="@color/color_404040"
android:drawableLeft="@mipmap/alipay"
android:layout_marginLeft="10dp"
android:gravity="center_vertical"
android:layout_centerVertical="true"
android:layout_alignParentLeft="true"
android:text="支付宝"
android:drawablePadding="6dp"/>

<CheckBox
android:id="@+id/ali_pay_check"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="12dp"
android:button="@null"
android:background="@drawable/selector_check_box"/>
<View
style="@style/bottom_horizontal_line" />
</RelativeLayout>

<RelativeLayout
android:id="@+id/weixin_pay_item"
android:layout_width="match_parent"
android:layout_height="53dp"
android:background="@color/white">

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="@dimen/textsize_14sp"
android:textColor="@color/color_404040"
android:drawableLeft="@mipmap/wechat"
android:layout_marginLeft="10dp"
android:gravity="center_vertical"
android:layout_centerVertical="true"
android:layout_alignParentLeft="true"
android:text="微信支付"
android:drawablePadding="6dp"/>

<CheckBox
android:id="@+id/weixin_pay_check"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="12dp"
android:button="@null"
android:background="@drawable/selector_check_box"/>
<View
style="@style/bottom_horizontal_line" />
</RelativeLayout>

<Button
android:id="@+id/pay_btn"
style="@style/login_btn"
android:layout_width="match_parent"
android:layout_below="@+id/forget_psw"
android:layout_height="@dimen/single_line_height_132px"
android:layout_gravity="center_horizontal"
android:layout_marginLeft="@dimen/margin_30p"
android:layout_marginRight="@dimen/margin_30p"
android:layout_marginTop="@dimen/margin_40p"
android:text="@string/pay"/>
</LinearLayout>
9 changes: 1 addition & 8 deletions app/src/main/res/layout/pay_result.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,6 @@
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">

<TextView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:textColor="#ff000000"
android:textSize="20dp"
android:text="@string/pay_result_tip"/>


</LinearLayout>
Loading

0 comments on commit 000c66e

Please sign in to comment.