Authored by yyq

去除支付宝返回结果签名校验,由接口回调判断支付结果

... ... @@ -297,7 +297,6 @@ const payAli = (req, res, next) => {
req.ctx(payModel).getPayAli(param).then(result => {
if (result.match === true) {
// 支付成功,发送支付确认接口
req.ctx(payModel).sendPayConfirm(param.orderCode, payProcess.PAYMENTS.ALIPAY, param.uid);
... ...
... ... @@ -36,7 +36,6 @@ class PaySign extends global.yoho.BaseModel {
data: options
}).then(result => {
if (result.code === 200) {
console.log(result);
return {
code: 200,
data: {
... ... @@ -83,28 +82,28 @@ const Alipay = {
pay(ctx, order, param, protocol) {
return new PaySign(ctx).getPayData(order, param, protocol);
},
notify(data, param) {
let payParams = JSON.parse(param.payParams);
notify(data, param) { // eslint-disable-line
// let payParams = JSON.parse(param.payParams);
logger.info(`Alipay notify, params = ${JSON.stringify(data)}`);
if (!this.checkNotify(data, payParams)) {
return { payResult: -1 };
} else {
let orderCode = parseInt(data.out_trade_no, 10);
return {
bankName: '',
orderCode: orderCode,
payResult: data.trade_status === 'TRADE_SUCCESS' ? 200 : 400,
payTime: data.gmt_payment || '',
totalFee: data.total_fee,
resultMsg: data.notify_type,
payOrderCode: orderCode,
tradeNo: data.trade_no,
bankBillNo: ''
};
}
// if (!this.checkNotify(data, payParams)) {
// return { payResult: -1 };
// }
let orderCode = parseInt(data.out_trade_no, 10);
return {
bankName: '',
orderCode: orderCode,
payResult: data.trade_status === 'TRADE_SUCCESS' ? 200 : 400,
payTime: data.gmt_payment || '',
totalFee: data.total_fee,
resultMsg: data.notify_type,
payOrderCode: orderCode,
tradeNo: data.trade_no,
bankBillNo: ''
};
},
checkNotify(data, payParams) {
... ...
... ... @@ -379,21 +379,22 @@ class payModel extends global.yoho.BaseModel {
delete params.q;
}
if (!this._checkResponse(params)) {
checkResult.payResult = false;
} else {
_.assign(checkResult, {
bankName: '',
orderCode: params.out_trade_no,
payResult: params.trade_status === 'TRADE_SUCCESS',
payTime: params.gmt_payment || '',
totalFee: params.total_fee,
resultMsg: params.notify_type,
payOrderCode: params.out_trade_no,
tradeNo: params.trade_no,
bankBillNo: ''
});
}
// if (!this._checkResponse(params)) {
// checkResult.payResult = false;
// } else {
_.assign(checkResult, {
bankName: '',
orderCode: params.out_trade_no,
payResult: params.trade_status === 'TRADE_SUCCESS',
payTime: params.gmt_payment || '',
totalFee: params.total_fee,
resultMsg: params.notify_type,
payOrderCode: params.out_trade_no,
tradeNo: params.trade_no,
bankBillNo: ''
});
// }
return checkResult;
}
... ...