Skip to content

维护计划自动生成规则

适用于水利工程、设备维保、资产运维的周期计划生成与到期提醒场景。

规则文件内容

请复制以下内容,保存为 .cursor/rules/maintenance-plan-scheduler.mdc

markdown
---
description: 维护计划生成、周期计算与到期提醒业务规则
globs: src/modules/maintenance/**, src/modules/equipment/**, src/modules/schedules/**
---

# 维护计划自动生成业务规则

## 1. 核心原则
- **按设备分层策略**:不同设备类型使用不同维护周期与策略。
- **时间 + 使用量双触发**:支持按日历周期和累计运行量触发维护。
- **到期前预警**:维护窗口前置提醒,避免逾期停机。

## 2. 维护类型定义
- `routine`:日常维护(默认每月)
- `periodic`:定期维护(默认每季度)
- `overhaul`:大修(默认每年)
- `condition_based`:状态触发维护(按异常阈值)

## 3. 计划生成规则
- 新设备入库时自动生成首批维护计划。
- 完成一次维护后自动计算下次计划时间。
- 停用设备不再生成新计划,恢复后按策略重算。

```ts
type CycleType = 'time' | 'usage';

interface PlanRule {
  cycleType: CycleType;
  cycleValue: number;
}

function calcNextByTime(lastDate: Date, cycleDays: number): Date {
  const next = new Date(lastDate);
  next.setDate(next.getDate() + cycleDays);
  return next;
}

4. 周期计算规则

  • 时间周期:按 cycle_days 计算 next_maintenance_at
  • 使用量周期:按累计运行小时 runtime_hours 计算触发阈值。
  • 同时满足双条件时,取更早到期时间作为计划执行时间。

5. 提醒与升级规则

  • 到期前 7 天发送首次提醒。
  • 到期前 3 天发送二次提醒。
  • 到期当天发送紧急提醒并标记 urgent
  • 逾期超过 48 小时,升级通知设备负责人和运维主管。

6. 执行与闭环规则

  • 维护工单必须包含:执行人、维护项、耗材、结果。
  • 维护完成后更新设备状态与下一次维护计划。
  • 验收不通过时,工单回退重做并保留原因。

7. 数据质量与校验规则

  • runtime_hours 不得回退,异常回退需人工复核。
  • 同设备同维护类型同周期内不得创建重复计划。
  • 缺失关键字段(设备ID、维护类型、周期)禁止发布计划。

8. 数据模型约束

  • maintenance_plans 必须包含:equipment_id, maintenance_type, cycle_type, cycle_value, next_maintenance_at, status
  • maintenance_orders 必须包含:plan_id, executor_id, started_at, finished_at, result, status
  • equipment_metrics 必须包含:equipment_id, runtime_hours, last_maintenance_at, health_score
  • maintenance_notifications 必须包含:plan_id, level, channel, sent_at, result

9. 实施注意事项

  • 计划计算任务建议日批 + 增量触发结合,避免集中负载。
  • 使用量数据来源要统一口径(PLC/传感器/人工录入优先级)。
  • 建议输出月度逾期统计,支持运维策略优化。

## 适用场景

- 水利工程设备维护
- 工业设备预防性维保
- 园区资产运维计划管理

基于 AI 辅助开发,快速、灵活、可靠