feat(wms): 添加钢卷变更日志功能

- 新增钢卷变更日志的Service接口及实现类
- 创建钢卷变更日志的业务对象BO和视图对象VO
- 实现钢卷变更日志的控制器提供CRUD操作接口
- 添加钢卷变更日志的数据库映射和表结构定义
- 开发钢卷变更日志注解和AOP切面自动记录变更
- 定义钢卷变更类型的枚举类支持多种变更场景
- 在钢卷相关业务方法中集成变更日志记录功能
- 创建钢卷变更日志的数据表SQL脚本文件
This commit is contained in:
2026-07-11 13:36:04 +08:00
parent 59dfa4f2b8
commit ed08134191
15 changed files with 962 additions and 0 deletions

View File

@@ -0,0 +1,25 @@
-- wms_material_coil_change_log: 钢卷变更日志表
-- 记录 wms_material_coil 的所有修改操作(普通修改 + 加工变换),用于追溯变更链
DROP TABLE IF EXISTS `wms_coil_change_log`;
CREATE TABLE `wms_coil_change_log` (
`log_id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`change_type` VARCHAR(32) DEFAULT NULL COMMENT '变更类型: UPDATE/INSERT/PROCESS/SPLIT/MERGE/DELETE/ROLLBACK/EXPORT/QUALITY_CHANGE',
`old_coil_id` BIGINT DEFAULT NULL COMMENT '变更前钢卷ID',
`new_coil_id` BIGINT DEFAULT NULL COMMENT '变更后钢卷ID纯删除时为NULL',
`old_coil_no` VARCHAR(64) DEFAULT NULL COMMENT '变更前钢卷号(冗余,方便查看)',
`new_coil_no` VARCHAR(64) DEFAULT NULL COMMENT '变更后钢卷号',
`changed_fields` TEXT COMMENT '变更字段差异 JSON: {"fieldName":{"old":"旧值","new":"新值"},...}',
`operation_desc` VARCHAR(255) DEFAULT NULL COMMENT '操作描述',
`create_by` VARCHAR(64) DEFAULT NULL COMMENT '操作人',
`create_time` DATETIME DEFAULT NULL COMMENT '操作时间',
`update_by` VARCHAR(64) DEFAULT NULL COMMENT '更新者',
`update_time` DATETIME DEFAULT NULL COMMENT '更新时间',
`del_flag` INT DEFAULT 0 COMMENT '删除标志0=正常1=已删除)',
remark VARCHAR(255) NULL COMMENT '备注',
PRIMARY KEY (`log_id`),
INDEX `idx_old_coil_id` (`old_coil_id`),
INDEX `idx_new_coil_id` (`new_coil_id`),
INDEX `idx_change_type` (`change_type`),
INDEX `idx_create_time` (`create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='钢卷变更日志表';