36 lines
2.2 KiB
SQL
36 lines
2.2 KiB
SQL
-- REVIEW ONLY: gray appointment schema and platform administrator permissions.
|
|
-- Execute only with explicit gray SQL authorization, after verifying both appointment tables remain empty.
|
|
-- No DROP TABLE, DELETE, TRUNCATE, or business-data backfill.
|
|
-- DDL auto-commits; stop immediately on any error. Do not use mysql --force.
|
|
USE baiyue_lastleg;
|
|
ALTER TABLE ll_inbound_fba_appointment
|
|
DROP INDEX uk_ll_fba_appointment_no,
|
|
DROP INDEX idx_ll_fba_appointment_list,
|
|
DROP COLUMN customer_id,
|
|
ADD COLUMN appointment_end_at DATETIME(3) NULL COMMENT '预约结束时间,未明确时为空' AFTER appointment_at,
|
|
ADD COLUMN version INT NOT NULL DEFAULT 0 COMMENT '并发版本' AFTER appointment_end_at,
|
|
ADD UNIQUE KEY uk_ll_fba_appointment_no (appointment_no),
|
|
ADD KEY idx_ll_fba_appointment_list (appointment_at, appointment_status, fba_warehouse_code);
|
|
ALTER TABLE ll_inbound_fba_appointment_item
|
|
ADD COLUMN customer_id VARCHAR(128) NOT NULL COMMENT '本票货物客户ID' AFTER appointment_id,
|
|
ADD KEY idx_ll_fba_appointment_item_cargo (line_id, appointment_id);
|
|
USE baiyue_iam;
|
|
START TRANSACTION;
|
|
INSERT INTO iam_permission
|
|
(id,tenant_id,app_code,permission_type,parent_id,permission_code,permission_name,route_path,http_method,sort_no,status,built_in,deleted)
|
|
VALUES
|
|
(5107280,0,'PLATFORM','MENU',0,'platform:appointment:list','预约列表','/appointment-calendar','GET',740,'ACTIVE',1,0),
|
|
(5107281,0,'PLATFORM','BUTTON',5107280,'platform:appointment:delete','删除预约',NULL,'DELETE',741,'ACTIVE',1,0);
|
|
INSERT INTO iam_role_permission (tenant_id,role_id,permission_id,created_at)
|
|
SELECT 0,r.id,p.id,NOW(3) FROM iam_role r CROSS JOIN iam_permission p
|
|
WHERE r.id=4000001 AND r.tenant_id=0 AND r.role_code='PLATFORM_ADMIN' AND r.status='ACTIVE' AND r.deleted=0
|
|
AND p.id IN (5107280,5107281);
|
|
INSERT INTO iam_security_subject_version (auth_user_id,permission_version,updated_at)
|
|
SELECT DISTINCT u.auth_user_id,1,NOW(3)
|
|
FROM iam_membership_role mr
|
|
JOIN iam_membership m ON m.id=mr.membership_id AND m.tenant_id=mr.tenant_id
|
|
JOIN iam_user u ON u.id=m.user_id
|
|
WHERE mr.tenant_id=0 AND mr.role_id=4000001 AND m.deleted=0 AND u.deleted=0
|
|
ON DUPLICATE KEY UPDATE permission_version=permission_version+1,updated_at=NOW(3);
|
|
COMMIT;
|