171 lines
5.7 KiB
Transact-SQL
171 lines
5.7 KiB
Transact-SQL
-- 指定货位出库菜单与货位状态字典补丁
|
||
-- 目标库:FTC25009-WMS
|
||
|
||
SET NOCOUNT ON;
|
||
|
||
IF EXISTS (SELECT 1 FROM dbo.sys_dict_data WHERE dict_type = N'bas_cargo_space_status' AND dict_value = N'4')
|
||
BEGIN
|
||
UPDATE dbo.sys_dict_data
|
||
SET dict_label = N'出库已分配',
|
||
dict_sort = 4,
|
||
list_class = N'warning',
|
||
status = N'0',
|
||
update_by = N'admin',
|
||
update_time = GETDATE()
|
||
WHERE dict_type = N'bas_cargo_space_status'
|
||
AND dict_value = N'4';
|
||
END
|
||
ELSE
|
||
BEGIN
|
||
INSERT INTO dbo.sys_dict_data (dict_sort, dict_label, dict_value, dict_type, list_class, is_default, status, create_by, create_time)
|
||
VALUES (4, N'出库已分配', N'4', N'bas_cargo_space_status', N'warning', N'N', N'0', N'admin', GETDATE());
|
||
END
|
||
|
||
DECLARE @outMenuId bigint = 2001;
|
||
DECLARE @preferredLocationOutboundMenuId bigint = 2220;
|
||
DECLARE @locationOutboundMenuId bigint;
|
||
DECLARE @queryButtonMenuId bigint;
|
||
DECLARE @generateButtonMenuId bigint;
|
||
DECLARE @menuIdIsIdentity bit = COLUMNPROPERTY(OBJECT_ID(N'dbo.sys_menu'), 'menu_id', 'IsIdentity');
|
||
|
||
SELECT TOP 1 @locationOutboundMenuId = menu_id
|
||
FROM dbo.sys_menu
|
||
WHERE menu_type = N'C'
|
||
AND (
|
||
perms = N'out:locationOutbound:list'
|
||
OR (path = N'locationOutbound' AND component = N'out/locationOutbound/index')
|
||
)
|
||
ORDER BY menu_id;
|
||
|
||
IF @locationOutboundMenuId IS NULL
|
||
BEGIN
|
||
SET @locationOutboundMenuId = @preferredLocationOutboundMenuId;
|
||
WHILE EXISTS (SELECT 1 FROM dbo.sys_menu WHERE menu_id = @locationOutboundMenuId)
|
||
SET @locationOutboundMenuId = @locationOutboundMenuId + 1;
|
||
END
|
||
|
||
SELECT TOP 1 @queryButtonMenuId = menu_id
|
||
FROM dbo.sys_menu
|
||
WHERE parent_id = @locationOutboundMenuId
|
||
AND menu_type = N'F'
|
||
AND perms = N'out:locationOutbound:list'
|
||
ORDER BY menu_id;
|
||
|
||
IF @queryButtonMenuId IS NULL
|
||
BEGIN
|
||
SET @queryButtonMenuId = @locationOutboundMenuId + 1;
|
||
WHILE EXISTS (SELECT 1 FROM dbo.sys_menu WHERE menu_id = @queryButtonMenuId)
|
||
SET @queryButtonMenuId = @queryButtonMenuId + 1;
|
||
END
|
||
|
||
SELECT TOP 1 @generateButtonMenuId = menu_id
|
||
FROM dbo.sys_menu
|
||
WHERE parent_id = @locationOutboundMenuId
|
||
AND menu_type = N'F'
|
||
AND perms = N'out:locationOutbound:generate'
|
||
ORDER BY menu_id;
|
||
|
||
IF @generateButtonMenuId IS NULL
|
||
BEGIN
|
||
SET @generateButtonMenuId = @queryButtonMenuId + 1;
|
||
WHILE EXISTS (SELECT 1 FROM dbo.sys_menu WHERE menu_id = @generateButtonMenuId)
|
||
SET @generateButtonMenuId = @generateButtonMenuId + 1;
|
||
END
|
||
|
||
IF @menuIdIsIdentity = 1
|
||
SET IDENTITY_INSERT dbo.sys_menu ON;
|
||
|
||
IF NOT EXISTS (SELECT 1 FROM dbo.sys_menu WHERE menu_id = @locationOutboundMenuId)
|
||
BEGIN
|
||
INSERT INTO dbo.sys_menu (
|
||
menu_id, menu_name, parent_id, order_num, path, component, query, route_name,
|
||
is_frame, is_cache, menu_type, visible, status, perms, icon,
|
||
create_by, create_time, update_by, update_time, remark
|
||
)
|
||
VALUES (
|
||
@locationOutboundMenuId, N'指定货位出库', @outMenuId, 4, N'locationOutbound', N'out/locationOutbound/index', NULL, N'',
|
||
1, 0, N'C', N'0', N'0', N'out:locationOutbound:list', N'guide',
|
||
N'admin', GETDATE(), N'', NULL, N''
|
||
);
|
||
END
|
||
ELSE
|
||
BEGIN
|
||
UPDATE dbo.sys_menu
|
||
SET menu_name = N'指定货位出库',
|
||
parent_id = @outMenuId,
|
||
order_num = 4,
|
||
path = N'locationOutbound',
|
||
component = N'out/locationOutbound/index',
|
||
perms = N'out:locationOutbound:list',
|
||
icon = N'guide',
|
||
visible = N'0',
|
||
status = N'0',
|
||
update_by = N'admin',
|
||
update_time = GETDATE()
|
||
WHERE menu_id = @locationOutboundMenuId;
|
||
END
|
||
|
||
IF NOT EXISTS (SELECT 1 FROM dbo.sys_menu WHERE menu_id = @queryButtonMenuId)
|
||
BEGIN
|
||
INSERT INTO dbo.sys_menu (
|
||
menu_id, menu_name, parent_id, order_num, path, component, query, route_name,
|
||
is_frame, is_cache, menu_type, visible, status, perms, icon,
|
||
create_by, create_time, update_by, update_time, remark
|
||
)
|
||
VALUES (
|
||
@queryButtonMenuId, N'指定货位出库查询', @locationOutboundMenuId, 1, N'#', N'', NULL, N'',
|
||
1, 0, N'F', N'0', N'0', N'out:locationOutbound:list', N'#',
|
||
N'admin', GETDATE(), N'', NULL, N''
|
||
);
|
||
END
|
||
ELSE
|
||
BEGIN
|
||
UPDATE dbo.sys_menu
|
||
SET menu_name = N'指定货位出库查询',
|
||
parent_id = @locationOutboundMenuId,
|
||
order_num = 1,
|
||
path = N'#',
|
||
component = N'',
|
||
perms = N'out:locationOutbound:list',
|
||
icon = N'#',
|
||
visible = N'0',
|
||
status = N'0',
|
||
update_by = N'admin',
|
||
update_time = GETDATE()
|
||
WHERE menu_id = @queryButtonMenuId;
|
||
END
|
||
|
||
IF NOT EXISTS (SELECT 1 FROM dbo.sys_menu WHERE menu_id = @generateButtonMenuId)
|
||
BEGIN
|
||
INSERT INTO dbo.sys_menu (
|
||
menu_id, menu_name, parent_id, order_num, path, component, query, route_name,
|
||
is_frame, is_cache, menu_type, visible, status, perms, icon,
|
||
create_by, create_time, update_by, update_time, remark
|
||
)
|
||
VALUES (
|
||
@generateButtonMenuId, N'生成出库作业', @locationOutboundMenuId, 2, N'#', N'', NULL, N'',
|
||
1, 0, N'F', N'0', N'0', N'out:locationOutbound:generate', N'#',
|
||
N'admin', GETDATE(), N'', NULL, N''
|
||
);
|
||
END
|
||
ELSE
|
||
BEGIN
|
||
UPDATE dbo.sys_menu
|
||
SET menu_name = N'生成出库作业',
|
||
parent_id = @locationOutboundMenuId,
|
||
order_num = 2,
|
||
path = N'#',
|
||
component = N'',
|
||
perms = N'out:locationOutbound:generate',
|
||
icon = N'#',
|
||
visible = N'0',
|
||
status = N'0',
|
||
update_by = N'admin',
|
||
update_time = GETDATE()
|
||
WHERE menu_id = @generateButtonMenuId;
|
||
END
|
||
|
||
IF @menuIdIsIdentity = 1
|
||
SET IDENTITY_INSERT dbo.sys_menu OFF;
|
||
GO
|