Commit graph

11 commits

Author SHA1 Message Date
FreightDesk
e74f321791 [OWL] Driver portal + Invoice PDF generation
Some checks are pending
FreightDesk CI/CD / Lint & Test (push) Waiting to run
FreightDesk CI/CD / Build Docker Image (push) Blocked by required conditions
FreightDesk CI/CD / Deploy to Coolify (push) Blocked by required conditions
Driver Portal:
- Refactored portal routes with shared auth + role-aware dashboard
- Driver dashboard (trips, earnings, advance, active loads)
- Driver load list (filterable, paginated)
- Driver load detail (with settlement summary: freight, commission, advance, balance)
- Shared login page detects role from credentials

Invoice PDF:
- Invoice PDF service (puppeteer-based, falls back to HTML)
- Professional invoice template (tricolor, Hindi+English, GSTIN)
- Commission calculation with TDS deduction (10%)
- GET /invoices (list, filterable by year/month)
- GET /invoices/:id (HTML preview with print button)
- GET /invoices/:id/pdf (PDF download)
- Invoices link in sidebar
2026-06-08 00:40:16 +00:00
FreightDesk
63ed6c445f [OWL] Client portal: shipper login + dashboard + load views
Some checks are pending
FreightDesk CI/CD / Lint & Test (push) Waiting to run
FreightDesk CI/CD / Build Docker Image (push) Blocked by required conditions
FreightDesk CI/CD / Deploy to Coolify (push) Blocked by required conditions
- Shipper portal auth (login/logout with bcrypt sessions)
- Shipper dashboard (stats: total loads, freight, paid, pending)
- Shipper load list (filterable by status, paginated)
- Shipper load detail (with payment history)
- Audit service helper (setAuditUser for session context)
- Wire /portal route into server.js
2026-06-07 20:05:52 +00:00
FreightDesk
795cc86b5a [OWL] Audit logging: cherry-pick Hermes' audit SQL, add routes + views
From Hermes' agent/default/soft-delete-audit branch:
- Add migration 004_audit_logging.sql (audit_logs table, trigger function,
  triggers on loads/shippers/vehicles/payments/portal_users,
  set_audit_user() helper function)
- Improved: uses IF NOT EXISTS, AFTER triggers, user session context var,
  distinguishes SOFT_DELETE vs HARD_DELETE, notes field

New:
- GET /audit-logs (admin-only, filterable by table/action, paginated)
- GET /audit-logs/:id (detail view with before/after JSON)
- Audit Logs link in sidebar

Keeps all existing OWL code: CI/CD, Pino, Prometheus, tests, cache-busting,
debounced search, ESLint, Prettier
2026-06-07 20:03:23 +00:00
FreightDesk
071f759b8a [OWL] Wire setup route file, remove inline setup routes from server.js
Some checks are pending
FreightDesk CI/CD / Lint & Test (push) Waiting to run
FreightDesk CI/CD / Build Docker Image (push) Blocked by required conditions
FreightDesk CI/CD / Deploy to Coolify (push) Blocked by required conditions
2026-06-07 19:52:25 +00:00
FreightDesk
0da63ae676 [OWL] Roadmap batch: CI/CD, observability, testing, UX polish 2026-06-07 19:49:46 +00:00
Hermes Agent
f1c75faba1 feat[agent]: add admin setup wizard (first-time admin creation) with secure password handling 2026-06-07 19:46:54 +00:00
FreightDesk
958fd74af5 [OWL] Restore auth.js — keep requireRole middleware (more complete than agent version) 2026-06-07 19:35:34 +00:00
FreightDesk
63e0be75b7 Merge remote-tracking branch 'origin/agent/default/security-improvements' 2026-06-07 19:35:10 +00:00
FreightDesk
5e10afebf1 [OWL] Security fixes: remove hardcoded password, add setup form, soft-delete migration
- Replace hardcoded admin123 with user-defined password via /setup form
- Add proper GET/POST /setup routes
- Create setup.ejs view with password validation (min 6 chars)
- Add migration 003: soft-delete columns (deleted_at) on loads/payments/shippers/vehicles
- Add load_count column to shippers
- requireRole middleware already present in auth.js
2026-06-07 19:34:22 +00:00
Hermes Agent
870a2501eb feat[agent]: add role-based access control to auth middleware
- Modify requireAuth middleware to enforce role filtering
- Prevent unauthorized access to protected routes
2026-06-07 19:29:57 +00:00
FreightDesk
1a4eaaa040 Initial commit: FreightDesk v1.0
- Express + EJS server-rendered app
- Supabase PostgreSQL database
- Auth: username/password with bcrypt
- Dashboard with business stats
- Load CRUD with filters
- WhatsApp message parser
- Payment tracking
- Shipper & vehicle management
- Reports (monthly, top shippers, routes)
- Government-app aesthetic (tricolor theme)
- Dark mode support
- Docker + Coolify deployment ready
- Seed data from existing business ledger (88 loads, 41 shippers, 70 vehicles)
2026-06-07 18:57:24 +00:00