提交 185f7e35 作者: 王进

支付返回对象增加msg字段,返回支付信息

上级 6bf5b6cf
...@@ -177,7 +177,7 @@ class WechatSDK { ...@@ -177,7 +177,7 @@ class WechatSDK {
complete: () => { _selt.LoadingOff(); } complete: () => { _selt.LoadingOff(); }
} }
_selt.navigateToMiniProgram(params); _selt.navigateToMiniProgram(params);
return { order_code: 2 }; // 切支付状态 return { order_code: 2, msg: '' }; // 切支付状态
} else if (res.data.open_customer_service) { // 客服切支付 } else if (res.data.open_customer_service) { // 客服切支付
let order = { let order = {
sessionFrom: 'order_id=' + (res.data.order_num || '') + '&payload=' + (res.data.payload || ''), sessionFrom: 'order_id=' + (res.data.order_num || '') + '&payload=' + (res.data.payload || ''),
...@@ -195,7 +195,7 @@ class WechatSDK { ...@@ -195,7 +195,7 @@ class WechatSDK {
} }
} }
_selt.showModal(params); _selt.showModal(params);
return { order_code: 2 }; return { order_code: 2, msg: '' };
} else { } else {
// 根据返回的用户订单状态判断是新订单还是未完成订单 // 根据返回的用户订单状态判断是新订单还是未完成订单
if (res.data.order_type == 1) { // 新订单 if (res.data.order_type == 1) { // 新订单
...@@ -208,14 +208,14 @@ class WechatSDK { ...@@ -208,14 +208,14 @@ class WechatSDK {
console.log("@@SDK -> 支付成功:", data); console.log("@@SDK -> 支付成功:", data);
let coinsResult = await _selt.getCoins(_selt.deepCopy({}, _selt.sdkParams, { order_num: res.data.order_num })); let coinsResult = await _selt.getCoins(_selt.deepCopy({}, _selt.sdkParams, { order_num: res.data.order_num }));
if (coinsResult.code == 0 || coinsResult.code == 3012) { if (coinsResult.code == 0 || coinsResult.code == 3012) {
resolve({ order_code: 200 }); resolve({ order_code: 200, msg: '' });
} }
else { else {
resolve({ order_code: 0 }); resolve({ order_code: 0, msg: (coinsResult.msg || '') });
} }
}, },
fail: function (err) { fail: function (err) {
var msg = ''; let msg = '支付异常';
switch (err.errCode) { switch (err.errCode) {
case -1: case -1:
msg = '系统失败'; msg = '系统失败';
...@@ -250,6 +250,12 @@ class WechatSDK { ...@@ -250,6 +250,12 @@ class WechatSDK {
case 4: case 4:
msg = '用户操作系统支付状态异常'; msg = '用户操作系统支付状态异常';
break; break;
case 1000:
msg = '参数错误';
break;
case 1003:
msg = '米大师Portal错误';
break;
} }
if (showSDKAlert) { if (showSDKAlert) {
const params = { const params = {
...@@ -259,7 +265,7 @@ class WechatSDK { ...@@ -259,7 +265,7 @@ class WechatSDK {
} }
_selt.showModal(params); _selt.showModal(params);
} }
resolve({ order_code: err.errCode }); resolve({ order_code: err.errCode, msg: msg });
} }
})); }));
}); });
...@@ -267,7 +273,8 @@ class WechatSDK { ...@@ -267,7 +273,8 @@ class WechatSDK {
let payback = { let payback = {
order_code: res.data.order_type, order_code: res.data.order_type,
order_num: res.data.order_num, order_num: res.data.order_num,
payload: res.data.payload payload: res.data.payload,
msg: ''
} }
return payback; return payback;
} }
...@@ -285,7 +292,7 @@ class WechatSDK { ...@@ -285,7 +292,7 @@ class WechatSDK {
content: res.msg content: res.msg
} }
if (res.dialog == 1) _selt.showModal(params); if (res.dialog == 1) _selt.showModal(params);
return { order_code: 3023 }; return { order_code: 3023, msg: res.msg };
} else { // 输出订单失败消息 } else { // 输出订单失败消息
const errmsg = res.msg || '支付失败..' const errmsg = res.msg || '支付失败..'
if (showSDKAlert) { if (showSDKAlert) {
...@@ -296,7 +303,7 @@ class WechatSDK { ...@@ -296,7 +303,7 @@ class WechatSDK {
} }
_selt.showModal(params); _selt.showModal(params);
} }
return { order_code: 0 }; return { order_code: 0, msg: errmsg };
} }
} }
private async getCoins(orderParams) { // 通知服务端扣费 private async getCoins(orderParams) { // 通知服务端扣费
...@@ -310,7 +317,7 @@ class WechatSDK { ...@@ -310,7 +317,7 @@ class WechatSDK {
const _selt = this; const _selt = this;
const postData = _selt.deepCopy({}, _selt.sdkParams, roleInfo); const postData = _selt.deepCopy({}, _selt.sdkParams, roleInfo);
let payType = await _selt.sdkRequest(Links.payType, postData); let payType = await _selt.sdkRequest(Links.payType, postData);
return (payType.code === 0); return payType && (payType.code === 0);
} }
public async checkUserPhoneBind() { // 查询用户绑定状态 public async checkUserPhoneBind() { // 查询用户绑定状态
const _selt = this; const _selt = this;
...@@ -387,24 +394,24 @@ class WechatSDK { ...@@ -387,24 +394,24 @@ class WechatSDK {
return obj return obj
} }
private isArray(arr) { private isArray(arr) {
var toStr = Object.prototype.toString; let toStr = Object.prototype.toString;
if (typeof Array.isArray === 'function') { if (typeof Array.isArray === 'function') {
return Array.isArray(arr); return Array.isArray(arr);
} }
return toStr.call(arr) === '[object Array]'; return toStr.call(arr) === '[object Array]';
} }
private isPlainObject(obj) { private isPlainObject(obj) {
var toStr = Object.prototype.toString; let toStr = Object.prototype.toString;
var hasOwn = Object.prototype.hasOwnProperty; let hasOwn = Object.prototype.hasOwnProperty;
if (!obj || toStr.call(obj) !== '[object Object]') { if (!obj || toStr.call(obj) !== '[object Object]') {
return false; return false;
} }
var hasOwnConstructor = hasOwn.call(obj, 'constructor'); let hasOwnConstructor = hasOwn.call(obj, 'constructor');
var hasIsPrototypeOf = obj.constructor && obj.constructor.prototype && hasOwn.call(obj.constructor.prototype, 'isPrototypeOf'); let hasIsPrototypeOf = obj.constructor && obj.constructor.prototype && hasOwn.call(obj.constructor.prototype, 'isPrototypeOf');
if (obj.constructor && !hasOwnConstructor && !hasIsPrototypeOf) { if (obj.constructor && !hasOwnConstructor && !hasIsPrototypeOf) {
return false; return false;
} }
var key; let key;
for (key in obj) { /**/ } for (key in obj) { /**/ }
return typeof key === 'undefined' || hasOwn.call(obj, key); return typeof key === 'undefined' || hasOwn.call(obj, key);
} }
...@@ -596,12 +603,12 @@ class WechatSDK { ...@@ -596,12 +603,12 @@ class WechatSDK {
} }
// 上报等级 // 上报等级
public RoleLevelReport(roleInfo) { public RoleLevelReport(roleInfo) {
var reportData = this.deepCopy(roleInfo, { action: 'roleUpgrade' }); let reportData = this.deepCopy(roleInfo, { action: 'roleUpgrade' });
this.ReportData(reportData); this.ReportData(reportData);
} }
// 自定义上报 // 自定义上报
public CustomReport(custInfo) { public CustomReport(custInfo) {
var reportData = this.deepCopy(custInfo, { action: 'customevent' }); let reportData = this.deepCopy(custInfo, { action: 'customevent' });
this.ReportData(reportData); this.ReportData(reportData);
} }
// 数据上报接口,外部调用,参数中必须含有action值 // 数据上报接口,外部调用,参数中必须含有action值
...@@ -726,7 +733,7 @@ class WechatSDK { ...@@ -726,7 +733,7 @@ class WechatSDK {
userBtn.offTap(this); userBtn.offTap(this);
userBtn.destroy(); userBtn.destroy();
userBtn = null; userBtn = null;
var userInfo = res["userInfo"]; let userInfo = res["userInfo"];
// 上报用户授权 // 上报用户授权
_selt.ReportData(_selt.deepCopy({}, userInfo, { _selt.ReportData(_selt.deepCopy({}, userInfo, {
action: 'authorize', action: 'authorize',
...@@ -740,9 +747,9 @@ class WechatSDK { ...@@ -740,9 +747,9 @@ class WechatSDK {
break; break;
case 0: case 0:
// 用户已拒绝授权,再调用相关 API 或者 wx.authorize 会失败,需要引导用户到设置页面打开授权开关 // 用户已拒绝授权,再调用相关 API 或者 wx.authorize 会失败,需要引导用户到设置页面打开授权开关
var w = (wx as any).getSystemInfoSync().windowWidth; let w = (wx as any).getSystemInfoSync().windowWidth;
var h = (wx as any).getSystemInfoSync().windowHeight; let h = (wx as any).getSystemInfoSync().windowHeight;
var OpenSettingButton = (wx as any).createOpenSettingButton({ let OpenSettingButton = (wx as any).createOpenSettingButton({
type: "text", type: "text",
text: "", text: "",
style: { style: {
...@@ -759,7 +766,7 @@ class WechatSDK { ...@@ -759,7 +766,7 @@ class WechatSDK {
OpenSettingButton.offTap(this); OpenSettingButton.offTap(this);
OpenSettingButton.destroy(); OpenSettingButton.destroy();
OpenSettingButton = null; OpenSettingButton = null;
var userInfo = await _selt._getUserInfo(); let userInfo = await _selt._getUserInfo();
// 上报用户授权 // 上报用户授权
_selt.ReportData(_selt.deepCopy({}, userInfo, { _selt.ReportData(_selt.deepCopy({}, userInfo, {
action: 'authorize', action: 'authorize',
...@@ -778,7 +785,7 @@ class WechatSDK { ...@@ -778,7 +785,7 @@ class WechatSDK {
userBtn.offTap(this); userBtn.offTap(this);
userBtn.destroy(); userBtn.destroy();
userBtn = null; userBtn = null;
var userInfo = res["userInfo"]; let userInfo = res["userInfo"];
// 上报用户授权 // 上报用户授权
_selt.ReportData(_selt.deepCopy({}, userInfo, { _selt.ReportData(_selt.deepCopy({}, userInfo, {
action: 'authorize', action: 'authorize',
...@@ -795,8 +802,8 @@ class WechatSDK { ...@@ -795,8 +802,8 @@ class WechatSDK {
private createUserInfoButton() { private createUserInfoButton() {
const _selt = this; const _selt = this;
// 未询问过用户授权,调用相关 API 或者 wx.authorize 会弹窗询问用户 // 未询问过用户授权,调用相关 API 或者 wx.authorize 会弹窗询问用户
var w = (wx as any).getSystemInfoSync().windowWidth; let w = (wx as any).getSystemInfoSync().windowWidth;
var h = (wx as any).getSystemInfoSync().windowHeight; let h = (wx as any).getSystemInfoSync().windowHeight;
let userBtn = (wx as any).createUserInfoButton({ let userBtn = (wx as any).createUserInfoButton({
type: "text", type: "text",
text: "", text: "",
...@@ -815,7 +822,7 @@ class WechatSDK { ...@@ -815,7 +822,7 @@ class WechatSDK {
(wx as any).getUserInfo({ (wx as any).getUserInfo({
withCredentials: false,//获取用户信息,withCredentials 为 true 时需要先调用 wx.login 接口。需要用户授权 scope.userInfo。 withCredentials: false,//获取用户信息,withCredentials 为 true 时需要先调用 wx.login 接口。需要用户授权 scope.userInfo。
success: (res) => { success: (res) => {
var userInfo = res["userInfo"]; let userInfo = res["userInfo"];
resolve(userInfo); resolve(userInfo);
}, },
fail: (res: any) => { fail: (res: any) => {
...@@ -832,7 +839,7 @@ class WechatSDK { ...@@ -832,7 +839,7 @@ class WechatSDK {
return new Promise(async function (resolve, reject) { return new Promise(async function (resolve, reject) {
(wx as any).getSetting({ (wx as any).getSetting({
success: function (res) { success: function (res) {
var authSetting = res.authSetting; let authSetting = res.authSetting;
if (authSetting['scope.userInfo'] === true) { if (authSetting['scope.userInfo'] === true) {
resolve(1); resolve(1);
} }
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论