Merge branch 'main' into 生产基础资料
This commit is contained in:
@@ -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 '保质期(天)',
|
||||
|
||||
@@ -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;
|
||||
38
jeecg-boot/db/mes-xsl-biz-entity-field-profile.sql
Normal file
38
jeecg-boot/db/mes-xsl-biz-entity-field-profile.sql
Normal 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)───
|
||||
98
jeecg-boot/db/mes-xsl-raw-material-workshop-remain-menu.sql
Normal file
98
jeecg-boot/db/mes-xsl-raw-material-workshop-remain-menu.sql
Normal 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
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user