-- 为用户表添加微信登录相关字段
ALTER TABLE sys_user ADD COLUMN wechat_openid VARCHAR(100) NULL COMMENT '微信openid';
ALTER TABLE sys_user ADD COLUMN wechat_unionid VARCHAR(100) NULL COMMENT '微信unionid';
ALTER TABLE sys_user ADD COLUMN wechat_nickname VARCHAR(100) NULL COMMENT '微信昵称';
ALTER TABLE sys_user ADD COLUMN wechat_avatar VARCHAR(300) NULL COMMENT '微信头像';
ALTER TABLE sys_user ADD COLUMN bind_wechat CHAR(1) DEFAULT '0' NULL COMMENT '是否绑定微信(0-未绑定 1-已绑定)';

-- 为微信相关字段添加索引
ALTER TABLE sys_user ADD INDEX idx_wechat_openid (wechat_openid);
ALTER TABLE sys_user ADD INDEX idx_wechat_unionid (wechat_unionid);

-- 创建微信登录状态表，用于扫码登录状态管理
CREATE TABLE wechat_login_status (
    id VARCHAR(64) NOT NULL COMMENT '登录状态ID',
    qr_code_url VARCHAR(500) NULL COMMENT '二维码URL',
    status CHAR(1) DEFAULT '0' NOT NULL COMMENT '登录状态(0-待扫码 1-已扫码 2-已确认 3-已过期)',
    user_id INT NULL COMMENT '用户ID',
    openid VARCHAR(100) NULL COMMENT '微信openid',
    expire_time DATETIME NOT NULL COMMENT '过期时间',
    create_time DATETIME DEFAULT CURRENT_TIMESTAMP NOT NULL COMMENT '创建时间',
    update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP NOT NULL COMMENT '更新时间',
    PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='微信登录状态表';

-- 为微信登录状态表添加索引
ALTER TABLE wechat_login_status ADD INDEX idx_openid (openid);
ALTER TABLE wechat_login_status ADD INDEX idx_expire_time (expire_time);