item_transaction_logs.sql 2.0 KB

1234567891011121314151617181920212223242526
  1. -- ******************************************************************
  2. -- 表 kku_item_transaction_logs 的创建SQL
  3. -- 对应的Model: App\Module\GameItems\Models\ItemTransactionLog
  4. -- 警告: 此文件由系统自动生成,禁止修改!
  5. -- ******************************************************************
  6. CREATE TABLE `kku_item_transaction_logs` (
  7. `id` int NOT NULL AUTO_INCREMENT COMMENT '记录ID,主键',
  8. `user_id` int NOT NULL COMMENT '用户ID',
  9. `item_id` int NOT NULL COMMENT '物品ID,外键关联kku_item_items表',
  10. `instance_id` int DEFAULT NULL COMMENT '单独属性物品ID,外键关联kku_item_instances表(可为空)',
  11. `quantity` int NOT NULL COMMENT '数量(正数表示获取,负数表示消耗)',
  12. `transaction_type` tinyint NOT NULL COMMENT '交易类型(1:获取, 2:消耗, 3:交易获得, 4:交易失去, 5:过期失效)',
  13. `source_type` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '来源类型(如任务奖励、商店购买、宝箱开启等)',
  14. `source_id` int DEFAULT NULL COMMENT '来源ID(如任务ID、订单ID、宝箱ID等)',
  15. `attributes` json DEFAULT NULL COMMENT '额外属性,存储交易相关的详细信息',
  16. `expire_at` timestamp NULL DEFAULT NULL COMMENT '物品过期时间(如果有)',
  17. `created_at` timestamp NULL DEFAULT NULL COMMENT '创建时间',
  18. `updated_at` timestamp NULL DEFAULT NULL COMMENT '更新时间',
  19. `ip_address` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作的IP地址(用于安全审计)',
  20. `device_info` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '设备信息(用于安全审计)',
  21. PRIMARY KEY (`id`) USING BTREE,
  22. KEY `idx_user_created` (`user_id`,`created_at`) USING BTREE,
  23. KEY `idx_item_id` (`item_id`) USING BTREE,
  24. KEY `idx_transaction_source` (`transaction_type`,`source_type`) USING BTREE
  25. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='物品获取/消耗记录表';