| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- const db = require('../../plugin/DataBase/db')
- function normalizeResult(rawResult) {
- if (Array.isArray(rawResult)) return rawResult[0]
- return rawResult
- }
- async function executeSql(executor, sql, params) {
- if (executor && typeof executor.execute === 'function') {
- return executor.execute(sql, params)
- }
- return db.query(sql, params)
- }
- async function insertLedgerRecord({
- executor,
- userUuid,
- delta,
- balanceBefore,
- balanceAfter,
- bizType,
- bizId,
- operatorUuid = null,
- remark = ''
- }) {
- if (!userUuid || !bizType) return false
- const result = await executeSql(
- executor,
- `INSERT IGNORE INTO lepao_count_ledger
- (user_uuid, delta, balance_before, balance_after, biz_type, biz_id, operator_uuid, remark, created_at)
- VALUES (?, ?, ?, ?, ?, ?, ?, ?, NOW())`,
- [
- userUuid,
- Number(delta || 0),
- Number(balanceBefore || 0),
- Number(balanceAfter || 0),
- bizType,
- String(bizId || ''),
- operatorUuid,
- String(remark || '')
- ]
- )
- const rows = normalizeResult(result)
- return !!rows && Number(rows.affectedRows || 0) > 0
- }
- module.exports = { insertLedgerRecord }
|