Files
FruitServer/sql/patch-2026-10-23-legal-documents.sql
T

41 lines
2.3 KiB
SQL

-- Author: fruit.com.cn
-- 服务条款与隐私协议:三语正文 + 后台菜单
CREATE TABLE IF NOT EXISTS legal_document (
id BIGINT PRIMARY KEY,
doc_code VARCHAR(16) NOT NULL,
lang VARCHAR(8) NOT NULL,
title VARCHAR(128) NOT NULL DEFAULT '',
content TEXT NOT NULL DEFAULT '',
updated_at TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP
);
CREATE UNIQUE INDEX IF NOT EXISTS uk_legal_document_code_lang ON legal_document (doc_code, lang);
COMMENT ON TABLE legal_document IS '服务条款与隐私协议';
INSERT INTO legal_document (id, doc_code, lang, title, content) VALUES
(910001, 'terms', 'zh', '', '本页由水果短剧发布,可在管理后台用 Markdown 修改。'),
(910002, 'terms', 'en', '', 'This page is published by FruitShorts and can be edited as Markdown in the admin console.'),
(910003, 'terms', 'id', '', 'Halaman ini dipublikasikan oleh FruitShorts dan dapat diubah sebagai Markdown di konsol admin.'),
(910004, 'privacy', 'zh', '', '本页由水果短剧发布,可在管理后台用 Markdown 修改。'),
(910005, 'privacy', 'en', '', 'This page is published by FruitShorts and can be edited as Markdown in the admin console.'),
(910006, 'privacy', 'id', '', 'Halaman ini dipublikasikan oleh FruitShorts dan dapat diubah sebagai Markdown di konsol admin.')
ON CONFLICT (doc_code, lang) DO NOTHING;
INSERT INTO sys_menu (id, parent_id, title, route_path, route_name, component, redirect, icon,
permission_code, type, always_show, affix, sort) VALUES
(38, 6, '协议设置', 'legal-documents', 'legal-documents',
'views/systemManagement/LegalDocumentView', '', '',
'system:role', 'MENU', 0, 0, 8)
ON CONFLICT (id) DO UPDATE SET parent_id = EXCLUDED.parent_id, title = EXCLUDED.title,
route_path = EXCLUDED.route_path, route_name = EXCLUDED.route_name,
component = EXCLUDED.component, redirect = EXCLUDED.redirect, icon = EXCLUDED.icon,
permission_code = EXCLUDED.permission_code, type = EXCLUDED.type,
always_show = EXCLUDED.always_show, affix = EXCLUDED.affix, sort = EXCLUDED.sort;
INSERT INTO sys_role_menu (id, role_id, menu_id)
SELECT r.id * 1000000 + m.id, r.id, m.id
FROM sys_role r
CROSS JOIN sys_menu m
WHERE r.code = 'super_admin' AND m.id = 38
ON CONFLICT DO NOTHING;