初始代码

This commit is contained in:
hhh
2026-04-02 10:38:23 +08:00
parent d8b4140f50
commit aed67ce1fd
1937 changed files with 447678 additions and 1 deletions

View File

@@ -0,0 +1,126 @@
-- =====================================================
-- 计划类型字段修改 v1.6.038
-- 作者: 周启威
-- 日期: 2026-02-05
-- 说明: 修改计划类型字段的标签和选项值
-- 来源类型 → 计划类型
-- 销售计划 → 库存生产计划(MTS)
-- 生产订单 → 订单生产计划(MTO)
-- =====================================================
-- -----------------------------------------------------
-- 1. 更新字段注释
-- -----------------------------------------------------
-- 更新pro_plan表的plan_source_type字段注释
ALTER TABLE `pro_plan`
MODIFY COLUMN `plan_source_type` varchar(50) DEFAULT NULL
COMMENT '计划类型MTS=库存生产计划(Make to Stock), MTO=订单生产计划(Make to Order)';
-- -----------------------------------------------------
-- 2. 更新字典类型
-- -----------------------------------------------------
-- 检查并更新字典类型名称
UPDATE sys_dict_type
SET dict_name = '计划类型',
remark = '生产计划类型列表MTS=库存生产计划, MTO=订单生产计划'
WHERE dict_type = 'pro_plan_source_type';
-- 如果字典类型不存在,则创建
INSERT INTO sys_dict_type (dict_name, dict_type, status, create_by, create_time, remark)
SELECT '计划类型', 'pro_plan_source_type', '0', 'admin', NOW(),
'生产计划类型列表MTS=库存生产计划, MTO=订单生产计划'
WHERE NOT EXISTS (
SELECT 1 FROM sys_dict_type WHERE dict_type = 'pro_plan_source_type'
);
-- -----------------------------------------------------
-- 3. 更新字典数据
-- -----------------------------------------------------
-- 删除旧的字典数据(如果存在)
DELETE FROM sys_dict_data
WHERE dict_type = 'pro_plan_source_type'
AND dict_value IN ('order', 'plan');
-- 插入新的字典数据MTS=库存生产计划(原来的销售计划)
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)
SELECT 1, '库存生产计划', 'MTS', 'pro_plan_source_type', '', 'success', 'Y', '0', 'admin', NOW(),
'Make to Stock - 根据库存需求生成的生产计划(原销售计划)'
WHERE NOT EXISTS (
SELECT 1 FROM sys_dict_data WHERE dict_type = 'pro_plan_source_type' AND dict_value = 'MTS'
);
-- 插入新的字典数据MTO=订单生产计划(原来的生产订单)
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)
SELECT 2, '订单生产计划', 'MTO', 'pro_plan_source_type', '', 'primary', 'N', '0', 'admin', NOW(),
'Make to Order - 根据销售订单生成的生产计划(原生产订单)'
WHERE NOT EXISTS (
SELECT 1 FROM sys_dict_data WHERE dict_type = 'pro_plan_source_type' AND dict_value = 'MTO'
);
-- -----------------------------------------------------
-- 4. 数据迁移(可选)
-- -----------------------------------------------------
-- 如果需要迁移旧数据,取消下面的注释
-- 将旧的 'plan' 值更新为 'MTS'(销售计划 → 库存生产计划)
UPDATE pro_plan SET plan_source_type = 'MTS' WHERE plan_source_type = 'plan';
-- 将旧的 'order' 值更新为 'MTO'(生产订单 → 订单生产计划)
UPDATE pro_plan SET plan_source_type = 'MTO' WHERE plan_source_type = 'order';
-- -----------------------------------------------------
-- 5. 验证
-- -----------------------------------------------------
-- 查看字典类型
SELECT dict_name, dict_type, remark
FROM sys_dict_type
WHERE dict_type = 'pro_plan_source_type';
-- 查看字典数据
SELECT dict_value, dict_label, dict_sort, status, remark
FROM sys_dict_data
WHERE dict_type = 'pro_plan_source_type'
ORDER BY dict_sort;
-- 查看字段注释
SELECT column_name, column_type, column_comment
FROM information_schema.columns
WHERE table_schema = DATABASE()
AND table_name = 'pro_plan'
AND column_name = 'plan_source_type';
-- 查看现有数据分布
SELECT
plan_source_type,
COUNT(*) as count,
CASE plan_source_type
WHEN 'plan' THEN '旧值销售计划需迁移为MTS'
WHEN 'order' THEN '旧值生产订单需迁移为MTO'
WHEN 'MTS' THEN '新值:库存生产计划'
WHEN 'MTO' THEN '新值:订单生产计划'
ELSE '未知值'
END as description
FROM pro_plan
GROUP BY plan_source_type;
-- 修改生产计划表的plan_source_id字段支持多个ID逗号分隔
-- 从 bigint 改为 varchar以支持多个订单ID
ALTER TABLE `pro_plan` MODIFY COLUMN `plan_source_id` varchar(255) DEFAULT NULL COMMENT '来源ID支持多个逗号分隔';
-- -----------------------------------------------------
-- 说明
-- -----------------------------------------------------
-- 修改内容:
-- 1. 字段标签:来源类型 → 计划类型
-- 2. 选项值和标签:
-- - MTS (Make to Stock) = 库存生产计划(原来的 plan=销售计划)
-- - MTO (Make to Order) = 订单生产计划(原来的 order=生产订单)
--
-- 注意:
-- - 旧数据不会自动迁移如需迁移请取消第4部分的注释
-- - 新创建的计划将使用新的字典值MTS/MTO
-- - 执行后需要重启应用以刷新字典缓存