货柜pda 添加操作人
This commit is contained in:
@@ -3,6 +3,26 @@
|
||||
USE baiyue_iam;
|
||||
SET NAMES utf8mb4;
|
||||
|
||||
DROP PROCEDURE IF EXISTS ensure_domestic_pda_operator_warehouse_column;
|
||||
DELIMITER $$
|
||||
CREATE PROCEDURE ensure_domestic_pda_operator_warehouse_column()
|
||||
BEGIN
|
||||
IF NOT EXISTS (
|
||||
SELECT 1 FROM information_schema.columns
|
||||
WHERE table_schema = DATABASE() AND table_name = 'iam_membership'
|
||||
AND column_name = 'domestic_warehouse_id'
|
||||
) THEN
|
||||
ALTER TABLE iam_membership
|
||||
ADD COLUMN domestic_warehouse_id BIGINT NULL
|
||||
COMMENT '国内头程PDA操作员绑定的唯一国内作业仓ID'
|
||||
AFTER overseas_warehouse_id,
|
||||
ADD KEY idx_membership_domestic_warehouse (tenant_id, domestic_warehouse_id, status);
|
||||
END IF;
|
||||
END$$
|
||||
DELIMITER ;
|
||||
CALL ensure_domestic_pda_operator_warehouse_column();
|
||||
DROP PROCEDURE ensure_domestic_pda_operator_warehouse_column;
|
||||
|
||||
UPDATE iam_role
|
||||
SET role_code = 'OVERSEAS_WAREHOUSE_PDA_OPERATOR',
|
||||
role_name = '海外仓 PDA 作业员',
|
||||
@@ -72,13 +92,16 @@ CREATE TEMPORARY TABLE tmp_phase3_warehouse_role_permission (
|
||||
PRIMARY KEY (role_code, permission_code)
|
||||
) ENGINE=MEMORY;
|
||||
|
||||
-- 操作员:查看入仓业务并维护后台装柜证据,不授予完成装柜、任务分派或出仓动作。
|
||||
-- 仓管:可查看并确认预装、指定国内 PDA 作业员,不授予 PDA 执行或出仓动作。
|
||||
INSERT INTO tmp_phase3_warehouse_role_permission (role_code, permission_code) VALUES
|
||||
('WAREHOUSE_OPERATOR', 'platform:order'),
|
||||
('WAREHOUSE_OPERATOR', 'platform:firstleg:inbound:list'),
|
||||
('WAREHOUSE_OPERATOR', 'platform:firstleg:inbound:view'),
|
||||
('WAREHOUSE_OPERATOR', 'platform:firstleg:inbound:loading:view'),
|
||||
('WAREHOUSE_OPERATOR', 'platform:firstleg:inbound:loading:edit');
|
||||
('WAREHOUSE_OPERATOR', 'platform:firstleg:inbound:loading:edit'),
|
||||
('WAREHOUSE_OPERATOR', 'platform:firstleg:preload:list'),
|
||||
('WAREHOUSE_OPERATOR', 'platform:firstleg:preload:edit'),
|
||||
('WAREHOUSE_OPERATOR', 'platform:firstleg:pda:assign');
|
||||
|
||||
-- 国内头程 PDA 作业员:只允许国内任务查询、作业和现场照片,不授予后台、海外、分派或复核权限。
|
||||
INSERT INTO tmp_phase3_warehouse_role_permission (role_code, permission_code) VALUES
|
||||
@@ -112,7 +135,7 @@ BEGIN
|
||||
COALESCE(SUM(role_code = 'WAREHOUSE_TALLY'), 0)
|
||||
INTO operator_permission_count, domestic_pda_permission_count, tally_permission_count
|
||||
FROM tmp_phase3_warehouse_role_permission;
|
||||
IF operator_permission_count <> 5
|
||||
IF operator_permission_count <> 8
|
||||
OR domestic_pda_permission_count <> 2
|
||||
OR tally_permission_count <> 12 THEN
|
||||
SIGNAL SQLSTATE '45000'
|
||||
@@ -208,7 +231,7 @@ BEGIN
|
||||
JOIN iam_role_permission grant_row
|
||||
ON grant_row.role_id = role.id
|
||||
AND grant_row.permission_id = permission.id
|
||||
AND grant_row.tenant_id = 0) <> 19 THEN
|
||||
AND grant_row.tenant_id = 0) <> 22 THEN
|
||||
SIGNAL SQLSTATE '45000'
|
||||
SET MESSAGE_TEXT = '仓库角色初始化失败:最小权限授权未完整写入';
|
||||
END IF;
|
||||
|
||||
Reference in New Issue
Block a user