/** * ID 生成工具 */ const { nanoid } = require('nanoid'); /** 生成支付单 ID,形如 pay_xxxxxxxx */ function paymentId() { return `pay_${nanoid(8)}`; } /** 生成商户订单号(外部交易号),形如 20260806_xxxxxxxx */ function outTradeNo() { const d = new Date(); const pad = (n) => String(n).padStart(2, '0'); const stamp = `${d.getFullYear()}${pad(d.getMonth() + 1)}${pad(d.getDate())}` + `${pad(d.getHours())}${pad(d.getMinutes())}${pad(d.getSeconds())}`; return `${stamp}_${nanoid(6)}`; } module.exports = { paymentId, outTradeNo };