Skip to main content

title: “Home” description: “Landing page personal setelah login dengan feed aktivitas terbaru, tugas pending, notifikasi real-time, dan shortcut kontekstual ke fitur utama QUINNOFSPICY ERP.”

Home

Home Halaman Home adalah landing page personal yang muncul setelah pengguna berhasil login ke QUINNOFSPICY ERP. Berbeda dengan Dashboard yang berfokus pada metrik bisnis secara keseluruhan, Home dirancang sebagai pusat aktivitas personal — menampilkan tugas yang perlu diselesaikan, notifikasi dari tim dan sistem, serta aktivitas terakhir yang relevan dengan peran dan perusahaan aktif pengguna. Halaman ini mengintegrasikan data dari berbagai entitas inti seperti User, Company, CompanyMember, Task, Notification, Workspace, ApprovalRequest, InternalMessage, dan Achievement untuk memberikan pengalaman yang terpersonalisasi berdasarkan role, subscription plan, dan preferensi masing-masing pengguna.

Perbedaan Home vs Dashboard

Arsitektur Home Page

Komponen Utama

1. Feed Aktivitas & Notifikasi

Feed aktivitas menampilkan stream notifikasi dan update terbaru dari berbagai modul secara kronologis. Setiap entry dalam feed mencakup informasi dari entitas Notification dan InternalMessage. Filter Feed:
  • Semua — tampilkan semua notifikasi dari seluruh modul dan tipe
  • Belum Dibaca — hanya notifikasi dengan is_read = false
  • Prioritas Tinggi — notifikasi dengan priority = high
  • Tugas Saya — notifikasi bertipe TASK yang melibatkan pengguna langsung
  • Tim — notifikasi dari anggota tim dalam perusahaan aktif
  • Sistem — notifikasi otomatis dari sistem (tipe SYSTEM, LOW_STOCK, EXPIRY, BACKUP)
Feed Entry Schema (berdasarkan entitas Notification):

2. Panel Tugas & Reminder

Panel ini menampilkan daftar tugas yang perlu diselesaikan, diurutkan berdasarkan prioritas dan deadline. Data diambil dari entitas Task dan RecurringTask yang terkait dengan pengguna melalui assignee_id atau workspace_id. Fitur Tugas:
  • Snooze — tunda tugas untuk muncul lagi nanti (1 jam, besok, atau custom)
  • Quick Complete — tandai selesai langsung dari Home tanpa buka detail (mengubah status ke completed)
  • Delegasi — tugaskan ke anggota tim lain melalui assignee_id jika memiliki hak akses can_edit_tasks
  • Link ke Sumber — setiap tugas terhubung ke halaman terkait (invoice, PO, dll)
  • Time Tracking — catat waktu pengerjaan melalui time_entries jika is_time_tracked = true
  • Sub-tasks — tugas dapat memiliki sub-tugas melalui parent_task_id dan sub_tasks
Task Entity Schema (dari entitas Task):

3. Kartu Ringkasan

Kartu informasi singkat yang memberikan gambaran kondisi bisnis hari ini berdasarkan data dari perusahaan aktif pengguna (User.active_company_id):

4. Kalender Mini

Widget kalender yang menampilkan jadwal penting dari berbagai sumber:
  • Deadline Tugas — tugas dengan due_date terdekat dari entitas Task
  • Recurring Tasks — tugas berulang dari entitas RecurringTask berdasarkan frequency dan days_of_week
  • Approval Deadline — batas waktu persetujuan dari ApprovalRequest
  • Event Perusahaan — jadwal shift dari CompanyMember.working_hours

5. Shortcut Kontekstual

Shortcut yang ditampilkan berdasarkan peran pengguna (CompanyMember.role) dan profil akses menu (MenuAccessProfile):

6. Panel Gamifikasi & Achievement

Panel yang menampilkan progres gamifikasi berdasarkan entitas Achievement dan statistik produktivitas pengguna (User):

Feed Aktivitas — Detail Arsitektur

Flow Penggunaan Harian

Notifikasi & Alert

Sistem notifikasi di Home menggunakan entitas Notification yang terbagi menjadi beberapa tipe dan prioritas. Setiap notifikasi memiliki mekanisme idempotency melalui event_id untuk mencegah duplikasi.

Notifikasi vs Tugas

Cara Akses

Tips

  • Jadikan Home sebagai starting point setiap hari kerja untuk melihat apa yang perlu ditindaklanjuti sebelum mulai aktivitas lain
  • Selesaikan tugas urgent di Home sebelum pindah ke modul lain supaya tidak ada yang terlewat
  • Gunakan fitur snooze untuk tugas yang belum bisa dikerjakan sekarang — tugas akan muncul lagi sebagai reminder
  • Filter feed berdasarkan “Tugas Saya” jika kamu hanya ingin fokus pada tugas personal tanpa terganggu aktivitas tim
  • Kustomisasi shortcut dengan frequently used actions supaya akses ke fitur favorit lebih cepat

Entity Relationship Diagram

Entity Schema Tables

HomeSettings

Notification

Task

CustomDashboardConfig

Struktur Widget (dalam array widgets):

StockAlert

ApprovalRequest

RecurringTask

AuditLog

Comment

Workspace

WorkspaceMember

Status Lifecycle — State Diagrams

Task Status Lifecycle

Notification Read State

StockAlert Status Lifecycle

ApprovalRequest Status Lifecycle

Sequence Diagrams — Alur Data Utama

1. Pemuatan Halaman Home

2. Widget Refresh pada CustomDashboardConfig

3. Pengiriman Notifikasi

4. Penanganan StockAlert dari Deteksi hingga Resolusi

Referensi Enum

Notification Type

Notification Priority

Task Status

Task Priority

StockAlert — Alert Type

StockAlert — Severity

StockAlert — Status

ApprovalRequest — Overall Status

ApprovalRequest — Approval History Status

RecurringTask — Frequency

AuditLog — Action

AuditLog — Status

CustomDashboardConfig — Widget Type

CustomDashboardConfig — Chart Type

CustomDashboardConfig — Layout

WorkspaceMember — Role

Comment — Entity Type


Related Documentation: