Core Operations
Status Work Order
StatusBadgeDeskripsiActor
antrianAntrianWO baru dibuat, menunggu mekanik tersediaAdmin
diagnosaDiagnosaMekanik sedang mendiagnosa kerusakan kendaraanMekanik
pengerjaanPengerjaanPekerjaan servis sedang berlangsungMekanik
qcQCQuality check oleh kepala mekanikKepala Mekanik
selesaiSelesaiPekerjaan selesai, siap diserahkan ke pelangganAdmin/Kasir
diserahkanDiserahkanKendaraan sudah diserahkan ke pelangganAdmin
UI Mockup — Daftar Work Order
bengkelpintar.app/work-orders
Operations
Work Order
Quotation
Kasir
Inventory
Parts
Purchase
Work Order
Cabang Utama
AD
Daftar Work Order
🕐
8
Antrian
🔍
3
Diagnosa
🔧
12
Dikerjakan
5
Selesai
+ Buat WO
Filter
WO-2025-001
Honda Jazz • B 1234 ABC • Budi Santoso
Antrian
WO-2025-002
Toyota Avanza • B 5678 DEF • Siti Rahayu
Diagnosa
WO-2025-003
Suzuki Ertiga • D 9012 GHI • Ahmad Fauzi
Pengerjaan
WO-2025-004
Mitsubishi Xpander • F 3456 JKL
QC
bengkelpintar.app/work-orders/WO-2025-003
Work Order
Quotation
Kasir
WO-2025-003 Detail
Pengerjaan
MK
Info Kendaraan
Pelanggan
Ahmad Fauzi
No. Polisi
D 9012 GHI
Kendaraan
Suzuki Ertiga 2022
KM
45.230 km
Job Items
3 items
JenisDeskripsiMekanikStatus
ServisGanti oli mesinRudiSelesai
ServisCek rem depanRudiProses
PartsKampas rem depanMenunggu
Flow Diagram — Alur Work Order

Main Work Order Flow

Alur lengkap dari pembuatan WO hingga serah terima kendaraan

flowchart TD A([Pelanggan Datang]) --> B[Admin: Registrasi\nData Kendaraan & Keluhan] B --> C{Ada Quotation\nSebelumnya?} C -->|Ya| D[Import dari Quotation/SPK] C -->|Tidak| E[Buat WO Baru] D --> F[WO Status: ANTRIAN] E --> F F --> G[Admin: Assign Mekanik] G --> H[Mekanik: Mulai Diagnosa] H --> I[WO Status: DIAGNOSA] I --> J{Perlu\nSparepart?} J -->|Ya| K[Buat Parts Request] K --> L{Stok\nTersedia?} L -->|Ya| M[Gudang: Keluarkan Parts] L -->|Tidak| N[Buat Purchase Order] N --> O[Supplier: Kirim Parts] O --> M M --> P[Mekanik: Mulai Pengerjaan] J -->|Tidak| P P --> Q[WO Status: PENGERJAAN] Q --> R{Semua Job\nSelesai?} R -->|Belum| Q R -->|Ya| S[Kepala Mekanik: Quality Check] S --> T[WO Status: QC] T --> U{QC\nLulus?} U -->|Tidak| V[Revisi Pekerjaan] V --> P U -->|Ya| W[WO Status: SELESAI] W --> X[Kasir: Buat Invoice] X --> Y[Pelanggan: Bayar] Y --> Z[Admin: Serah Terima\nKendaraan] Z --> AA([WO Selesai & Ditutup]) style A fill:#dbeafe,stroke:#3b82f6 style AA fill:#dcfce7,stroke:#16a34a style F fill:#fef3c7,stroke:#f59e0b style I fill:#ede9fe,stroke:#8b5cf6 style Q fill:#dbeafe,stroke:#3b82f6 style T fill:#cffafe,stroke:#06b6d4 style W fill:#dcfce7,stroke:#16a34a
Flow Diagram — Job Tracking Mekanik

Job Item Tracking

Status setiap item pekerjaan dalam satu Work Order

flowchart LR J0([Job Item\nDibuat]) --> J1[pending] J1 --> J2{Mekanik\nAssigned?} J2 -->|Ya| J3[in_progress] J3 --> J4{Perlu Parts?} J4 -->|Ya| J5[waiting_parts] J5 -->|Parts Tiba| J3 J4 -->|Tidak| J6[done] J3 --> J6 J6 --> J7{QC\nLulus?} J7 -->|Ya| J8([Job Selesai]) J7 -->|Revisi| J3 style J0 fill:#f1f5f9,stroke:#94a3b8 style J1 fill:#fef3c7,stroke:#f59e0b style J3 fill:#dbeafe,stroke:#3b82f6 style J5 fill:#ede9fe,stroke:#8b5cf6 style J6 fill:#cffafe,stroke:#06b6d4 style J8 fill:#dcfce7,stroke:#16a34a
Aturan & Validasi

📋 Pembuatan WO

  • Nomor WO auto-generate format WO-YYYY-NNNNN
  • Data wajib: nama pelanggan, no. polisi, jenis kendaraan, keluhan
  • Bisa import dari Quotation yang sudah disetujui
  • Estimasi waktu pengerjaan wajib diisi

🔧 Pengerjaan

  • Satu WO bisa memiliki banyak Job Item
  • Satu mekanik bisa handle max 3 WO aktif bersamaan
  • Mekanik log waktu mulai dan selesai setiap job
  • Mekanik tidak bisa akses WO di cabang lain

🔍 Quality Check

  • QC wajib dilakukan oleh Kepala Mekanik
  • Kepala Mekanik tidak boleh QC pekerjaan milik sendiri
  • Checklist QC disesuaikan per jenis servis
  • Jika gagal QC, mekanik harus mengerjakan ulang

📦 Parts & Stok

  • Parts request auto-create saat mekanik tambah item ke WO
  • Gudang konfirmasi ketersediaan stok
  • Jika stok habis, trigger PO ke supplier
  • WO tidak bisa selesai jika ada parts belum tiba
API Endpoints
MethodEndpointDeskripsiRole
GET/api/work-ordersList semua WO (filter by cabang, status)Admin, Kasir
POST/api/work-ordersBuat WO baruAdmin
GET/api/work-orders/:idDetail WO beserta job itemsSemua
PATCH/api/work-orders/:id/statusUpdate status WOAdmin, Mekanik, KM
POST/api/work-orders/:id/jobsTambah job item ke WOAdmin, Mekanik
PATCH/api/work-orders/:id/jobs/:jidUpdate status job itemMekanik
POST/api/work-orders/:id/qcSubmit hasil QCKepala Mekanik
POST/api/work-orders/:id/handoverKonfirmasi serah terimaAdmin