import type { AdminFundEntryType, AdminFundExpenseCategory, AdminFundPayeeType, AdminFundReconciliationStatus, } from '@/types/admin' export const FUND_ENTRY_LABELS: Record = { opening: '期初', funding: '公司拨付', issue: '发放', expense: '支出', return: '缴回', adjustment: '调整', } export const FUND_ENTRY_COLORS: Record = { opening: 'default', funding: 'blue', issue: 'green', expense: 'red', return: 'orange', adjustment: 'purple', } export const FUND_CATEGORY_LABELS: Record = { platform_recharge: '平台充值', purchase: '采购/拿货', compensation: '客户赔偿', freight: '运费', other: '其他', } export const FUND_PAYEE_LABELS: Record = { platform: '平台', supplier: '供应商', customer: '客户', other: '其他', } export const FUND_ACCOUNT_STATUS_LABELS: Record = { active: '正常', frozen: '冻结', closed: '关闭', } export const FUND_RECONCILIATION_STATUS_LABELS: Record = { pending: '待确认', confirmed: '已对平', discrepancy: '有差异', } export const FUND_RECONCILIATION_STATUS_COLORS: Record = { pending: 'gold', confirmed: 'green', discrepancy: 'red', } export function formatFundAmount(amountFen: number, withSign = false) { const value = Number(amountFen || 0) / 100 const absolute = Math.abs(value).toFixed(2) if (withSign) { if (value > 0) return `+¥${absolute}` if (value < 0) return `-¥${absolute}` } return value < 0 ? `-¥${absolute}` : `¥${absolute}` } export function toFen(value: unknown) { const yuan = Number(value) return Number.isFinite(yuan) ? Math.round(yuan * 100) : 0 } export function fromFen(value: unknown) { const fen = Number(value) return Number.isFinite(fen) ? fen / 100 : 0 }