# Tóm tắt hệ thống AM & O&M VPEG

## 1. Chức năng hệ thống

Hệ thống hỗ trợ quản lý tài sản năng lượng mặt trời và vận hành bảo trì theo mô hình AM & O&M. Các chức năng chính gồm quản lý công ty, dự án, tài sản, hợp đồng, ticket sự cố, work order, lịch bảo trì định kỳ, kho vật tư, tuân thủ HSE, rủi ro, báo cáo, KPI, cảnh báo, người dùng, vai trò, phân quyền và cấu hình hệ thống.

Hệ thống có dashboard tổng quan, dashboard theo dự án và dashboard O&M để theo dõi hiệu suất, trạng thái vận hành, cảnh báo, công việc, chi phí và dữ liệu KPI. Dữ liệu vận hành có thể lấy từ MongoDB, dữ liệu demo hoặc API tích hợp như VCOM/Meteocontrol.

## 2. Luồng vận hành tổng quát

Người dùng đăng nhập, hệ thống xác thực bằng JWT và nạp quyền theo vai trò. Sau đó người dùng chọn công ty/dự án, xem dashboard, quản lý hồ sơ tài sản và hợp đồng liên quan.

Khi có cảnh báo, sự cố hoặc nhu cầu bảo trì, hệ thống tạo ticket thủ công hoặc tự động. Ticket được phân công cho nhân sự phụ trách, chuyển thành work order nếu cần xử lý hiện trường. Kỹ thuật viên thực hiện công việc, cập nhật trạng thái, chi phí, vật tư, checklist và kết quả. Quản lý kiểm tra, xác nhận hoàn tất và đóng ticket.

Với bảo trì định kỳ, lịch PM được cấu hình theo hợp đồng, dự án hoặc tài sản. Khi đến hạn, hệ thống có thể tạo work order, gửi cảnh báo, cập nhật ngày thực hiện gần nhất và tính ngày đến hạn tiếp theo. Kho vật tư được theo dõi nhập/xuất, cảnh báo tồn kho thấp và phục vụ cho hoạt động O&M.

## 3. Các module chính

- Frontend: React, Vite, TypeScript, React Router, Tailwind CSS, Zustand; gồm các trang Dashboard, Projects, Asset Management, Contracts, Operations, Work Orders, Maintenance Schedule, Inventory, Compliance, Finance, Reports, Governance và Settings.
- Backend: Node.js, Express, TypeScript, REST API, JWT, bcrypt, Mongoose; tổ chức theo routes, controllers, models, middleware, services và jobs.
- Dữ liệu: MongoDB với các model chính như User, Role, Company, Project, Asset, Contract, Ticket, WorkOrder, PMSchedule, Inventory, KPI, Report, Alert, AuditLog, ComplianceDoc và HSEIncident.
- API/service: lớp `apiClient` xử lý token và gọi REST API; `dataService` gom các nghiệp vụ frontend như CRUD, báo cáo, KPI live, cảnh báo, phân quyền và cấu hình.
- Tự động hóa: job định kỳ thu thập KPI, đồng bộ tài sản, kiểm tra SLA ticket, cảnh báo bảo trì, cảnh báo tồn kho và cảnh báo hệ thống.
- Quản trị: RBAC, phân quyền theo role, nhật ký audit, cấu hình SMTP, cấu hình VCOM API, chính sách lưu trữ và bảo trì hệ thống.

## 4. Nguyên tắc thiết kế và vận hành

Hệ thống được thiết kế theo hướng module hóa, API-first, tách biệt frontend, backend và tầng dữ liệu. Các nghiệp vụ được gom theo domain để dễ mở rộng, bảo trì và triển khai từng phần.

Quyền truy cập được kiểm soát bằng RBAC; người dùng chỉ thấy hoặc thao tác các chức năng phù hợp với vai trò. API ưu tiên định dạng JSON thống nhất, có xử lý lỗi tập trung, xác thực token và hỗ trợ tương thích đường dẫn `/api` và `/api/v1`.

Dữ liệu dự án, tài sản, hợp đồng, ticket và work order liên kết với nhau để đảm bảo truy vết đầy đủ. Các thao tác quan trọng cần ghi audit log, ưu tiên tính minh bạch, an toàn, tuân thủ ISO 9001, ISO 14001, ISO 45001 và tham chiếu ISO 55000.

Hệ thống hỗ trợ vận hành thực tế qua MongoDB, đồng thời có dữ liệu demo/seed để kiểm thử, đào tạo và triển khai nhanh. Các tích hợp bên ngoài được cấu hình qua biến môi trường hoặc trang Settings để giảm phụ thuộc cứng vào mã nguồn.

## 5. Kết quả mong đợi

Hệ thống giúp VPEG quản lý tập trung vòng đời tài sản và hoạt động O&M, giảm xử lý thủ công, tăng khả năng giám sát, chuẩn hóa quy trình bảo trì và cải thiện tốc độ phản hồi sự cố.

Kết quả kỳ vọng là dữ liệu tài sản, hợp đồng, công việc, vật tư, KPI và báo cáo được đồng bộ, dễ tra cứu, có phân quyền rõ ràng, có cảnh báo kịp thời và hỗ trợ ra quyết định dựa trên dữ liệu vận hành thực tế.
