/* 发微信消息相关扩展 */

ALTER TABLE `member_user`
    ADD COLUMN `system_users_id` bigint(20) COMMENT '关联系统用户ID';

-- 增加数据表，记录微信服务号的appid、服务号秘钥、平台端域名、商户端域名、移动商城端域名。
-- 本表只会有一条记录
CREATE TABLE `system_config` (
                                 `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
                                 `wechat_appid` varchar(255) DEFAULT NULL COMMENT '微信服务号appid',
                                 `wechat_secret_key` varchar(255) DEFAULT NULL COMMENT '微信服务号秘钥',
                                 `platform_domain` varchar(255) DEFAULT NULL COMMENT '平台端协议+域名+端口',
                                 `merchant_domain` varchar(255) DEFAULT NULL COMMENT '商户端协议+域名+端口',
                                 `mall_domain` varchar(255) DEFAULT NULL COMMENT '移动商城端协议+域名+端口',
                                 `creator` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '' COMMENT '创建者',
                                 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
                                 `updater` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '' COMMENT '更新者',
                                 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
                                 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
                                 PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COMMENT='系统配置表';

-- 微信消息模板表，因为不好直接把微信那边的消息模板id写死在java代码中，所以增加此表
CREATE TABLE `system_wechat_msg_template` (
                                              `id` bigint(20) NOT NULL COMMENT '模板id，非自增，由开发人员编号，对应java中的常量',
                                              `wechat_msg_template_id` varchar(255) DEFAULT NULL COMMENT '微信消息模板id',
                                              `remark` varchar(255) DEFAULT NULL COMMENT '备注、说明',
                                              `message_template_parameters` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '消息模板参数',
                                              `creator` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '' COMMENT '创建者',
                                              `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
                                              `updater` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '' COMMENT '更新者',
                                              `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
                                              `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
                                              PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='微信消息模板表';


CREATE TABLE `wechat_message_log` (
                                      `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '消息记录ID，自增主键',
                                      `openid` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '接收消息用户的openid',
                                      `member_user_id` bigint(20) NOT NULL COMMENT '会员用户ID',
                                      `system_user_id` bigint(20) DEFAULT NULL COMMENT '系统用户ID',
                                      `wechat_msg_template_id` bigint(20) NOT NULL COMMENT '微信消息模板ID',
                                      `wechat_msg_template_params` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '微信消息模板参数',
                                      `object_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '对应的业务对象ID，如订单ID、售后订单ID',
                                      `send_time` datetime DEFAULT NULL COMMENT '发送时间',
                                      `send_status` bit(1) NOT NULL DEFAULT b'0' COMMENT '微信返回的消息发送状态(0异常  1正常)',
                                      `response_result` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '微信返回的消息响应结果',
                                      `creator` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '' COMMENT '创建者',
                                      `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
                                      `updater` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '' COMMENT '更新者',
                                      `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
                                      `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
                                      PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COMMENT='微信消息记录表';
