34 lines
1.6 KiB
SQL
34 lines
1.6 KiB
SQL
-- =====================================================================================
|
||
-- Schema: 用户资金流水表
|
||
-- 位置:docs/sql/10_schema/finance/
|
||
-- 对象类型:Schema (DDL)
|
||
-- 版本:v1
|
||
-- 说明:记录用户余额、积分、佣金的所有增减流水(原子日志)
|
||
-- =====================================================================================
|
||
|
||
CREATE TABLE IF NOT EXISTS public.ml_user_bill (
|
||
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
||
uid UUID NOT NULL REFERENCES public.ak_users(id),
|
||
|
||
link_id TEXT NULL, -- 关联业务ID(订单号、提现ID、充值ID等)
|
||
pm SMALLINT NOT NULL DEFAULT 1, -- 0:支出, 1:收入
|
||
|
||
title TEXT NOT NULL, -- 流水标题(如:商品购买、充值、提现)
|
||
category TEXT NOT NULL, -- 业务大类(如:balance-余额, integral-积分, brokerage-佣金)
|
||
type TEXT NOT NULL, -- 业务子类型(如:recharge, extract, pay, refund, system_add, system_sub)
|
||
|
||
number DECIMAL(12,2) NOT NULL DEFAULT 0, -- 变动金额
|
||
balance DECIMAL(12,2) NOT NULL DEFAULT 0, -- 变动后的余额快照
|
||
|
||
mark TEXT NULL, -- 备注
|
||
status SMALLINT NOT NULL DEFAULT 1, -- 状态(1:有效, 0:无效/冲正)
|
||
|
||
created_at TIMESTAMPTZ NOT NULL DEFAULT now(),
|
||
updated_at TIMESTAMPTZ NOT NULL DEFAULT now()
|
||
);
|
||
|
||
-- 常用查询索引
|
||
CREATE INDEX IF NOT EXISTS ml_user_bill_uid_idx ON public.ml_user_bill (uid);
|
||
CREATE INDEX IF NOT EXISTS ml_user_bill_category_type_idx ON public.ml_user_bill (category, type);
|
||
CREATE INDEX IF NOT EXISTS ml_user_bill_created_at_idx ON public.ml_user_bill (created_at DESC);
|