Files
zyt/server/sql/1.9.20260521/create_personal_account_cost_table.sql
T
longandCursor 679e61057b fix(stats/self_input): 唯一索引含 delete_time,软删后可重新录入
去掉「同日+同渠道」全局唯一,回到按录入人判重;唯一索引补 delete_time 避免软删占键导致 1062;错误提示带冲突记录 ID,迁移脚本兼容多次执行。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-22 17:01:58 +08:00

21 lines
1.3 KiB
SQL

CREATE TABLE IF NOT EXISTS `zyt_personal_account_cost` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`cost_date` date NOT NULL COMMENT '消耗日期',
`media_source` varchar(120) NOT NULL DEFAULT '' COMMENT '自媒体来源',
`amount` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '账户消耗金额',
`remark` varchar(255) NOT NULL DEFAULT '' COMMENT '备注',
`creator_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '录入人ID',
`creator_name` varchar(64) NOT NULL DEFAULT '' COMMENT '录入人姓名',
`updater_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '最后修改人ID',
`updater_name` varchar(64) NOT NULL DEFAULT '' COMMENT '最后修改人姓名',
`dept_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '录入时部门ID快照',
`create_time` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '创建时间',
`update_time` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '更新时间',
`delete_time` int(11) unsigned DEFAULT NULL COMMENT '删除时间',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_creator_date_media` (`creator_id`, `cost_date`, `media_source`, `delete_time`),
KEY `idx_cost_date` (`cost_date`),
KEY `idx_creator_id` (`creator_id`),
KEY `idx_dept_id` (`dept_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='个人账户消耗录入表';