feat: add tenant entry registration APIs
This commit is contained in:
@@ -0,0 +1,66 @@
|
||||
-- IM 企业入口注册与问题反馈 SQL
|
||||
-- 更新时间:2026-08-24
|
||||
--
|
||||
-- 执行范围:hotgo 控制库。
|
||||
-- 说明:未登录企业注册、入口问题反馈发生在租户绑定前,因此公共附件和申请单不放入租户业务库。
|
||||
-- 文件对象通过 IM 服务端当前 media handler 存储;生产环境应配置 media.use_handler=oss。
|
||||
|
||||
USE hotgo;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS im_public_uploads (
|
||||
id BIGINT NOT NULL AUTO_INCREMENT,
|
||||
file_id VARCHAR(64) NOT NULL,
|
||||
purpose VARCHAR(64) NOT NULL,
|
||||
mime_type VARCHAR(128) NOT NULL DEFAULT '',
|
||||
size BIGINT NOT NULL DEFAULT 0,
|
||||
etag VARCHAR(128) NOT NULL DEFAULT '',
|
||||
location VARCHAR(2048) NOT NULL DEFAULT '',
|
||||
expires_at DATETIME(3),
|
||||
created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
|
||||
uploaded_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
|
||||
PRIMARY KEY(id),
|
||||
UNIQUE INDEX uk_im_public_uploads_file(file_id),
|
||||
INDEX idx_im_public_uploads_purpose(purpose, created_at),
|
||||
INDEX idx_im_public_uploads_expires(expires_at)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS im_tenant_applications (
|
||||
id BIGINT NOT NULL AUTO_INCREMENT,
|
||||
application_id VARCHAR(64) NOT NULL,
|
||||
credit_code VARCHAR(18) NOT NULL,
|
||||
enterprise_email VARCHAR(255) NOT NULL DEFAULT '',
|
||||
license_file_id VARCHAR(64) NOT NULL DEFAULT '',
|
||||
tenant_code_hint VARCHAR(64) NOT NULL DEFAULT '',
|
||||
client_context JSON,
|
||||
idempotency_key VARCHAR(128) NOT NULL,
|
||||
status VARCHAR(32) NOT NULL DEFAULT 'received',
|
||||
estimated_review_hour INT NOT NULL DEFAULT 24,
|
||||
submitted_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
|
||||
created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
|
||||
updated_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3),
|
||||
PRIMARY KEY(id),
|
||||
UNIQUE INDEX uk_im_tenant_applications_app(application_id),
|
||||
UNIQUE INDEX uk_im_tenant_applications_idempotency(idempotency_key),
|
||||
INDEX idx_im_tenant_applications_credit(credit_code),
|
||||
INDEX idx_im_tenant_applications_status(status, id)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS im_tenant_entry_feedbacks (
|
||||
id BIGINT NOT NULL AUTO_INCREMENT,
|
||||
feedback_id VARCHAR(64) NOT NULL,
|
||||
description TEXT NOT NULL,
|
||||
contact VARCHAR(255) NOT NULL DEFAULT '',
|
||||
tenant_code_hint VARCHAR(64) NOT NULL DEFAULT '',
|
||||
screenshot_file_ids JSON,
|
||||
client_context JSON,
|
||||
idempotency_key VARCHAR(128) NOT NULL,
|
||||
status VARCHAR(32) NOT NULL DEFAULT 'received',
|
||||
submitted_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
|
||||
created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
|
||||
updated_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3),
|
||||
PRIMARY KEY(id),
|
||||
UNIQUE INDEX uk_im_tenant_entry_feedbacks_feedback(feedback_id),
|
||||
UNIQUE INDEX uk_im_tenant_entry_feedbacks_idempotency(idempotency_key),
|
||||
INDEX idx_im_tenant_entry_feedbacks_status(status, id),
|
||||
INDEX idx_im_tenant_entry_feedbacks_hint(tenant_code_hint, id)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
Reference in New Issue
Block a user