feat: 新增质量评审流程全量功能

- 新增质量评审相关的实体、Mapper、Service、Controller接口与实现
- 新增前端页面与API接口,支持评审单增删改查、提交送审、审批驳回、改判执行
- 新增数据库初始化脚本与字典数据
- 修复vue.config热加载监视系统文件导致的EBUSY错误
- 清理HRM模块API导出注释
This commit is contained in:
王文昊
2026-06-30 17:58:21 +08:00
parent c997a4a1a0
commit 450fca0c45
25 changed files with 2816 additions and 1 deletions

View File

@@ -0,0 +1,105 @@
-- ------------------------------------------------------------
-- 质量评审流程 - 异常产品评审审批单
-- V15__qc_quality_review.sql
-- ------------------------------------------------------------
-- 1. 字典类型
INSERT INTO `sys_dict_type` VALUES (NULL, '质量评审状态', 'quality_review_status', '0', 'admin', NOW(), '', NULL, '质量评审单流程状态');
INSERT INTO `sys_dict_type` VALUES (NULL, '改判后质量状态', 'regrade_quality_type', '0', 'admin', NOW(), '', NULL, '领导审批时指定的改判结果');
-- 2. 字典数据 - 质量评审状态
INSERT INTO `sys_dict_data` VALUES (NULL, 1, '待提交', '1', 'quality_review_status', '', 'info', 'Y', '0', 'admin', NOW(), '', NULL, '');
INSERT INTO `sys_dict_data` VALUES (NULL, 2, '待审批', '2', 'quality_review_status', '', 'warning', 'Y', '0', 'admin', NOW(), '', NULL, '');
INSERT INTO `sys_dict_data` VALUES (NULL, 3, '已通过', '3', 'quality_review_status', '', 'success', 'Y', '0', 'admin', NOW(), '', NULL, '');
INSERT INTO `sys_dict_data` VALUES (NULL, 4, '已驳回', '4', 'quality_review_status', '', 'danger', 'Y', '0', 'admin', NOW(), '', NULL, '');
-- 3. 字典数据 - 改判后质量状态
INSERT INTO `sys_dict_data` VALUES (NULL, 1, '协议销售', 'protocol_sale', 'regrade_quality_type', '', '', 'Y', '0', 'admin', NOW(), '', NULL, '');
INSERT INTO `sys_dict_data` VALUES (NULL, 2, '转分剪', 'to_slitting', 'regrade_quality_type', '', '', 'Y', '0', 'admin', NOW(), '', NULL, '');
INSERT INTO `sys_dict_data` VALUES (NULL, 3, '降级', 'downgrade', 'regrade_quality_type', '', '', 'Y', '0', 'admin', NOW(), '', NULL, '');
INSERT INTO `sys_dict_data` VALUES (NULL, 4, '返修', 'rework', 'regrade_quality_type', '', '', 'Y', '0', 'admin', NOW(), '', NULL, '');
INSERT INTO `sys_dict_data` VALUES (NULL, 5, '报废', 'scrap', 'regrade_quality_type', '', '', 'Y', '0', 'admin', NOW(), '', NULL, '');
-- 4. 质量评审主表
CREATE TABLE `qc_quality_review` (
`review_id` bigint NOT NULL AUTO_INCREMENT COMMENT '评审单主键',
`review_no` varchar(50) NOT NULL COMMENT '评审单编号QR-2026-XXXX',
`product_name` varchar(100) DEFAULT NULL COMMENT '产品名称',
`transmit_dept` varchar(50) DEFAULT '品质部' COMMENT '传递部门',
`transmit_user` varchar(50) DEFAULT NULL COMMENT '传递人',
`transmit_date` date DEFAULT NULL COMMENT '传递日期',
`prod_date_range` varchar(50) DEFAULT NULL COMMENT '生产日期范围',
-- 流程状态
`flow_status` tinyint(1) DEFAULT '1' COMMENT '流程状态1=待提交 2=待审批 3=已通过 4=已驳回',
-- 品质部评审
`dept_opinion` text COMMENT '品质部评审意见',
`dept_sign` varchar(50) DEFAULT NULL COMMENT '品质部签字人',
`dept_sign_date` date DEFAULT NULL COMMENT '品质部签字日期',
-- 领导审批
`leader_opinion` text COMMENT '领导审批意见',
`leader_sign` varchar(50) DEFAULT NULL COMMENT '领导签字人',
`leader_sign_date` date DEFAULT NULL COMMENT '领导签字日期',
`reject_reason` varchar(500) DEFAULT NULL COMMENT '驳回原因',
-- 公共基础字段
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
`del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标志0=正常1=已删除)',
`create_by` varchar(50) DEFAULT '' COMMENT '创建人',
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_by` varchar(50) DEFAULT '' COMMENT '更新人',
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`review_id`) USING BTREE,
UNIQUE KEY `uk_review_no` (`review_no`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='质量评审单';
-- 5. 质量评审钢卷明细表
CREATE TABLE `qc_quality_review_coil` (
`detail_id` bigint NOT NULL AUTO_INCREMENT COMMENT '明细主键',
`review_id` bigint NOT NULL COMMENT '关联评审单ID',
-- 钢卷分组信息
`group_seq` int DEFAULT NULL COMMENT '序号1,2,3...',
`group_remark` varchar(200) DEFAULT NULL COMMENT '组备注(如"含3个钢卷"',
-- 钢卷信息
`coil_id` bigint DEFAULT NULL COMMENT '钢卷ID关联wms_material_coil',
`current_coil_no` varchar(50) DEFAULT NULL COMMENT '产品卷号',
`supplier_coil_no` varchar(50) DEFAULT NULL COMMENT '原料卷号',
`spec` varchar(50) DEFAULT NULL COMMENT '规格如1.35×1250',
`net_weight` decimal(10,3) DEFAULT NULL COMMENT '卷重(t)',
-- 缺陷与改判
`defect_desc` text COMMENT '缺陷描述',
`before_quality` varchar(20) DEFAULT NULL COMMENT '改判前质量等级(系统自动带出)',
`regrade_quality` varchar(50) DEFAULT NULL COMMENT '改判后质量状态字典regrade_quality_type',
`execute_status` tinyint(1) DEFAULT '0' COMMENT '执行状态0=待执行 1=已执行',
`execute_time` datetime DEFAULT NULL COMMENT '执行时间',
-- 公共基础字段
`remark` varchar(500) DEFAULT NULL,
`del_flag` tinyint(1) DEFAULT '0',
`create_by` varchar(50) DEFAULT '',
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
`update_by` varchar(50) DEFAULT '',
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`detail_id`) USING BTREE,
KEY `idx_review_id` (`review_id`) USING BTREE,
KEY `idx_coil_id` (`coil_id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='质量评审钢卷明细';
-- 6. 质量评审审批日志表
CREATE TABLE `qc_quality_review_log` (
`log_id` bigint NOT NULL AUTO_INCREMENT COMMENT '日志主键',
`review_id` bigint NOT NULL COMMENT '关联评审单ID',
`action` varchar(20) NOT NULL COMMENT '动作submit=提交 approve=通过 reject=驳回',
`operator` varchar(50) DEFAULT NULL COMMENT '操作人',
`opinion` text COMMENT '审批意见',
`operate_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '操作时间',
`create_by` varchar(50) DEFAULT '',
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`log_id`) USING BTREE,
KEY `idx_review_id` (`review_id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='质量评审审批日志';