'use strict'; const { BALANCE_DOC_ID, getBalanceInfoList, getAvailableWithdrawBalance, normalizeAmount } = require('./util.js'); module.exports = { /** * 资金汇总 * @url admin/finance/balance/sys/getSummary 前端调用的url参数地址 */ main: async (event) => { let { util } = event; let { vk } = util; let info = await vk.baseDao.findByWhereJson({ dbName: 'jjx-balance', whereJson: { _id: BALANCE_DOC_ID } }); if (!info) { return { code: -1, msg: `jjx-balance余额记录不存在: ${BALANCE_DOC_ID}` }; } const balanceInfoList = getBalanceInfoList(info.balanceInfo || {}); const enrichedList = []; for (let i = 0; i < balanceInfoList.length; i++) { const item = balanceInfoList[i]; const { pendingAmount, availableBalance } = await getAvailableWithdrawBalance({ vk, merchantId: item.accNo, merchantBalance: item.balance }); enrichedList.push({ ...item, balance: normalizeAmount(item.balance), pendingAmount, availableBalance }); } return { code: 0, msg: '', data: { balance: Number(Number(info.balance || 0).toFixed(2)), updateTime: info.updateTime || info._update_time_str || info._add_time_str || '', balanceInfoList: enrichedList } }; } };