初始化天卡开放平台后端项目

包含完整功能模块:
- 设备激活(直销激活码模式 + 代销免激活码模式)
- 微信支付 + 天卡订单
- 天卡池管理 + 异步橘视厅SDK激活
- 第三方合作伙伴接口(代销模式)
  - 签名鉴权(appKey/appSecret + nonce防重放)
  - 天卡消耗(事务 + 幂等 + 并发控制)
  - 媒资接口(三级授权过滤)
  - 审计日志
- 定价策略(3层:门店 > 渠道 > 平台)
- 分账(微信分账 + 分润规则)
- Docker部署(含Redis容器)
This commit is contained in:
zhaogd
2026-07-26 12:34:13 +08:00
commit 30198c7191
349 changed files with 28837 additions and 0 deletions

51
db/device-tables.sql Normal file
View File

@@ -0,0 +1,51 @@
-- ============================================================
-- 补建 device + card_device_binding 表(mysql.sql 遗漏,含扩展字段)
-- 全新部署时执行此文件后,无需再执行 device-info-fields.sql
-- ============================================================
CREATE TABLE IF NOT EXISTS `device` (
`id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`store_org_id` BIGINT DEFAULT NULL COMMENT '门店组织ID',
`mac` VARCHAR(64) DEFAULT NULL COMMENT '设备MAC',
`device_sn` VARCHAR(64) DEFAULT NULL COMMENT '设备序列号',
`wifi_mac` VARCHAR(64) DEFAULT NULL COMMENT 'WiFi MAC',
`device_uid` VARCHAR(64) DEFAULT NULL COMMENT '设备唯一标识',
`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 COMMENT '标识匹配策略',
`device_name` VARCHAR(128) DEFAULT NULL COMMENT '设备名称',
`device_model` VARCHAR(128) DEFAULT NULL COMMENT '设备型号(详细)',
`ver_code` VARCHAR(32) DEFAULT NULL COMMENT '版本号',
`ver_name` VARCHAR(64) DEFAULT NULL COMMENT '版本名',
`android_version` VARCHAR(32) DEFAULT NULL COMMENT '安卓版本',
`room_no` VARCHAR(32) DEFAULT NULL COMMENT '房间号',
`last_heartbeat` DATETIME DEFAULT NULL COMMENT '最后心跳时间',
`remark` VARCHAR(256) DEFAULT NULL COMMENT '备注',
`status` VARCHAR(16) NOT NULL DEFAULT 'ACTIVE' COMMENT '状态:ACTIVE/DISABLED',
`delete_flag` VARCHAR(8) NOT NULL DEFAULT 'UNDEL' COMMENT '删除标记:UNDEL/DEL',
`created_at` DATETIME DEFAULT NULL COMMENT '创建时间',
`updated_at` DATETIME DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`),
KEY `idx_mac` (`mac`),
KEY `idx_device_uid` (`device_uid`),
KEY `idx_device_sn` (`device_sn`),
KEY `idx_android_id` (`android_id`),
KEY `idx_store_org_id` (`store_org_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='设备表';
CREATE TABLE IF NOT EXISTS `card_device_binding` (
`id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`card_id` BIGINT DEFAULT NULL COMMENT '卡ID',
`device_id` BIGINT DEFAULT NULL COMMENT '设备ID',
`bind_source` VARCHAR(32) DEFAULT NULL COMMENT '绑定来源',
`bind_at` DATETIME DEFAULT NULL COMMENT '绑定时间',
`unbind_at` DATETIME DEFAULT NULL COMMENT '解绑时间',
`status` VARCHAR(16) NOT NULL DEFAULT 'BOUND' COMMENT '绑定状态:BOUND/UNBOUND/STANDBY/FAILURE',
`created_at` DATETIME DEFAULT NULL COMMENT '创建时间',
`updated_at` DATETIME DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`),
KEY `idx_device_id` (`device_id`),
KEY `idx_card_id` (`card_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='卡与设备绑定';