20260726225220

This commit is contained in:
oneao committed 2026-07-26 22:52:21 +08:00
1 parent e3c7c6f8da
commit a8478d60ed
170 files changed
+6786 -1678

No files matched your search

@@ -44,7 +44,7 @@ GO
IF @AdminId IS NULL
THROW 51001, N'重置会话缺少管理员 ID。', 1;
CREATE TABLE dbo.b_module (
CREATE TABLE dbo.s_module (
b_id bigint NOT NULL,
b_code varchar(50) NOT NULL,
b_parent_id bigint NULL,
@@ -56,28 +56,28 @@ GO
b_savetable varchar(128) NULL,
b_keyfield varchar(50) NULL,
b_orderfield varchar(500) NULL,
b_canmenu int NOT NULL CONSTRAINT DF_b_module_canmenu DEFAULT (0),
b_canuse int NOT NULL CONSTRAINT DF_b_module_canuse DEFAULT (1),
b_xh int NOT NULL CONSTRAINT DF_b_module_xh DEFAULT (0),
CONSTRAINT PK_b_module PRIMARY KEY (b_id),
CONSTRAINT FK_b_module_parent FOREIGN KEY (b_parent_id) REFERENCES dbo.b_module (b_id),
CONSTRAINT UQ_b_module_code UNIQUE (b_code),
CONSTRAINT CK_b_module_code CHECK (
b_canmenu int NOT NULL CONSTRAINT DF_s_module_canmenu DEFAULT (0),
b_canuse int NOT NULL CONSTRAINT DF_s_module_canuse DEFAULT (1),
b_xh int NOT NULL CONSTRAINT DF_s_module_xh DEFAULT (0),
CONSTRAINT PK_s_module PRIMARY KEY (b_id),
CONSTRAINT FK_s_module_parent FOREIGN KEY (b_parent_id) REFERENCES dbo.s_module (b_id),
CONSTRAINT UQ_s_module_code UNIQUE (b_code),
CONSTRAINT CK_s_module_code CHECK (
LEN(b_code) BETWEEN 2 AND 50
AND b_code COLLATE Latin1_General_100_BIN2 LIKE '[a-z]%'
AND b_code COLLATE Latin1_General_100_BIN2 NOT LIKE '%[^a-z0-9_]%'
),
CONSTRAINT CK_b_module_type CHECK (b_module_type IN ('directory', 'page', 'data')),
CONSTRAINT CK_b_module_canmenu CHECK (b_canmenu IN (0, 1)),
CONSTRAINT CK_b_module_canuse CHECK (b_canuse IN (0, 1)),
CONSTRAINT CK_b_module_directory CHECK (b_module_type <> 'directory' OR (b_route IS NULL AND b_viewtable IS NULL AND b_savetable IS NULL)),
CONSTRAINT CK_b_module_page CHECK (b_module_type <> 'page' OR b_route IS NOT NULL),
CONSTRAINT CK_b_module_data CHECK (b_module_type <> 'data' OR (b_canmenu = 0 AND b_route IS NULL))
CONSTRAINT CK_s_module_type CHECK (b_module_type IN ('directory', 'page', 'data')),
CONSTRAINT CK_s_module_canmenu CHECK (b_canmenu IN (0, 1)),
CONSTRAINT CK_s_module_canuse CHECK (b_canuse IN (0, 1)),
CONSTRAINT CK_s_module_directory CHECK (b_module_type <> 'directory' OR (b_route IS NULL AND b_viewtable IS NULL AND b_savetable IS NULL)),
CONSTRAINT CK_s_module_page CHECK (b_module_type <> 'page' OR b_route IS NOT NULL),
CONSTRAINT CK_s_module_data CHECK (b_module_type <> 'data' OR (b_canmenu = 0 AND b_route IS NULL))
);
CREATE UNIQUE INDEX UX_b_module_route ON dbo.b_module (b_route) WHERE b_route IS NOT NULL;
CREATE INDEX IX_b_module_parent ON dbo.b_module (b_parent_id, b_xh, b_id);
CREATE UNIQUE INDEX UX_s_module_route ON dbo.s_module (b_route) WHERE b_route IS NOT NULL;
CREATE INDEX IX_s_module_parent ON dbo.s_module (b_parent_id, b_xh, b_id);
CREATE TABLE dbo.b_module_field (
CREATE TABLE dbo.s_module_field (
b_id bigint NOT NULL,
b_module_id bigint NOT NULL,
b_field varchar(50) NOT NULL,
@@ -86,103 +86,100 @@ GO
b_type varchar(30) NOT NULL,
b_default_value nvarchar(500) NULL,
b_options nvarchar(max) NULL,
b_canuse int NOT NULL CONSTRAINT DF_b_module_field_canuse DEFAULT (1),
CONSTRAINT PK_b_module_field PRIMARY KEY (b_id),
CONSTRAINT FK_b_module_field_module FOREIGN KEY (b_module_id) REFERENCES dbo.b_module (b_id),
CONSTRAINT UQ_b_module_field UNIQUE (b_module_id, b_field),
CONSTRAINT CK_b_module_field_type CHECK (b_type IN ('input', 'textarea', 'number', 'money', 'date', 'datetime', 'switch', 'select')),
CONSTRAINT CK_b_module_field_canuse CHECK (b_canuse IN (0, 1)),
CONSTRAINT CK_b_module_field_options CHECK (b_options IS NULL OR ISJSON(b_options) = 1)
b_canuse int NOT NULL CONSTRAINT DF_s_module_field_canuse DEFAULT (1),
CONSTRAINT PK_s_module_field PRIMARY KEY (b_id),
CONSTRAINT FK_s_module_field_module FOREIGN KEY (b_module_id) REFERENCES dbo.s_module (b_id),
CONSTRAINT UQ_s_module_field UNIQUE (b_module_id, b_field),
CONSTRAINT CK_s_module_field_type CHECK (b_type IN ('input', 'textarea', 'number', 'money', 'date', 'datetime', 'switch', 'select')),
CONSTRAINT CK_s_module_field_canuse CHECK (b_canuse IN (0, 1)),
CONSTRAINT CK_s_module_field_options CHECK (b_options IS NULL OR ISJSON(b_options) = 1)
);
CREATE INDEX IX_b_module_field_module ON dbo.b_module_field (b_module_id, b_canuse, b_id);
CREATE INDEX IX_s_module_field_module ON dbo.s_module_field (b_module_id, b_canuse, b_id);
CREATE TABLE dbo.b_module_field_group (
CREATE TABLE dbo.s_module_field_group (
b_id bigint NOT NULL,
b_module_id bigint NOT NULL,
b_parent_id bigint NULL,
b_title nvarchar(100) NOT NULL,
b_i18n varchar(150) NULL,
b_xh int NOT NULL CONSTRAINT DF_b_module_field_group_xh DEFAULT (0),
b_canuse int NOT NULL CONSTRAINT DF_b_module_field_group_canuse DEFAULT (1),
CONSTRAINT PK_b_module_field_group PRIMARY KEY (b_id),
CONSTRAINT FK_b_module_field_group_module FOREIGN KEY (b_module_id) REFERENCES dbo.b_module (b_id),
CONSTRAINT FK_b_module_field_group_parent FOREIGN KEY (b_parent_id) REFERENCES dbo.b_module_field_group (b_id),
CONSTRAINT CK_b_module_field_group_canuse CHECK (b_canuse IN (0, 1))
b_xh int NOT NULL CONSTRAINT DF_s_module_field_group_xh DEFAULT (0),
b_canuse int NOT NULL CONSTRAINT DF_s_module_field_group_canuse DEFAULT (1),
CONSTRAINT PK_s_module_field_group PRIMARY KEY (b_id),
CONSTRAINT FK_s_module_field_group_module FOREIGN KEY (b_module_id) REFERENCES dbo.s_module (b_id),
CONSTRAINT FK_s_module_field_group_parent FOREIGN KEY (b_parent_id) REFERENCES dbo.s_module_field_group (b_id),
CONSTRAINT CK_s_module_field_group_canuse CHECK (b_canuse IN (0, 1))
);
CREATE INDEX IX_b_module_field_group_module ON dbo.b_module_field_group (b_module_id, b_canuse, b_xh, b_id);
CREATE INDEX IX_s_module_field_group_module ON dbo.s_module_field_group (b_module_id, b_canuse, b_xh, b_id);
CREATE TABLE dbo.b_module_field_list (
CREATE TABLE dbo.s_module_field_list (
b_id bigint NOT NULL,
b_module_id bigint NOT NULL,
b_field_id bigint NULL,
b_group_id bigint NULL,
b_title nvarchar(100) NULL,
b_i18n varchar(150) NULL,
b_visible int NOT NULL CONSTRAINT DF_b_module_field_list_visible DEFAULT (1),
b_xh int NOT NULL CONSTRAINT DF_b_module_field_list_xh DEFAULT (0),
b_visible int NOT NULL CONSTRAINT DF_s_module_field_list_visible DEFAULT (1),
b_xh int NOT NULL CONSTRAINT DF_s_module_field_list_xh DEFAULT (0),
b_width int NULL,
b_sortable int NOT NULL CONSTRAINT DF_b_module_field_list_sortable DEFAULT (0),
CONSTRAINT PK_b_module_field_list PRIMARY KEY (b_id),
CONSTRAINT FK_b_module_field_list_module FOREIGN KEY (b_module_id) REFERENCES dbo.b_module (b_id),
CONSTRAINT FK_b_module_field_list_field FOREIGN KEY (b_field_id) REFERENCES dbo.b_module_field (b_id),
CONSTRAINT FK_b_module_field_list_group FOREIGN KEY (b_group_id) REFERENCES dbo.b_module_field_group (b_id),
CONSTRAINT CK_b_module_field_list_visible CHECK (b_visible IN (0, 1)),
CONSTRAINT CK_b_module_field_list_sortable CHECK (b_sortable IN (0, 1)),
CONSTRAINT CK_b_module_field_list_width CHECK (b_width IS NULL OR b_width > 0)
CONSTRAINT PK_s_module_field_list PRIMARY KEY (b_id),
CONSTRAINT FK_s_module_field_list_module FOREIGN KEY (b_module_id) REFERENCES dbo.s_module (b_id),
CONSTRAINT FK_s_module_field_list_field FOREIGN KEY (b_field_id) REFERENCES dbo.s_module_field (b_id),
CONSTRAINT FK_s_module_field_list_group FOREIGN KEY (b_group_id) REFERENCES dbo.s_module_field_group (b_id),
CONSTRAINT CK_s_module_field_list_visible CHECK (b_visible IN (0, 1)),
CONSTRAINT CK_s_module_field_list_width CHECK (b_width IS NULL OR b_width > 0)
);
CREATE UNIQUE INDEX UX_b_module_field_list_field ON dbo.b_module_field_list (b_module_id, b_field_id) WHERE b_field_id IS NOT NULL;
CREATE INDEX IX_b_module_field_list_tree ON dbo.b_module_field_list (b_module_id, b_group_id, b_xh, b_id);
CREATE UNIQUE INDEX UX_s_module_field_list_field ON dbo.s_module_field_list (b_module_id, b_field_id) WHERE b_field_id IS NOT NULL;
CREATE INDEX IX_s_module_field_list_tree ON dbo.s_module_field_list (b_module_id, b_group_id, b_xh, b_id);
CREATE TABLE dbo.b_module_field_edit (
CREATE TABLE dbo.s_module_field_edit (
b_id bigint NOT NULL,
b_module_id bigint NOT NULL,
b_field_id bigint NOT NULL,
b_required int NOT NULL CONSTRAINT DF_b_module_field_edit_required DEFAULT (0),
b_readonly int NOT NULL CONSTRAINT DF_b_module_field_edit_readonly DEFAULT (0),
b_disabled int NOT NULL CONSTRAINT DF_b_module_field_edit_disabled DEFAULT (0),
b_required int NOT NULL CONSTRAINT DF_s_module_field_edit_required DEFAULT (0),
b_readonly int NOT NULL CONSTRAINT DF_s_module_field_edit_readonly DEFAULT (0),
b_disabled int NOT NULL CONSTRAINT DF_s_module_field_edit_disabled DEFAULT (0),
b_group_id bigint NULL,
b_xh int NOT NULL CONSTRAINT DF_b_module_field_edit_xh DEFAULT (0),
CONSTRAINT PK_b_module_field_edit PRIMARY KEY (b_id),
CONSTRAINT FK_b_module_field_edit_module FOREIGN KEY (b_module_id) REFERENCES dbo.b_module (b_id),
CONSTRAINT FK_b_module_field_edit_field FOREIGN KEY (b_field_id) REFERENCES dbo.b_module_field (b_id),
CONSTRAINT FK_b_module_field_edit_group FOREIGN KEY (b_group_id) REFERENCES dbo.b_module_field_group (b_id),
CONSTRAINT UQ_b_module_field_edit UNIQUE (b_module_id, b_field_id),
CONSTRAINT CK_b_module_field_edit_required CHECK (b_required IN (0, 1)),
CONSTRAINT CK_b_module_field_edit_readonly CHECK (b_readonly IN (0, 1)),
CONSTRAINT CK_b_module_field_edit_disabled CHECK (b_disabled IN (0, 1))
b_xh int NOT NULL CONSTRAINT DF_s_module_field_edit_xh DEFAULT (0),
CONSTRAINT PK_s_module_field_edit PRIMARY KEY (b_id),
CONSTRAINT FK_s_module_field_edit_module FOREIGN KEY (b_module_id) REFERENCES dbo.s_module (b_id),
CONSTRAINT FK_s_module_field_edit_field FOREIGN KEY (b_field_id) REFERENCES dbo.s_module_field (b_id),
CONSTRAINT FK_s_module_field_edit_group FOREIGN KEY (b_group_id) REFERENCES dbo.s_module_field_group (b_id),
CONSTRAINT UQ_s_module_field_edit UNIQUE (b_module_id, b_field_id),
CONSTRAINT CK_s_module_field_edit_required CHECK (b_required IN (0, 1)),
CONSTRAINT CK_s_module_field_edit_readonly CHECK (b_readonly IN (0, 1)),
CONSTRAINT CK_s_module_field_edit_disabled CHECK (b_disabled IN (0, 1))
);
CREATE INDEX IX_b_module_field_edit_module ON dbo.b_module_field_edit (b_module_id, b_xh, b_id);
CREATE INDEX IX_s_module_field_edit_module ON dbo.s_module_field_edit (b_module_id, b_xh, b_id);
CREATE TABLE dbo.b_module_field_query (
CREATE TABLE dbo.s_module_field_query (
b_id bigint NOT NULL,
b_module_id bigint NOT NULL,
b_field_id bigint NOT NULL,
b_component varchar(30) NOT NULL,
b_operator varchar(20) NOT NULL,
b_default_value nvarchar(500) NULL,
b_xh int NOT NULL CONSTRAINT DF_b_module_field_query_xh DEFAULT (0),
b_canuse int NOT NULL CONSTRAINT DF_b_module_field_query_canuse DEFAULT (1),
CONSTRAINT PK_b_module_field_query PRIMARY KEY (b_id),
CONSTRAINT FK_b_module_field_query_module FOREIGN KEY (b_module_id) REFERENCES dbo.b_module (b_id),
CONSTRAINT FK_b_module_field_query_field FOREIGN KEY (b_field_id) REFERENCES dbo.b_module_field (b_id),
CONSTRAINT UQ_b_module_field_query UNIQUE (b_module_id, b_field_id),
CONSTRAINT CK_b_module_field_query_operator CHECK (b_operator IN ('=', 'like', 'between', 'in')),
CONSTRAINT CK_b_module_field_query_canuse CHECK (b_canuse IN (0, 1))
b_xh int NOT NULL CONSTRAINT DF_s_module_field_query_xh DEFAULT (0),
b_canuse int NOT NULL CONSTRAINT DF_s_module_field_query_canuse DEFAULT (1),
CONSTRAINT PK_s_module_field_query PRIMARY KEY (b_id),
CONSTRAINT FK_s_module_field_query_module FOREIGN KEY (b_module_id) REFERENCES dbo.s_module (b_id),
CONSTRAINT FK_s_module_field_query_field FOREIGN KEY (b_field_id) REFERENCES dbo.s_module_field (b_id),
CONSTRAINT UQ_s_module_field_query UNIQUE (b_module_id, b_field_id),
CONSTRAINT CK_s_module_field_query_operator CHECK (b_operator IN ('=', 'like', 'between', 'in')),
CONSTRAINT CK_s_module_field_query_canuse CHECK (b_canuse IN (0, 1))
);
CREATE INDEX IX_b_module_field_query_module ON dbo.b_module_field_query (b_module_id, b_canuse, b_xh, b_id);
CREATE INDEX IX_s_module_field_query_module ON dbo.s_module_field_query (b_module_id, b_canuse, b_xh, b_id);
CREATE TABLE dbo.b_module_power (
CREATE TABLE dbo.s_module_power (
b_id bigint NOT NULL,
b_module_id bigint NOT NULL,
b_code varchar(50) NOT NULL,
b_name nvarchar(100) NOT NULL,
b_i18n varchar(150) NULL,
b_xh int NOT NULL CONSTRAINT DF_b_module_power_xh DEFAULT (0),
b_canuse int NOT NULL CONSTRAINT DF_b_module_power_canuse DEFAULT (1),
CONSTRAINT PK_b_module_power PRIMARY KEY (b_id),
CONSTRAINT FK_b_module_power_module FOREIGN KEY (b_module_id) REFERENCES dbo.b_module (b_id),
CONSTRAINT UQ_b_module_power UNIQUE (b_module_id, b_code),
CONSTRAINT CK_b_module_power_canuse CHECK (b_canuse IN (0, 1))
b_xh int NOT NULL CONSTRAINT DF_s_module_power_xh DEFAULT (0),
b_canuse int NOT NULL CONSTRAINT DF_s_module_power_canuse DEFAULT (1),
CONSTRAINT PK_s_module_power PRIMARY KEY (b_id),
CONSTRAINT FK_s_module_power_module FOREIGN KEY (b_module_id) REFERENCES dbo.s_module (b_id),
CONSTRAINT UQ_s_module_power UNIQUE (b_module_id, b_code),
CONSTRAINT CK_s_module_power_canuse CHECK (b_canuse IN (0, 1))
);
CREATE TABLE dbo.b_user_module (
@@ -193,7 +190,7 @@ GO
b_inputdatetime datetime NOT NULL CONSTRAINT DF_b_user_module_inputdatetime DEFAULT (GETDATE()),
CONSTRAINT PK_b_user_module PRIMARY KEY (b_id),
CONSTRAINT FK_b_user_module_user FOREIGN KEY (b_user_id) REFERENCES dbo.b_user (b_id),
CONSTRAINT FK_b_user_module_module FOREIGN KEY (b_module_id) REFERENCES dbo.b_module (b_id),
CONSTRAINT FK_b_user_module_module FOREIGN KEY (b_module_id) REFERENCES dbo.s_module (b_id),
CONSTRAINT FK_b_user_module_inputuser FOREIGN KEY (b_inputuser_id) REFERENCES dbo.b_user (b_id),
CONSTRAINT UQ_b_user_module UNIQUE (b_user_id, b_module_id)
);
@@ -206,7 +203,7 @@ GO
b_inputdatetime datetime NOT NULL CONSTRAINT DF_b_user_power_inputdatetime DEFAULT (GETDATE()),
CONSTRAINT PK_b_user_power PRIMARY KEY (b_id),
CONSTRAINT FK_b_user_power_user FOREIGN KEY (b_user_id) REFERENCES dbo.b_user (b_id),
CONSTRAINT FK_b_user_power_power FOREIGN KEY (b_power_id) REFERENCES dbo.b_module_power (b_id),
CONSTRAINT FK_b_user_power_power FOREIGN KEY (b_power_id) REFERENCES dbo.s_module_power (b_id),
CONSTRAINT FK_b_user_power_inputuser FOREIGN KEY (b_inputuser_id) REFERENCES dbo.b_user (b_id),
CONSTRAINT UQ_b_user_power UNIQUE (b_user_id, b_power_id)
);
@@ -223,11 +220,11 @@ GO
DECLARE @SystemId bigint = 910000000000000001;
DECLARE @MetadataId bigint = 910000000000000002;
INSERT INTO dbo.b_module (b_id, b_code, b_parent_id, b_name, b_i18n, b_module_type, b_route, b_canmenu, b_canuse, b_xh) VALUES
INSERT INTO dbo.s_module (b_id, b_code, b_parent_id, b_name, b_i18n, b_module_type, b_route, b_canmenu, b_canuse, b_xh) VALUES
(@SystemId, 'm_system', NULL, N'系统管理', 'module.m_system', 'directory', NULL, 1, 1, 100),
(@MetadataId, 'm_metadata', @SystemId, N'元数据配置', 'module.m_metadata', 'page', '/system/metadata', 1, 1, 10);
INSERT INTO dbo.b_module_power (b_id, b_module_id, b_code, b_name, b_i18n, b_xh, b_canuse) VALUES
INSERT INTO dbo.s_module_power (b_id, b_module_id, b_code, b_name, b_i18n, b_xh, b_canuse) VALUES
(910000000000000101, @MetadataId, 'create', N'新增', 'power.m_metadata.create', 10, 1),
(910000000000000102, @MetadataId, 'update', N'保存', 'power.m_metadata.update', 20, 1),
(910000000000000103, @MetadataId, 'delete', N'删除', 'power.m_metadata.delete', 30, 1),
@@ -237,7 +234,7 @@ GO
(910000000000000201, @AdminId, @MetadataId, @AdminId);
INSERT INTO dbo.b_user_power (b_id, b_user_id, b_power_id, b_inputuser_id)
SELECT 910000000000000300 + ROW_NUMBER() OVER (ORDER BY b_id), @AdminId, b_id, @AdminId
FROM dbo.b_module_power;
FROM dbo.s_module_power;
EXEC sys.sp_set_session_context @key = N'allow_g3soft', @value = NULL;
EXEC sys.sp_set_session_context @key = N'reset_admin_id', @value = NULL;