该文档只提供payAuthNo获取思路,仅供参考!具体请以实际业务需求为准
最近在对接医保需求项目,对接模块为调起医保免密授权流程
先附上医保文档:https://yb.qq.com/yibao-payment/doc?nodeId=83679977515675648
简单说一下医保对接流程:
获取payAuthNo > 9001登录签到 -- 1101获取人员信息 > 2201门诊挂号 -- 2202门诊挂号撤销 -- 2203门诊就诊信息上传 > 6201费用明细上传/6401费用明细上传撤销 > 6202支付下单(预结算)> 渠道下单(微信/支付宝)> 6301医保订单结算结果查询 > 6203医保退费 > 2202门诊挂号撤销 |
获取payAuthNo步骤基于已经拿到国家局下发对应的测试参数之后!!
参数名称见文档2.2.4
一般在点击支付的时候,需要先调起免密授权
在支付按钮调起授权事件,将地址改成变量形式跳转,即可跳转授权
以下存在状态管理器中:
授权方法内的内容:
判断正式环境切换地址头部:
if(process.uniEnv.ENV == 'prod') {
state.urlHeader = 'https://card.wecity.qq.com/';
console.log('state.urlHeader', state.urlHeader);
}
拼接变量
let authUrl = `${state.urlHeader}oauth/code?authType=2&isDepart=2&bizType=04107` +
`&appid=${getters.wxAppid}` +
`&cityCode=${state.medicalInsuranceParams.mdtrtareaAdmvs}` +
`&channel=${state.medicalInsuranceParams.channelNo}` +
`&orgChnlCrtfCodg=${encodeURIComponent(state.medicalInsuranceParams.authenticationCode)}` +
`&orgCodg=${state.medicalInsuranceParams.hospitalCode}` +
`&orgAppId=${state.medicalInsuranceParams.appId}` +
`&redirectUrl=${encodeURIComponent(redirectUrl)}`
跳转免密授权链接
console.log('微信授权地址:', authUrl);
window.location.href = authUrl;
跳转后的地址参考:
接入的回调地址在接收页面options接收,可以获取到响应参数retCode和authCode,可以根据判断进行后续业务操作!
判断有返回 retCode并且等于0拿到authCode去调起后端的接口,(其他未激活或者未授权可以走其他取消业务流程操作!)传参authCode加其他需要的参数,调起后端接口获取到payAuthNo,即可进入下一步操作!