分支
用户 xiaoyi <908147524@qq.com>
星期六, 十一月 7, 2026 01:21 +0800
提交者 xiaoyi <908147524@qq.com>
星期六, 十一月 7, 2026 01:21 +0800
提交bc31cda78817c62aa552be40f39eccaa03262923
目录 058e2e33125bbb2a8f04e34fba1404c4cb9c812c 目录 | zip | gz
上一版本 b5e1bceabb36fe1d1e5e88397280d12e7044c6dd 查看 | 对比
feat: 补齐排产约束与缺料校验,新增风险监测,优化隐患通知与招投标联动

## 问题
按需求验收计划逐项测试后确认以下缺口:
1. 需求13 排产数据:工单缺排产优先级与内外销分类,物料缺外协提前期
2. 需求14 自动排产:排产时未校验物料齐套性,可能生成无法执行的计划
3. 需求20 隐患整改:分派强制责任人有系统账号,未绑定员工的现场场景受阻
4. 需求21 风险监测:缺少基于设备采集数据的风险阈值监测
5. 需求22 询报比价:招投标状态流转与中标后续处理不完整

## 修复
### 需求13 排产数据
- MesProWorkOrderDO 新增 schedulePriority(0-100)、marketType(DOMESTIC/EXPORT)
- MdmItemDO 新增 outsourceLeadTime(外协提前期,天)
- 新增 MesSchedulePriority 统一优先级排序规则
- Save/Resp VO 同步补字段并校验

### 需求14 自动排产
- 新增 MesScheduleMaterialCheck:按工单 BOM 展开物料,汇总库存,缺料阻断排产
- MesProBatchScheduleService 接入齐套性校验

### 需求20 隐患整改
- SafetyHazardAssignReqVO 新增 notifyUserId
- 责任人未绑定账号时允许指定通知账号;已绑定时强制一致,避免通知错人

### 需求21 风险监测
- 新增 SafetyRiskSourceController/Service/DO/Mapper:风险源维护
- 新增 SafetyRiskThreshold:基于设备采集值(电流、转速等)的阈值判定
- 复用现有数采数据,不引入新外部接口

### 需求22 询报比价
- SrmTenderProjectServiceImpl / SrmBidAwardServiceImpl 完善比价与中标流转

## 其他
- MesWmItemReceiptStatusListener:采购入库状态联动
- .gitignore:/docs/ 改为 /docs/* 并放行 docs/sql 迁移脚本
(/docs/ 会让 git 不进入目录,目录内例外规则无法生效)

## 验证
mvn compile EXIT=0,编译通过。功能验证待本地启动后按验收计划复测。
已添加27个文件
已修改14个文件
1082 ■■■■■ 文件已修改
.gitignore 6 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mdm/src/main/java/cn/iocoder/yudao/module/mdm/controller/admin/item/vo/MdmItemRespVO.java 8 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mdm/src/main/java/cn/iocoder/yudao/module/mdm/controller/admin/item/vo/MdmItemSaveReqVO.java 10 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mdm/src/main/java/cn/iocoder/yudao/module/mdm/dal/dataobject/item/MdmItemDO.java 5 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/workorder/vo/MesProWorkOrderRespVO.java 6 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/workorder/vo/MesProWorkOrderSaveReqVO.java 9 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/safety/SafetyRiskSourceController.java 24 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/safety/vo/hazard/SafetyHazardAssignReqVO.java 3 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/safety/vo/risk/SafetyRiskSourceSaveReqVO.java 17 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/pro/workorder/MesProWorkOrderDO.java 6 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/safety/SafetyRiskSourceDO.java 24 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/safety/SafetyRiskSourceMapper.java 5 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/SafetyErrorCodeConstants.java 2 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/task/schedule/MesProBatchScheduleService.java 59 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/task/schedule/MesScheduleMaterialCheck.java 24 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/task/schedule/MesSchedulePriority.java 13 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/safety/SafetyHazardService.java 10 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/safety/SafetyRiskSourceService.java 34 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/safety/SafetyRiskThreshold.java 10 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/itemreceipt/listener/MesWmItemReceiptStatusListener.java 7 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/test/java/cn/iocoder/yudao/module/mes/api/returnsales/AfterSaleReturnSourceTest.java 19 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/test/java/cn/iocoder/yudao/module/mes/service/collect/CollectOfflinePolicyTest.java 36 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/test/java/cn/iocoder/yudao/module/mes/service/pd/knowledge/KnowledgeMatchTest.java 37 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/test/java/cn/iocoder/yudao/module/mes/service/pd/knowledge/KnowledgeSearchServiceTest.java 86 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/test/java/cn/iocoder/yudao/module/mes/service/pd/knowledge/KnowledgeWriteServiceTest.java 90 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/test/java/cn/iocoder/yudao/module/mes/service/pro/task/schedule/MesScheduleMaterialCheckTest.java 23 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/test/java/cn/iocoder/yudao/module/mes/service/pro/task/schedule/MesSchedulePriorityTest.java 15 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/test/java/cn/iocoder/yudao/module/mes/service/safety/SafetyDocumentPolicyTest.java 12 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/test/java/cn/iocoder/yudao/module/mes/service/safety/SafetyHazardNoticeTest.java 100 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/test/java/cn/iocoder/yudao/module/mes/service/safety/SafetyRiskSourceServiceTest.java 28 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/test/java/cn/iocoder/yudao/module/mes/service/safety/SafetyRiskThresholdTest.java 18 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/test/java/cn/iocoder/yudao/module/mes/service/wm/itemreceipt/MesWmItemReceiptStatusListenerTest.java 35 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/test/java/cn/iocoder/yudao/module/mes/service/wm/returnsales/MesReturnInboundAfterSaleTest.java 63 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/test/java/cn/iocoder/yudao/module/mes/service/wm/returnsales/MesReturnQualityAfterSaleTest.java 74 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-mes/src/test/java/cn/iocoder/yudao/module/mes/service/wm/salesnotice/SalesNoticeOrderGuardTest.java 23 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-srm/src/main/java/cn/iocoder/yudao/module/srm/service/tender/SrmBidAwardServiceImpl.java 9 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-srm/src/main/java/cn/iocoder/yudao/module/srm/service/tender/SrmPurchaseQuoteValidator.java 31 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-srm/src/main/java/cn/iocoder/yudao/module/srm/service/tender/SrmTenderProjectServiceImpl.java 9 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-srm/src/test/java/cn/iocoder/yudao/module/srm/service/tender/SrmPurchaseQuoteValidationTest.java 22 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-srm/src/test/java/cn/iocoder/yudao/module/srm/service/tender/SrmQuoteOwnershipTest.java 49 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史
yudao-module-srm/src/test/java/cn/iocoder/yudao/module/srm/service/tender/SrmTenderConfigServiceTest.java 21 ●●●●● 对比 | 查看 | 原始文档 | blame | 历史