Merge branch 'main' into 生产基础资料

This commit is contained in:
2026-05-15 17:21:36 +08:00
2550 changed files with 63705 additions and 498 deletions

View File

@@ -10,7 +10,7 @@ CREATE TABLE IF NOT EXISTS `mes_mixer_material` (
`minor_category_id` varchar(32) DEFAULT NULL COMMENT '物料小类',
`material_desc` varchar(500) DEFAULT NULL COMMENT '物料描述',
`alias_name` varchar(200) DEFAULT NULL COMMENT '物料别名',
`feed_manage_status` int DEFAULT NULL COMMENT '状态1在投管 0未投管',
`feed_manage_status` int DEFAULT NULL COMMENT '状态1在投管 0未投管',
`use_status` int DEFAULT NULL COMMENT '使用状态1使用中 0停用',
`specific_gravity` decimal(18,6) DEFAULT NULL COMMENT '比重',
`shelf_life_days` int DEFAULT NULL COMMENT '保质期()',

View File

@@ -0,0 +1,28 @@
-- 升级脚本仅为缺失的列执行 ADD可重复执行不会因列已存在报错
-- 适用旧库 mes_xsl_biz_entity_field_detail 缺少 detail_property_name / detail_slot_kind
SET NAMES utf8mb4;
SELECT COUNT(*) INTO @jeecg_chk_dpn FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = DATABASE()
AND TABLE_NAME = 'mes_xsl_biz_entity_field_detail'
AND COLUMN_NAME = 'detail_property_name';
SET @jeecg_sql_dpn := IF(@jeecg_chk_dpn = 0,
'ALTER TABLE mes_xsl_biz_entity_field_detail ADD COLUMN detail_property_name varchar(128) DEFAULT NULL COMMENT ''主实体明细属性名与打印绑定 detailProperty 一致'' AFTER profile_id',
'SELECT ''detail_property_name 已存在跳过'' AS msg');
PREPARE jeecg_stmt_dpn FROM @jeecg_sql_dpn;
EXECUTE jeecg_stmt_dpn;
DEALLOCATE PREPARE jeecg_stmt_dpn;
SELECT COUNT(*) INTO @jeecg_chk_dsk FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = DATABASE()
AND TABLE_NAME = 'mes_xsl_biz_entity_field_detail'
AND COLUMN_NAME = 'detail_slot_kind';
SET @jeecg_sql_dsk := IF(@jeecg_chk_dsk = 0,
'ALTER TABLE mes_xsl_biz_entity_field_detail ADD COLUMN detail_slot_kind varchar(16) DEFAULT NULL COMMENT ''LIST OBJECT'' AFTER detail_property_name',
'SELECT ''detail_slot_kind 已存在跳过'' AS msg');
PREPARE jeecg_stmt_dsk FROM @jeecg_sql_dsk;
EXECUTE jeecg_stmt_dsk;
DEALLOCATE PREPARE jeecg_stmt_dsk;

View File

@@ -0,0 +1,38 @@
-- 业务实体字段配置主表 + 明细每条明细对应一类明细表及其字段列表
SET NAMES utf8mb4;
CREATE TABLE IF NOT EXISTS `mes_xsl_biz_entity_field_profile` (
`id` varchar(32) NOT NULL COMMENT '主键',
`business_name` varchar(200) NOT NULL COMMENT '业务名称',
`business_code` varchar(64) NOT NULL COMMENT '业务编码菜单 permission id与打印 biz_code 一致唯一',
`entity_class_name` varchar(512) DEFAULT NULL COMMENT '主实体 Java 全限定类名',
`main_fields_json` text COMMENT '主表实体字段列表JSON 数组元素可为字符串字段名或含 name/comment/javaType 的对象',
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
`tenant_id` int DEFAULT NULL COMMENT '租户ID',
`create_by` varchar(32) DEFAULT NULL COMMENT '创建人',
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
`update_by` varchar(32) DEFAULT NULL COMMENT '更新人',
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_mxbefp_bcode` (`business_code`),
KEY `idx_mxbefp_tenant` (`tenant_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='MES业务实体字段配置-主表';
CREATE TABLE IF NOT EXISTS `mes_xsl_biz_entity_field_detail` (
`id` varchar(32) NOT NULL COMMENT '主键',
`profile_id` varchar(32) NOT NULL COMMENT '主表ID',
`detail_property_name` varchar(128) DEFAULT NULL COMMENT '主实体明细属性名与打印绑定 detailProperty 一致',
`detail_slot_kind` varchar(16) DEFAULT NULL COMMENT 'LIST OBJECT',
`detail_name` varchar(200) DEFAULT NULL COMMENT '明细展示名称',
`detail_entity_class_name` varchar(512) DEFAULT NULL COMMENT '明细实体 Java 全限定类名',
`detail_fields_json` text COMMENT '明细表字段列表JSON 数组规则同 main_fields_json',
`sort_no` int DEFAULT NULL COMMENT '排序号',
`create_by` varchar(32) DEFAULT NULL COMMENT '创建人',
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
`update_by` varchar(32) DEFAULT NULL COMMENT '更新人',
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`),
KEY `idx_mxbefd_profile` (`profile_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='MES业务实体字段配置-明细表字段清单';
-- 旧表缺列时执行 db/mes-xsl-biz-entity-field-detail-alter-slot-columns.sql Flyway V3.9.2_55

View File

@@ -0,0 +1,98 @@
-- XSLMES 原材料车间剩余量菜单与权限
-- 说明
-- 1) 若已存在 /xslmes 父级菜单则复用该父级
-- 2) 若不存在则自动创建 XSLMES管理 一级菜单
-- 3) 默认授权 admin 角色role_id=f6817f48af4fb3af11b9e8bf182f618b
SET NAMES utf8mb4;
SET @xsl_parent_id = (
SELECT id
FROM sys_permission
WHERE url = '/xslmes' AND menu_type = 0
ORDER BY create_time ASC
LIMIT 1
);
SET @xsl_parent_id = IFNULL(@xsl_parent_id, '1860000000000099001');
-- 一级菜单XSLMES管理不存在时创建存在时更新为目录菜单格式
INSERT INTO sys_permission(
id, parent_id, name, url, component, component_name, menu_type, perms, perms_type, sort_no,
is_route, is_leaf, hidden, status, del_flag, always_show, keep_alive, internal_or_external, create_by, create_time
)
VALUES (
@xsl_parent_id, NULL, 'XSLMES管理', '/xslmes', 'layouts/RouteView', 'XslMesRoot', 0, NULL, '1', 80,
0, 0, 0, '1', 0, 1, 0, 0, 'admin', NOW()
)
ON DUPLICATE KEY UPDATE
name = VALUES(name),
url = VALUES(url),
component = VALUES(component),
component_name = VALUES(component_name),
menu_type = VALUES(menu_type),
perms = VALUES(perms),
perms_type = VALUES(perms_type),
sort_no = VALUES(sort_no),
is_route = VALUES(is_route),
is_leaf = VALUES(is_leaf),
hidden = VALUES(hidden),
status = VALUES(status),
del_flag = VALUES(del_flag),
always_show = VALUES(always_show),
keep_alive = VALUES(keep_alive),
internal_or_external = VALUES(internal_or_external);
-- 二级菜单原材料车间剩余量
INSERT INTO sys_permission(
id, parent_id, name, url, component, component_name, menu_type, perms, perms_type, sort_no,
is_route, is_leaf, hidden, status, del_flag, keep_alive, internal_or_external, create_by, create_time
)
VALUES (
'1860000000000099011', @xsl_parent_id, '原材料车间剩余量',
'/xslmes/mesXslRawMaterialWorkshopRemainList',
'xslmes/mesXslRawMaterialWorkshopRemain/MesXslRawMaterialWorkshopRemainList',
'MesXslRawMaterialWorkshopRemainList', 1, NULL, '1', 21,
1, 1, 0, '1', 0, 1, 0, 'admin', NOW()
)
ON DUPLICATE KEY UPDATE
parent_id = VALUES(parent_id),
name = VALUES(name),
url = VALUES(url),
component = VALUES(component),
component_name = VALUES(component_name),
menu_type = VALUES(menu_type),
perms = VALUES(perms),
perms_type = VALUES(perms_type),
sort_no = VALUES(sort_no),
is_route = VALUES(is_route),
is_leaf = VALUES(is_leaf),
hidden = VALUES(hidden),
status = VALUES(status),
del_flag = VALUES(del_flag),
keep_alive = VALUES(keep_alive),
internal_or_external = VALUES(internal_or_external);
-- 按钮权限
INSERT INTO sys_permission(id, parent_id, name, menu_type, perms, perms_type, status, del_flag, create_by, create_time) VALUES
('1860000000000099012', '1860000000000099011', '编辑', 2, 'xslmes:mes_xsl_raw_material_workshop_remain:edit', '1', '1', 0, 'admin', NOW()),
('1860000000000099013', '1860000000000099011', '导出', 2, 'xslmes:mes_xsl_raw_material_workshop_remain:exportXls', '1', '1', 0, 'admin', NOW())
ON DUPLICATE KEY UPDATE
parent_id = VALUES(parent_id),
name = VALUES(name),
menu_type = VALUES(menu_type),
perms = VALUES(perms),
perms_type = VALUES(perms_type),
status = VALUES(status),
del_flag = VALUES(del_flag);
-- admin 角色授权
INSERT INTO sys_role_permission(id, role_id, permission_id, operate_date, operate_ip)
SELECT REPLACE(UUID(), '-', ''), 'f6817f48af4fb3af11b9e8bf182f618b', p.id, NOW(), '127.0.0.1'
FROM sys_permission p
WHERE p.id IN ('1860000000000099011', '1860000000000099012', '1860000000000099013')
AND NOT EXISTS (
SELECT 1
FROM sys_role_permission rp
WHERE rp.role_id = 'f6817f48af4fb3af11b9e8bf182f618b'
AND rp.permission_id = p.id
);