liu
3 天以前 f2605183fb42384f365fbcc323871df9e16c5d5f
chore: sql script for review audit db changes
已添加1个文件
279 ■■■■■ 文件已修改
sql/mysql/xgdl_review_audit_pending_changes.sql 279 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sql/mysql/xgdl_review_audit_pending_changes.sql
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,279 @@
-- ============================================================================
-- æ–°ç–†-新高力 é¡¹ç›®ï¼šå•据审核状态机改造 + ç”µåŠ›ä½œä¸šè®¡åˆ’ç”Ÿæˆå·¥å• å¾…执行数据库变更
-- ç›®æ ‡åº“:mom-xgdl
-- è¯´æ˜Žï¼šæœ¬è„šæœ¬å¹‚ç­‰ï¼Œå¯é‡å¤æ‰§è¡Œï¼›å·²å­˜åœ¨çš„å­—æ®µ/菜单会自动跳过。
--       å¼€å‘库(192.168.197.128)已全部执行过,本脚本用于向其它环境(如测试/生产)同步。
-- å¯¹åº”代码提交:
--   refactor(crm/erp/hrm/mes): å•据审核改为审批配置状态机
--   fix(mes): ç”µåŠ›ä½œä¸šè®¡åˆ’ç”Ÿæˆå·¥å•è¡¥å……ç¼–ç è§„åˆ™å–å·
-- ============================================================================
SET NAMES utf8mb4;
-- ============================================================================
-- ç¬¬ä¸€éƒ¨åˆ†ï¼š20 å¼ å•据表新增审核人四字段
--   reviewer_id / reviewer_name / review_time / review_remark
-- ============================================================================
DROP TABLE IF EXISTS _tmp_xgdl_review_cols;
CREATE TABLE _tmp_xgdl_review_cols (
    tbl    VARCHAR(64)  NOT NULL,
    col    VARCHAR(64)  NOT NULL,
    coldef VARCHAR(255) NOT NULL
);
INSERT INTO _tmp_xgdl_review_cols (tbl, col, coldef) VALUES
-- CRM
('crm_cancellation',            'reviewer_id',    'bigint COMMENT ''审核人用户编号(提交审批时指定)'''),
('crm_cancellation',            'reviewer_name',  'varchar(64) COMMENT ''审核人姓名(冗余)'''),
('crm_cancellation',            'review_time',    'datetime COMMENT ''审核时间'''),
('crm_cancellation',            'review_remark',  'varchar(500) COMMENT ''审核意见(不通过时即不通过原因)'''),
('crm_contract',                'reviewer_id',    'bigint COMMENT ''审核人用户编号(提交审批时指定)'''),
('crm_contract',                'reviewer_name',  'varchar(64) COMMENT ''审核人姓名(冗余)'''),
('crm_contract',                'review_time',    'datetime COMMENT ''审核时间'''),
('crm_contract',                'review_remark',  'varchar(500) COMMENT ''审核意见(不通过时即不通过原因)'''),
('crm_invoice',                 'reviewer_id',    'bigint COMMENT ''审核人用户编号(提交审批时指定)'''),
('crm_invoice',                 'reviewer_name',  'varchar(64) COMMENT ''审核人姓名(冗余)'''),
('crm_invoice',                 'review_time',    'datetime COMMENT ''审核时间'''),
('crm_invoice',                 'review_remark',  'varchar(500) COMMENT ''审核意见(不通过时即不通过原因)'''),
('crm_refund',                  'reviewer_id',    'bigint COMMENT ''审核人用户编号(提交审批时指定)'''),
('crm_refund',                  'reviewer_name',  'varchar(64) COMMENT ''审核人姓名(冗余)'''),
('crm_refund',                  'review_time',    'datetime COMMENT ''审核时间'''),
('crm_refund',                  'review_remark',  'varchar(500) COMMENT ''审核意见(不通过时即不通过原因)'''),
-- ERP
('erp_finance_payment',         'reviewer_id',    'bigint COMMENT ''审核人用户编号(提交审批时指定)'''),
('erp_finance_payment',         'reviewer_name',  'varchar(64) COMMENT ''审核人姓名(冗余)'''),
('erp_finance_payment',         'review_time',    'datetime COMMENT ''审核时间'''),
('erp_finance_payment',         'review_remark',  'varchar(500) COMMENT ''审核意见(不通过时即不通过原因)'''),
('erp_purchase_request',        'reviewer_id',    'bigint COMMENT ''审核人用户编号(提交审批时指定)'''),
('erp_purchase_request',        'reviewer_name',  'varchar(64) COMMENT ''审核人姓名(冗余)'''),
('erp_purchase_request',        'review_time',    'datetime COMMENT ''审核时间'''),
('erp_purchase_request',        'review_remark',  'varchar(500) COMMENT ''审核意见(不通过时即不通过原因)'''),
-- HRM
('hrm_leave_application',       'reviewer_id',    'bigint COMMENT ''审核人用户编号(提交审批时指定)'''),
('hrm_leave_application',       'reviewer_name',  'varchar(64) COMMENT ''审核人姓名(冗余)'''),
('hrm_leave_application',       'review_time',    'datetime COMMENT ''审核时间'''),
('hrm_leave_application',       'review_remark',  'varchar(500) COMMENT ''审核意见(不通过时即不通过原因)'''),
('hrm_regularize_application',  'reviewer_id',    'bigint COMMENT ''审核人用户编号(提交审批时指定)'''),
('hrm_regularize_application',  'reviewer_name',  'varchar(64) COMMENT ''审核人姓名(冗余)'''),
('hrm_regularize_application',  'review_time',    'datetime COMMENT ''审核时间'''),
('hrm_regularize_application',  'review_remark',  'varchar(500) COMMENT ''审核意见(不通过时即不通过原因)'''),
('hrm_resignation_application', 'reviewer_id',    'bigint COMMENT ''审核人用户编号(提交审批时指定)'''),
('hrm_resignation_application', 'reviewer_name',  'varchar(64) COMMENT ''审核人姓名(冗余)'''),
('hrm_resignation_application', 'review_time',    'datetime COMMENT ''审核时间'''),
('hrm_resignation_application', 'review_remark',  'varchar(500) COMMENT ''审核意见(不通过时即不通过原因)'''),
('hrm_transfer_application',    'reviewer_id',    'bigint COMMENT ''审核人用户编号(提交审批时指定)'''),
('hrm_transfer_application',    'reviewer_name',  'varchar(64) COMMENT ''审核人姓名(冗余)'''),
('hrm_transfer_application',    'review_time',    'datetime COMMENT ''审核时间'''),
('hrm_transfer_application',    'review_remark',  'varchar(500) COMMENT ''审核意见(不通过时即不通过原因)'''),
('hrm_attendance_exception',    'reviewer_id',    'bigint COMMENT ''审核人用户编号(提交审批时指定)'''),
('hrm_attendance_exception',    'reviewer_name',  'varchar(64) COMMENT ''审核人姓名(冗余)'''),
('hrm_attendance_exception',    'review_time',    'datetime COMMENT ''审核时间'''),
('hrm_attendance_exception',    'review_remark',  'varchar(500) COMMENT ''审核意见(不通过时即不通过原因)'''),
('hrm_performance_appraise',    'reviewer_id',    'bigint COMMENT ''审核人用户编号(提交审批时指定)'''),
('hrm_performance_appraise',    'reviewer_name',  'varchar(64) COMMENT ''审核人姓名(冗余)'''),
('hrm_performance_appraise',    'review_time',    'datetime COMMENT ''审核时间'''),
('hrm_performance_appraise',    'review_remark',  'varchar(500) COMMENT ''审核意见(不通过时即不通过原因)'''),
-- MES
('mes_pd_project',              'reviewer_id',    'bigint COMMENT ''审核人用户编号(提交审批时指定)'''),
('mes_pd_project',              'reviewer_name',  'varchar(64) COMMENT ''审核人姓名(冗余)'''),
('mes_pd_project',              'review_time',    'datetime COMMENT ''审核时间'''),
('mes_pd_project',              'review_remark',  'varchar(500) COMMENT ''审核意见(不通过时即不通过原因)'''),
('product_tech_confirm',        'reviewer_id',    'bigint COMMENT ''审核人用户编号(提交审批时指定)'''),
('product_tech_confirm',        'reviewer_name',  'varchar(64) COMMENT ''审核人姓名(冗余)'''),
('product_tech_confirm',        'review_time',    'datetime COMMENT ''审核时间'''),
('product_tech_confirm',        'review_remark',  'varchar(500) COMMENT ''审核意见(不通过时即不通过原因)'''),
('mes_wm_equipment_receipt',    'reviewer_id',    'bigint COMMENT ''审核人用户编号(提交审批时指定)'''),
('mes_wm_equipment_receipt',    'reviewer_name',  'varchar(64) COMMENT ''审核人姓名(冗余)'''),
('mes_wm_equipment_receipt',    'review_time',    'datetime COMMENT ''审核时间'''),
('mes_wm_equipment_receipt',    'review_remark',  'varchar(500) COMMENT ''审核意见(不通过时即不通过原因)'''),
('mes_wm_item_receipt',         'reviewer_id',    'bigint COMMENT ''审核人用户编号(提交审批时指定)'''),
('mes_wm_item_receipt',         'reviewer_name',  'varchar(64) COMMENT ''审核人姓名(冗余)'''),
('mes_wm_item_receipt',         'review_time',    'datetime COMMENT ''审核时间'''),
('mes_wm_item_receipt',         'review_remark',  'varchar(500) COMMENT ''审核意见(不通过时即不通过原因)'''),
('mes_wm_misc_issue',           'reviewer_id',    'bigint COMMENT ''审核人用户编号(提交审批时指定)'''),
('mes_wm_misc_issue',           'reviewer_name',  'varchar(64) COMMENT ''审核人姓名(冗余)'''),
('mes_wm_misc_issue',           'review_time',    'datetime COMMENT ''审核时间'''),
('mes_wm_misc_issue',           'review_remark',  'varchar(500) COMMENT ''审核意见(不通过时即不通过原因)'''),
('mes_wm_misc_receipt',         'reviewer_id',    'bigint COMMENT ''审核人用户编号(提交审批时指定)'''),
('mes_wm_misc_receipt',         'reviewer_name',  'varchar(64) COMMENT ''审核人姓名(冗余)'''),
('mes_wm_misc_receipt',         'review_time',    'datetime COMMENT ''审核时间'''),
('mes_wm_misc_receipt',         'review_remark',  'varchar(500) COMMENT ''审核意见(不通过时即不通过原因)'''),
('mes_wm_return_vendor',        'reviewer_id',    'bigint COMMENT ''审核人用户编号(提交审批时指定)'''),
('mes_wm_return_vendor',        'reviewer_name',  'varchar(64) COMMENT ''审核人姓名(冗余)'''),
('mes_wm_return_vendor',        'review_time',    'datetime COMMENT ''审核时间'''),
('mes_wm_return_vendor',        'review_remark',  'varchar(500) COMMENT ''审核意见(不通过时即不通过原因)'''),
('mes_wm_stock_taking_task',    'reviewer_id',    'bigint COMMENT ''审核人用户编号(提交审批时指定)'''),
('mes_wm_stock_taking_task',    'reviewer_name',  'varchar(64) COMMENT ''审核人姓名(冗余)'''),
('mes_wm_stock_taking_task',    'review_time',    'datetime COMMENT ''审核时间'''),
('mes_wm_stock_taking_task',    'review_remark',  'varchar(500) COMMENT ''审核意见(不通过时即不通过原因)''');
DROP PROCEDURE IF EXISTS xgdl_add_review_cols;
DELIMITER $$
CREATE PROCEDURE xgdl_add_review_cols()
BEGIN
    DECLARE v_done INT DEFAULT 0;
    DECLARE v_tbl VARCHAR(64);
    DECLARE v_col VARCHAR(64);
    DECLARE v_def VARCHAR(255);
    DECLARE cur CURSOR FOR SELECT tbl, col, coldef FROM _tmp_xgdl_review_cols;
    DECLARE CONTINUE HANDLER FOR NOT FOUND SET v_done = 1;
    OPEN cur;
    read_loop: LOOP
        FETCH cur INTO v_tbl, v_col, v_def;
        IF v_done = 1 THEN
            LEAVE read_loop;
        END IF;
        IF EXISTS (SELECT 1 FROM information_schema.tables
                   WHERE table_schema = DATABASE() AND table_name = v_tbl)
           AND NOT EXISTS (SELECT 1 FROM information_schema.columns
                   WHERE table_schema = DATABASE() AND table_name = v_tbl AND column_name = v_col)
        THEN
            SET @ddl = CONCAT('ALTER TABLE `', v_tbl, '` ADD COLUMN `', v_col, '` ', v_def);
            PREPARE stmt FROM @ddl;
            EXECUTE stmt;
            DEALLOCATE PREPARE stmt;
        END IF;
    END LOOP;
    CLOSE cur;
END$$
DELIMITER ;
CALL xgdl_add_review_cols();
DROP PROCEDURE IF EXISTS xgdl_add_review_cols;
DROP TABLE IF EXISTS _tmp_xgdl_review_cols;
-- ============================================================================
-- ç¬¬äºŒéƒ¨åˆ†ï¼šå®¡æ ¸æŒ‰é’®èœå•(system_menu,type=3 æŒ‰é’®ï¼‰
--   æŒ‚载位置:与同资源「修改」按钮同父级;已存在则跳过
-- ============================================================================
-- é€æ¡æ’入:名称、权限、锚点权限(同资源的 :update æŒ‰é’®ï¼‰
INSERT INTO system_menu (name, permission, type, sort, parent_id, path, icon, component, component_name, status, visible, keep_alive, always_show, creator, create_time, updater, update_time, deleted)
SELECT t.name, t.perm, 3, 99, a.parent_id, '', '', NULL, NULL, 0, b'1', b'1', b'1', '1', NOW(), '1', NOW(), b'0'
FROM (SELECT '销户申请审核' AS name, 'crm:cancellation:audit' AS perm, 'crm:cancellation:update' AS anchor) t
JOIN (SELECT MIN(x.parent_id) AS parent_id FROM system_menu x WHERE x.deleted = 0 AND x.permission = 'crm:cancellation:update') a ON 1 = 1
WHERE NOT EXISTS (SELECT 1 FROM (SELECT id FROM system_menu WHERE deleted = 0 AND permission = 'crm:cancellation:audit') m);
INSERT INTO system_menu (name, permission, type, sort, parent_id, path, icon, component, component_name, status, visible, keep_alive, always_show, creator, create_time, updater, update_time, deleted)
SELECT t.name, t.perm, 3, 99, a.parent_id, '', '', NULL, NULL, 0, b'1', b'1', b'1', '1', NOW(), '1', NOW(), b'0'
FROM (SELECT '合同审核' AS name, 'crm:contract:audit' AS perm) t
JOIN (SELECT MIN(x.parent_id) AS parent_id FROM system_menu x WHERE x.deleted = 0 AND x.permission = 'crm:contract:update') a ON 1 = 1
WHERE NOT EXISTS (SELECT 1 FROM (SELECT id FROM system_menu WHERE deleted = 0 AND permission = 'crm:contract:audit') m);
INSERT INTO system_menu (name, permission, type, sort, parent_id, path, icon, component, component_name, status, visible, keep_alive, always_show, creator, create_time, updater, update_time, deleted)
SELECT t.name, t.perm, 3, 99, a.parent_id, '', '', NULL, NULL, 0, b'1', b'1', b'1', '1', NOW(), '1', NOW(), b'0'
FROM (SELECT '发票审核' AS name, 'crm:invoice:audit' AS perm) t
JOIN (SELECT MIN(x.parent_id) AS parent_id FROM system_menu x WHERE x.deleted = 0 AND x.permission = 'crm:invoice:update') a ON 1 = 1
WHERE NOT EXISTS (SELECT 1 FROM (SELECT id FROM system_menu WHERE deleted = 0 AND permission = 'crm:invoice:audit') m);
INSERT INTO system_menu (name, permission, type, sort, parent_id, path, icon, component, component_name, status, visible, keep_alive, always_show, creator, create_time, updater, update_time, deleted)
SELECT t.name, t.perm, 3, 99, a.parent_id, '', '', NULL, NULL, 0, b'1', b'1', b'1', '1', NOW(), '1', NOW(), b'0'
FROM (SELECT '退费单审核' AS name, 'crm:refund:audit' AS perm) t
JOIN (SELECT MIN(x.parent_id) AS parent_id FROM system_menu x WHERE x.deleted = 0 AND x.permission = 'crm:refund:update') a ON 1 = 1
WHERE NOT EXISTS (SELECT 1 FROM (SELECT id FROM system_menu WHERE deleted = 0 AND permission = 'crm:refund:audit') m);
INSERT INTO system_menu (name, permission, type, sort, parent_id, path, icon, component, component_name, status, visible, keep_alive, always_show, creator, create_time, updater, update_time, deleted)
SELECT t.name, t.perm, 3, 99, a.parent_id, '', '', NULL, NULL, 0, b'1', b'1', b'1', '1', NOW(), '1', NOW(), b'0'
FROM (SELECT '付款单审核' AS name, 'erp:finance-payment:audit' AS perm) t
JOIN (SELECT MIN(x.parent_id) AS parent_id FROM system_menu x WHERE x.deleted = 0 AND x.permission = 'erp:finance-payment:update') a ON 1 = 1
WHERE NOT EXISTS (SELECT 1 FROM (SELECT id FROM system_menu WHERE deleted = 0 AND permission = 'erp:finance-payment:audit') m);
INSERT INTO system_menu (name, permission, type, sort, parent_id, path, icon, component, component_name, status, visible, keep_alive, always_show, creator, create_time, updater, update_time, deleted)
SELECT t.name, t.perm, 3, 99, a.parent_id, '', '', NULL, NULL, 0, b'1', b'1', b'1', '1', NOW(), '1', NOW(), b'0'
FROM (SELECT '采购申请审核' AS name, 'erp:purchase-request:audit' AS perm) t
JOIN (SELECT MIN(x.parent_id) AS parent_id FROM system_menu x WHERE x.deleted = 0 AND x.permission = 'erp:purchase-request:update') a ON 1 = 1
WHERE NOT EXISTS (SELECT 1 FROM (SELECT id FROM system_menu WHERE deleted = 0 AND permission = 'erp:purchase-request:audit') m);
INSERT INTO system_menu (name, permission, type, sort, parent_id, path, icon, component, component_name, status, visible, keep_alive, always_show, creator, create_time, updater, update_time, deleted)
SELECT t.name, t.perm, 3, 99, a.parent_id, '', '', NULL, NULL, 0, b'1', b'1', b'1', '1', NOW(), '1', NOW(), b'0'
FROM (SELECT '请假申请审核' AS name, 'hrm:leave:audit' AS perm) t
JOIN (SELECT MIN(x.parent_id) AS parent_id FROM system_menu x WHERE x.deleted = 0 AND x.permission = 'hrm:leave:update') a ON 1 = 1
WHERE NOT EXISTS (SELECT 1 FROM (SELECT id FROM system_menu WHERE deleted = 0 AND permission = 'hrm:leave:audit') m);
INSERT INTO system_menu (name, permission, type, sort, parent_id, path, icon, component, component_name, status, visible, keep_alive, always_show, creator, create_time, updater, update_time, deleted)
SELECT t.name, t.perm, 3, 99, a.parent_id, '', '', NULL, NULL, 0, b'1', b'1', b'1', '1', NOW(), '1', NOW(), b'0'
FROM (SELECT '转正申请审核' AS name, 'hrm:regularize:audit' AS perm) t
JOIN (SELECT MIN(x.parent_id) AS parent_id FROM system_menu x WHERE x.deleted = 0 AND x.permission = 'hrm:regularize:update') a ON 1 = 1
WHERE NOT EXISTS (SELECT 1 FROM (SELECT id FROM system_menu WHERE deleted = 0 AND permission = 'hrm:regularize:audit') m);
INSERT INTO system_menu (name, permission, type, sort, parent_id, path, icon, component, component_name, status, visible, keep_alive, always_show, creator, create_time, updater, update_time, deleted)
SELECT t.name, t.perm, 3, 99, a.parent_id, '', '', NULL, NULL, 0, b'1', b'1', b'1', '1', NOW(), '1', NOW(), b'0'
FROM (SELECT '离职申请审核' AS name, 'hrm:resignation:audit' AS perm) t
JOIN (SELECT MIN(x.parent_id) AS parent_id FROM system_menu x WHERE x.deleted = 0 AND x.permission = 'hrm:resignation:update') a ON 1 = 1
WHERE NOT EXISTS (SELECT 1 FROM (SELECT id FROM system_menu WHERE deleted = 0 AND permission = 'hrm:resignation:audit') m);
INSERT INTO system_menu (name, permission, type, sort, parent_id, path, icon, component, component_name, status, visible, keep_alive, always_show, creator, create_time, updater, update_time, deleted)
SELECT t.name, t.perm, 3, 99, a.parent_id, '', '', NULL, NULL, 0, b'1', b'1', b'1', '1', NOW(), '1', NOW(), b'0'
FROM (SELECT '调动申请审核' AS name, 'hrm:transfer:audit' AS perm) t
JOIN (SELECT MIN(x.parent_id) AS parent_id FROM system_menu x WHERE x.deleted = 0 AND x.permission = 'hrm:transfer:update') a ON 1 = 1
WHERE NOT EXISTS (SELECT 1 FROM (SELECT id FROM system_menu WHERE deleted = 0 AND permission = 'hrm:transfer:audit') m);
INSERT INTO system_menu (name, permission, type, sort, parent_id, path, icon, component, component_name, status, visible, keep_alive, always_show, creator, create_time, updater, update_time, deleted)
SELECT t.name, t.perm, 3, 99, a.parent_id, '', '', NULL, NULL, 0, b'1', b'1', b'1', '1', NOW(), '1', NOW(), b'0'
FROM (SELECT '考勤异常审核' AS name, 'hrm:attendance-exception:audit' AS perm) t
JOIN (SELECT MIN(x.parent_id) AS parent_id FROM system_menu x WHERE x.deleted = 0 AND x.permission = 'hrm:attendance-exception:update') a ON 1 = 1
WHERE NOT EXISTS (SELECT 1 FROM (SELECT id FROM system_menu WHERE deleted = 0 AND permission = 'hrm:attendance-exception:audit') m);
INSERT INTO system_menu (name, permission, type, sort, parent_id, path, icon, component, component_name, status, visible, keep_alive, always_show, creator, create_time, updater, update_time, deleted)
SELECT t.name, t.perm, 3, 99, a.parent_id, '', '', NULL, NULL, 0, b'1', b'1', b'1', '1', NOW(), '1', NOW(), b'0'
FROM (SELECT '项目审核' AS name, 'mes:pd-project:audit' AS perm) t
JOIN (SELECT MIN(x.parent_id) AS parent_id FROM system_menu x WHERE x.deleted = 0 AND x.permission = 'mes:pd-project:update') a ON 1 = 1
WHERE NOT EXISTS (SELECT 1 FROM (SELECT id FROM system_menu WHERE deleted = 0 AND permission = 'mes:pd-project:audit') m);
INSERT INTO system_menu (name, permission, type, sort, parent_id, path, icon, component, component_name, status, visible, keep_alive, always_show, creator, create_time, updater, update_time, deleted)
SELECT t.name, t.perm, 3, 99, a.parent_id, '', '', NULL, NULL, 0, b'1', b'1', b'1', '1', NOW(), '1', NOW(), b'0'
FROM (SELECT '技术确认函审核' AS name, 'mes:pd-tech-confirm:audit' AS perm) t
JOIN (SELECT MIN(x.parent_id) AS parent_id FROM system_menu x WHERE x.deleted = 0 AND x.permission = 'mes:pd-tech-confirm:update') a ON 1 = 1
WHERE NOT EXISTS (SELECT 1 FROM (SELECT id FROM system_menu WHERE deleted = 0 AND permission = 'mes:pd-tech-confirm:audit') m);
INSERT INTO system_menu (name, permission, type, sort, parent_id, path, icon, component, component_name, status, visible, keep_alive, always_show, creator, create_time, updater, update_time, deleted)
SELECT t.name, t.perm, 3, 99, a.parent_id, '', '', NULL, NULL, 0, b'1', b'1', b'1', '1', NOW(), '1', NOW(), b'0'
FROM (SELECT '采购入库单审核' AS name, 'mes:wm-item-receipt:audit' AS perm) t
JOIN (SELECT MIN(x.parent_id) AS parent_id FROM system_menu x WHERE x.deleted = 0 AND x.permission = 'mes:wm-item-receipt:update') a ON 1 = 1
WHERE NOT EXISTS (SELECT 1 FROM (SELECT id FROM system_menu WHERE deleted = 0 AND permission = 'mes:wm-item-receipt:audit') m);
INSERT INTO system_menu (name, permission, type, sort, parent_id, path, icon, component, component_name, status, visible, keep_alive, always_show, creator, create_time, updater, update_time, deleted)
SELECT t.name, t.perm, 3, 99, a.parent_id, '', '', NULL, NULL, 0, b'1', b'1', b'1', '1', NOW(), '1', NOW(), b'0'
FROM (SELECT '杂项出库单审核' AS name, 'mes:wm-misc-issue:audit' AS perm) t
JOIN (SELECT MIN(x.parent_id) AS parent_id FROM system_menu x WHERE x.deleted = 0 AND x.permission = 'mes:wm-misc-issue:update') a ON 1 = 1
WHERE NOT EXISTS (SELECT 1 FROM (SELECT id FROM system_menu WHERE deleted = 0 AND permission = 'mes:wm-misc-issue:audit') m);
INSERT INTO system_menu (name, permission, type, sort, parent_id, path, icon, component, component_name, status, visible, keep_alive, always_show, creator, create_time, updater, update_time, deleted)
SELECT t.name, t.perm, 3, 99, a.parent_id, '', '', NULL, NULL, 0, b'1', b'1', b'1', '1', NOW(), '1', NOW(), b'0'
FROM (SELECT '采购退货单审核' AS name, 'mes:wm-return-vendor:audit' AS perm) t
JOIN (SELECT MIN(x.parent_id) AS parent_id FROM system_menu x WHERE x.deleted = 0 AND x.permission = 'mes:wm-return-vendor:update') a ON 1 = 1
WHERE NOT EXISTS (SELECT 1 FROM (SELECT id FROM system_menu WHERE deleted = 0 AND permission = 'mes:wm-return-vendor:audit') m);
INSERT INTO system_menu (name, permission, type, sort, parent_id, path, icon, component, component_name, status, visible, keep_alive, always_show, creator, create_time, updater, update_time, deleted)
SELECT t.name, t.perm, 3, 99, a.parent_id, '', '', NULL, NULL, 0, b'1', b'1', b'1', '1', NOW(), '1', NOW(), b'0'
FROM (SELECT '盘点任务审核' AS name, 'mes:wm-stock-taking-task:audit' AS perm) t
JOIN (SELECT MIN(x.parent_id) AS parent_id FROM system_menu x WHERE x.deleted = 0 AND x.permission = 'mes:wm-stock-taking-task:update') a ON 1 = 1
WHERE NOT EXISTS (SELECT 1 FROM (SELECT id FROM system_menu WHERE deleted = 0 AND permission = 'mes:wm-stock-taking-task:audit') m);
INSERT INTO system_menu (name, permission, type, sort, parent_id, path, icon, component, component_name, status, visible, keep_alive, always_show, creator, create_time, updater, update_time, deleted)
SELECT t.name, t.perm, 3, 99, a.parent_id, '', '', NULL, NULL, 0, b'1', b'1', b'1', '1', NOW(), '1', NOW(), b'0'
FROM (SELECT '设备入库单审核' AS name, 'mes:wm:equipment-receipt:audit' AS perm) t
JOIN (SELECT MIN(x.parent_id) AS parent_id FROM system_menu x WHERE x.deleted = 0 AND x.permission = 'mes:wm:equipment-receipt:update') a ON 1 = 1
WHERE NOT EXISTS (SELECT 1 FROM (SELECT id FROM system_menu WHERE deleted = 0 AND permission = 'mes:wm:equipment-receipt:audit') m);
INSERT INTO system_menu (name, permission, type, sort, parent_id, path, icon, component, component_name, status, visible, keep_alive, always_show, creator, create_time, updater, update_time, deleted)
SELECT t.name, t.perm, 3, 99, a.parent_id, '', '', NULL, NULL, 0, b'1', b'1', b'1', '1', NOW(), '1', NOW(), b'0'
FROM (SELECT '杂项入库单审核' AS name, 'mes:wm:misc-receipt:audit' AS perm) t
JOIN (SELECT MIN(x.parent_id) AS parent_id FROM system_menu x WHERE x.deleted = 0 AND x.permission = 'mes:wm:misc-receipt:update') a ON 1 = 1
WHERE NOT EXISTS (SELECT 1 FROM (SELECT id FROM system_menu WHERE deleted = 0 AND permission = 'mes:wm:misc-receipt:audit') m);
-- ============================================================================
-- ç¬¬ä¸‰éƒ¨åˆ†ï¼šç”µåŠ›ä½œä¸šè®¡åˆ’ç”Ÿæˆå·¥å• â€”— å·¥å•编码取号规则(无变更,仅说明)
--   fix(mes) ä½¿ç”¨ PRO_WORK_ORDER_CODE ç¼–码规则自动生成工单编码。
--   è¯¥è§„则(WO_ + yyyyMMdd + 4 ä½å¾ªçŽ¯æµæ°´å·ï¼Œè§„åˆ™ç»„æˆ 3 æ®µï¼‰åœ¨
--   mes_md_auto_code_rule / mes_md_auto_code_part ä¸­å·²å­˜åœ¨ï¼Œæ— éœ€æ‰§è¡Œ SQL。
--   å…¨æ–°çŽ¯å¢ƒè¯·æ‰§è¡Œ sql/mysql/mes_auto_code_rule_init.sql åˆå§‹åŒ–全部编码规则
--   ï¼ˆæ³¨æ„ï¼šè¯¥è„šæœ¬ä¼š TRUNC å¼é‡å»ºè§„则表,仅适用于首次初始化,勿在已有数据的环境执行)。
-- ============================================================================
-- å®Œæˆã€‚可执行以下语句校验:
-- SELECT table_name, column_name FROM information_schema.columns
--  WHERE table_schema = DATABASE() AND column_name = 'reviewer_id';
-- SELECT permission FROM system_menu WHERE deleted = 0 AND permission LIKE '%:audit';