# XXK 代理平台数据库(MySQL 5.7 ~ MySQL 8.x) # 说明: # 1. 该 SQL 设计为导入当前 youlai_admin 库 # 2. 业务表统一使用 xxk_ 前缀 # 3. 一期支持静态住宅 IP、动态住宅 IP、余额支付、二级分销 USE youlai_admin; SET NAMES utf8mb4; SET FOREIGN_KEY_CHECKS = 0; -- ---------------------------- -- Table structure for xxk_upstream_provider -- ---------------------------- DROP TABLE IF EXISTS `xxk_upstream_provider`; CREATE TABLE `xxk_upstream_provider` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键', `provider_code` varchar(64) NOT NULL COMMENT '供应商编码', `provider_name` varchar(100) NOT NULL COMMENT '供应商名称', `provider_type` varchar(32) NOT NULL COMMENT '供应商类型', `base_url` varchar(255) NOT NULL COMMENT '接口基础地址', `auth_user_id` varchar(100) DEFAULT NULL COMMENT '上游UserId', `auth_token` varchar(255) DEFAULT NULL COMMENT '上游Token', `success_codes` varchar(100) DEFAULT '1000,2001' COMMENT '成功业务码集合', `http_timeout_ms` int DEFAULT 10000 COMMENT '超时时间(毫秒)', `status` tinyint DEFAULT 1 COMMENT '状态(1-启用 0-禁用)', `is_default` tinyint DEFAULT 0 COMMENT '默认供应商(1-是 0-否)', `remark` varchar(255) DEFAULT NULL COMMENT '备注', `create_by` bigint DEFAULT NULL COMMENT '创建人ID', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint DEFAULT NULL COMMENT '更新人ID', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `is_deleted` tinyint DEFAULT 0 COMMENT '逻辑删除(1-已删除 0-未删除)', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_provider_code` (`provider_code`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='上游供应商配置表'; -- ---------------------------- -- Table structure for xxk_product -- ---------------------------- DROP TABLE IF EXISTS `xxk_product`; CREATE TABLE `xxk_product` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键', `product_code` varchar(64) NOT NULL COMMENT '商品编码', `product_name` varchar(100) NOT NULL COMMENT '商品名称', `product_type` varchar(32) NOT NULL COMMENT '商品类型(STATIC_RESIDENTIAL/DYNAMIC_RESIDENTIAL)', `upstream_provider_id` bigint NOT NULL COMMENT '上游供应商ID', `upstream_product_code` varchar(64) DEFAULT NULL COMMENT '上游商品编码', `proxies_type` varchar(64) DEFAULT NULL COMMENT '上游代理类型', `proxies_format` varchar(64) DEFAULT NULL COMMENT '上游代理格式', `purpose_web` varchar(64) DEFAULT NULL COMMENT '上游用途参数', `upstream_params` text DEFAULT NULL COMMENT '上游扩展参数JSON', `upstream_capabilities` text DEFAULT NULL COMMENT '上游能力JSON', `protocols_type` tinyint DEFAULT NULL COMMENT '协议类型(1-HTTP 2-SOCKS5 3-HTTP+SOCKS5)', `udp_status` tinyint DEFAULT 0 COMMENT '是否启用UDP(1-是 0-否)', `currency` varchar(10) DEFAULT 'RMB' COMMENT '币种', `enable_distribution` tinyint DEFAULT 1 COMMENT '是否参与分销(1-是 0-否)', `status` tinyint DEFAULT 1 COMMENT '状态(1-上架 0-下架)', `sort` int DEFAULT 0 COMMENT '排序', `remark` varchar(255) DEFAULT NULL COMMENT '备注', `create_by` bigint DEFAULT NULL COMMENT '创建人ID', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint DEFAULT NULL COMMENT '更新人ID', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `is_deleted` tinyint DEFAULT 0 COMMENT '逻辑删除(1-已删除 0-未删除)', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_product_code` (`product_code`) USING BTREE, KEY `idx_product_type_status` (`product_type`, `status`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='商品主表'; -- ---------------------------- -- Table structure for xxk_product_static_country_price -- ---------------------------- DROP TABLE IF EXISTS `xxk_product_static_country_price`; CREATE TABLE `xxk_product_static_country_price` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键', `product_id` bigint NOT NULL COMMENT '商品ID', `price_type` varchar(20) DEFAULT NULL COMMENT '价格类型(DEFAULT默认/NODE特殊节点)', `qiyun_product_type` varchar(32) DEFAULT NULL COMMENT '齐云产品类型', `qiyun_pid` varchar(64) DEFAULT NULL COMMENT '齐云项目ID', `qiyun_project_name` varchar(255) DEFAULT NULL COMMENT '齐云项目名称', `qiyun_area_id` varchar(64) DEFAULT NULL COMMENT '齐云省份ID', `qiyun_area_name` varchar(255) DEFAULT NULL COMMENT '齐云省份名称', `qiyun_node_id` varchar(100) DEFAULT NULL COMMENT '齐云节点ID', `qiyun_node_name` varchar(255) DEFAULT NULL COMMENT '齐云节点名称', `region_id` bigint DEFAULT NULL COMMENT '地区ID', `region_code` varchar(64) DEFAULT NULL COMMENT '地区编号', `region_name` varchar(100) DEFAULT NULL COMMENT '地区名称', `region_name_zh` varchar(100) DEFAULT NULL COMMENT '地区中文名', `country_code` varchar(10) NOT NULL COMMENT '国家编码', `country_name` varchar(100) NOT NULL COMMENT '国家名称', `base_price` decimal(18,2) NOT NULL DEFAULT 0.00 COMMENT '地区基础单价', `currency` varchar(10) DEFAULT 'RMB' COMMENT '币种', `status` tinyint DEFAULT 1 COMMENT '状态(1-启用 0-禁用)', `sort` int DEFAULT 0 COMMENT '排序', `remark` varchar(255) DEFAULT NULL COMMENT '备注', `create_by` bigint DEFAULT NULL COMMENT '创建人ID', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint DEFAULT NULL COMMENT '更新人ID', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `is_deleted` tinyint DEFAULT 0 COMMENT '逻辑删除(1-已删除 0-未删除)', PRIMARY KEY (`id`) USING BTREE, KEY `idx_product_country` (`product_id`, `country_code`) USING BTREE, KEY `idx_static_price_qiyun_node` (`product_id`, `price_type`, `qiyun_node_id`) USING BTREE, KEY `idx_country_code` (`country_code`) USING BTREE, KEY `idx_static_price_region_id` (`region_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='静态商品地区定价表'; -- ---------------------------- -- Table structure for xxk_product_duration_multiplier -- ---------------------------- DROP TABLE IF EXISTS `xxk_product_duration_multiplier`; CREATE TABLE `xxk_product_duration_multiplier` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键', `product_id` bigint NOT NULL COMMENT '商品ID', `duration_days` int NOT NULL COMMENT '兼容时长天数', `duration_unit` varchar(16) NOT NULL DEFAULT 'DAY' COMMENT '时长单位(DAY天/HOUR小时)', `duration_value` int NOT NULL DEFAULT 1 COMMENT '时长数值', `multiplier` decimal(10,4) NOT NULL DEFAULT 1.0000 COMMENT '价格倍率', `status` tinyint DEFAULT 1 COMMENT '状态(1-启用 0-禁用)', `remark` varchar(255) DEFAULT NULL COMMENT '备注', `create_by` bigint DEFAULT NULL COMMENT '创建人ID', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint DEFAULT NULL COMMENT '更新人ID', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `is_deleted` tinyint DEFAULT 0 COMMENT '逻辑删除(1-已删除 0-未删除)', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_product_duration_unit_value` (`product_id`, `duration_unit`, `duration_value`) USING BTREE, KEY `idx_product_duration_days` (`product_id`, `duration_days`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='商品时长倍率表'; -- ---------------------------- -- Table structure for xxk_product_dynamic_plan -- ---------------------------- DROP TABLE IF EXISTS `xxk_product_dynamic_plan`; CREATE TABLE `xxk_product_dynamic_plan` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键', `product_id` bigint NOT NULL COMMENT '商品ID', `plan_code` varchar(64) NOT NULL COMMENT '流量套餐编码', `flow_gb` decimal(12,3) NOT NULL DEFAULT 0.000 COMMENT '流量套餐GB', `base_price` decimal(18,2) NOT NULL DEFAULT 0.00 COMMENT '流量套餐基础价', `allow_sticky_session` tinyint DEFAULT 1 COMMENT '允许粘性会话(1-是 0-否)', `allow_location_select` tinyint DEFAULT 1 COMMENT '允许地区选择(1-是 0-否)', `allow_custom_limit` tinyint DEFAULT 0 COMMENT '允许自定义通道流量上限(1-是 0-否)', `status` tinyint DEFAULT 1 COMMENT '状态(1-启用 0-禁用)', `remark` varchar(255) DEFAULT NULL COMMENT '备注', `create_by` bigint DEFAULT NULL COMMENT '创建人ID', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint DEFAULT NULL COMMENT '更新人ID', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `is_deleted` tinyint DEFAULT 0 COMMENT '逻辑删除(1-已删除 0-未删除)', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_plan_code` (`plan_code`) USING BTREE, UNIQUE KEY `uk_product_flow` (`product_id`, `flow_gb`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='动态商品流量套餐表'; -- ---------------------------- -- Table structure for xxk_user_profile -- ---------------------------- DROP TABLE IF EXISTS `xxk_user_profile`; CREATE TABLE `xxk_user_profile` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键', `user_id` bigint NOT NULL COMMENT '关联sys_user.id', `user_type` varchar(32) DEFAULT 'CUSTOMER' COMMENT '用户类型', `invite_code` varchar(32) DEFAULT NULL COMMENT '邀请码', `register_source` varchar(32) DEFAULT 'ADMIN' COMMENT '注册来源', `register_ip` varchar(64) DEFAULT NULL COMMENT '注册IP', `last_login_ip` varchar(64) DEFAULT NULL COMMENT '最后登录IP', `last_login_time` datetime DEFAULT NULL COMMENT '最后登录时间', `status` tinyint DEFAULT 1 COMMENT '状态(1-正常 0-禁用)', `remark` varchar(255) DEFAULT NULL COMMENT '备注', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `is_deleted` tinyint DEFAULT 0 COMMENT '逻辑删除(1-已删除 0-未删除)', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_user_id` (`user_id`) USING BTREE, UNIQUE KEY `uk_invite_code` (`invite_code`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户业务扩展表'; -- ---------------------------- -- Table structure for xxk_wallet_account -- ---------------------------- DROP TABLE IF EXISTS `xxk_wallet_account`; CREATE TABLE `xxk_wallet_account` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键', `user_id` bigint NOT NULL COMMENT '用户ID', `balance` decimal(18,2) NOT NULL DEFAULT 0.00 COMMENT '可用余额', `frozen_balance` decimal(18,2) NOT NULL DEFAULT 0.00 COMMENT '冻结余额', `total_recharge_amount` decimal(18,2) NOT NULL DEFAULT 0.00 COMMENT '累计充值金额', `total_consume_amount` decimal(18,2) NOT NULL DEFAULT 0.00 COMMENT '累计消费金额', `total_refund_amount` decimal(18,2) NOT NULL DEFAULT 0.00 COMMENT '累计退款金额', `status` tinyint DEFAULT 1 COMMENT '状态(1-正常 0-禁用)', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_time` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_wallet_user_id` (`user_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='钱包账户表'; -- ---------------------------- -- Table structure for xxk_wallet_flow -- ---------------------------- DROP TABLE IF EXISTS `xxk_wallet_flow`; CREATE TABLE `xxk_wallet_flow` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键', `flow_no` varchar(64) NOT NULL COMMENT '流水号', `user_id` bigint NOT NULL COMMENT '用户ID', `biz_type` varchar(32) NOT NULL COMMENT '业务类型', `change_type` varchar(16) NOT NULL COMMENT '变动类型(IN/OUT)', `change_amount` decimal(18,2) NOT NULL DEFAULT 0.00 COMMENT '变动金额', `before_balance` decimal(18,2) NOT NULL DEFAULT 0.00 COMMENT '变动前余额', `after_balance` decimal(18,2) NOT NULL DEFAULT 0.00 COMMENT '变动后余额', `related_order_no` varchar(64) DEFAULT NULL COMMENT '关联订单号', `remark` varchar(255) DEFAULT NULL COMMENT '备注', `operate_by` bigint DEFAULT NULL COMMENT '操作人ID', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_time` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_flow_no` (`flow_no`) USING BTREE, KEY `idx_wallet_user_time` (`user_id`, `create_time`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='钱包流水表'; -- ---------------------------- -- Table structure for xxk_proxy_order -- ---------------------------- DROP TABLE IF EXISTS `xxk_proxy_order`; CREATE TABLE `xxk_proxy_order` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键', `order_no` varchar(64) NOT NULL COMMENT '订单号', `user_id` bigint NOT NULL COMMENT '用户ID', `product_id` bigint NOT NULL COMMENT '商品ID', `product_type` varchar(32) NOT NULL COMMENT '商品类型', `order_type` varchar(16) NOT NULL DEFAULT 'NEW' COMMENT '订单类型(NEW/RENEW)', `order_status` varchar(32) NOT NULL DEFAULT 'WAIT_PAY' COMMENT '订单状态', `pay_status` varchar(32) NOT NULL DEFAULT 'UNPAID' COMMENT '支付状态', `open_status` varchar(32) NOT NULL DEFAULT 'WAIT_OPEN' COMMENT '开通状态', `payment_type` varchar(16) DEFAULT 'BALANCE' COMMENT '支付方式', `currency` varchar(10) DEFAULT 'RMB' COMMENT '币种', `buy_quantity` int NOT NULL DEFAULT 1 COMMENT '购买数量', `duration_days` int NOT NULL COMMENT '购买天数', `sale_amount` decimal(18,2) NOT NULL DEFAULT 0.00 COMMENT '销售金额', `paid_amount` decimal(18,2) NOT NULL DEFAULT 0.00 COMMENT '实付金额', `cost_amount` decimal(18,2) DEFAULT 0.00 COMMENT '采购成本', `open_success_amount` decimal(18,2) DEFAULT 0.00 COMMENT '开通成功金额', `region_snapshot` text COMMENT '地区快照', `product_snapshot` mediumtext COMMENT '商品快照', `inviter_user_id` bigint DEFAULT NULL COMMENT '一级邀请人', `parent_inviter_user_id` bigint DEFAULT NULL COMMENT '二级邀请人', `remark` varchar(255) DEFAULT NULL COMMENT '备注', `pay_time` datetime DEFAULT NULL COMMENT '支付时间', `open_time` datetime DEFAULT NULL COMMENT '开通时间', `finish_time` datetime DEFAULT NULL COMMENT '完成时间', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `is_deleted` tinyint DEFAULT 0 COMMENT '逻辑删除(1-已删除 0-未删除)', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_order_no` (`order_no`) USING BTREE, KEY `idx_order_user_time` (`user_id`, `create_time`) USING BTREE, KEY `idx_order_status` (`order_status`, `pay_status`, `open_status`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='代理订单主表'; -- ---------------------------- -- Table structure for xxk_proxy_order_item -- ---------------------------- DROP TABLE IF EXISTS `xxk_proxy_order_item`; CREATE TABLE `xxk_proxy_order_item` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键', `order_id` bigint NOT NULL COMMENT '订单ID', `order_no` varchar(64) NOT NULL COMMENT '订单号', `user_id` bigint NOT NULL COMMENT '用户ID', `product_id` bigint NOT NULL COMMENT '商品ID', `product_type` varchar(32) NOT NULL COMMENT '商品类型', `country_code` varchar(10) DEFAULT NULL COMMENT '国家编码', `country_name` varchar(100) DEFAULT NULL COMMENT '国家名称', `quantity` int NOT NULL DEFAULT 1 COMMENT '数量', `duration_days` int NOT NULL COMMENT '时长天数', `duration_multiplier` decimal(10,4) NOT NULL DEFAULT 1.0000 COMMENT '时长倍率', `unit_price` decimal(18,2) NOT NULL DEFAULT 0.00 COMMENT '单价', `line_amount` decimal(18,2) NOT NULL DEFAULT 0.00 COMMENT '小计金额', `flow_gb` decimal(12,3) DEFAULT NULL COMMENT '动态流量GB', `upstream_payload` mediumtext COMMENT '上游请求快照', `item_status` varchar(32) DEFAULT 'INIT' COMMENT '订单项状态', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `is_deleted` tinyint DEFAULT 0 COMMENT '逻辑删除(1-已删除 0-未删除)', PRIMARY KEY (`id`) USING BTREE, KEY `idx_order_item_order_id` (`order_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='代理订单项表'; -- ---------------------------- -- Table structure for xxk_static_proxy_asset -- ---------------------------- DROP TABLE IF EXISTS `xxk_static_proxy_asset`; CREATE TABLE `xxk_static_proxy_asset` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键', `user_id` bigint NOT NULL COMMENT '用户ID', `order_id` bigint NOT NULL COMMENT '订单ID', `order_item_id` bigint DEFAULT NULL COMMENT '订单项ID', `product_id` bigint NOT NULL COMMENT '商品ID', `upstream_provider_id` bigint NOT NULL COMMENT '上游供应商ID', `upstream_order_no` varchar(64) DEFAULT NULL COMMENT '上游订单号', `upstream_proxy_id` varchar(64) NOT NULL COMMENT '上游代理ID', `proxy_address` varchar(100) NOT NULL COMMENT '代理IP', `port` int NOT NULL COMMENT '端口', `username` varchar(100) DEFAULT NULL COMMENT '账号', `password` varchar(100) DEFAULT NULL COMMENT '密码', `protocols` varchar(32) DEFAULT NULL COMMENT '协议', `country_code` varchar(10) DEFAULT NULL COMMENT '国家编码', `country_name` varchar(100) DEFAULT NULL COMMENT '国家名称', `city_name` varchar(100) DEFAULT NULL COMMENT '城市名称', `proxy_status` tinyint DEFAULT 1 COMMENT '代理状态(1-正常 2-禁用 3-维护)', `is_auto_renew` tinyint DEFAULT 0 COMMENT '自动续费(1-开 0-关)', `expired_at` datetime DEFAULT NULL COMMENT '到期时间', `last_sync_time` datetime DEFAULT NULL COMMENT '最后同步时间', `raw_data` mediumtext COMMENT '原始数据快照', `status` tinyint DEFAULT 1 COMMENT '业务状态(1-有效 0-无效)', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `is_deleted` tinyint DEFAULT 0 COMMENT '逻辑删除(1-已删除 0-未删除)', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_static_upstream_proxy_id` (`upstream_proxy_id`) USING BTREE, KEY `idx_static_user_status` (`user_id`, `status`) USING BTREE, KEY `idx_static_expired_at` (`expired_at`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='静态代理资产表'; -- ---------------------------- -- Table structure for xxk_static_proxy_whitelist -- ---------------------------- DROP TABLE IF EXISTS `xxk_static_proxy_whitelist`; CREATE TABLE `xxk_static_proxy_whitelist` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键', `user_id` bigint NOT NULL COMMENT '用户ID', `product_id` bigint DEFAULT NULL COMMENT '商品ID', `proxy_type` varchar(64) DEFAULT NULL COMMENT '静态代理类型', `whitelist_ip` varchar(64) NOT NULL COMMENT '白名单IP', `upstream_address_id` varchar(64) DEFAULT NULL COMMENT '上游白名单记录ID', `status` tinyint DEFAULT 1 COMMENT '状态(1-有效 0-删除)', `remark` varchar(255) DEFAULT NULL COMMENT '备注', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_time` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_user_whitelist_ip` (`user_id`, `whitelist_ip`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='静态代理白名单表'; -- ---------------------------- -- Table structure for xxk_static_proxy_change_log -- ---------------------------- DROP TABLE IF EXISTS `xxk_static_proxy_change_log`; CREATE TABLE `xxk_static_proxy_change_log` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键', `asset_id` bigint NOT NULL COMMENT '静态资产ID', `user_id` bigint NOT NULL COMMENT '用户ID', `change_type` varchar(32) NOT NULL COMMENT '变更类型', `before_value` text COMMENT '变更前', `after_value` text COMMENT '变更后', `operator_id` bigint DEFAULT NULL COMMENT '操作人ID', `remark` varchar(255) DEFAULT NULL COMMENT '备注', `create_time` datetime DEFAULT NULL COMMENT '创建时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_static_change_asset_id` (`asset_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='静态代理变更日志表'; -- ---------------------------- -- Table structure for xxk_dynamic_channel -- ---------------------------- DROP TABLE IF EXISTS `xxk_dynamic_channel`; CREATE TABLE `xxk_dynamic_channel` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键', `user_id` bigint NOT NULL COMMENT '用户ID', `order_id` bigint NOT NULL COMMENT '订单ID', `order_item_id` bigint DEFAULT NULL COMMENT '订单项ID', `product_id` bigint NOT NULL COMMENT '商品ID', `upstream_provider_id` bigint NOT NULL COMMENT '上游供应商ID', `upstream_channel_id` varchar(64) NOT NULL COMMENT '上游通道ID', `channel_name` varchar(100) NOT NULL COMMENT '通道名称', `channel_password` varchar(100) DEFAULT NULL COMMENT '通道密码', `channel_status` varchar(16) NOT NULL DEFAULT 'ENABLED' COMMENT '通道状态', `flow_package_gb` decimal(12,3) NOT NULL DEFAULT 0.000 COMMENT '购买流量包GB', `traffic_limit_gb` decimal(12,3) NOT NULL DEFAULT 0.000 COMMENT '通道流量上限GB', `used_traffic_gb` decimal(12,3) NOT NULL DEFAULT 0.000 COMMENT '已用流量GB', `remaining_traffic_gb` decimal(12,3) NOT NULL DEFAULT 0.000 COMMENT '剩余流量GB', `expired_at` datetime DEFAULT NULL COMMENT '到期时间', `allow_generate_proxy` tinyint DEFAULT 1 COMMENT '允许生成代理(1-是 0-否)', `last_sync_time` datetime DEFAULT NULL COMMENT '最后同步时间', `raw_data` mediumtext COMMENT '原始数据快照', `status` tinyint DEFAULT 1 COMMENT '业务状态(1-有效 0-无效)', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `is_deleted` tinyint DEFAULT 0 COMMENT '逻辑删除(1-已删除 0-未删除)', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_dynamic_upstream_channel_id` (`upstream_channel_id`) USING BTREE, KEY `idx_dynamic_user_status` (`user_id`, `status`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='动态通道表'; -- ---------------------------- -- Table structure for xxk_dynamic_channel_traffic_log -- ---------------------------- DROP TABLE IF EXISTS `xxk_dynamic_channel_traffic_log`; CREATE TABLE `xxk_dynamic_channel_traffic_log` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键', `channel_id` bigint NOT NULL COMMENT '动态通道ID', `user_id` bigint NOT NULL COMMENT '用户ID', `date_type` tinyint DEFAULT NULL COMMENT '查询日期类型', `start_date` date DEFAULT NULL COMMENT '开始日期', `end_date` date DEFAULT NULL COMMENT '结束日期', `used_traffic_gb` decimal(12,3) NOT NULL DEFAULT 0.000 COMMENT '已用流量GB', `total_traffic_gb` decimal(12,3) DEFAULT 0.000 COMMENT '累计流量GB', `raw_data` mediumtext COMMENT '原始返回', `create_time` datetime DEFAULT NULL COMMENT '创建时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_channel_traffic_channel_id` (`channel_id`, `create_time`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='动态通道流量日志表'; -- ---------------------------- -- Table structure for xxk_dynamic_proxy_generate_log -- ---------------------------- DROP TABLE IF EXISTS `xxk_dynamic_proxy_generate_log`; CREATE TABLE `xxk_dynamic_proxy_generate_log` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键', `channel_id` bigint NOT NULL COMMENT '动态通道ID', `user_id` bigint NOT NULL COMMENT '用户ID', `location` varchar(32) NOT NULL COMMENT '地区参数', `domain` varchar(32) DEFAULT 'Global' COMMENT '域名参数', `sticky_session_time` int NOT NULL DEFAULT 0 COMMENT '粘性会话分钟', `proxy_count` int NOT NULL DEFAULT 1 COMMENT '生成数量', `state` varchar(100) DEFAULT NULL COMMENT '州', `city` varchar(100) DEFAULT NULL COMMENT '城市', `generated_result` mediumtext COMMENT '生成结果', `create_time` datetime DEFAULT NULL COMMENT '创建时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_generate_channel_id` (`channel_id`, `create_time`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='动态代理生成日志表'; -- ---------------------------- -- Table structure for xxk_distribution_relation -- ---------------------------- DROP TABLE IF EXISTS `xxk_distribution_relation`; CREATE TABLE `xxk_distribution_relation` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键', `user_id` bigint DEFAULT NULL COMMENT '当前用户ID', `parent_user_id` bigint DEFAULT NULL COMMENT '一级上级用户ID', `grand_parent_user_id` bigint DEFAULT NULL COMMENT '二级上级用户ID', `bind_source` varchar(32) DEFAULT NULL COMMENT '绑定来源', `bind_time` datetime DEFAULT NULL COMMENT '绑定时间', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `is_deleted` tinyint DEFAULT 0 COMMENT '逻辑删除(1-已删除 0-未删除)', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uk_distribution_user_id` (`user_id`) USING BTREE, KEY `idx_distribution_parent_user_id` (`parent_user_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='分销关系表'; -- ---------------------------- -- Table structure for xxk_distribution_config -- ---------------------------- DROP TABLE IF EXISTS `xxk_distribution_config`; CREATE TABLE `xxk_distribution_config` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键', `distribution_enabled` tinyint DEFAULT 0 COMMENT '是否启用分销(1-是 0-否)', `first_level_rate` decimal(10,4) NOT NULL DEFAULT 0.0000 COMMENT '一级佣金比例', `second_level_rate` decimal(10,4) NOT NULL DEFAULT 0.0000 COMMENT '二级佣金比例', `withdraw_threshold` decimal(10,2) NOT NULL DEFAULT 0.00 COMMENT '提现门槛金额', `withdraw_fee_rate` decimal(10,4) NOT NULL DEFAULT 0.0000 COMMENT '提现手续费比例', `settle_rule` varchar(32) DEFAULT 'OPEN_SUCCESS_AMOUNT' COMMENT '结算规则', `status` tinyint DEFAULT 1 COMMENT '状态(1-启用 0-禁用)', `remark` varchar(255) DEFAULT NULL COMMENT '备注', `create_by` bigint DEFAULT NULL COMMENT '创建人ID', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` bigint DEFAULT NULL COMMENT '更新人ID', `update_time` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='分销配置表'; -- ---------------------------- -- Table structure for xxk_distribution_commission -- ---------------------------- DROP TABLE IF EXISTS `xxk_distribution_commission`; CREATE TABLE `xxk_distribution_commission` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键', `user_id` bigint NOT NULL COMMENT '佣金归属用户ID', `from_user_id` bigint NOT NULL COMMENT '消费用户ID', `order_id` bigint NOT NULL COMMENT '订单ID', `order_no` varchar(64) NOT NULL COMMENT '订单号', `level_no` tinyint NOT NULL COMMENT '层级(1/2)', `rate` decimal(10,4) NOT NULL DEFAULT 0.0000 COMMENT '佣金比例', `base_amount` decimal(18,2) NOT NULL DEFAULT 0.00 COMMENT '佣金基数', `commission_amount` decimal(18,2) NOT NULL DEFAULT 0.00 COMMENT '佣金金额', `commission_status` varchar(32) NOT NULL DEFAULT 'PENDING' COMMENT '佣金状态', `confirm_time` datetime DEFAULT NULL COMMENT '确认时间', `settle_time` datetime DEFAULT NULL COMMENT '结算时间', `invalid_time` datetime DEFAULT NULL COMMENT '失效时间', `remark` varchar(255) DEFAULT NULL COMMENT '备注', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_time` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_commission_user_status` (`user_id`, `commission_status`) USING BTREE, KEY `idx_commission_order_id` (`order_id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='分销佣金流水表'; -- ---------------------------- -- Table structure for xxk_upstream_request_log -- ---------------------------- DROP TABLE IF EXISTS `xxk_upstream_request_log`; CREATE TABLE `xxk_upstream_request_log` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键', `provider_id` bigint NOT NULL COMMENT '供应商ID', `biz_type` varchar(32) NOT NULL COMMENT '业务类型', `api_name` varchar(100) NOT NULL COMMENT '接口名称', `request_url` varchar(255) NOT NULL COMMENT '请求地址', `request_headers` mediumtext COMMENT '请求头', `request_body` longtext COMMENT '请求体', `response_body` longtext COMMENT '响应体', `http_status` int DEFAULT NULL COMMENT 'HTTP状态码', `biz_code` varchar(32) DEFAULT NULL COMMENT '业务码', `success_flag` tinyint DEFAULT 0 COMMENT '是否成功(1-是 0-否)', `duration_ms` int DEFAULT NULL COMMENT '耗时毫秒', `error_message` varchar(500) DEFAULT NULL COMMENT '异常信息', `create_time` datetime DEFAULT NULL COMMENT '创建时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_request_provider_time` (`provider_id`, `create_time`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='上游请求日志表'; -- ---------------------------- -- Table structure for xxk_order_operate_log -- ---------------------------- DROP TABLE IF EXISTS `xxk_order_operate_log`; CREATE TABLE `xxk_order_operate_log` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键', `order_id` bigint NOT NULL COMMENT '订单ID', `order_no` varchar(64) NOT NULL COMMENT '订单号', `operate_type` varchar(32) NOT NULL COMMENT '操作类型', `before_status` varchar(64) DEFAULT NULL COMMENT '操作前状态', `after_status` varchar(64) DEFAULT NULL COMMENT '操作后状态', `content` text COMMENT '操作内容', `operator_id` bigint DEFAULT NULL COMMENT '操作人ID', `operator_name` varchar(100) DEFAULT NULL COMMENT '操作人名称', `create_time` datetime DEFAULT NULL COMMENT '创建时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_order_operate_order_id` (`order_id`, `create_time`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='订单操作日志表'; SET FOREIGN_KEY_CHECKS = 1;