20260824225422
This commit is contained in:
1 parent
97aea665f9
commit
7421019ef2
6 files changed
+2210
-401
No files matched your search
@@ -67,6 +67,7 @@ BEGIN
|
||||
b_keyfield varchar(50) NULL,
|
||||
b_orderfield varchar(500) NULL,
|
||||
b_delete_policy varchar(20) NULL,
|
||||
b_edit_mode varchar(10) NULL,
|
||||
b_canuse int NOT NULL CONSTRAINT DF_s_module_canuse DEFAULT (1),
|
||||
b_xh int NOT NULL CONSTRAINT DF_s_module_xh DEFAULT (0),
|
||||
b_bz nvarchar(1000) NULL,
|
||||
@@ -78,6 +79,7 @@ BEGIN
|
||||
CONSTRAINT UQ_s_module_code UNIQUE (b_code),
|
||||
CONSTRAINT CK_s_module_type CHECK (b_module_type IN ('category','data','query')),
|
||||
CONSTRAINT CK_s_module_delete_policy CHECK (b_delete_policy IS NULL OR b_delete_policy IN ('restrict','lifecycle','hard')),
|
||||
CONSTRAINT CK_s_module_edit_mode CHECK (b_edit_mode IS NULL OR b_edit_mode IN ('form','table')),
|
||||
CONSTRAINT CK_s_module_config CHECK (
|
||||
(b_module_type = 'category' AND b_viewtable IS NULL AND b_savetable IS NULL AND b_keyfield IS NULL AND b_orderfield IS NULL AND b_delete_policy IS NULL)
|
||||
OR (b_module_type = 'data' AND b_viewtable IS NOT NULL AND b_savetable IS NOT NULL AND b_keyfield IS NOT NULL AND b_delete_policy IS NOT NULL)
|
||||
@@ -172,6 +174,7 @@ BEGIN
|
||||
b_colspan int NOT NULL CONSTRAINT DF_s_field_edit_colspan DEFAULT (12),
|
||||
b_height int NULL,
|
||||
b_placeholder nvarchar(200) NULL,
|
||||
b_width int NULL,
|
||||
b_xh int NOT NULL CONSTRAINT DF_s_field_edit_xh DEFAULT (0),
|
||||
CONSTRAINT PK_s_field_edit PRIMARY KEY (b_id),
|
||||
CONSTRAINT UQ_s_field_edit_field UNIQUE (b_module_id, b_field_id),
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
/*
|
||||
支持模块「编辑方式」:
|
||||
1. s_module.b_edit_mode —— 数据模块的编辑形态:
|
||||
form (主表):单条记录以表单形式编辑(配合 s_field_edit 的分组 / 栅格 / 占位符设计)
|
||||
table (子表):作为子表以可编辑表格(grid)编辑(配合 s_field_edit 的列顺序 / 列宽设计)
|
||||
每个 data 模块只能存在一种编辑方式,默认 form。
|
||||
2. s_field_edit.b_width —— 子表(表格)模式下列的宽度(px),仅表格编辑方式使用。
|
||||
可重复执行:列与约束均通过存在性判断避免重复。
|
||||
*/
|
||||
SET NOCOUNT ON;
|
||||
|
||||
-- 1. s_module.b_edit_mode
|
||||
IF NOT EXISTS (
|
||||
SELECT 1
|
||||
FROM sys.columns
|
||||
WHERE object_id = OBJECT_ID(N'dbo.s_module')
|
||||
AND name = N'b_edit_mode'
|
||||
)
|
||||
BEGIN
|
||||
ALTER TABLE dbo.s_module
|
||||
ADD b_edit_mode varchar(10) NULL;
|
||||
END;
|
||||
|
||||
IF NOT EXISTS (
|
||||
SELECT 1
|
||||
FROM sys.check_constraints
|
||||
WHERE parent_object_id = OBJECT_ID(N'dbo.s_module')
|
||||
AND name = N'CK_s_module_edit_mode'
|
||||
)
|
||||
BEGIN
|
||||
ALTER TABLE dbo.s_module
|
||||
ADD CONSTRAINT CK_s_module_edit_mode CHECK (b_edit_mode IS NULL OR b_edit_mode IN ('form', 'table'));
|
||||
END;
|
||||
|
||||
-- 2. s_field_edit.b_width
|
||||
IF NOT EXISTS (
|
||||
SELECT 1
|
||||
FROM sys.columns
|
||||
WHERE object_id = OBJECT_ID(N'dbo.s_field_edit')
|
||||
AND name = N'b_width'
|
||||
)
|
||||
BEGIN
|
||||
ALTER TABLE dbo.s_field_edit
|
||||
ADD b_width int NULL;
|
||||
END;
|
||||
Reference in new issue
Block a user