feat(hjgl): 新增防腐等级字典管理
将防腐等级维护纳入焊接设置菜单,便于统一维护防腐等级编码并复用系统权限配置。
This commit is contained in:
@@ -0,0 +1,102 @@
|
||||
SET XACT_ABORT ON;
|
||||
BEGIN TRANSACTION;
|
||||
|
||||
DECLARE @MenuId NVARCHAR(50) = N'44F69908-89DF-4B96-86F8-6ACC0019FBE7';
|
||||
DECLARE @MaterialMenuId NVARCHAR(50) = N'8IDKGJE2-09B1-4607-BC6D-865CE48F0013';
|
||||
DECLARE @SuperMenu NVARCHAR(50);
|
||||
DECLARE @MenuType NVARCHAR(50);
|
||||
DECLARE @SortIndex INT;
|
||||
DECLARE @IsOffice BIT;
|
||||
|
||||
SELECT
|
||||
@SuperMenu = SuperMenu,
|
||||
@MenuType = MenuType,
|
||||
@SortIndex = SortIndex,
|
||||
@IsOffice = IsOffice
|
||||
FROM dbo.Sys_Menu
|
||||
WHERE MenuId = @MaterialMenuId;
|
||||
|
||||
IF @SuperMenu IS NULL
|
||||
BEGIN
|
||||
RAISERROR(N'未找到“管道材质定义”菜单,无法确定防腐等级定义菜单位置。', 16, 1);
|
||||
ROLLBACK TRANSACTION;
|
||||
RETURN;
|
||||
END;
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM dbo.Sys_Menu WHERE MenuId = @MenuId)
|
||||
BEGIN
|
||||
UPDATE dbo.Sys_Menu
|
||||
SET SortIndex = ISNULL(SortIndex, 0) + 1
|
||||
WHERE SuperMenu = @SuperMenu
|
||||
AND ISNULL(SortIndex, 0) >= ISNULL(@SortIndex, 0);
|
||||
|
||||
INSERT INTO dbo.Sys_Menu
|
||||
(MenuId, MenuName, Icon, Url, SortIndex, SuperMenu, MenuType, IsOffice, IsEnd, IsUsed)
|
||||
VALUES
|
||||
(@MenuId, N'防腐等级定义', NULL, N'HJGL/BaseInfo/PaintCodeDict.aspx',
|
||||
@SortIndex, @SuperMenu, @MenuType, @IsOffice, 1, 1);
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
UPDATE dbo.Sys_Menu
|
||||
SET MenuName = N'防腐等级定义',
|
||||
Url = N'HJGL/BaseInfo/PaintCodeDict.aspx',
|
||||
SuperMenu = @SuperMenu,
|
||||
MenuType = @MenuType,
|
||||
IsEnd = 1,
|
||||
IsUsed = 1
|
||||
WHERE MenuId = @MenuId;
|
||||
END;
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM dbo.Sys_ButtonToMenu WHERE MenuId = @MenuId AND ButtonName = N'增加')
|
||||
INSERT INTO dbo.Sys_ButtonToMenu (ButtonToMenuId, MenuId, ButtonName, SortIndex)
|
||||
VALUES (N'D9437722-E216-408D-84DB-BBCBBF2763DF', @MenuId, N'增加', 1);
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM dbo.Sys_ButtonToMenu WHERE MenuId = @MenuId AND ButtonName = N'修改')
|
||||
INSERT INTO dbo.Sys_ButtonToMenu (ButtonToMenuId, MenuId, ButtonName, SortIndex)
|
||||
VALUES (N'0752CB84-0E82-4B3D-B7C4-8A563C65F340', @MenuId, N'修改', 2);
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM dbo.Sys_ButtonToMenu WHERE MenuId = @MenuId AND ButtonName = N'删除')
|
||||
INSERT INTO dbo.Sys_ButtonToMenu (ButtonToMenuId, MenuId, ButtonName, SortIndex)
|
||||
VALUES (N'3D4C0A40-C1F5-4431-A464-EA92CCA7C4D7', @MenuId, N'删除', 3);
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM dbo.Sys_ButtonToMenu WHERE MenuId = @MenuId AND ButtonName = N'保存')
|
||||
INSERT INTO dbo.Sys_ButtonToMenu (ButtonToMenuId, MenuId, ButtonName, SortIndex)
|
||||
VALUES (N'CFA71E37-08DE-4F49-8740-0F13B341331D', @MenuId, N'保存', 4);
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM dbo.Sys_ButtonToMenu WHERE MenuId = @MenuId AND ButtonName = N'查看')
|
||||
INSERT INTO dbo.Sys_ButtonToMenu (ButtonToMenuId, MenuId, ButtonName, SortIndex)
|
||||
VALUES (N'8EA926AF-CDF1-4F63-AF94-B91B3569D266', @MenuId, N'查看', 5);
|
||||
|
||||
INSERT INTO dbo.Sys_RolePower (RolePowerId, RoleId, MenuId, MenuType, IsOffice)
|
||||
SELECT CONVERT(NVARCHAR(50), NEWID()), source.RoleId, @MenuId, @MenuType, source.IsOffice
|
||||
FROM dbo.Sys_RolePower source
|
||||
WHERE source.MenuId = @MaterialMenuId
|
||||
AND NOT EXISTS
|
||||
(
|
||||
SELECT 1
|
||||
FROM dbo.Sys_RolePower target
|
||||
WHERE target.RoleId = source.RoleId
|
||||
AND target.MenuId = @MenuId
|
||||
);
|
||||
|
||||
INSERT INTO dbo.Sys_ButtonPower (ButtonPowerID, RoleId, MenuId, ButtonToMenuId)
|
||||
SELECT CONVERT(NVARCHAR(50), NEWID()), sourcePower.RoleId, @MenuId, targetButton.ButtonToMenuId
|
||||
FROM dbo.Sys_ButtonPower sourcePower
|
||||
INNER JOIN dbo.Sys_ButtonToMenu sourceButton
|
||||
ON sourceButton.ButtonToMenuId = sourcePower.ButtonToMenuId
|
||||
AND sourceButton.MenuId = @MaterialMenuId
|
||||
INNER JOIN dbo.Sys_ButtonToMenu targetButton
|
||||
ON targetButton.MenuId = @MenuId
|
||||
AND targetButton.ButtonName = sourceButton.ButtonName
|
||||
WHERE sourcePower.MenuId = @MaterialMenuId
|
||||
AND NOT EXISTS
|
||||
(
|
||||
SELECT 1
|
||||
FROM dbo.Sys_ButtonPower targetPower
|
||||
WHERE targetPower.RoleId = sourcePower.RoleId
|
||||
AND targetPower.MenuId = @MenuId
|
||||
AND targetPower.ButtonToMenuId = targetButton.ButtonToMenuId
|
||||
);
|
||||
|
||||
COMMIT TRANSACTION;
|
||||
Reference in New Issue
Block a user