Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
W
weixin_sdk_release
概览
概览
详情
活动
周期分析
版本库
存储库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
JIRA
JIRA
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
open
weixin_sdk_release
Commits
185f7e35
提交
185f7e35
authored
6月 11, 2020
作者:
王进
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
支付返回对象增加msg字段,返回支付信息
上级
6bf5b6cf
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
35 行增加
和
28 行删除
+35
-28
SDK.ts
SDK.ts
+35
-28
没有找到文件。
SDK.ts
浏览文件 @
185f7e35
...
...
@@ -177,7 +177,7 @@ class WechatSDK {
complete
:
()
=>
{
_selt
.
LoadingOff
();
}
}
_selt
.
navigateToMiniProgram
(
params
);
return
{
order_code
:
2
};
// 切支付状态
return
{
order_code
:
2
,
msg
:
''
};
// 切支付状态
}
else
if
(
res
.
data
.
open_customer_service
)
{
// 客服切支付
let
order
=
{
sessionFrom
:
'order_id='
+
(
res
.
data
.
order_num
||
''
)
+
'&payload='
+
(
res
.
data
.
payload
||
''
),
...
...
@@ -195,7 +195,7 @@ class WechatSDK {
}
}
_selt
.
showModal
(
params
);
return
{
order_code
:
2
};
return
{
order_code
:
2
,
msg
:
''
};
}
else
{
// 根据返回的用户订单状态判断是新订单还是未完成订单
if
(
res
.
data
.
order_type
==
1
)
{
// 新订单
...
...
@@ -208,14 +208,14 @@ class WechatSDK {
console
.
log
(
"@@SDK -> 支付成功:"
,
data
);
let
coinsResult
=
await
_selt
.
getCoins
(
_selt
.
deepCopy
({},
_selt
.
sdkParams
,
{
order_num
:
res
.
data
.
order_num
}));
if
(
coinsResult
.
code
==
0
||
coinsResult
.
code
==
3012
)
{
resolve
({
order_code
:
200
});
resolve
({
order_code
:
200
,
msg
:
''
});
}
else
{
resolve
({
order_code
:
0
});
resolve
({
order_code
:
0
,
msg
:
(
coinsResult
.
msg
||
''
)
});
}
},
fail
:
function
(
err
)
{
var
msg
=
'
'
;
let
msg
=
'支付异常
'
;
switch
(
err
.
errCode
)
{
case
-
1
:
msg
=
'系统失败'
;
...
...
@@ -250,6 +250,12 @@ class WechatSDK {
case
4
:
msg
=
'用户操作系统支付状态异常'
;
break
;
case
1000
:
msg
=
'参数错误'
;
break
;
case
1003
:
msg
=
'米大师Portal错误'
;
break
;
}
if
(
showSDKAlert
)
{
const
params
=
{
...
...
@@ -259,7 +265,7 @@ class WechatSDK {
}
_selt
.
showModal
(
params
);
}
resolve
({
order_code
:
err
.
errCode
});
resolve
({
order_code
:
err
.
errCode
,
msg
:
msg
});
}
}));
});
...
...
@@ -267,7 +273,8 @@ class WechatSDK {
let
payback
=
{
order_code
:
res
.
data
.
order_type
,
order_num
:
res
.
data
.
order_num
,
payload
:
res
.
data
.
payload
payload
:
res
.
data
.
payload
,
msg
:
''
}
return
payback
;
}
...
...
@@ -285,7 +292,7 @@ class WechatSDK {
content
:
res
.
msg
}
if
(
res
.
dialog
==
1
)
_selt
.
showModal
(
params
);
return
{
order_code
:
3023
};
return
{
order_code
:
3023
,
msg
:
res
.
msg
};
}
else
{
// 输出订单失败消息
const
errmsg
=
res
.
msg
||
'支付失败..'
if
(
showSDKAlert
)
{
...
...
@@ -296,7 +303,7 @@ class WechatSDK {
}
_selt
.
showModal
(
params
);
}
return
{
order_code
:
0
};
return
{
order_code
:
0
,
msg
:
errmsg
};
}
}
private
async
getCoins
(
orderParams
)
{
// 通知服务端扣费
...
...
@@ -310,7 +317,7 @@ class WechatSDK {
const
_selt
=
this
;
const
postData
=
_selt
.
deepCopy
({},
_selt
.
sdkParams
,
roleInfo
);
let
payType
=
await
_selt
.
sdkRequest
(
Links
.
payType
,
postData
);
return
(
payType
.
code
===
0
);
return
payType
&&
(
payType
.
code
===
0
);
}
public
async
checkUserPhoneBind
()
{
// 查询用户绑定状态
const
_selt
=
this
;
...
...
@@ -387,24 +394,24 @@ class WechatSDK {
return
obj
}
private
isArray
(
arr
)
{
var
toStr
=
Object
.
prototype
.
toString
;
let
toStr
=
Object
.
prototype
.
toString
;
if
(
typeof
Array
.
isArray
===
'function'
)
{
return
Array
.
isArray
(
arr
);
}
return
toStr
.
call
(
arr
)
===
'[object Array]'
;
}
private
isPlainObject
(
obj
)
{
var
toStr
=
Object
.
prototype
.
toString
;
var
hasOwn
=
Object
.
prototype
.
hasOwnProperty
;
let
toStr
=
Object
.
prototype
.
toString
;
let
hasOwn
=
Object
.
prototype
.
hasOwnProperty
;
if
(
!
obj
||
toStr
.
call
(
obj
)
!==
'[object Object]'
)
{
return
false
;
}
var
hasOwnConstructor
=
hasOwn
.
call
(
obj
,
'constructor'
);
var
hasIsPrototypeOf
=
obj
.
constructor
&&
obj
.
constructor
.
prototype
&&
hasOwn
.
call
(
obj
.
constructor
.
prototype
,
'isPrototypeOf'
);
let
hasOwnConstructor
=
hasOwn
.
call
(
obj
,
'constructor'
);
let
hasIsPrototypeOf
=
obj
.
constructor
&&
obj
.
constructor
.
prototype
&&
hasOwn
.
call
(
obj
.
constructor
.
prototype
,
'isPrototypeOf'
);
if
(
obj
.
constructor
&&
!
hasOwnConstructor
&&
!
hasIsPrototypeOf
)
{
return
false
;
}
var
key
;
let
key
;
for
(
key
in
obj
)
{
/**/
}
return
typeof
key
===
'undefined'
||
hasOwn
.
call
(
obj
,
key
);
}
...
...
@@ -596,12 +603,12 @@ class WechatSDK {
}
// 上报等级
public
RoleLevelReport
(
roleInfo
)
{
var
reportData
=
this
.
deepCopy
(
roleInfo
,
{
action
:
'roleUpgrade'
});
let
reportData
=
this
.
deepCopy
(
roleInfo
,
{
action
:
'roleUpgrade'
});
this
.
ReportData
(
reportData
);
}
// 自定义上报
public
CustomReport
(
custInfo
)
{
var
reportData
=
this
.
deepCopy
(
custInfo
,
{
action
:
'customevent'
});
let
reportData
=
this
.
deepCopy
(
custInfo
,
{
action
:
'customevent'
});
this
.
ReportData
(
reportData
);
}
// 数据上报接口,外部调用,参数中必须含有action值
...
...
@@ -726,7 +733,7 @@ class WechatSDK {
userBtn
.
offTap
(
this
);
userBtn
.
destroy
();
userBtn
=
null
;
var
userInfo
=
res
[
"userInfo"
];
let
userInfo
=
res
[
"userInfo"
];
// 上报用户授权
_selt
.
ReportData
(
_selt
.
deepCopy
({},
userInfo
,
{
action
:
'authorize'
,
...
...
@@ -740,9 +747,9 @@ class WechatSDK {
break
;
case
0
:
// 用户已拒绝授权,再调用相关 API 或者 wx.authorize 会失败,需要引导用户到设置页面打开授权开关
var
w
=
(
wx
as
any
).
getSystemInfoSync
().
windowWidth
;
var
h
=
(
wx
as
any
).
getSystemInfoSync
().
windowHeight
;
var
OpenSettingButton
=
(
wx
as
any
).
createOpenSettingButton
({
let
w
=
(
wx
as
any
).
getSystemInfoSync
().
windowWidth
;
let
h
=
(
wx
as
any
).
getSystemInfoSync
().
windowHeight
;
let
OpenSettingButton
=
(
wx
as
any
).
createOpenSettingButton
({
type
:
"text"
,
text
:
""
,
style
:
{
...
...
@@ -759,7 +766,7 @@ class WechatSDK {
OpenSettingButton
.
offTap
(
this
);
OpenSettingButton
.
destroy
();
OpenSettingButton
=
null
;
var
userInfo
=
await
_selt
.
_getUserInfo
();
let
userInfo
=
await
_selt
.
_getUserInfo
();
// 上报用户授权
_selt
.
ReportData
(
_selt
.
deepCopy
({},
userInfo
,
{
action
:
'authorize'
,
...
...
@@ -778,7 +785,7 @@ class WechatSDK {
userBtn
.
offTap
(
this
);
userBtn
.
destroy
();
userBtn
=
null
;
var
userInfo
=
res
[
"userInfo"
];
let
userInfo
=
res
[
"userInfo"
];
// 上报用户授权
_selt
.
ReportData
(
_selt
.
deepCopy
({},
userInfo
,
{
action
:
'authorize'
,
...
...
@@ -795,8 +802,8 @@ class WechatSDK {
private
createUserInfoButton
()
{
const
_selt
=
this
;
// 未询问过用户授权,调用相关 API 或者 wx.authorize 会弹窗询问用户
var
w
=
(
wx
as
any
).
getSystemInfoSync
().
windowWidth
;
var
h
=
(
wx
as
any
).
getSystemInfoSync
().
windowHeight
;
let
w
=
(
wx
as
any
).
getSystemInfoSync
().
windowWidth
;
let
h
=
(
wx
as
any
).
getSystemInfoSync
().
windowHeight
;
let
userBtn
=
(
wx
as
any
).
createUserInfoButton
({
type
:
"text"
,
text
:
""
,
...
...
@@ -815,7 +822,7 @@ class WechatSDK {
(
wx
as
any
).
getUserInfo
({
withCredentials
:
false
,
//获取用户信息,withCredentials 为 true 时需要先调用 wx.login 接口。需要用户授权 scope.userInfo。
success
:
(
res
)
=>
{
var
userInfo
=
res
[
"userInfo"
];
let
userInfo
=
res
[
"userInfo"
];
resolve
(
userInfo
);
},
fail
:
(
res
:
any
)
=>
{
...
...
@@ -832,7 +839,7 @@ class WechatSDK {
return
new
Promise
(
async
function
(
resolve
,
reject
)
{
(
wx
as
any
).
getSetting
({
success
:
function
(
res
)
{
var
authSetting
=
res
.
authSetting
;
let
authSetting
=
res
.
authSetting
;
if
(
authSetting
[
'scope.userInfo'
]
===
true
)
{
resolve
(
1
);
}
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论