98 lines
3.0 KiB
SQL
98 lines
3.0 KiB
SQL
-- Finances Agent 数据库初始化
|
|
CREATE DATABASE IF NOT EXISTS finances DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
|
USE finances;
|
|
|
|
-- 家庭成员表
|
|
CREATE TABLE IF NOT EXISTS family_members (
|
|
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
name VARCHAR(50) NOT NULL,
|
|
role VARCHAR(20) COMMENT '配偶/子女/父母/其他',
|
|
is_active BOOLEAN DEFAULT TRUE,
|
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
|
|
-- 收入记录表
|
|
CREATE TABLE IF NOT EXISTS income_records (
|
|
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
member_id INT,
|
|
source VARCHAR(100) COMMENT '工资/奖金/副业/投资收益',
|
|
amount DECIMAL(12,2) NOT NULL,
|
|
frequency VARCHAR(20) COMMENT '月/季/年/一次性',
|
|
recorded_date DATE,
|
|
note TEXT,
|
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
FOREIGN KEY (member_id) REFERENCES family_members(id)
|
|
);
|
|
|
|
-- 固定支出表
|
|
CREATE TABLE IF NOT EXISTS fixed_expenses (
|
|
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
member_id INT,
|
|
category VARCHAR(50) COMMENT '房贷/房租/车贷/保险/物业费/学费',
|
|
amount DECIMAL(12,2) NOT NULL,
|
|
frequency VARCHAR(20) COMMENT '月/季/年',
|
|
due_date INT COMMENT '扣款日(1-31)',
|
|
note TEXT,
|
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
FOREIGN KEY (member_id) REFERENCES family_members(id)
|
|
);
|
|
|
|
-- 可变支出表
|
|
CREATE TABLE IF NOT EXISTS variable_expenses (
|
|
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
member_id INT,
|
|
category VARCHAR(50) COMMENT '餐饮/购物/娱乐/交通/医疗/人情',
|
|
amount DECIMAL(12,2) NOT NULL,
|
|
recorded_date DATE,
|
|
note TEXT,
|
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
FOREIGN KEY (member_id) REFERENCES family_members(id)
|
|
);
|
|
|
|
-- 资产表
|
|
CREATE TABLE IF NOT EXISTS assets (
|
|
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
member_id INT,
|
|
asset_type VARCHAR(50) COMMENT '存款/理财/基金/股票/房产/车辆',
|
|
name VARCHAR(100),
|
|
current_value DECIMAL(12,2) NOT NULL,
|
|
note TEXT,
|
|
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
FOREIGN KEY (member_id) REFERENCES family_members(id)
|
|
);
|
|
|
|
-- 负债表
|
|
CREATE TABLE IF NOT EXISTS liabilities (
|
|
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
member_id INT,
|
|
liability_type VARCHAR(50) COMMENT '房贷/车贷/消费贷/信用卡/亲友借款',
|
|
total_amount DECIMAL(12,2) NOT NULL,
|
|
interest_rate DECIMAL(5,2) COMMENT '年利率%',
|
|
remaining_months INT,
|
|
monthly_payment DECIMAL(12,2),
|
|
note TEXT,
|
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
FOREIGN KEY (member_id) REFERENCES family_members(id)
|
|
);
|
|
|
|
-- 财务目标表
|
|
CREATE TABLE IF NOT EXISTS financial_goals (
|
|
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
member_id INT,
|
|
goal_type VARCHAR(20) COMMENT '短期/中期/长期',
|
|
description VARCHAR(200) NOT NULL,
|
|
target_amount DECIMAL(12,2),
|
|
target_date DATE,
|
|
current_progress DECIMAL(12,2) DEFAULT 0,
|
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
FOREIGN KEY (member_id) REFERENCES family_members(id)
|
|
);
|
|
|
|
-- 对话日志表
|
|
CREATE TABLE IF NOT EXISTS conversation_log (
|
|
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
user_input TEXT,
|
|
agent_response TEXT,
|
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
|
);
|