+ 图事件流来讲清楚。一、预警的本体设计思路)
我们聚焦到“差异自动预警”这一环把上一轮的AssetDiff节点从“生成”推进到“实时告警分级推送”用本体规则公理 图事件流来讲清楚。一、预警的本体设计思路传统预警写个定时SQL扫FA_DISTRIBUTION_HISTORY找“账面位置≠盘点位置”阈值写死只能出清单。本体预警差异一落图就触发规则推理给差异打“等级/责任/时效/建议动作”标签再沿关系边推给责任人。核心新增在AssetDiff上挂 3 类属性 2 类推理边AssetDiff { diffType: STATUS_MISMATCH | COMPONENT_MISSING | GHOST(有账无物) | SURPLUS(有物无账) | LOC_SHIFT severity: L1(提示) / L2(预警) / L3(红牌) slaHours: 要求闭环时限 alertStatus: OPEN / ACK / RESOLVED } AssetDiff ─alertTo→ Custodian / CostCenterManager / FA_Controller AssetDiff ─escalatesTo→ EscalationRule(超时未ACK→升一级)二、预警规则本体公理用类SWRL口吻写用“IF … THEN …”表达实际落地可转成图规则引擎Gremlin/SPARQL触发 / 规则表# R1 状态错配 IF AssetDiff.diffType STATUS_MISMATCH AND Asset.ObservedState ∈ {待报废, 停机闲置} AND Asset.status CAPITALIZED THEN severityL2, slaHours48, 建议发起减值报废预审 # R2 子件缺失 IF diffType COMPONENT_MISSING AND Asset.hasComponent 存在 THEN severityL2, 建议查最近维修工单无工单→子件盘亏 # R3 有账无物盘亏嫌疑 IF StocktakeLine 无关联PhysicalScan 且 超时3天 THEN severityL3, slaHours24, 建议现场复核责任追溯 # R4 有物无账盘盈 IF PhysicalScan 命中 无Asset节点 THEN severityL2, 建议建盘盈候选→Addition预审 # R5 位置漂移 IF recordedAt(CC) ≠ physicallyAt(车间) 跨车间 THEN severityL1, 建议补调拨单 # R6 超时升级 IF AssetDiff.alertStatusOPEN AND now - createTime slaHours THEN escalatesTo(上级角色), 重发告警(企微/邮件) # R7 净值敏感 IF diffType∈{STATUS_MISMATCH,GHOST} AND AssetBook.netValue 50万 THEN severity 强制升一级 (L2→L3)三、还是 CNC-2024-008走一遍预警触发盘点落图瞬间2026-06-30 09:12 扫码生成AssetDiff{ diffType:[STATUS_MISMATCH, COMPONENT_MISSING], bookNetValue:1021000 }规则引擎推理链R1命中 → L2, sla48h R2命中 → L2 R7命中(净值102.1万50万) → 强制 L2→L3 → 最终L3红牌sla24h沿边推送不是群发是图寻路AssetDiff → alertTo → Custodian(E1023 张工) // 第一责任人 → alertTo → CostCenterManager(CC-205经理) → alertTo → FA_Controller(集团资产会计) 消息体 “【L3】CNC-2024-008 账在用/实待报废主轴缺失净值102.1万 24h内完成减值预审子件核销确认逾期自动升级至财务总监”超时模拟时间动作T0 09:12生成L3推张工T24h 未ACKR6触发 → 升级CC-205经理FA总监重发T48h 仍未处理升级至财务总监 写入“盘点异常待办榜”审批闭环AssetDiff.alertStatusRESOLVED边留痕四、预警看板本体可支撑的视图视图图遍历我的待办告警Custodian(我) ←alertTo← AssetDiff[OPEN]红牌清单AssetDiff{severityL3, statusOPEN}某成本中心风险净值合计CC-205 → allocatedTo ← Asset ← AssetDiff(L3) → 汇总netValue超时升级榜AssetDiff WHERE now-createslaHours谁总被预警Custodian ←alertTo 计数排序传统SQL也能算但“跨车间漂移净值敏感超时升级”这种复合规则组合本体规则引擎改规则比改SQL快得多。五、和“事件驱动”怎么接落地架构一句话PDA扫码 → PhysicalScan事件 → 落图库(Neo4j/图引擎) → 规则引擎匹配R1~R7 → 打标AssetDiff → 消息总线(企微/钉钉/邮件)按alertTo边寻路推送 → 审批流回写AssetTransaction → 关闭Diff关键点预警不是“跑批算出来”是“差异节点落图即推理即推送”盘点当天就能红黄牌亮出来。六、一张“规则→等级→动作”速查表差异默认等级净值50万SLA闭环动作状态错配L2→L324h减值报废预审子件缺失L2不变48h查工单/盘亏有账无物L3L324h现场复核有物无账L2—48h盘盈建卡跨车间漂移L1—72h补调拨超时未ACK升一级—重推升级责任人一句话收束本体预警 把“差异节点”当成会自己推理的实体落图即分级、沿关系边找责任人、超时自动升级让资产盘点从“事后对账”变成“当场红黄牌”。