'use strict'; const notaryPay = require('./util/notaryPay'); module.exports = { /** * 获取或创建公证全额支付单 * @url client/order/kh/getOrCreateNotaryFullPay 前端调用的url参数地址 */ main: async (event) => { let {data = {}, util} = event; let {vk} = util; let res = {code: 0, msg: ''}; const order = await vk.baseDao.findById({ dbName: 'jjx-order', id: data.id }); if (!order) return {code: -1, msg: '订单不存在'}; if (!(Number(order.type) > 3 && Number(order.signMethod) === 0)) { return {code: -1, msg: '当前订单不是公证支付订单'}; } if (Number(order.notaryPayStatus) === 1) { return {code: -1, msg: '订单已完成公证支付'}; } let payRecord = await notaryPay.findFullPayRecord(vk, order._id); if (payRecord && payRecord.hasPaid) { await vk.baseDao.updateById({ dbName: 'jjx-order', id: order._id, dataJson: { notaryPayStatus: 1, notaryPayListId: payRecord._id, notaryPayOrderNo: payRecord.orderNo, payStatus: 2 } }); return {code: -1, msg: '订单已完成公证支付'}; } if (!payRecord) { const now = vk.pubfn.timeFormat(new Date(), "yyyy-MM-dd hh:mm:ss"); const dataJson = { orderId: order._id, amount: order.offAmount || order.amount, type: '公证支付', remark: '买家全额支付到金久信公证平台', buyerRemark: '', photos: [], payerUid: null, hasPaid: false, paidVoucher: '', paidAt: '', confirmAt: '', buyerUid: order.uid, sellerUid: order.sellerUid, status: 0, buyerRefuse: false, refuseReason: null, buyerPhotos: [], expressPhoto: [], isExpress: false, expressName: null, expressNo: null, ext: [], isNotaryPay: true, isNotaryFullPay: true, transferStatus: 0, sellerConfirm: false, orderNo: vk.pubfn.createOrderNo("39XU", 24), applyAt: now, applyTimestamp: Date.now() }; const id = await vk.baseDao.add({ dbName: 'jjx-order-pay-list', dataJson }); payRecord = { ...dataJson, _id: id }; } res.data = payRecord; return res; } };