feat: 补齐客户端/管理端服务模块与数据库 schema,完善登录短信、法大大签署及公共函数
This commit is contained in:
@@ -0,0 +1,100 @@
|
||||
'use strict';
|
||||
const dayjs = require("dayjs");
|
||||
const OpenSdk = require('../../../../util/base').default;
|
||||
|
||||
const sdk = new OpenSdk({
|
||||
appId: '8a81c1db8fc5238d01910b9e312d0692',
|
||||
appKey: 'a15ceac60f5b464eb758c4fe7800ee9f'
|
||||
});
|
||||
|
||||
const REFUND_MID = '898450100002303';
|
||||
const REFUND_TID = 'G5SBN2XJ';
|
||||
const REFUND_INST_MID = 'WGDEFAULT';
|
||||
|
||||
module.exports = {
|
||||
/**
|
||||
* 退款查询
|
||||
* @url client/order/kh/refundQuery 前端调用的url参数地址
|
||||
* data 请求参数
|
||||
*/
|
||||
main: async (event) => {
|
||||
let {data = {}, util} = event;
|
||||
let {vk} = util;
|
||||
let res = {code: 0, msg: ""};
|
||||
|
||||
const payRecord = await vk.baseDao.findById({
|
||||
dbName: "jjx-order-pay-list",
|
||||
id: data.id
|
||||
});
|
||||
|
||||
if (!payRecord) {
|
||||
return {
|
||||
code: -1,
|
||||
msg: "支付单不存在"
|
||||
};
|
||||
}
|
||||
|
||||
const refundOrderId = data.refundOrderId
|
||||
|| (payRecord.refundApplyPayload && payRecord.refundApplyPayload.refundOrderId)
|
||||
|| (payRecord.refundApplyResult && payRecord.refundApplyResult.refundOrderId);
|
||||
|
||||
if (!refundOrderId) {
|
||||
return {
|
||||
code: -1,
|
||||
msg: "未找到退款单号,请先发起退款"
|
||||
};
|
||||
}
|
||||
|
||||
const queryData = {
|
||||
queryUrl: 'https://api-mop.chinaums.com/v1/netpay/refund-query',
|
||||
timestamp: dayjs().format('YYYYMMDDHHmmss'),
|
||||
nonce: `refund_query_${Date.now()}`,
|
||||
content: {
|
||||
requestTimestamp: dayjs().format('YYYY-MM-DD HH:mm:ss'),
|
||||
merOrderId: refundOrderId,
|
||||
instMid: REFUND_INST_MID,
|
||||
mid: REFUND_MID,
|
||||
tid: REFUND_TID
|
||||
}
|
||||
};
|
||||
|
||||
try {
|
||||
const queryRawResult = await sdk.exec(queryData);
|
||||
const queryResult = typeof queryRawResult === "string" ? JSON.parse(queryRawResult) : queryRawResult;
|
||||
const querySuccess = queryResult && queryResult.errCode === 'SUCCESS';
|
||||
|
||||
await vk.baseDao.updateById({
|
||||
dbName: "jjx-order-pay-list",
|
||||
id: payRecord._id,
|
||||
dataJson: {
|
||||
refundQueryAt: vk.pubfn.timeFormat(new Date(), "yyyy-MM-dd hh:mm:ss"),
|
||||
refundQueryPayload: queryData.content,
|
||||
refundQueryResult: queryResult,
|
||||
refundQuerySuccess: querySuccess
|
||||
}
|
||||
});
|
||||
|
||||
res.data = queryResult;
|
||||
res.querySuccess = querySuccess;
|
||||
res.msg = querySuccess ? "查询成功" : (queryResult.errMsg || "查询失败");
|
||||
return res;
|
||||
} catch (err) {
|
||||
const errMsg = err && err.message ? err.message : JSON.stringify(err);
|
||||
await vk.baseDao.updateById({
|
||||
dbName: "jjx-order-pay-list",
|
||||
id: payRecord._id,
|
||||
dataJson: {
|
||||
refundQueryAt: vk.pubfn.timeFormat(new Date(), "yyyy-MM-dd hh:mm:ss"),
|
||||
refundQueryPayload: queryData.content,
|
||||
refundQuerySuccess: false,
|
||||
refundQueryError: errMsg
|
||||
}
|
||||
});
|
||||
|
||||
return {
|
||||
code: -1,
|
||||
msg: errMsg
|
||||
};
|
||||
}
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user