Files
MES/yawei-mes/.sql/2025-12-06_v1.0.38_周启威_生产计划优化.sql
2026-04-02 10:39:03 +08:00

48 lines
3.0 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

-- 1. 增加周/月计划相关字段
ALTER TABLE pro_plan
ADD COLUMN schedule_cycle VARCHAR(10) DEFAULT NULL COMMENT '计划周期: week=周计划, month=月计划' AFTER plan_type,
ADD COLUMN plan_year INT DEFAULT NULL COMMENT '计划年份' AFTER schedule_cycle,
ADD COLUMN week_number INT DEFAULT NULL COMMENT '周号(1-53)' AFTER plan_year,
ADD COLUMN month_number INT DEFAULT NULL COMMENT '月份(1-12)' AFTER week_number,
ADD COLUMN total_quantity DECIMAL(18,2) DEFAULT 0 COMMENT '计划总产量' AFTER month_number,
ADD COLUMN completed_quantity DECIMAL(18,2) DEFAULT 0 COMMENT '已完成产量' AFTER total_quantity;
-- 2. 增加索引
ALTER TABLE pro_plan
ADD INDEX idx_schedule_cycle (schedule_cycle),
ADD INDEX idx_year_week (plan_year, week_number),
ADD INDEX idx_year_month (plan_year, month_number);
-- 3. 增加计划周期字典数据
INSERT INTO sys_dict_type (dict_name, dict_type, status, create_by, create_time, remark)
VALUES ('计划周期', 'pro_schedule_cycle', '0', 'admin', NOW(), '生产计划周期类型');
INSERT INTO sys_dict_data (dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, status, create_by, create_time, remark)
VALUES
(1, '周计划', 'week', 'pro_schedule_cycle', '', 'primary', 'N', '0', 'admin', NOW(), '按周制定的生产计划'),
(2, '月计划', 'month', 'pro_schedule_cycle', '', 'success', 'N', '0', 'admin', NOW(), '按月制定的生产计划');
-- 4. 更新计划类型字典,增加"生产计划"类型
INSERT INTO sys_dict_data (dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, status, create_by, create_time, remark)
VALUES (8, '生产计划', 'production', 'pro_plan_type', '', 'warning', 'N', '0', 'admin', NOW(), '周/月生产计划');
-- 5. 新增"周/月计划"菜单 (parent_id=2049 为"计划表"菜单)
INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, query, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, remark)
VALUES ('周/月产量计划', 2049, 2, 'schedule', 'mes/production/plan/schedule', NULL, 1, 0, 'C', '0', '0', 'production:plan:list', '#', 'admin', NOW(), '生产计划周/月视图');
-- 6. 增加产品关联字段(用于动态计算进度)
ALTER TABLE pro_plan
ADD COLUMN material_id BIGINT DEFAULT NULL COMMENT '产品ID' AFTER completed_quantity,
ADD COLUMN material_name VARCHAR(200) DEFAULT NULL COMMENT '产品名称' AFTER material_id;
-- 7. 在 pro_plan 表中添加负责人员字段
ALTER TABLE pro_plan ADD COLUMN assigned_user_ids VARCHAR(500) COMMENT '负责人员多个用逗号分隔存储用户ID';
-- 8. 增加计划时间范围字段
ALTER TABLE pro_plan
ADD COLUMN start_time DATETIME DEFAULT NULL COMMENT '计划开始时间' AFTER assigned_user_ids,
ADD COLUMN end_time DATETIME DEFAULT NULL COMMENT '计划结束时间' AFTER start_time;
-- 9. 添加时间范围索引以优化查询性能
ALTER TABLE pro_plan
ADD INDEX idx_time_range (start_time, end_time);