Commit 7d0c8a1a by 宋毅

tj

parent cab499a8
...@@ -46,8 +46,8 @@ class UtilsOrderService extends AppServiceBase { ...@@ -46,8 +46,8 @@ class UtilsOrderService extends AppServiceBase {
if (buyPayTotalSum == 0) { if (buyPayTotalSum == 0) {
actionBody.payTotalSum = totalSum; actionBody.payTotalSum = totalSum;
} }
console.log("buyTotalSum",buyTotalSum) console.log("buyTotalSum", buyTotalSum)
console.log("totalSum",totalSum) console.log("totalSum", totalSum)
if (buyTotalSum < totalSum) { if (buyTotalSum < totalSum) {
return system.getResult(null, "订单金额有误,100060"); return system.getResult(null, "订单金额有误,100060");
} }
...@@ -247,7 +247,7 @@ class UtilsOrderService extends AppServiceBase { ...@@ -247,7 +247,7 @@ class UtilsOrderService extends AppServiceBase {
isPut = 1; isPut = 1;
} }
} }
pobj.actionBody.isPut=isPut; pobj.actionBody.isPut = isPut;
pobj.actionBody.setField = setField; pobj.actionBody.setField = setField;
pobj.actionBody.receiptVoucherId = receiptVoucher.id; pobj.actionBody.receiptVoucherId = receiptVoucher.id;
pobj.actionBody.trxid = result.data.trxid; pobj.actionBody.trxid = result.data.trxid;
...@@ -290,20 +290,19 @@ class UtilsOrderService extends AppServiceBase { ...@@ -290,20 +290,19 @@ class UtilsOrderService extends AppServiceBase {
var payStatus = await this.restPostUrl(pobj, this.centerAppPayUrl); var payStatus = await this.restPostUrl(pobj, this.centerAppPayUrl);
if (payStatus.data && payStatus.data.trxstatus == "0000") { if (payStatus.data && payStatus.data.trxstatus == "0000") {
//TODO:处理支付成功的业务逻辑 //TODO:处理支付成功的业务逻辑
// this.opPayStatusSuccess payStatus.data.out_trade_no = receiptVoucher.sourceOrderNo;
this.opPayStatusSuccess(payStatus.data, pobj.appInfo, null);
// return system.getResultFail(-100130,'订单已支付,请勿重复付款,100130') // return system.getResultFail(-100130,'订单已支付,请勿重复付款,100130')
return system.getResultSuccess(payStatus.data,'订单已支付,请勿重复付款,100130'); return system.getResultSuccess(payStatus.data, '订单已支付,请勿重复付款,100130');
} }
else if (payStatus.data && payStatus.data.trxstatus == "3045") { else if (payStatus.data && payStatus.data.trxstatus == "3045") {
return system.getResultFail(-100170, "超时未支付,请刷新页面,100170"); return system.getResultFail(-100170, "超时未支付,请刷新页面,100170");
} }
return system.getResultFail(-100180, "请及时支付,100180"); return system.getResultFail(-100180, "请及时支付,100180");
} }
async opPayStatusSuccess(parmas, client_ip) { //操作回调业务逻辑---查询支付状态为已支付时进行调用 async opPayStatusSuccess(parmas, appInfo, client_ip) { //操作回调业务逻辑---查询支付状态为已支付时进行调用
try { try {
//日志记录 //日志记录
this.logCtl.info({ this.logCtl.info({
optitle: (new Date()).Format("yyyy-MM-dd hh:mm:ss") + "回调处理订单参数:,method=opPayStatusSuccess", optitle: (new Date()).Format("yyyy-MM-dd hh:mm:ss") + "回调处理订单参数:,method=opPayStatusSuccess",
...@@ -312,8 +311,8 @@ class UtilsOrderService extends AppServiceBase { ...@@ -312,8 +311,8 @@ class UtilsOrderService extends AppServiceBase {
clientIp: client_ip || "" clientIp: client_ip || ""
}); });
//获取充值业务锁 //获取充值业务锁
// await this.cacheManager["TlPayLocker"].init(receiptVoucher.sourceOrderNo);//---测试时放开 await this.cacheManager["TlPayLocker"].init(parmas.out_trade_no);//---测试时放开
var locker = await this.cacheManager["TlPayLocker"].enter(receiptVoucher.sourceOrderNo); var locker = await this.cacheManager["TlPayLocker"].enter(parmas.out_trade_no);
if (!locker || locker != "1") { if (!locker || locker != "1") {
this.logCtl.info({ this.logCtl.info({
appid: appInfo.uapp_id, appid: appInfo.uapp_id,
...@@ -341,7 +340,7 @@ class UtilsOrderService extends AppServiceBase { ...@@ -341,7 +340,7 @@ class UtilsOrderService extends AppServiceBase {
uapp_key: appInfo.uapp_key, uapp_key: appInfo.uapp_key,
app_code: appInfo.app_code, app_code: appInfo.app_code,
app_name: appInfo.app_name app_name: appInfo.app_name
}; };
opResult.data.userInfo = { opResult.data.userInfo = {
channel_userid: opResult.data.order_info.channelUserId, channel_userid: opResult.data.order_info.channelUserId,
channel_username: opResult.data.order_info.channelUserId, channel_username: opResult.data.order_info.channelUserId,
...@@ -361,7 +360,7 @@ class UtilsOrderService extends AppServiceBase { ...@@ -361,7 +360,7 @@ class UtilsOrderService extends AppServiceBase {
await this.cacheManager["TlPayLocker"].release(parmas.out_trade_no); await this.cacheManager["TlPayLocker"].release(parmas.out_trade_no);
this.logCtl.error({ this.logCtl.error({
optitle: "回调处理订单---error异常", optitle: "回调处理订单---error异常",
op: "center-app/app/base/service/impl/utilsSve/utilstlbankSve.js/opBackNotify", op: "center-app/app/base/service/impl/utilsSve/utilstlbankSve.js/opPayStatusSuccess",
content: "参数=" + JSON.stringify(parmas) + ",error:" + e.stack, content: "参数=" + JSON.stringify(parmas) + ",error:" + e.stack,
clientIp: client_ip || "" clientIp: client_ip || ""
}); });
...@@ -497,7 +496,7 @@ class UtilsOrderService extends AppServiceBase { ...@@ -497,7 +496,7 @@ class UtilsOrderService extends AppServiceBase {
uapp_key: appInfo.uapp_key, uapp_key: appInfo.uapp_key,
app_code: appInfo.app_code, app_code: appInfo.app_code,
app_name: appInfo.app_name app_name: appInfo.app_name
}; };
opResult.data.userInfo = { opResult.data.userInfo = {
channel_userid: opResult.data.order_info.channelUserId, channel_userid: opResult.data.order_info.channelUserId,
channel_username: opResult.data.order_info.channelUserId, channel_username: opResult.data.order_info.channelUserId,
...@@ -626,274 +625,274 @@ class UtilsOrderService extends AppServiceBase { ...@@ -626,274 +625,274 @@ class UtilsOrderService extends AppServiceBase {
async aliPayNotify(parmas, client_ip) { // 支付宝回调 async aliPayNotify(parmas, client_ip) { // 支付宝回调
try { try {
console.log("支付宝回调参数信息--------------------start") console.log("支付宝回调参数信息--------------------start")
console.log(JSON.stringify(parmas)) console.log(JSON.stringify(parmas))
console.log(typeof(parmas)) console.log(typeof (parmas))
console.log(parmas.toString()) console.log(parmas.toString())
console.log("支付宝回调参数信息--------------------end") console.log("支付宝回调参数信息--------------------end")
//日志记录 //日志记录
this.logCtl.info({
optitle: (new Date()).Format("yyyy-MM-dd hh:mm:ss") + "支付宝回调参数信息",
op: "service/impl/utilsSve/utilsOrderSve.js/aliPayNotify",
content: JSON.stringify(parmas),
// content: parmas.toString(),
clientIp: client_ip || ""
});
if (!parmas.trade_status) {
return system.getResult(null, "trade_status参数不能为空,100470");
}
if (parmas.trade_status != "TRADE_FINISHED" && parmas.trade_status != "TRADE_SUCCESS") {
return system.getResult(null, "trade_status状态有误,100473");
}
console.log("parmas.trade_status 校验通过--------------")
// 2020 0621 支付宝验签接口
var url = "https://yf-api.gongsibao.com/pay/v1/checkAliPaySign";
let params = {
"app": "ukgc", //应用名称 固定
"key": "a1519e2eab53dfb909e4c32a86b2ea2b", //应用 key 固定
"tData": parmas
}
var sign = JSON.stringify(params);
// sign += "ab53dfb909e4c32a"
sign += this.paySecret
sign = md5(sign).toUpperCase()
params.sign = sign
console.log("准备验签名params-------------------start")
console.log(params)
console.log("准备验签名params-------------------end")
// let res = await axios.post(url, params)
// this.logCtl.info({
// optitle: (new Date()).Format("yyyy-MM-dd hh:mm:ss") + "支付宝回调参数验签结果",
// op: "service/impl/utilsSve/utilsOrderSve.js/aliPayNotify",
// content: JSON.stringify(res),
// clientIp: client_ip || ""
// });
// if (res.status != 0) {
// res.msg = res.msg + ",100480";
// return res;
// }
// 模拟验签结果
var outTradeInfo = parmas.out_trade_no.split('-');
console.log("模拟验签结果--------------", outTradeInfo)
//
var opResult = {}
opResult.data = {
orderNo: outTradeInfo[0],
uappId: Number(outTradeInfo[1]),
productId: outTradeInfo.length == 3 ? Number(outTradeInfo[2]) : 0
}
// 2020 07.03 lin 修改 获取app信息 推送蜂擎使用
var url = this.centerAppUrl + "payment/paymentApi/getAppInfo";
var appInfoResult = await this.restPostUrl({ uappId: opResult.data.uappId }, url);
if (appInfoResult.status != 0) {
appInfoResult.msg = appInfoResult.msg + ",100270";
return appInfoResult;
}
var appInfo = appInfoResult.data;
// 拿锁
var locker = await this.cacheManager["TlPayLocker"].enter(opResult.data.orderNo);
console.log("拿锁结果", locker)
if (!locker || locker != "1") {
this.logCtl.info({ this.logCtl.info({
optitle: (new Date()).Format("yyyy-MM-dd hh:mm:ss") + "支付宝回调参数信息", appid: opResult.data.uappId,
appkey: "",
op: "service/impl/utilsSve/utilsOrderSve.js/aliPayNotify", op: "service/impl/utilsSve/utilsOrderSve.js/aliPayNotify",
content: JSON.stringify(parmas), content: "参数=" + JSON.stringify(parmas),
// content: parmas.toString(), clientIp: parmas.client_ip || "",
clientIp: client_ip || "" optitle: "阿里回调操作频繁---太频繁了,太频繁了"
}); });
if (!parmas.trade_status) { return system.getResultFail(-200, "阿里回调操作频繁---太频繁了,太频繁了");
return system.getResult(null, "trade_status参数不能为空,100470"); }
} parmas.appInfo = { appInfo: { uapp_id: opResult.data.uappId } };
if (parmas.trade_status != "TRADE_FINISHED" && parmas.trade_status != "TRADE_SUCCESS") { parmas.orderNo = opResult.data.orderNo;
return system.getResult(null, "trade_status状态有误,100473"); parmas.pay_type = "alipay";
} //修改并返回订单支付状态,创建收款单
console.log("parmas.trade_status 校验通过--------------") // 这里修改了order_info的状态(status/paytime等)
// 2020 0621 支付宝验签接口 var url = this.centerOrderUrl + "opaction/opPayOrder/receivePayCallBackNotifyByAliDing";
var url = "https://yf-api.gongsibao.com/pay/v1/checkAliPaySign"; var opOrderResult = await this.restPostUrl(parmas, url);
let params = { if (opOrderResult.status != 0) {
"app": "ukgc", //应用名称 固定
"key": "a1519e2eab53dfb909e4c32a86b2ea2b", //应用 key 固定
"tData" : parmas
}
var sign = JSON.stringify(params);
// sign += "ab53dfb909e4c32a"
sign += this.paySecret
sign = md5(sign).toUpperCase()
params.sign = sign
console.log("准备验签名params-------------------start")
console.log(params)
console.log("准备验签名params-------------------end")
// let res = await axios.post(url, params)
// this.logCtl.info({
// optitle: (new Date()).Format("yyyy-MM-dd hh:mm:ss") + "支付宝回调参数验签结果",
// op: "service/impl/utilsSve/utilsOrderSve.js/aliPayNotify",
// content: JSON.stringify(res),
// clientIp: client_ip || ""
// });
// if (res.status != 0) {
// res.msg = res.msg + ",100480";
// return res;
// }
// 模拟验签结果
var outTradeInfo = parmas.out_trade_no.split('-');
console.log("模拟验签结果--------------",outTradeInfo)
//
var opResult = {}
opResult.data = {
orderNo: outTradeInfo[0],
uappId: Number(outTradeInfo[1]),
productId: outTradeInfo.length == 3 ? Number(outTradeInfo[2]) : 0
}
// 2020 07.03 lin 修改 获取app信息 推送蜂擎使用
var url = this.centerAppUrl + "payment/paymentApi/getAppInfo";
var appInfoResult = await this.restPostUrl({ uappId: opResult.data.uappId }, url);
if (appInfoResult.status != 0) {
appInfoResult.msg = appInfoResult.msg + ",100270";
return appInfoResult;
}
var appInfo = appInfoResult.data;
// 拿锁
var locker = await this.cacheManager["TlPayLocker"].enter(opResult.data.orderNo);
console.log("拿锁结果",locker)
if (!locker || locker != "1") {
this.logCtl.info({
appid: opResult.data.uappId,
appkey: "",
op: "service/impl/utilsSve/utilsOrderSve.js/aliPayNotify",
content: "参数=" + JSON.stringify(parmas),
clientIp: parmas.client_ip || "",
optitle: "阿里回调操作频繁---太频繁了,太频繁了"
});
return system.getResultFail(-200, "阿里回调操作频繁---太频繁了,太频繁了");
}
parmas.appInfo = { appInfo: { uapp_id: opResult.data.uappId } };
parmas.orderNo = opResult.data.orderNo;
parmas.pay_type = "alipay";
//修改并返回订单支付状态,创建收款单
// 这里修改了order_info的状态(status/paytime等)
var url = this.centerOrderUrl + "opaction/opPayOrder/receivePayCallBackNotifyByAliDing";
var opOrderResult = await this.restPostUrl(parmas, url);
if (opOrderResult.status != 0) {
opOrderResult.data = null;
return opOrderResult;
}
opOrderResult.data.appInfo = {
uapp_id: opResult.data.uappId,
uapp_key: appInfo.uapp_key,
app_code: appInfo.app_code,
app_name: appInfo.app_name
};
opOrderResult.data.userInfo = {
channel_userid: opOrderResult.data.order_info.channelUserId,
channel_username: opOrderResult.data.order_info.channelUserId,
channel_nickname: opOrderResult.data.order_info.channelUserId
};
opOrderResult.data.orderNo = opResult.data.orderNo;
opOrderResult.data.order_info.pay_flow_no = parmas.trade_no;// 2020 0704 lin 新增 推送fq必填字段
opOrderResult.data.order_info.pay_channel = "支付宝";//付款方式
opOrderResult.data.order_info.pay_time = parmas.gmt_payment;//付款时间
opOrderResult.data.order_info.pay_payer_bank_no = parmas.buyer_email;//付款账号
opOrderResult.data.order_contact = opOrderResult.data.delivery_content.orderContact;
var pobj = {
appInfo: opOrderResult.data.appInfo,
actionBody: opOrderResult.data
}
// 推送
this.utilsPushSve.pushBusInfo(pobj, "pushOrder", 0);
opOrderResult.data = null; opOrderResult.data = null;
return opOrderResult; return opOrderResult;
} catch (e) {
await this.cacheManager["TlPayLocker"].release(parmas.out_trade_no);
this.logCtl.error({
optitle: "回调处理订单---error异常",
op: "center-app/app/base/service/impl/utilsSve/utilsOrderSve.js/aliPayNotify",
content: "参数=" + JSON.stringify(parmas) + ",error:" + e.stack,
clientIp: client_ip || ""
});
return system.getResultFail(-200, e.stack);
} }
opOrderResult.data.appInfo = {
uapp_id: opResult.data.uappId,
uapp_key: appInfo.uapp_key,
app_code: appInfo.app_code,
app_name: appInfo.app_name
};
opOrderResult.data.userInfo = {
channel_userid: opOrderResult.data.order_info.channelUserId,
channel_username: opOrderResult.data.order_info.channelUserId,
channel_nickname: opOrderResult.data.order_info.channelUserId
};
opOrderResult.data.orderNo = opResult.data.orderNo;
opOrderResult.data.order_info.pay_flow_no = parmas.trade_no;// 2020 0704 lin 新增 推送fq必填字段
opOrderResult.data.order_info.pay_channel = "支付宝";//付款方式
opOrderResult.data.order_info.pay_time = parmas.gmt_payment;//付款时间
opOrderResult.data.order_info.pay_payer_bank_no = parmas.buyer_email;//付款账号
opOrderResult.data.order_contact = opOrderResult.data.delivery_content.orderContact;
var pobj = {
appInfo: opOrderResult.data.appInfo,
actionBody: opOrderResult.data
}
// 推送
this.utilsPushSve.pushBusInfo(pobj, "pushOrder", 0);
opOrderResult.data = null;
return opOrderResult;
} catch (e) {
await this.cacheManager["TlPayLocker"].release(parmas.out_trade_no);
this.logCtl.error({
optitle: "回调处理订单---error异常",
op: "center-app/app/base/service/impl/utilsSve/utilsOrderSve.js/aliPayNotify",
content: "参数=" + JSON.stringify(parmas) + ",error:" + e.stack,
clientIp: client_ip || ""
});
return system.getResultFail(-200, e.stack);
}
} }
async wxPayNotify(parmas, client_ip) { // 微信宝回调 ----暂时不用 async wxPayNotify(parmas, client_ip) { // 微信宝回调 ----暂时不用
try { try {
//日志记录 //日志记录
this.logCtl.info({
optitle: (new Date()).Format("yyyy-MM-dd hh:mm:ss") + "微信回调参数信息",
op: "service/impl/utilsSve/utilsOrderSve.js/wxPayNotify",
content: JSON.stringify(parmas),
clientIp: client_ip || ""
});
if (!parmas.result_code) {
return system.getResult(null, "result_code参数不能为空,100670");
}
if (parmas.result_code != "SUCCESS") {
return system.getResult(null, "result_code状态有误,100673");
}
// 2020 0621 支付宝验签接口
// var url = "https://yf-api.gongsibao.com/pay/v1/checkWXPaySign";
// let params = {
// "app": "ukgc", //应用名称 固定
// "key": "a1519e2eab53dfb909e4c32a86b2ea2b", //应用 key 固定
// "tData" : parmas
// }
// var sign = JSON.stringify(params);
// sign += "ab53dfb909e4c32a"
// sign = md5(sign).toUpperCase()
// params.sign = sign
// let res = await axios.post(url, params)
// this.logCtl.info({
// optitle: (new Date()).Format("yyyy-MM-dd hh:mm:ss") + "微信回调参数验签结果",
// op: "service/impl/utilsSve/utilsOrderSve.js/wxPayNotify",
// content: JSON.stringify(res),
// clientIp: client_ip || ""
// });
// if (res.status != 0) {
// res.msg = res.msg + ",100480";
// return res;
// }
// 模拟验签结果
var outTradeInfo = parmas.out_trade_no.split('-');
//
var opResult = {}
opResult.data = {
orderNo: outTradeInfo[0],
uappId: Number(outTradeInfo[1]),
productId: outTradeInfo.length == 3 ? Number(outTradeInfo[2]) : 0
}
// 拿锁
var locker = await this.cacheManager["TlPayLocker"].enter(opResult.data.orderNo);
if (!locker || locker != "1") {
this.logCtl.info({ this.logCtl.info({
optitle: (new Date()).Format("yyyy-MM-dd hh:mm:ss") + "微信回调参数信息", appid: opResult.data.uappId,
appkey: "",
op: "service/impl/utilsSve/utilsOrderSve.js/wxPayNotify", op: "service/impl/utilsSve/utilsOrderSve.js/wxPayNotify",
content: JSON.stringify(parmas), content: "参数=" + JSON.stringify(parmas),
clientIp: client_ip || "" clientIp: parmas.client_ip || "",
optitle: "微信回调操作频繁---太频繁了,太频繁了"
}); });
if (!parmas.result_code) { return system.getResultFail(-200, "微信回调操作频繁---太频繁了,太频繁了");
return system.getResult(null, "result_code参数不能为空,100670"); }
} parmas.appInfo = { appInfo: { uapp_id: opResult.data.uappId } };
if (parmas.result_code != "SUCCESS") { parmas.orderNo = opResult.data.orderNo;
return system.getResult(null, "result_code状态有误,100673"); // 注意 微信支付要写wx 不要wxpay等其他。c_order_receiptvoucher收款单的accountType会对应wx:微信"alipay":"支付宝","other":"其它"等其他方式
} parmas.pay_type = "wx";
// 2020 0621 支付宝验签接口 //修改并返回订单支付状态,创建收款单
// var url = "https://yf-api.gongsibao.com/pay/v1/checkWXPaySign"; // 这里修改了order_info的状态(status/paytime等)
// let params = { // var url = this.centerOrderUrl + "opaction/opPayOrder/receivePayCallBackNotifyByAliDing";
// "app": "ukgc", //应用名称 固定 var url = this.centerOrderUrl + "opaction/opPayOrder/receivePayCallBackNotifyByWX";
// "key": "a1519e2eab53dfb909e4c32a86b2ea2b", //应用 key 固定 var opOrderResult = await this.restPostUrl(parmas, url);
// "tData" : parmas if (opOrderResult.status != 0) {
// }
// var sign = JSON.stringify(params);
// sign += "ab53dfb909e4c32a"
// sign = md5(sign).toUpperCase()
// params.sign = sign
// let res = await axios.post(url, params)
// this.logCtl.info({
// optitle: (new Date()).Format("yyyy-MM-dd hh:mm:ss") + "微信回调参数验签结果",
// op: "service/impl/utilsSve/utilsOrderSve.js/wxPayNotify",
// content: JSON.stringify(res),
// clientIp: client_ip || ""
// });
// if (res.status != 0) {
// res.msg = res.msg + ",100480";
// return res;
// }
// 模拟验签结果
var outTradeInfo = parmas.out_trade_no.split('-');
//
var opResult = {}
opResult.data = {
orderNo: outTradeInfo[0],
uappId: Number(outTradeInfo[1]),
productId: outTradeInfo.length == 3 ? Number(outTradeInfo[2]) : 0
}
// 拿锁
var locker = await this.cacheManager["TlPayLocker"].enter(opResult.data.orderNo);
if (!locker || locker != "1") {
this.logCtl.info({
appid: opResult.data.uappId,
appkey: "",
op: "service/impl/utilsSve/utilsOrderSve.js/wxPayNotify",
content: "参数=" + JSON.stringify(parmas),
clientIp: parmas.client_ip || "",
optitle: "微信回调操作频繁---太频繁了,太频繁了"
});
return system.getResultFail(-200, "微信回调操作频繁---太频繁了,太频繁了");
}
parmas.appInfo = { appInfo: { uapp_id: opResult.data.uappId } };
parmas.orderNo = opResult.data.orderNo;
// 注意 微信支付要写wx 不要wxpay等其他。c_order_receiptvoucher收款单的accountType会对应wx:微信"alipay":"支付宝","other":"其它"等其他方式
parmas.pay_type = "wx";
//修改并返回订单支付状态,创建收款单
// 这里修改了order_info的状态(status/paytime等)
// var url = this.centerOrderUrl + "opaction/opPayOrder/receivePayCallBackNotifyByAliDing";
var url = this.centerOrderUrl + "opaction/opPayOrder/receivePayCallBackNotifyByWX";
var opOrderResult = await this.restPostUrl(parmas, url);
if (opOrderResult.status != 0) {
opOrderResult.data = null;
return opOrderResult;
}
opOrderResult.data.appInfo = {
uapp_id: opResult.data.uappId
};
opOrderResult.data.userInfo = {
channel_userid: opOrderResult.data.order_info.channelUserId,
channel_username: opOrderResult.data.order_info.channelUserId,
channel_nickname: opOrderResult.data.order_info.channelUserId
};
opOrderResult.data.orderNo = opResult.data.orderNo;
var pobj = {
appInfo: opOrderResult.data.appInfo,
actionBody: opOrderResult.data
}
this.utilsPushSve.pushBusInfo(pobj, "createAliTmApply", 1);
opOrderResult.data = null; opOrderResult.data = null;
return opOrderResult; return opOrderResult;
} catch (e) {
await this.cacheManager["TlPayLocker"].release(parmas.out_trade_no);
this.logCtl.error({
optitle: "回调处理订单---error异常",
op: "center-app/app/base/service/impl/utilsSve/utilstlbankSve.js/opBackNotify",
content: "参数=" + JSON.stringify(parmas) + ",error:" + e.stack,
clientIp: client_ip || ""
});
return system.getResultFail(-200, e.stack);
} }
opOrderResult.data.appInfo = {
uapp_id: opResult.data.uappId
};
opOrderResult.data.userInfo = {
channel_userid: opOrderResult.data.order_info.channelUserId,
channel_username: opOrderResult.data.order_info.channelUserId,
channel_nickname: opOrderResult.data.order_info.channelUserId
};
opOrderResult.data.orderNo = opResult.data.orderNo;
var pobj = {
appInfo: opOrderResult.data.appInfo,
actionBody: opOrderResult.data
}
this.utilsPushSve.pushBusInfo(pobj, "createAliTmApply", 1);
opOrderResult.data = null;
return opOrderResult;
} catch (e) {
await this.cacheManager["TlPayLocker"].release(parmas.out_trade_no);
this.logCtl.error({
optitle: "回调处理订单---error异常",
op: "center-app/app/base/service/impl/utilsSve/utilstlbankSve.js/opBackNotify",
content: "参数=" + JSON.stringify(parmas) + ",error:" + e.stack,
clientIp: client_ip || ""
});
return system.getResultFail(-200, e.stack);
}
} }
async channelPayNotify(params, client_ip){//渠道订单支付通知 async channelPayNotify(params, client_ip) {//渠道订单支付通知
try{ try {
this.logCtl.info({ this.logCtl.info({
optitle: (new Date()).Format("yyyy-MM-dd hh:mm:ss") + "渠道订单支付回调参数信息", optitle: (new Date()).Format("yyyy-MM-dd hh:mm:ss") + "渠道订单支付回调参数信息",
op: "service/impl/utilsSve/utilsOrderSve.js/channelPayNotify", op: "service/impl/utilsSve/utilsOrderSve.js/channelPayNotify",
content: JSON.stringify(params), content: JSON.stringify(params),
clientIp: client_ip || "" clientIp: client_ip || ""
}); });
if(!params.appkey){ if (!params.appkey) {
return system.getResult(null,'appKey can be not null') return system.getResult(null, 'appKey can be not null')
} }
if(!params.orderNo){ if (!params.orderNo) {
return system.getResult(null,'orderNo can be not null') return system.getResult(null, 'orderNo can be not null')
} }
if(!params.payTotalSum){ if (!params.payTotalSum) {
return system.getResult(null,'payTotalSum can be not null') return system.getResult(null, 'payTotalSum can be not null')
} }
if(!params.signature){ if (!params.signature) {
return system.getResult(null,'signature can be not null') return system.getResult(null, 'signature can be not null')
} }
if(!params.payType){ if (!params.payType) {
return system.getResult(null,'payType can be not null') return system.getResult(null, 'payType can be not null')
} }
if(!params.payOrderNo){ if (!params.payOrderNo) {
return system.getResult(null,'payOrderNo can be not null') return system.getResult(null, 'payOrderNo can be not null')
} }
let url = this.centerAppUrl + 'payment/paymentApi/getAppInfoByAppKey'; let url = this.centerAppUrl + 'payment/paymentApi/getAppInfoByAppKey';
let appInfoRt = await this.restPostUrl({appKey:params.appkey},url); let appInfoRt = await this.restPostUrl({ appKey: params.appkey }, url);
if(appInfoRt.status !=0){ if (appInfoRt.status != 0) {
appInfoRt.msg = appInfoRt.msg + ",100270"; appInfoRt.msg = appInfoRt.msg + ",100270";
return appInfoRt; return appInfoRt;
} }
let singStr = params.appkey + params.orderNo + params.payTotalSum + appInfoRt.data.uapp_secret let singStr = params.appkey + params.orderNo + params.payTotalSum + appInfoRt.data.uapp_secret
let sign = md5(singStr).toUpperCase(); let sign = md5(singStr).toUpperCase();
if(sign != params.signature){ if (sign != params.signature) {
return system.getResultFail(-1,'验证签名失败') return system.getResultFail(-1, '验证签名失败')
} }
var appInfo = appInfoRt.data; var appInfo = appInfoRt.data;
// 拿锁 // 拿锁
var locker = await this.cacheManager["TlPayLocker"].enter(params.orderNo); var locker = await this.cacheManager["TlPayLocker"].enter(params.orderNo);
console.log("拿锁结果",locker) console.log("拿锁结果", locker)
if (!locker || locker != "1") { if (!locker || locker != "1") {
this.logCtl.info({ this.logCtl.info({
appid: appInfoRt.data.uappId, appid: appInfoRt.data.uappId,
...@@ -928,7 +927,7 @@ class UtilsOrderService extends AppServiceBase { ...@@ -928,7 +927,7 @@ class UtilsOrderService extends AppServiceBase {
}; };
opOrderResult.data.orderNo = params.orderNo; opOrderResult.data.orderNo = params.orderNo;
opOrderResult.data.order_info.pay_flow_no = params.trade_no || "";// 2020 0704 lin 新增 推送fq必填字段 opOrderResult.data.order_info.pay_flow_no = params.trade_no || "";// 2020 0704 lin 新增 推送fq必填字段
opOrderResult.data.order_info.pay_channel = params.payType == 'wx' ?'微信':'支付宝';//付款方式 opOrderResult.data.order_info.pay_channel = params.payType == 'wx' ? '微信' : '支付宝';//付款方式
opOrderResult.data.order_info.pay_time = params.payTime;//付款时间 opOrderResult.data.order_info.pay_time = params.payTime;//付款时间
opOrderResult.data.order_info.pay_payer_bank_no = params.buyer_email || "";//付款账号 opOrderResult.data.order_info.pay_payer_bank_no = params.buyer_email || "";//付款账号
opOrderResult.data.order_contact = opOrderResult.data.delivery_content.orderContact; opOrderResult.data.order_contact = opOrderResult.data.delivery_content.orderContact;
...@@ -942,7 +941,7 @@ class UtilsOrderService extends AppServiceBase { ...@@ -942,7 +941,7 @@ class UtilsOrderService extends AppServiceBase {
this.utilsPushSve.pushBusInfo(pobj, "pushOrder", 0); this.utilsPushSve.pushBusInfo(pobj, "pushOrder", 0);
opOrderResult.data = null; opOrderResult.data = null;
return opOrderResult; return opOrderResult;
}catch (e) { } catch (e) {
await this.cacheManager["TlPayLocker"].release(params.orderNo); await this.cacheManager["TlPayLocker"].release(params.orderNo);
this.logCtl.error({ this.logCtl.error({
optitle: "回调处理订单---error异常", optitle: "回调处理订单---error异常",
...@@ -963,7 +962,7 @@ class UtilsOrderService extends AppServiceBase { ...@@ -963,7 +962,7 @@ class UtilsOrderService extends AppServiceBase {
pobj.actionBody.code = pobj.actionBody.registerNumber; pobj.actionBody.code = pobj.actionBody.registerNumber;
var url = settings.centerTmtransactionUrl() + "tmtransaction/action/trademarktransaction/springBoard"; var url = settings.centerTmtransactionUrl() + "tmtransaction/action/trademarktransaction/springBoard";
var tmStatusCheckResult = await this.restPostUrl(pobj, url); var tmStatusCheckResult = await this.restPostUrl(pobj, url);
if(!tmStatusCheckResult.data) { if (!tmStatusCheckResult.data) {
var result = { var result = {
"errorCode": "error", "errorCode": "error",
"errorMsg": "标源状态不符合", "errorMsg": "标源状态不符合",
...@@ -973,7 +972,7 @@ class UtilsOrderService extends AppServiceBase { ...@@ -973,7 +972,7 @@ class UtilsOrderService extends AppServiceBase {
} }
return result; return result;
} }
if(tmStatusCheckResult.data.publish_status != "uppershelf") { if (tmStatusCheckResult.data.publish_status != "uppershelf") {
var result = { var result = {
"errorCode": "error", "errorCode": "error",
"errorMsg": "标源状态不符合", "errorMsg": "标源状态不符合",
...@@ -1000,7 +999,7 @@ class UtilsOrderService extends AppServiceBase { ...@@ -1000,7 +999,7 @@ class UtilsOrderService extends AppServiceBase {
pobj.actionBody.product_id = pobj.actionBody.product_info.id; pobj.actionBody.product_id = pobj.actionBody.product_info.id;
var productItemInterfaceResult = await this.restPostUrl(pobj, url); var productItemInterfaceResult = await this.restPostUrl(pobj, url);
pobj.actionBody.product_info.interface_info = productItemInterfaceResult.data; pobj.actionBody.product_info.interface_info = productItemInterfaceResult.data;
pobj.actionType = "addOrder"; pobj.actionType = "addOrder";
var reqUrl = this.centerOrderUrl + "action/order/springBoard"; var reqUrl = this.centerOrderUrl + "action/order/springBoard";
pobj.actionBody.channelOrder.orderStatus = 64;// 2020 0908 lin 新增。64作为orderinfo的orderStatus的值。含义为已付部分款 pobj.actionBody.channelOrder.orderStatus = 64;// 2020 0908 lin 新增。64作为orderinfo的orderStatus的值。含义为已付部分款
...@@ -1014,7 +1013,7 @@ class UtilsOrderService extends AppServiceBase { ...@@ -1014,7 +1013,7 @@ class UtilsOrderService extends AppServiceBase {
pobj.actionBody.status = "lowershelf" pobj.actionBody.status = "lowershelf"
var url = settings.centerTmtransactionUrl() + "tmtransaction/action/trademarktransaction/springBoard"; var url = settings.centerTmtransactionUrl() + "tmtransaction/action/trademarktransaction/springBoard";
var tmStatusUpdateResult = await this.restPostUrl(pobj, url); var tmStatusUpdateResult = await this.restPostUrl(pobj, url);
if(result) { if (result) {
var tmResult = { var tmResult = {
"errorCode": "OK", "errorCode": "OK",
"errorMsg": "操作成功", "errorMsg": "操作成功",
...@@ -1022,7 +1021,7 @@ class UtilsOrderService extends AppServiceBase { ...@@ -1022,7 +1021,7 @@ class UtilsOrderService extends AppServiceBase {
"requestId": pobj.requestId, "requestId": pobj.requestId,
"success": true "success": true
} }
console.log("utils",tmResult) console.log("utils", tmResult)
return tmResult; return tmResult;
} }
} catch (e) { } catch (e) {
...@@ -1036,13 +1035,13 @@ class UtilsOrderService extends AppServiceBase { ...@@ -1036,13 +1035,13 @@ class UtilsOrderService extends AppServiceBase {
return result; return result;
} }
} }
async tmRefuse(pobj) {// 2020 0828 lin 新增 ali商标交易 关闭订单接口 async tmRefuse(pobj) {// 2020 0828 lin 新增 ali商标交易 关闭订单接口
try { try {
var reqUrl = this.centerOrderUrl + "action/tmOrder/springBoard"; var reqUrl = this.centerOrderUrl + "action/tmOrder/springBoard";
var result = await this.restPostUrl(pobj, reqUrl); var result = await this.restPostUrl(pobj, reqUrl);
// 如果返回值正常 // 如果返回值正常
if(result.status == 0) { if (result.status == 0) {
var tmResult = { var tmResult = {
"errorCode": "OK", "errorCode": "OK",
"errorMsg": "操作成功", "errorMsg": "操作成功",
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment