CREATE TABLE `wallet_transaction` (
  `id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主鍵 ID，自動遞增',
  `transaction_id` BIGINT NOT NULL COMMENT '交易流水號（可對應某次業務操作，例如同一訂單的多筆變化）',
  `order_id` VARCHAR(64) NOT NULL COMMENT '訂單編號（對應實際訂單或業務事件）',
  `brand` VARCHAR(50) NOT NULL COMMENT '品牌（多租戶或多平台識別）',
  `uid` VARCHAR(64) NOT NULL COMMENT '使用者 UID',
  `wallet_type` TINYINT NOT NULL COMMENT '錢包類型（如主錢包、獎勵錢包、凍結錢包等）',
  `business_type` TINYINT NOT NULL COMMENT '業務類型（如購物、退款、加值等）',
  `asset` VARCHAR(32) NOT NULL COMMENT '資產代號（如 BTC、ETH、GEM_RED、USD 等）',
  `amount` DECIMAL(30, 18) NOT NULL COMMENT '變動金額（正數為收入，負數為支出）',
  `balance` DECIMAL(30, 18) NOT NULL COMMENT '當前錢包餘額（這筆交易後的餘額快照）',
  `create_at` BIGINT NOT NULL DEFAULT 0 COMMENT '建立時間（UnixNano，紀錄交易發生時間）',
  PRIMARY KEY (`id`),
  KET `idx_uid` (`uid`),
  KEY `idx_transaction_id` (`transaction_id`),
  KEY `idx_order_id` (`order_id`),
  KEY `idx_brand` (`brand`),
  KEY `idx_wallet_type` (`wallet_type`)
) ENGINE = InnoDB
  DEFAULT CHARSET = utf8mb4
  COLLATE = utf8mb4_unicode_ci
  COMMENT = '錢包資金異動紀錄（每一次交易行為的快照記錄）';