Compare commits
3 Commits
| Author | SHA1 | Date |
|---|---|---|
|
|
9ede13e82e | |
|
|
84a9fb5c78 | |
|
|
8338321786 |
|
|
@ -253,8 +253,8 @@
|
|||
|
||||
.message-container {
|
||||
width: 100%;
|
||||
/* 确保容器至少有一屏高度 */
|
||||
min-height: 100vh;
|
||||
/* 倒置滚动区内,容器高度只需要撑满聊天区域 */
|
||||
min-height: v-bind(chatScrollHeight);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: flex-end;
|
||||
|
|
|
|||
|
|
@ -229,7 +229,7 @@
|
|||
}
|
||||
let openid;
|
||||
if (state.accountInfo.type === '5') {
|
||||
openid = await sheep.$platform.useProvider('wechat').getOpenid();
|
||||
openid = await sheep.$platform.useProvider('wechat').getOpenid(true);
|
||||
// 如果获取不到 openid,微信无法发起支付,此时需要引导
|
||||
if (!openid) {
|
||||
goBindWeixin();
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@
|
|||
:key="index"
|
||||
>
|
||||
<radio
|
||||
:checked="formData.type === item.value"
|
||||
:checked="formData.way === item.value"
|
||||
color="var(--ui-BG-Main)"
|
||||
style="transform: scale(0.8)"
|
||||
:value="item.value"
|
||||
|
|
@ -159,6 +159,10 @@
|
|||
|
||||
// 提交表单
|
||||
async function submit() {
|
||||
if (!formData.way) {
|
||||
sheep.$helper.toast('请选择售后类型');
|
||||
return;
|
||||
}
|
||||
let data = {
|
||||
orderItemId: state.itemId,
|
||||
refundPrice: state.item.payPrice,
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@ import $helper from '@/sheep/helper';
|
|||
import AuthUtil from '@/sheep/api/member/auth';
|
||||
|
||||
let configSuccess = false;
|
||||
let configAppId = ''; // JSSDK 初始化所使用的公众号 appId,确认收款时需要
|
||||
|
||||
export default {
|
||||
// 判断是否在微信中
|
||||
|
|
@ -47,9 +48,11 @@ export default {
|
|||
'updateAppMessageShareData',
|
||||
'updateTimelineShareData',
|
||||
'scanQRCode',
|
||||
// 'requestMerchantTransfer', // TODO @使用者:如果需要微信商家转账功能,请打开该注释;
|
||||
], // TODO 芋艿:后续可以设置更多权限;
|
||||
openTagList: data.openTagList,
|
||||
});
|
||||
configAppId = data.appId;
|
||||
} else {
|
||||
console.log('请求 JSSDK 配置失败,错误码:', code);
|
||||
}
|
||||
|
|
@ -195,4 +198,50 @@ export default {
|
|||
});
|
||||
});
|
||||
},
|
||||
|
||||
// 商家转账,用户确认收款(H5 / 公众号)
|
||||
// 可见 https://pay.weixin.qq.com/doc/v3/merchant/4012716430 文档
|
||||
requestMerchantTransfer(data, callback) {
|
||||
const invoke = () => {
|
||||
// WeixinJSBridge 内置对象,仅在微信客户端中有效
|
||||
if (typeof WeixinJSBridge === 'undefined') {
|
||||
callback.fail && callback.fail({ errMsg: '请在微信客户端中打开页面后再确认收款' });
|
||||
return;
|
||||
}
|
||||
WeixinJSBridge.invoke(
|
||||
'requestMerchantTransfer',
|
||||
{
|
||||
mchId: data.mchId,
|
||||
appId: data.appId || configAppId,
|
||||
package: data.package,
|
||||
},
|
||||
function (res) {
|
||||
if (res.err_msg === 'requestMerchantTransfer:ok') {
|
||||
callback.success && callback.success(res);
|
||||
} else if (res.err_msg === 'requestMerchantTransfer:cancel') {
|
||||
callback.cancel && callback.cancel(res);
|
||||
} else {
|
||||
callback.fail && callback.fail(res);
|
||||
}
|
||||
},
|
||||
);
|
||||
};
|
||||
this.isReady(() => {
|
||||
// 校验微信客户端是否支持 requestMerchantTransfer
|
||||
jweixin.checkJsApi({
|
||||
jsApiList: ['requestMerchantTransfer'],
|
||||
success: function (res) {
|
||||
if (res.checkResult && res.checkResult['requestMerchantTransfer']) {
|
||||
invoke();
|
||||
} else {
|
||||
callback.fail && callback.fail({ errMsg: '你的微信版本过低,请更新至最新版本' });
|
||||
}
|
||||
},
|
||||
fail: function () {
|
||||
// checkJsApi 失败时,兜底直接尝试调用
|
||||
invoke();
|
||||
},
|
||||
});
|
||||
});
|
||||
},
|
||||
};
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@ import $wxsdk from '@/sheep/libs/sdk-h5-weixin';
|
|||
import { getRootUrl } from '@/sheep/helper';
|
||||
import AuthUtil from '@/sheep/api/member/auth';
|
||||
import SocialApi from '@/sheep/api/member/social';
|
||||
import sheep from '@/sheep';
|
||||
|
||||
const socialType = 31; // 社交类型 - 微信公众号
|
||||
|
||||
|
|
@ -94,6 +95,30 @@ async function getInfo() {
|
|||
return data;
|
||||
}
|
||||
|
||||
// 商家转账用户确认模式下,拉起页面请求用户确认收款 Transfer
|
||||
// 入参与小程序保持一致:(mchId, packageInfo, successCallback, failCallback)
|
||||
function requestMerchantTransfer(mchId, packageInfo, successCallback, failCallback) {
|
||||
$wxsdk.requestMerchantTransfer(
|
||||
{
|
||||
mchId,
|
||||
package: packageInfo,
|
||||
},
|
||||
{
|
||||
success: (res) => {
|
||||
successCallback && successCallback({ result: 'success', ...res });
|
||||
},
|
||||
cancel: (res) => {
|
||||
sheep.$helper.toast('确认收款已取消');
|
||||
failCallback && failCallback({ result: 'cancel', errMsg: '确认收款已取消', ...res });
|
||||
},
|
||||
fail: (res) => {
|
||||
sheep.$helper.toast(res.errMsg || '确认收款失败');
|
||||
failCallback && failCallback({ result: 'fail', ...res });
|
||||
},
|
||||
},
|
||||
);
|
||||
}
|
||||
|
||||
export default {
|
||||
load,
|
||||
login,
|
||||
|
|
@ -101,5 +126,6 @@ export default {
|
|||
unbind,
|
||||
getInfo,
|
||||
getOpenid,
|
||||
requestMerchantTransfer,
|
||||
jsWxSdk: $wxsdk,
|
||||
};
|
||||
|
|
|
|||
Loading…
Reference in New Issue