Skip to content

Preventive Maintenance

The Preventive Maintenance module (roots_hemms_pm) wraps OCA's maintenance_plan engine with hospital-specific configuration:

  • 3 seeded maintenance kinds for common hospital PM categories
  • A dedicated "PM Scheduled" stage that PM-generated requests enter on creation — kept visually and operationally separate from corrective requests
  • Bilingual labels (English + Thai) on every kind
  • In-app help explaining how admins add their own kinds

At a glance

Aspect Detail
Module ID roots_hemms_pm
Depends on maintenance_plan (OCA), roots_hemms_workflow, roots_hemms_asset_master
Maturity Alpha
Adds 3 maintenance kinds + 1 stage + bilingual + routing override
Initial stage for PM "PM Scheduled (ตามแผนบำรุงรักษา)" — sequence 5, SLA 72 hours

How it fits in the stack

This module is a Layer 3 (hospital lens) extension on top of:

  • Layer 1 Odoo base maintenance — provides maintenance.request, maintenance.equipment, maintenance.stage
  • Layer 2 OCA maintenance_plan — adds maintenance.plan + maintenance.kind + daily cron that auto-creates PM requests by interval

See Architecture for the full layer model.

What it does NOT do (yet)

  • Meter-based PM (e.g., every 1000 operating hours) — calendar-based only via OCA. Tracked on the Roadmap as Q1.5.
  • Mobile/offline PM completion — desktop-only for now.
  • AI-suggested PM frequency — admin manually sets interval per plan.
  • IoT sensor → trigger PM — not in scope; future Q3+ work.

Quick navigation

  • Get Started — Enable the module, create your first PM plan
  • Configuration — Add custom kinds, configure stages
  • Workflows — How a PM request flows from creation to completion
  • Reporting — SLA dashboards + PM coverage metrics