1
This commit is contained in:
@@ -62,7 +62,7 @@ CREATE TABLE IF NOT EXISTS `biz_subscriptions` (
|
|||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='订阅';
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='订阅';
|
||||||
|
|
||||||
-- API Token(库内仅存 hash;plan_id 冗余便于鉴权少联表)
|
-- API Token(库内仅存 hash;plan_id 冗余便于鉴权少联表)
|
||||||
CREATE TABLE IF NOT EXISTS `biz_api_tokens` (
|
CREATE TABLE IF NOT EXISTS `biz_api_token` (
|
||||||
`id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
|
`id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||||
`user_id` BIGINT UNSIGNED NOT NULL,
|
`user_id` BIGINT UNSIGNED NOT NULL,
|
||||||
`plan_id` BIGINT UNSIGNED NULL DEFAULT NULL,
|
`plan_id` BIGINT UNSIGNED NULL DEFAULT NULL,
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ SET @sql = (
|
|||||||
|
|
||||||
-- 手工示例(按实际约束名调整):
|
-- 手工示例(按实际约束名调整):
|
||||||
-- ALTER TABLE `biz_subscriptions` DROP FOREIGN KEY `fk_biz_sub_user`;
|
-- ALTER TABLE `biz_subscriptions` DROP FOREIGN KEY `fk_biz_sub_user`;
|
||||||
-- ALTER TABLE `biz_api_tokens` DROP FOREIGN KEY `fk_biz_token_user`;
|
-- ALTER TABLE `biz_api_token` DROP FOREIGN KEY `fk_biz_token_user`;
|
||||||
-- ALTER TABLE `biz_usage_monthly` DROP FOREIGN KEY `fk_biz_usage_user`;
|
-- ALTER TABLE `biz_usage_monthly` DROP FOREIGN KEY `fk_biz_usage_user`;
|
||||||
|
|
||||||
-- 2) 重命名业务用户表
|
-- 2) 重命名业务用户表
|
||||||
@@ -28,7 +28,7 @@ SET @sql = (
|
|||||||
-- 3) 重新添加外键(与 001_biz_schema.sql 一致)
|
-- 3) 重新添加外键(与 001_biz_schema.sql 一致)
|
||||||
-- ALTER TABLE `biz_subscriptions`
|
-- ALTER TABLE `biz_subscriptions`
|
||||||
-- ADD CONSTRAINT `fk_biz_sub_user` FOREIGN KEY (`user_id`) REFERENCES `biz_user` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
-- ADD CONSTRAINT `fk_biz_sub_user` FOREIGN KEY (`user_id`) REFERENCES `biz_user` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||||
-- ALTER TABLE `biz_api_tokens`
|
-- ALTER TABLE `biz_api_token`
|
||||||
-- ADD CONSTRAINT `fk_biz_token_user` FOREIGN KEY (`user_id`) REFERENCES `biz_user` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
-- ADD CONSTRAINT `fk_biz_token_user` FOREIGN KEY (`user_id`) REFERENCES `biz_user` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||||
-- ALTER TABLE `biz_usage_monthly`
|
-- ALTER TABLE `biz_usage_monthly`
|
||||||
-- ADD CONSTRAINT `fk_biz_usage_user` FOREIGN KEY (`user_id`) REFERENCES `biz_user` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
-- ADD CONSTRAINT `fk_biz_usage_user` FOREIGN KEY (`user_id`) REFERENCES `biz_user` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ ALTER TABLE `biz_subscriptions`
|
|||||||
MODIFY `created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
MODIFY `created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
MODIFY `updated_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;
|
MODIFY `updated_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;
|
||||||
|
|
||||||
ALTER TABLE `biz_api_tokens`
|
ALTER TABLE `biz_api_token`
|
||||||
MODIFY `created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
MODIFY `created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
MODIFY `updated_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;
|
MODIFY `updated_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;
|
||||||
|
|
||||||
|
|||||||
@@ -80,7 +80,7 @@
|
|||||||
- `biz_users`(或 `users`,注意与 `sys_user` 后台账号区分 — **建议业务客户表用前缀 `biz_`**,避免与系统用户混淆)
|
- `biz_users`(或 `users`,注意与 `sys_user` 后台账号区分 — **建议业务客户表用前缀 `biz_`**,避免与系统用户混淆)
|
||||||
- `biz_plans`
|
- `biz_plans`
|
||||||
- `biz_subscriptions`(字段含 `renew_mode`、`payment_channel`、`payment_ref` 等)
|
- `biz_subscriptions`(字段含 `renew_mode`、`payment_channel`、`payment_ref` 等)
|
||||||
- `biz_api_tokens`(`token_hash`、`plan_id` 可选冗余)
|
- `biz_api_token`(`token_hash`、`plan_id` 可选冗余)
|
||||||
- `biz_usage_monthly`(`stat_month` YYYY-MM)
|
- `biz_usage_monthly`(`stat_month` YYYY-MM)
|
||||||
|
|
||||||
### 3.2 Sequelize 模型文件
|
### 3.2 Sequelize 模型文件
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ module.exports = {
|
|||||||
include: [
|
include: [
|
||||||
[
|
[
|
||||||
Sequelize.literal(
|
Sequelize.literal(
|
||||||
`(SELECT COUNT(*) FROM biz_api_tokens WHERE biz_api_tokens.user_id = biz_user.id)`
|
`(SELECT COUNT(*) FROM biz_api_token WHERE biz_api_token.user_id = biz_user.id)`
|
||||||
),
|
),
|
||||||
"token_count",
|
"token_count",
|
||||||
],
|
],
|
||||||
|
|||||||
Reference in New Issue
Block a user