feat: QR-Custom Payment + mode webhook secret GOWA
All checks were successful
CI / test (push) Successful in 1m35s
All checks were successful
CI / test (push) Successful in 1m35s
- tabel custom_qr_payments, service, halaman admin + publik share - kode unik 20 menit, warning bila bayar setelah batas, manual pay/accept/reject - webhook payment-notif mencocokkan nominal custom - menu sidebar QR-Custom Payment - GOWA secret: auto generate (locked) / manual (simpan lalu locked, ubah) - versi 0.6.0
This commit is contained in:
@@ -19,6 +19,7 @@ function isQrisAmountTaken(amount, opts = {}) {
|
||||
const exInv = Number(opts.excludeInvoiceId || 0);
|
||||
const exVoucher = Number(opts.excludeVoucherOrderId || 0);
|
||||
const exDonation = Number(opts.excludeDonationOrderId || 0);
|
||||
const exCustomQr = Number(opts.excludeCustomQrId || 0);
|
||||
try {
|
||||
const inv = db.prepare('SELECT id FROM invoices WHERE status=? AND qris_amount_unique=? AND id!=? LIMIT 1').get('unpaid', amt, exInv);
|
||||
if (inv && inv.id) return true;
|
||||
@@ -26,6 +27,8 @@ function isQrisAmountTaken(amount, opts = {}) {
|
||||
if (voc && voc.id) return true;
|
||||
const don = db.prepare('SELECT id FROM public_donation_orders WHERE status=? AND qris_amount_unique=? AND id!=? LIMIT 1').get('pending', amt, exDonation);
|
||||
if (don && don.id) return true;
|
||||
const cq = db.prepare("SELECT id FROM custom_qr_payments WHERE status IN ('pending','expired') AND amount_unique=? AND id!=? LIMIT 1").get(amt, exCustomQr);
|
||||
if (cq && cq.id) return true;
|
||||
} catch (e) { /* tabel opsional belum ada */ }
|
||||
return false;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user