/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!50503 SET NAMES utf8mb4 */; /*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; /*!40103 SET TIME_ZONE='+00:00' */; /*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; /*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; DROP TABLE IF EXISTS `api_jst_call_log`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `api_jst_call_log` ( `id` bigint NOT NULL AUTO_INCREMENT, `api_path` varchar(2000) DEFAULT NULL COMMENT '接口路径', `request_method` varchar(20) DEFAULT 'POST' COMMENT '请求方法', `request_body` text COMMENT '请求体', `response_code` int DEFAULT NULL COMMENT '响应HTTP码', `response_body` text COMMENT '响应体', `success` tinyint DEFAULT NULL COMMENT '是否成功 0失败 1成功', `duration` int DEFAULT NULL COMMENT '耗时毫秒', `data_id` bigint DEFAULT NULL COMMENT '关联数据ID(如device.id)', `request_headers` varchar(2000) DEFAULT NULL COMMENT '请求自定义header(JSON)', `client_ip` varchar(64) DEFAULT NULL COMMENT '客户端IP', `error_message` varchar(500) DEFAULT NULL COMMENT '错误信息', `create_time` datetime DEFAULT NULL COMMENT '创建时间', PRIMARY KEY (`id`), KEY `idx_data_id` (`data_id`), KEY `idx_create_time` (`create_time`) ) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='橘视厅/聚视厅接口调用日志'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `audit_log`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `audit_log` ( `id` bigint NOT NULL AUTO_INCREMENT, `actor_user_id` bigint DEFAULT NULL COMMENT '操作人用户ID', `head` varchar(256) DEFAULT NULL COMMENT '操作标题(中文描述)', `method` varchar(128) DEFAULT NULL COMMENT '动作类型(如ACTCODE_GENERATE)', `api` varchar(256) DEFAULT NULL COMMENT 'API路径(类名#方法名)', `param` varchar(2000) DEFAULT NULL COMMENT '入参JSON', `result` varchar(500) DEFAULT NULL COMMENT '返回结果/异常', `before` text COMMENT '变更前数据', `after` text COMMENT '变更后数据', `reason` varchar(512) DEFAULT NULL COMMENT '操作原因', `ip` varchar(64) DEFAULT NULL COMMENT '请求IP', `device_info` varchar(255) DEFAULT NULL COMMENT 'User-Agent/设备信息', `ticket_no` varchar(64) DEFAULT NULL COMMENT '工单号', `created_at` datetime DEFAULT NULL COMMENT '创建时间', `updated_at` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`id`), KEY `idx_actor_user_id` (`actor_user_id`), KEY `idx_created_at` (`created_at`), KEY `idx_method` (`method`) ) ENGINE=InnoDB AUTO_INCREMENT=23 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='审计日志'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `card`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `card` ( `id` bigint NOT NULL AUTO_INCREMENT, `card_no` varchar(100) DEFAULT NULL, `card_code` varchar(100) DEFAULT NULL, `third_party_ref` varchar(200) DEFAULT NULL, `third_card_no` varchar(200) DEFAULT NULL, `card_type` varchar(20) DEFAULT NULL, `supplier_id` bigint DEFAULT NULL, `inventory_status` varchar(30) DEFAULT NULL, `allocation_scene` varchar(30) DEFAULT NULL, `usage_status` varchar(30) DEFAULT NULL, `contract_activation_code_id` bigint DEFAULT NULL, `org_id` bigint DEFAULT NULL, `allocation_order_id` bigint DEFAULT NULL, `import_batch_id` bigint DEFAULT NULL, `third_import_batch` varchar(100) DEFAULT NULL, `price` decimal(10,2) DEFAULT NULL, `delete_flag` varchar(10) DEFAULT NULL, `expire_at` datetime DEFAULT NULL, `third_start_at` datetime DEFAULT NULL, `third_expire_at` datetime DEFAULT NULL, `active_at` datetime DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `card_device_binding`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `card_device_binding` ( `id` bigint NOT NULL AUTO_INCREMENT, `card_id` bigint DEFAULT NULL COMMENT '卡ID', `card_code` varchar(128) DEFAULT NULL COMMENT '卡密', `device_id` bigint DEFAULT NULL COMMENT '设备ID', `bind_source` varchar(32) DEFAULT NULL COMMENT '绑定来源:DAY_CARD/YEAR_CARD/SEASON_CARD', `status` varchar(20) DEFAULT 'ACTIVE' COMMENT '状态:ACTIVE/INACTIVE', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_time` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`id`), KEY `idx_device_id` (`device_id`), KEY `idx_card_id` (`card_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='卡设备绑定表'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `card_transfer`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `card_transfer` ( `id` bigint NOT NULL AUTO_INCREMENT, `card_id` bigint DEFAULT NULL, `from_org_id` bigint DEFAULT NULL, `to_org_id` bigint DEFAULT NULL, `action_type` varchar(30) DEFAULT NULL, `delete_flag` varchar(10) DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `contract`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `contract` ( `id` bigint NOT NULL AUTO_INCREMENT, `store_org_id` bigint DEFAULT NULL, `contract_no` varchar(50) DEFAULT NULL, `status` varchar(20) DEFAULT NULL, `delete_flag` varchar(10) DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `contract_activation_code`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `contract_activation_code` ( `id` bigint NOT NULL AUTO_INCREMENT, `contract_id` bigint DEFAULT NULL, `code` varchar(100) DEFAULT NULL, `card_type` varchar(20) DEFAULT NULL, `status` varchar(20) DEFAULT NULL, `delete_flag` varchar(10) DEFAULT NULL, `store_org_id` bigint DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `day_card_activation_code`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `day_card_activation_code` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID', `code` varchar(32) NOT NULL COMMENT '激活码(唯一)', `channel_org_id` bigint NOT NULL COMMENT '渠道组织ID', `store_org_id` bigint NOT NULL COMMENT '门店组织ID', `status` varchar(16) NOT NULL DEFAULT 'ACTIVE' COMMENT '状态:ACTIVE/DISABLED', `max_device_count` int NOT NULL DEFAULT '0' COMMENT '最大可激活设备数(0=不限)', `activated_count` int NOT NULL DEFAULT '0' COMMENT '已激活设备数', `remark` varchar(255) DEFAULT NULL COMMENT '备注', `delete_flag` varchar(10) NOT NULL DEFAULT 'UNDEL' COMMENT '删除标记:UNDEL/DEL', `created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', PRIMARY KEY (`id`), UNIQUE KEY `uk_code` (`code`), KEY `idx_store_org_id` (`store_org_id`), KEY `idx_channel_org_id` (`channel_org_id`), KEY `idx_status` (`status`) ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='天卡设备激活码'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `day_card_import_batch`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `day_card_import_batch` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID', `batch_no` varchar(64) NOT NULL COMMENT '批次号', `partner_id` bigint DEFAULT NULL COMMENT '合作伙伴ID', `status` varchar(20) NOT NULL DEFAULT 'PROCESSING' COMMENT '状态:PROCESSING/SUCCEEDED/PARTIAL_FAILED/FAILED', `total_count` int NOT NULL DEFAULT '0' COMMENT '总数量', `success_count` int NOT NULL DEFAULT '0' COMMENT '成功数量', `fail_count` int NOT NULL DEFAULT '0' COMMENT '失败数量', `result_report_url` varchar(500) DEFAULT NULL COMMENT '结果报告URL', `remark` varchar(500) DEFAULT NULL COMMENT '备注', `created_by` bigint DEFAULT NULL COMMENT '创建人', `delete_flag` varchar(10) NOT NULL DEFAULT 'UNDEL' COMMENT '删除标记:UNDEL/DEL', `created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', PRIMARY KEY (`id`), UNIQUE KEY `uk_batch_no` (`batch_no`), KEY `idx_partner_id` (`partner_id`), KEY `idx_status` (`status`) ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='天卡导入批次'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `day_card_order`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `day_card_order` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID', `order_no` varchar(32) NOT NULL COMMENT '订单号', `partner_id` bigint DEFAULT NULL COMMENT '合作伙伴ID', `device_id` bigint DEFAULT NULL COMMENT '设备ID', `store_org_id` bigint DEFAULT NULL COMMENT '门店组织ID', `channel_org_id` bigint DEFAULT NULL COMMENT '渠道组织ID', `card_no` varchar(128) DEFAULT NULL COMMENT '卡号(支付后写入,关联day_card_pool.card_code)', `status` varchar(20) NOT NULL DEFAULT 'CREATED' COMMENT '订单状态:CREATED/PAYING/PAID/PAY_FAILED/CANCELLED', `amount` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '订单金额(元)', `pay_no` varchar(64) DEFAULT NULL COMMENT '支付流水号', `pay_amount` decimal(10,2) DEFAULT NULL COMMENT '实际支付金额(元)', `pay_time` datetime DEFAULT NULL COMMENT '支付时间', `expire_time` datetime DEFAULT NULL COMMENT '订单过期时间(15分钟)', `cancel_time` datetime DEFAULT NULL COMMENT '取消时间', `delete_flag` varchar(10) NOT NULL DEFAULT 'UNDEL' COMMENT '删除标记:UNDEL/DEL', `created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `pay_channel` varchar(20) DEFAULT 'MOCK' COMMENT '支付渠道 MOCK/WECHAT', `prepay_id` varchar(64) DEFAULT NULL COMMENT '微信预支付ID', `code_url` varchar(500) DEFAULT NULL COMMENT '微信扫码支付链接', `device_sn` varchar(128) DEFAULT NULL COMMENT '设备SN(冗余)', `mac` varchar(64) DEFAULT NULL COMMENT '设备MAC(冗余)', `agent_org_id` bigint DEFAULT NULL COMMENT '代理商组织ID', `org_path_snapshot` varchar(512) DEFAULT NULL COMMENT '组织链路快照(如 1.5.12.)', `channel_order_no` varchar(128) DEFAULT NULL COMMENT '微信支付订单号', PRIMARY KEY (`id`), UNIQUE KEY `uk_order_no` (`order_no`), KEY `idx_device_status` (`device_id`,`status`), KEY `idx_status_expire` (`status`,`expire_time`), KEY `idx_partner_status` (`partner_id`,`status`) ) ENGINE=InnoDB AUTO_INCREMENT=33 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='天卡订单表'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `day_card_pool`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `day_card_pool` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID', `card_code` varchar(128) NOT NULL COMMENT '卡密(导入的激活码)', `third_party_ref` varchar(128) DEFAULT NULL COMMENT '第三方引用标识', `third_card_no` varchar(128) DEFAULT NULL COMMENT '传第三方的唯一卡号', `card_type` varchar(20) NOT NULL DEFAULT 'DAY' COMMENT '卡类型:DAY', `partner_id` bigint DEFAULT NULL COMMENT '所属合作伙伴ID', `status` varchar(20) NOT NULL DEFAULT 'UNUSED' COMMENT '状态:UNUSED/RESERVED/USED', `activate_status` varchar(20) DEFAULT 'PENDING' COMMENT '激活状态 PENDING/SUCCESS/FAILED', `activate_error` varchar(1000) DEFAULT NULL COMMENT '激活失败原因', `activated_at` datetime DEFAULT NULL COMMENT '激活成功时间', `order_no` varchar(32) DEFAULT NULL COMMENT '关联订单号', `device_id` bigint DEFAULT NULL COMMENT '关联设备ID', `import_batch_id` bigint DEFAULT NULL COMMENT '导入批次ID', `expire_at` datetime DEFAULT NULL COMMENT '卡过期时间', `used_at` datetime DEFAULT NULL COMMENT '使用时间', `delete_flag` varchar(10) NOT NULL DEFAULT 'UNDEL' COMMENT '删除标记:UNDEL/DEL', `created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', PRIMARY KEY (`id`), UNIQUE KEY `uk_card_code` (`card_code`), KEY `idx_partner_status` (`partner_id`,`status`), KEY `idx_order_no` (`order_no`), KEY `idx_device_id` (`device_id`), KEY `idx_import_batch_id` (`import_batch_id`) ) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='天卡池'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `day_card_price_config`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `day_card_price_config` ( `id` bigint NOT NULL AUTO_INCREMENT, `partner_id` bigint NOT NULL COMMENT '合作伙伴ID', `channel_org_id` bigint DEFAULT NULL COMMENT '渠道组织ID(可空=全渠道默认)', `store_org_id` bigint DEFAULT NULL COMMENT '门店组织ID(空=渠道级/平台级)', `price` decimal(10,2) NOT NULL COMMENT '天卡价格(元)', `name` varchar(100) DEFAULT NULL COMMENT '策略名称', `status` varchar(20) DEFAULT 'ACTIVE' COMMENT '状态 ACTIVE/DISABLED', `delete_flag` varchar(10) DEFAULT 'UNDEL', `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, PRIMARY KEY (`id`), KEY `idx_partner_channel` (`partner_id`,`channel_org_id`), KEY `idx_store_org_id` (`store_org_id`) ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='天卡定价策略'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `day_card_profit_receiver`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `day_card_profit_receiver` ( `id` bigint NOT NULL AUTO_INCREMENT, `partner_id` bigint NOT NULL COMMENT '合作伙伴ID', `receiver_type` varchar(20) NOT NULL COMMENT '接收方类型 MERCHANT_ID/PERSONAL_OPENID', `receiver_account` varchar(128) NOT NULL COMMENT '接收方账户(商户号或openid)', `receiver_name` varchar(128) DEFAULT NULL COMMENT '接收方名称', `relation_type` varchar(20) DEFAULT 'PARTNER' COMMENT '关系类型 PARTNER/STORE/CHANNEL', `relation_org_id` bigint DEFAULT NULL COMMENT '关联组织ID', `wx_bind_status` varchar(20) DEFAULT 'PENDING' COMMENT '微信绑定状态 PENDING/BINDED/FAILED', `wx_bind_error` varchar(500) DEFAULT NULL COMMENT '绑定失败原因', `status` varchar(20) DEFAULT 'ACTIVE' COMMENT '状态 ACTIVE/DISABLED', `remark` varchar(500) DEFAULT NULL, `delete_flag` varchar(10) DEFAULT 'UNDEL', `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, PRIMARY KEY (`id`), UNIQUE KEY `uk_partner_account_type` (`partner_id`,`receiver_account`,`receiver_type`), KEY `idx_partner_id` (`partner_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='分账接收方'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `day_card_profit_rule`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `day_card_profit_rule` ( `id` bigint NOT NULL AUTO_INCREMENT, `name` varchar(100) NOT NULL COMMENT '规则名称', `partner_id` bigint NOT NULL COMMENT '合作伙伴ID', `channel_org_id` bigint DEFAULT NULL COMMENT '渠道组织ID(空=合作伙伴级)', `store_org_id` bigint DEFAULT NULL COMMENT '门店组织ID(空=渠道级)', `receiver_type` varchar(20) DEFAULT 'MERCHANT_ID' COMMENT '接收方类型 MERCHANT_ID/PERSONAL_OPENID', `receiver_account` varchar(128) NOT NULL COMMENT '分账接收方账户', `receiver_name` varchar(128) DEFAULT NULL COMMENT '接收方名称', `share_ratio` decimal(5,4) NOT NULL COMMENT '分账比例(0.0001~0.3000,最大30%)', `share_type` varchar(20) DEFAULT 'RATIO' COMMENT '分账类型 RATIO/FIXED', `priority` int DEFAULT '0' COMMENT '优先级(数字越大越优先)', `status` varchar(20) DEFAULT 'ACTIVE' COMMENT '状态 ACTIVE/DISABLED', `remark` varchar(500) DEFAULT NULL COMMENT '备注', `delete_flag` varchar(10) DEFAULT 'UNDEL', `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, PRIMARY KEY (`id`), KEY `idx_partner_channel_store` (`partner_id`,`channel_org_id`,`store_org_id`), KEY `idx_status` (`status`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='天卡分润规则'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `day_card_refund`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `day_card_refund` ( `id` bigint NOT NULL AUTO_INCREMENT, `refund_no` varchar(64) NOT NULL COMMENT '退款单号', `order_no` varchar(64) NOT NULL COMMENT '关联订单号', `wx_refund_id` varchar(128) DEFAULT NULL COMMENT '微信退款单号', `refund_amount` decimal(10,2) NOT NULL COMMENT '退款金额', `reason` varchar(255) DEFAULT NULL COMMENT '退款原因', `status` varchar(20) DEFAULT 'PENDING' COMMENT '状态 PENDING/PROCESSING/SUCCESS/FAILED/CLOSED', `error_message` varchar(500) DEFAULT NULL, `settled_at` datetime DEFAULT NULL COMMENT '退款完成时间', `delete_flag` varchar(10) DEFAULT 'UNDEL', `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, PRIMARY KEY (`id`), UNIQUE KEY `uk_refund_no` (`refund_no`), KEY `idx_order_no` (`order_no`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='天卡退款记录'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `day_card_settle_order`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `day_card_settle_order` ( `id` bigint NOT NULL AUTO_INCREMENT, `settle_no` varchar(64) NOT NULL COMMENT '分账单号', `order_no` varchar(64) NOT NULL COMMENT '关联天卡订单号', `profit_rule_id` bigint DEFAULT NULL COMMENT '匹配的分润规则ID', `receiver_account` varchar(128) NOT NULL COMMENT '接收方账户', `receiver_type` varchar(20) DEFAULT 'MERCHANT_ID' COMMENT '接收方类型', `total_amount` decimal(10,2) NOT NULL COMMENT '订单总金额', `share_ratio` decimal(5,4) NOT NULL COMMENT '分账比例', `settle_amount` decimal(10,2) NOT NULL COMMENT '分账金额', `wx_settle_id` varchar(128) DEFAULT NULL COMMENT '微信分账单号', `status` varchar(20) DEFAULT 'PENDING' COMMENT '状态 PENDING/PROCESSING/SUCCESS/FAILED', `error_message` varchar(500) DEFAULT NULL, `settled_at` datetime DEFAULT NULL COMMENT '分账完成时间', `retry_count` int DEFAULT '0' COMMENT '重试次数', `delete_flag` varchar(10) DEFAULT 'UNDEL', `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, PRIMARY KEY (`id`), UNIQUE KEY `uk_settle_no` (`settle_no`), KEY `idx_order_no` (`order_no`), KEY `idx_status` (`status`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='天卡分账单'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `day_card_settle_record`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `day_card_settle_record` ( `id` bigint NOT NULL AUTO_INCREMENT, `order_no` varchar(64) NOT NULL COMMENT '订单号', `settle_rule_id` bigint DEFAULT NULL COMMENT '分账规则ID', `total_amount` decimal(10,2) NOT NULL COMMENT '订单总金额', `share_ratio` decimal(5,4) NOT NULL COMMENT '分账比例', `settle_amount` decimal(10,2) NOT NULL COMMENT '分账金额', `receiver_account` varchar(128) DEFAULT NULL COMMENT '接收方账户', `status` varchar(20) DEFAULT 'PENDING' COMMENT '状态 PENDING/SUCCESS/FAILED', `error_message` varchar(500) DEFAULT NULL, `settled_at` datetime DEFAULT NULL COMMENT '分账完成时间', `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, PRIMARY KEY (`id`), KEY `idx_order_no` (`order_no`), KEY `idx_status` (`status`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='天卡分账记录'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `day_card_settle_rule`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `day_card_settle_rule` ( `id` bigint NOT NULL AUTO_INCREMENT, `name` varchar(100) NOT NULL COMMENT '规则名称', `partner_id` bigint DEFAULT NULL COMMENT '合作伙伴ID', `channel_org_id` bigint DEFAULT NULL COMMENT '渠道组织ID', `store_org_id` bigint DEFAULT NULL COMMENT '门店组织ID(空=渠道级)', `receiver_account` varchar(128) DEFAULT NULL COMMENT '分账接收方账户', `receiver_name` varchar(128) DEFAULT NULL COMMENT '接收方名称', `share_ratio` decimal(5,4) NOT NULL COMMENT '分账比例(如0.3000=30%)', `receiver_type` varchar(20) DEFAULT 'MERCHANT_ID' COMMENT '接收方类型 MERCHANT_ID/PERSONAL_OPENID', `status` varchar(20) DEFAULT 'ACTIVE' COMMENT '状态 ACTIVE/DISABLED', `delete_flag` varchar(10) DEFAULT 'UNDEL', `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, PRIMARY KEY (`id`), KEY `idx_partner_channel` (`partner_id`,`channel_org_id`) ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='天卡分账规则'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `device`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `device` ( `id` bigint NOT NULL AUTO_INCREMENT, `store_org_id` bigint DEFAULT NULL, `mac` varchar(64) DEFAULT NULL, `device_sn` varchar(128) DEFAULT NULL, `wifi_mac` varchar(64) DEFAULT NULL, `device_uid` varchar(128) DEFAULT NULL, `android_id` varchar(64) DEFAULT NULL COMMENT 'Android ID(重装不变,工厂重置才变)', `manufacturer` varchar(64) DEFAULT NULL COMMENT '设备厂商 Build.MANUFACTURER', `model` varchar(128) DEFAULT NULL COMMENT '设备型号 Build.MODEL', `brand` varchar(64) DEFAULT NULL COMMENT '设备品牌 Build.BRAND', `identifier_strategy` varchar(32) DEFAULT NULL, `device_name` varchar(128) DEFAULT NULL, `device_model` varchar(64) DEFAULT NULL, `ver_code` varchar(32) DEFAULT NULL, `ver_name` varchar(64) DEFAULT NULL, `android_version` varchar(32) DEFAULT NULL, `room_no` varchar(64) DEFAULT NULL, `last_heartbeat` datetime DEFAULT NULL, `remark` varchar(255) DEFAULT NULL, `status` varchar(20) DEFAULT 'ACTIVE', `delete_flag` varchar(10) DEFAULT 'UNDEL', `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, PRIMARY KEY (`id`), KEY `idx_android_id` (`android_id`) ) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='设备表'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `open_api_call_log`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `open_api_call_log` ( `id` bigint NOT NULL AUTO_INCREMENT, `partner_id` varchar(32) DEFAULT NULL COMMENT '合作伙伴ID', `app_key` varchar(32) DEFAULT NULL, `api` varchar(256) DEFAULT NULL COMMENT '请求路径', `http_method` varchar(16) DEFAULT NULL, `params` varchar(2000) DEFAULT NULL COMMENT '请求参数', `result_code` int DEFAULT NULL COMMENT '返回业务code', `ip` varchar(64) DEFAULT NULL, `cost_ms` int DEFAULT NULL COMMENT '耗时毫秒', `created_at` datetime DEFAULT NULL, PRIMARY KEY (`id`), KEY `idx_partner_id` (`partner_id`), KEY `idx_created_at` (`created_at`) ) ENGINE=InnoDB AUTO_INCREMENT=18 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='开放API调用日志'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `open_api_content_package`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `open_api_content_package` ( `id` bigint NOT NULL AUTO_INCREMENT, `partner_id` varchar(32) NOT NULL COMMENT '合作伙伴ID', `name` varchar(128) DEFAULT NULL COMMENT '内容包名称', `catalog_ids` varchar(2000) DEFAULT NULL COMMENT '授权栏目ID列表(逗号分隔,二级栏目id如472)', `content_codes` text COMMENT '授权内容code列表(逗号分隔),非空时优先按内容过滤', `status` varchar(16) NOT NULL DEFAULT 'ACTIVE' COMMENT 'ACTIVE/DISABLED', `delete_flag` varchar(8) NOT NULL DEFAULT 'UNDEL', `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, PRIMARY KEY (`id`), KEY `idx_partner_id` (`partner_id`) ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='开放API内容包授权'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `open_api_partner`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `open_api_partner` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID', `partner_id` varchar(64) NOT NULL COMMENT '合作伙伴ID', `app_key` varchar(64) NOT NULL COMMENT '应用Key', `app_secret` varchar(128) NOT NULL COMMENT '应用密钥', `name` varchar(100) DEFAULT NULL COMMENT '合作伙伴名称', `status` varchar(20) NOT NULL DEFAULT 'ACTIVE' COMMENT '状态:ACTIVE/DISABLED', `api_permissions` text COMMENT 'API权限(JSON)', `rate_limit` int NOT NULL DEFAULT '100' COMMENT '速率限制(每秒请求数)', `delete_flag` varchar(10) NOT NULL DEFAULT 'UNDEL' COMMENT '删除标记:UNDEL/DEL', `created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', PRIMARY KEY (`id`), UNIQUE KEY `uk_app_key` (`app_key`), UNIQUE KEY `uk_partner_id` (`partner_id`), KEY `idx_status` (`status`) ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='开放API合作伙伴'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `open_api_partner_card_pool`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `open_api_partner_card_pool` ( `id` bigint NOT NULL AUTO_INCREMENT, `partner_id` varchar(32) NOT NULL COMMENT '合作伙伴ID(open_api_partner.partner_id)', `pool_id` bigint NOT NULL COMMENT 'day_card_pool.id 天卡池主键', `card_code` varchar(64) DEFAULT NULL COMMENT '天卡卡密', `third_card_no` varchar(64) DEFAULT NULL COMMENT '橘视厅第三方卡号', `status` varchar(16) NOT NULL DEFAULT 'AVAILABLE' COMMENT 'AVAILABLE可用/CONSUMED已消耗/DISABLED已禁用', `device_id` bigint DEFAULT NULL COMMENT '消耗后绑定的设备ID', `channel_org_id` bigint DEFAULT NULL COMMENT '渠道组织ID(sys_org.org_id)', `purchase_batch` varchar(32) DEFAULT NULL COMMENT '采购批次号', `consumed_at` datetime DEFAULT NULL COMMENT '消耗时间', `delete_flag` varchar(8) NOT NULL DEFAULT 'UNDEL', `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, PRIMARY KEY (`id`), KEY `idx_partner_id` (`partner_id`), KEY `idx_partner_status` (`partner_id`,`status`), KEY `idx_pool_id` (`pool_id`) ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='合作伙伴天卡池(代销模式)'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `org_settlement_account`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `org_settlement_account` ( `id` bigint NOT NULL AUTO_INCREMENT, `org_id` bigint NOT NULL COMMENT '关联组织', `pay_channel` varchar(32) DEFAULT 'WECHAT' COMMENT '支付渠道', `receiver_type` varchar(32) NOT NULL COMMENT 'MERCHANT_ID / PERSONAL_OPENID', `receiver_account` varchar(128) NOT NULL COMMENT '商户号或OpenID', `receiver_name` varchar(128) DEFAULT NULL COMMENT '收款方名称', `bind_status` varchar(16) DEFAULT 'PENDING' COMMENT 'PENDING/ACTIVE/FAILED', `external_bind_id` varchar(128) DEFAULT NULL COMMENT '微信侧绑定记录ID', `delete_flag` varchar(8) DEFAULT 'UNDEL', `created_at` datetime DEFAULT CURRENT_TIMESTAMP, `updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`id`), KEY `idx_org` (`org_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='组织结算账户表(分账接收方)'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `profit_sharing_detail`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `profit_sharing_detail` ( `id` bigint NOT NULL AUTO_INCREMENT, `sharing_order_id` bigint NOT NULL COMMENT '关联分账单', `org_id` bigint DEFAULT NULL COMMENT '接收方组织ID', `org_role` varchar(32) DEFAULT NULL COMMENT 'PLATFORM/CHANNEL/AGENT/STORE', `receiver_account` varchar(128) DEFAULT NULL COMMENT '接收方账号', `receiver_type` varchar(32) DEFAULT NULL COMMENT '接收方类型', `amount` int NOT NULL COMMENT '分账金额(分)', `description` varchar(128) DEFAULT NULL COMMENT '分账描述', `status` varchar(16) DEFAULT 'PENDING' COMMENT 'PENDING/SUCCESS/FAILED', `external_order_id` varchar(128) DEFAULT NULL COMMENT '微信侧分账单号', `success_time` datetime DEFAULT NULL COMMENT '成功时间', `fail_reason` varchar(512) DEFAULT NULL COMMENT '失败原因', `created_at` datetime DEFAULT CURRENT_TIMESTAMP, `updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`id`), KEY `idx_sharing_order` (`sharing_order_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='分账明细表'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `profit_sharing_order`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `profit_sharing_order` ( `id` bigint NOT NULL AUTO_INCREMENT, `pay_order_no` varchar(64) NOT NULL COMMENT '关联支付订单号', `transaction_id` varchar(64) DEFAULT NULL COMMENT '微信支付订单号', `out_order_no` varchar(64) NOT NULL COMMENT '分账方内部单号(唯一)', `status` varchar(16) DEFAULT 'PENDING' COMMENT 'PENDING/SUCCESS/FAILED/PARTIAL', `total_amount` int DEFAULT NULL COMMENT '分账总金额(分)', `rule_id` bigint DEFAULT NULL COMMENT '命中的规则ID', `rule_snapshot` text COMMENT '规则快照(JSON)', `org_path_snapshot` varchar(512) DEFAULT NULL COMMENT '组织链路快照', `sharing_channel` varchar(32) DEFAULT 'WECHAT_NATIVE' COMMENT 'WECHAT_NATIVE/AGGREGATE', `delete_flag` varchar(8) DEFAULT 'UNDEL', `created_at` datetime DEFAULT CURRENT_TIMESTAMP, `updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`id`), UNIQUE KEY `idx_out_order` (`out_order_no`), KEY `idx_pay_order` (`pay_order_no`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='分账单表'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `profit_sharing_rule`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `profit_sharing_rule` ( `id` bigint NOT NULL AUTO_INCREMENT, `rule_name` varchar(128) NOT NULL COMMENT '规则名称', `scope_type` varchar(32) NOT NULL COMMENT '适用范围:GLOBAL/CHANNEL/AGENT/STORE', `scope_org_id` bigint DEFAULT NULL COMMENT '关联组织ID(GLOBAL时为空)', `priority` int DEFAULT '0' COMMENT '优先级(数值越大越优先)', `status` varchar(16) DEFAULT 'ACTIVE' COMMENT 'ACTIVE/INACTIVE', `effective_from` datetime DEFAULT NULL COMMENT '生效开始时间', `effective_to` datetime DEFAULT NULL COMMENT '生效结束时间', `delete_flag` varchar(8) DEFAULT 'UNDEL', `created_at` datetime DEFAULT CURRENT_TIMESTAMP, `updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`id`), KEY `idx_scope` (`scope_type`,`scope_org_id`), KEY `idx_status` (`status`,`delete_flag`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='分润规则表'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `profit_sharing_rule_item`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `profit_sharing_rule_item` ( `id` bigint NOT NULL AUTO_INCREMENT, `rule_id` bigint NOT NULL COMMENT '关联规则', `org_role` varchar(32) NOT NULL COMMENT '角色:PLATFORM/CHANNEL/AGENT/STORE', `share_type` varchar(16) NOT NULL COMMENT 'RATIO-比例 / FIXED-固定金额', `share_value` decimal(10,2) NOT NULL COMMENT '比例:百分比(如20表示20%);固定:分', `sort_order` int DEFAULT '0' COMMENT '执行顺序', `created_at` datetime DEFAULT CURRENT_TIMESTAMP, `updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`id`), KEY `idx_rule` (`rule_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='分润规则明细表'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `QRTZ_BLOB_TRIGGERS`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `QRTZ_BLOB_TRIGGERS` ( `SCHED_NAME` varchar(120) NOT NULL, `TRIGGER_NAME` varchar(200) NOT NULL, `TRIGGER_GROUP` varchar(200) NOT NULL, `BLOB_DATA` blob, PRIMARY KEY (`SCHED_NAME`,`TRIGGER_NAME`,`TRIGGER_GROUP`), KEY `SCHED_NAME` (`SCHED_NAME`,`TRIGGER_NAME`,`TRIGGER_GROUP`), CONSTRAINT `qrtz_blob_triggers_ibfk_1` FOREIGN KEY (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) REFERENCES `QRTZ_TRIGGERS` (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `QRTZ_CALENDARS`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `QRTZ_CALENDARS` ( `SCHED_NAME` varchar(120) NOT NULL, `CALENDAR_NAME` varchar(200) NOT NULL, `CALENDAR` blob NOT NULL, PRIMARY KEY (`SCHED_NAME`,`CALENDAR_NAME`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `QRTZ_CRON_TRIGGERS`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `QRTZ_CRON_TRIGGERS` ( `SCHED_NAME` varchar(120) NOT NULL, `TRIGGER_NAME` varchar(200) NOT NULL, `TRIGGER_GROUP` varchar(200) NOT NULL, `CRON_EXPRESSION` varchar(120) NOT NULL, `TIME_ZONE_ID` varchar(80) DEFAULT NULL, PRIMARY KEY (`SCHED_NAME`,`TRIGGER_NAME`,`TRIGGER_GROUP`), CONSTRAINT `qrtz_cron_triggers_ibfk_1` FOREIGN KEY (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) REFERENCES `QRTZ_TRIGGERS` (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `QRTZ_FIRED_TRIGGERS`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `QRTZ_FIRED_TRIGGERS` ( `SCHED_NAME` varchar(120) NOT NULL, `ENTRY_ID` varchar(95) NOT NULL, `TRIGGER_NAME` varchar(200) NOT NULL, `TRIGGER_GROUP` varchar(200) NOT NULL, `INSTANCE_NAME` varchar(200) NOT NULL, `FIRED_TIME` bigint NOT NULL, `SCHED_TIME` bigint NOT NULL, `PRIORITY` int NOT NULL, `STATE` varchar(16) NOT NULL, `JOB_NAME` varchar(200) DEFAULT NULL, `JOB_GROUP` varchar(200) DEFAULT NULL, `IS_NONCONCURRENT` varchar(1) DEFAULT NULL, `REQUESTS_RECOVERY` varchar(1) DEFAULT NULL, PRIMARY KEY (`SCHED_NAME`,`ENTRY_ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `QRTZ_JOB_DETAILS`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `QRTZ_JOB_DETAILS` ( `SCHED_NAME` varchar(120) NOT NULL, `JOB_NAME` varchar(200) NOT NULL, `JOB_GROUP` varchar(200) NOT NULL, `DESCRIPTION` varchar(250) DEFAULT NULL, `JOB_CLASS_NAME` varchar(250) NOT NULL, `IS_DURABLE` varchar(1) NOT NULL, `IS_NONCONCURRENT` varchar(1) NOT NULL, `IS_UPDATE_DATA` varchar(1) NOT NULL, `REQUESTS_RECOVERY` varchar(1) NOT NULL, `JOB_DATA` blob, PRIMARY KEY (`SCHED_NAME`,`JOB_NAME`,`JOB_GROUP`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `QRTZ_LOCKS`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `QRTZ_LOCKS` ( `SCHED_NAME` varchar(120) NOT NULL, `LOCK_NAME` varchar(40) NOT NULL, PRIMARY KEY (`SCHED_NAME`,`LOCK_NAME`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `QRTZ_PAUSED_TRIGGER_GRPS`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `QRTZ_PAUSED_TRIGGER_GRPS` ( `SCHED_NAME` varchar(120) NOT NULL, `TRIGGER_GROUP` varchar(200) NOT NULL, PRIMARY KEY (`SCHED_NAME`,`TRIGGER_GROUP`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `QRTZ_SCHEDULER_STATE`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `QRTZ_SCHEDULER_STATE` ( `SCHED_NAME` varchar(120) NOT NULL, `INSTANCE_NAME` varchar(200) NOT NULL, `LAST_CHECKIN_TIME` bigint NOT NULL, `CHECKIN_INTERVAL` bigint NOT NULL, PRIMARY KEY (`SCHED_NAME`,`INSTANCE_NAME`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `QRTZ_SIMPLE_TRIGGERS`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `QRTZ_SIMPLE_TRIGGERS` ( `SCHED_NAME` varchar(120) NOT NULL, `TRIGGER_NAME` varchar(200) NOT NULL, `TRIGGER_GROUP` varchar(200) NOT NULL, `REPEAT_COUNT` bigint NOT NULL, `REPEAT_INTERVAL` bigint NOT NULL, `TIMES_TRIGGERED` bigint NOT NULL, PRIMARY KEY (`SCHED_NAME`,`TRIGGER_NAME`,`TRIGGER_GROUP`), CONSTRAINT `qrtz_simple_triggers_ibfk_1` FOREIGN KEY (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) REFERENCES `QRTZ_TRIGGERS` (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `QRTZ_SIMPROP_TRIGGERS`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `QRTZ_SIMPROP_TRIGGERS` ( `SCHED_NAME` varchar(120) NOT NULL, `TRIGGER_NAME` varchar(200) NOT NULL, `TRIGGER_GROUP` varchar(200) NOT NULL, `STR_PROP_1` varchar(512) DEFAULT NULL, `STR_PROP_2` varchar(512) DEFAULT NULL, `STR_PROP_3` varchar(512) DEFAULT NULL, `INT_PROP_1` int DEFAULT NULL, `INT_PROP_2` int DEFAULT NULL, `LONG_PROP_1` bigint DEFAULT NULL, `LONG_PROP_2` bigint DEFAULT NULL, `DEC_PROP_1` decimal(13,4) DEFAULT NULL, `DEC_PROP_2` decimal(13,4) DEFAULT NULL, `BOOL_PROP_1` varchar(1) DEFAULT NULL, `BOOL_PROP_2` varchar(1) DEFAULT NULL, PRIMARY KEY (`SCHED_NAME`,`TRIGGER_NAME`,`TRIGGER_GROUP`), CONSTRAINT `qrtz_simprop_triggers_ibfk_1` FOREIGN KEY (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) REFERENCES `QRTZ_TRIGGERS` (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `QRTZ_TRIGGERS`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `QRTZ_TRIGGERS` ( `SCHED_NAME` varchar(120) NOT NULL, `TRIGGER_NAME` varchar(200) NOT NULL, `TRIGGER_GROUP` varchar(200) NOT NULL, `JOB_NAME` varchar(200) NOT NULL, `JOB_GROUP` varchar(200) NOT NULL, `DESCRIPTION` varchar(250) DEFAULT NULL, `NEXT_FIRE_TIME` bigint DEFAULT NULL, `PREV_FIRE_TIME` bigint DEFAULT NULL, `PRIORITY` int DEFAULT NULL, `TRIGGER_STATE` varchar(16) NOT NULL, `TRIGGER_TYPE` varchar(8) NOT NULL, `START_TIME` bigint NOT NULL, `END_TIME` bigint DEFAULT NULL, `CALENDAR_NAME` varchar(200) DEFAULT NULL, `MISFIRE_INSTR` smallint DEFAULT NULL, `JOB_DATA` blob, PRIMARY KEY (`SCHED_NAME`,`TRIGGER_NAME`,`TRIGGER_GROUP`), KEY `SCHED_NAME` (`SCHED_NAME`,`JOB_NAME`,`JOB_GROUP`), CONSTRAINT `qrtz_triggers_ibfk_1` FOREIGN KEY (`SCHED_NAME`, `JOB_NAME`, `JOB_GROUP`) REFERENCES `QRTZ_JOB_DETAILS` (`SCHED_NAME`, `JOB_NAME`, `JOB_GROUP`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `schedule_job`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `schedule_job` ( `job_id` bigint NOT NULL AUTO_INCREMENT COMMENT '任务id', `bean_name` varchar(200) DEFAULT NULL COMMENT 'spring bean名称', `params` varchar(2000) DEFAULT NULL COMMENT '参数', `cron_expression` varchar(100) DEFAULT NULL COMMENT 'cron表达式', `status` tinyint DEFAULT NULL COMMENT '任务状态 0:正常 1:暂停', `remark` varchar(255) DEFAULT NULL COMMENT '备注', `create_time` datetime DEFAULT NULL COMMENT '创建时间', PRIMARY KEY (`job_id`) ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='定时任务'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `schedule_job_log`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `schedule_job_log` ( `log_id` bigint NOT NULL AUTO_INCREMENT COMMENT '任务日志id', `job_id` bigint NOT NULL COMMENT '任务id', `bean_name` varchar(200) DEFAULT NULL COMMENT 'spring bean名称', `params` varchar(2000) DEFAULT NULL COMMENT '参数', `status` tinyint NOT NULL COMMENT '任务状态 0:成功 1:失败', `error` varchar(2000) DEFAULT NULL COMMENT '失败信息', `times` int NOT NULL COMMENT '耗时(单位:毫秒)', `create_time` datetime DEFAULT NULL COMMENT '创建时间', PRIMARY KEY (`log_id`), KEY `job_id` (`job_id`) ) ENGINE=InnoDB AUTO_INCREMENT=2012 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='定时任务日志'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `store_profile`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `store_profile` ( `org_id` bigint NOT NULL COMMENT '组织ID,关联 sys_org.id(type=STORE)', `store_name` varchar(100) DEFAULT NULL, `legal_person` varchar(50) DEFAULT NULL, `license_no` varchar(100) DEFAULT NULL, `license_image_url` varchar(500) DEFAULT NULL, `country` varchar(50) DEFAULT '中国', `region` varchar(200) DEFAULT NULL, `address` varchar(500) DEFAULT NULL, `phone` varchar(50) DEFAULT NULL, `remark` varchar(500) DEFAULT NULL, `status` varchar(20) DEFAULT 'ACTIVE', `delete_flag` varchar(10) DEFAULT 'UNDEL', `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, PRIMARY KEY (`org_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='门店扩展信息'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `sys_captcha`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `sys_captcha` ( `uuid` char(36) NOT NULL COMMENT 'uuid', `code` varchar(6) NOT NULL COMMENT '验证码', `expire_time` datetime DEFAULT NULL COMMENT '过期时间', PRIMARY KEY (`uuid`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='系统验证码'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `sys_config`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `sys_config` ( `id` bigint NOT NULL AUTO_INCREMENT, `param_key` varchar(50) DEFAULT NULL COMMENT 'key', `param_value` varchar(2000) DEFAULT NULL COMMENT 'value', `status` tinyint DEFAULT '1' COMMENT '状态 0:隐藏 1:显示', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`), UNIQUE KEY `param_key` (`param_key`) ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='系统配置信息表'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `sys_menu`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `sys_menu` ( `id` bigint NOT NULL AUTO_INCREMENT, `parent_id` bigint DEFAULT '0' COMMENT '父菜单ID', `name` varchar(50) DEFAULT NULL COMMENT '菜单名称', `url` varchar(200) DEFAULT NULL COMMENT '菜单URL', `perms` varchar(500) DEFAULT NULL COMMENT '授权', `type` int DEFAULT NULL COMMENT '类型 0:目录 1:菜单 2:按钮', `icon` varchar(50) DEFAULT NULL COMMENT '菜单图标', `show` varchar(10) DEFAULT '10' COMMENT '是否显示 10:显示 20:隐藏', `order_num` int DEFAULT '0' COMMENT '排序', `created_at` datetime DEFAULT NULL COMMENT '创建时间', `updated_at` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=122 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='菜单管理'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `sys_org`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `sys_org` ( `id` bigint NOT NULL AUTO_INCREMENT, `parent_id` bigint DEFAULT NULL COMMENT '父组织ID;type=PLATFORM时为NULL', `mpath` varchar(500) DEFAULT NULL COMMENT '子树路径(materialized-path),如 1.2.3.', `name` varchar(100) NOT NULL COMMENT '组织名称', `order_no` int DEFAULT '0' COMMENT '同级排序', `type` varchar(20) NOT NULL COMMENT '类型 PLATFORM/CHANNEL/SERVICE_PROVIDER/STORE', `code` varchar(64) DEFAULT NULL COMMENT '组织编码,全局唯一', `can_hold_inventory` tinyint(1) DEFAULT '0' COMMENT '是否允许持仓', `activation_prefix` varchar(10) DEFAULT NULL COMMENT '权益激活码前缀;type=CHANNEL时必填且全局唯一', `brand_logo_url` varchar(500) DEFAULT NULL COMMENT '渠道品牌Logo', `development_staff` varchar(100) DEFAULT NULL COMMENT '拓展/开发人员(仅SERVICE_PROVIDER)', `contact_phone` varchar(50) DEFAULT NULL COMMENT '联系电话(仅SERVICE_PROVIDER)', `service_partner` varchar(255) DEFAULT NULL COMMENT '服务合伙人说明(仅SERVICE_PROVIDER)', `wechat_qr_image_url` varchar(500) DEFAULT NULL COMMENT '企业微信二维码图片URL(仅SERVICE_PROVIDER)', `status` varchar(20) DEFAULT 'ACTIVE' COMMENT '状态 ACTIVE/DISABLED', `create_by` bigint DEFAULT NULL, `update_by` bigint DEFAULT NULL, `delete_flag` varchar(10) DEFAULT 'UNDEL', `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, PRIMARY KEY (`id`), KEY `idx_parent_id` (`parent_id`), KEY `idx_type` (`type`), KEY `idx_mpath` (`mpath`(255)) ) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='组织'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `sys_role`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `sys_role` ( `id` bigint NOT NULL AUTO_INCREMENT, `role_name` varchar(100) DEFAULT NULL COMMENT '角色名称', `remark` varchar(100) DEFAULT NULL COMMENT '备注', `status` varchar(10) DEFAULT '1' COMMENT '状态', `created_at` datetime DEFAULT NULL COMMENT '创建时间', `updated_at` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='角色'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `sys_role_menu`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `sys_role_menu` ( `id` bigint NOT NULL AUTO_INCREMENT, `role_id` bigint DEFAULT NULL COMMENT '角色ID', `menu_id` bigint DEFAULT NULL COMMENT '菜单ID', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=45 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='角色与菜单对应关系'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `sys_user`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `sys_user` ( `id` bigint NOT NULL AUTO_INCREMENT, `username` varchar(50) NOT NULL COMMENT '用户名', `password` varchar(100) DEFAULT NULL COMMENT '密码', `salt` varchar(20) DEFAULT NULL COMMENT '盐', `avatar` varchar(255) DEFAULT NULL COMMENT '头像', `email` varchar(100) DEFAULT NULL COMMENT '邮箱', `mobile` varchar(100) DEFAULT NULL COMMENT '手机号', `remark` varchar(200) DEFAULT NULL COMMENT '备注', `status` tinyint DEFAULT '1' COMMENT '状态 0:禁用 1:正常', `org_id` bigint DEFAULT NULL COMMENT '组织ID(null=平台超管)', `created_at` datetime DEFAULT NULL COMMENT '创建时间', `updated_at` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`id`), UNIQUE KEY `uk_username` (`username`) ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='系统用户'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `sys_user_role`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `sys_user_role` ( `id` bigint NOT NULL AUTO_INCREMENT, `user_id` bigint DEFAULT NULL COMMENT '用户ID', `role_id` bigint DEFAULT NULL COMMENT '角色ID', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='用户与角色对应关系'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `sys_user_token`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `sys_user_token` ( `user_id` bigint NOT NULL, `token` varchar(100) NOT NULL COMMENT 'access token', `expire_time` datetime DEFAULT NULL COMMENT 'access过期时间', `refresh_token` varchar(100) DEFAULT NULL COMMENT 'refresh token', `refresh_expire_time` datetime DEFAULT NULL COMMENT 'refresh过期时间', `previous_refresh_token` varchar(100) DEFAULT NULL COMMENT '上一个refresh token(防复用)', `update_time` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`user_id`), UNIQUE KEY `uk_token` (`token`), UNIQUE KEY `uk_refresh_token` (`refresh_token`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='系统用户Token'; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `wechat_pay_config`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `wechat_pay_config` ( `id` bigint NOT NULL AUTO_INCREMENT, `partner_id` bigint DEFAULT NULL COMMENT '合作伙伴ID(空=全局默认)', `app_id` varchar(64) DEFAULT NULL COMMENT '微信应用ID', `mch_id` varchar(32) DEFAULT NULL COMMENT '商户号', `api_v3_key` varchar(64) DEFAULT NULL COMMENT 'APIv3密钥', `cert_serial_no` varchar(128) DEFAULT NULL COMMENT '证书序列号', `private_key_path` varchar(500) DEFAULT NULL COMMENT '私钥文件路径', `notify_url` varchar(500) DEFAULT NULL COMMENT '回调通知URL', `status` varchar(20) DEFAULT 'ACTIVE' COMMENT '状态 ACTIVE/DISABLED', `remark` varchar(255) DEFAULT NULL, `delete_flag` varchar(10) DEFAULT 'UNDEL', `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, PRIMARY KEY (`id`), KEY `idx_partner_id` (`partner_id`) ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='微信支付配置'; /*!40101 SET character_set_client = @saved_cs_client */; /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; /*!40101 SET SQL_MODE=@OLD_SQL_MODE */; /*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; /*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;