Commit graph

127 commits

Author SHA1 Message Date
Arthur Bassi
6beba0ba93 fix(pm-schedules): handle empty save and delete responses 2026-06-16 09:11:58 -03:00
Arthur Bassi
42a8c752cc fix(vendors): delete vendors via REST route 2026-06-16 09:11:36 -03:00
Arthur Bassi
e4a1435f3c fix(work-orders): align routes, delete body, and create payload 2026-06-16 09:11:00 -03:00
Arthur Bassi
b4873cf1f8 fix(contacts): resolve detail via GetContacts and map address DTOs 2026-06-16 09:10:38 -03:00
Arthur Bassi
786e588623 fix(accounts): align detail and mutation payloads with backend 2026-06-16 09:10:11 -03:00
Arthur Bassi
a1ed14538c fix(api): add no-content helpers and align paths with backend 2026-06-16 09:07:30 -03:00
Arthur Bassi
4a67d6b16f fix(auth): restore JWT and align CRUD with backend routes 2026-06-15 11:17:40 -03:00
Arthur Bassi
7be969951c chore: remove migration scripts and unused generouted router 2026-06-15 10:18:23 -03:00
Arthur Bassi
96059ee53f fix(build): use mjs router script for Node 20 CI compatibility 2026-06-15 10:13:42 -03:00
Arthur Bassi
3b39b858c1 fix(ci): fix login e2e session mock and prettier formatting 2026-06-15 10:03:02 -03:00
Arthur Bassi
c7787bda98 docs: translate pt-BR docs and Cursor rules to English 2026-06-15 09:59:40 -03:00
Arthur Bassi
d27a13fe23 chore: update gitignore and env example for Vite 2026-06-12 11:57:11 -03:00
Arthur Bassi
fac35319e5 chore: remove legacy CRA pages, Redux store and JS hooks 2026-06-12 11:57:07 -03:00
Arthur Bassi
7af4a56d04 test: add Vitest setup and Playwright login e2e spec 2026-06-12 11:56:51 -03:00
Arthur Bassi
668dd69df2 feat: add vendor portal routes and signature capture 2026-06-12 11:56:41 -03:00
Arthur Bassi
6672d09e1f feat: add settings for dropdowns and task templates 2026-06-12 11:56:32 -03:00
Arthur Bassi
48f1685e4d feat: add uplifts queue module 2026-06-12 11:56:22 -03:00
Arthur Bassi
1c474914f2 feat: add vendor purchase orders module 2026-06-12 11:55:14 -03:00
Arthur Bassi
f01a502956 feat: add vendors CRUD and portal token panel 2026-06-12 11:55:04 -03:00
Arthur Bassi
a27e7607d3 feat: add work orders module with dispatch modals 2026-06-12 11:54:52 -03:00
Arthur Bassi
77e128af5a feat: add PM schedules CRUD module 2026-06-12 11:54:42 -03:00
Arthur Bassi
66c8c7cb4a feat: add follow-ups CRUD module 2026-06-12 11:54:30 -03:00
Arthur Bassi
09a2468ab0 feat: add calendar events module 2026-06-12 11:54:21 -03:00
Arthur Bassi
f7adadffbe feat: add locations CRUD module 2026-06-12 11:53:41 -03:00
Arthur Bassi
a60da31f4c feat: add employees CRUD module 2026-06-12 11:53:32 -03:00
Arthur Bassi
ef5c73fca3 feat: add contacts CRUD module 2026-06-12 11:53:22 -03:00
Arthur Bassi
8cf6aa0902 feat: add assets CRUD module 2026-06-12 11:53:12 -03:00
Arthur Bassi
24b123225c feat: add accounts CRUD module 2026-06-12 11:53:01 -03:00
Arthur Bassi
60572c7e96 feat: add protected layout and dashboard module 2026-06-12 11:52:50 -03:00
Arthur Bassi
33a902034c feat: add app shell, file-based routing and bootstrap 2026-06-12 11:52:25 -03:00
Arthur Bassi
7967f7e4c5 feat: add auth domain, provider and login page 2026-06-12 11:52:16 -03:00
Arthur Bassi
ddc174c204 feat: add shared UI, layout and domain badge components 2026-06-12 11:52:07 -03:00
Arthur Bassi
49fbc98dd0 feat: add theme system and global application styles 2026-06-12 11:44:36 -03:00
Arthur Bassi
5c8a3443f7 feat: add HTTP client, query cache and shared utilities 2026-06-12 11:44:13 -03:00
Arthur Bassi
d07ff67a94 fix: scope ESLint to new components and hooks directories 2026-06-12 11:43:33 -03:00
Arthur Bassi
d3076f6d88 docs: add architecture plan and design system documentation 2026-06-12 11:41:07 -03:00
Arthur Bassi
0451788764 build: migrate from CRA to Vite with TypeScript config 2026-06-12 11:41:03 -03:00
Arthur Bassi
bb11aab86c ci: add GitHub Actions workflow for lint and build 2026-06-12 11:41:00 -03:00
Arthur Bassi
2121b86a8e chore: add eslint, prettier, husky and commitlint tooling 2026-06-12 11:40:01 -03:00
npalOmega
1632f1e656 pm schedule fix 2026-05-14 11:01:59 -05:00
npalOmega
65bf95b20c refactor: fix compilation errors and centralize constants
- Fixed Redux slice errors
- All query keys now use constants from src/constants/
- Converted LoginPage to CSS Modules
- Consolidated documentation
2026-05-12 20:33:23 -05:00
npalOmega
5151be29ba Add production and development environment configuration files 2026-04-27 08:50:47 -05:00
Adam Moussa
bbcd1eb4e1 Wire Follow Ups list and form to backend
Replaces the mock api with real endpoints, fixes list column mappings
to match the backend payload, and realigns the form to the FollowUps
model (Reason, ScheduleDate, ScheduleStartTime, EmployeeId, AccountId,
LocationId, WorkOrderId) with real lookup dropdowns for Employee,
Account, and Location. Also redesigns the list header to match the
Work Orders toolbar + chip filter look.
2026-04-20 13:49:58 -04:00
Adam Moussa
a349a58822 Group sidebar nav by purpose
Replaces the flat 16-item list with six sections (Overview, Operations,
Vendors, Customers & Sites, Internal, System) and adds section titles
that collapse into dividers when the sidebar is collapsed.
2026-04-20 13:49:52 -04:00
Adam Moussa
2a6fe6f35e Add NTE uplift UI, vendor PO pages, and portal POs tab
Vendors can now request NTE uplifts from the dispatch detail page and
dispatchers can approve or deny them (with tier-gated buttons) from
the work order view. Admin uplift queue page lists all requests with
status/tier filters. New Vendor POs section lists every PO with a
detail page showing vendor, linked WOs, uplift history, checklist,
signoffs, comments, and scoped audit log with print support. Vendor
portal gets a POs tab alongside Work so vendors can reconcile by PO
number.
2026-04-20 13:26:08 -04:00
Adam Moussa
c98a905d4d Merge feature/vendor-portal into dev 2026-04-20 12:45:09 -04:00
Adam Moussa
168fa69a87 Add vendor portal UI
- Separate route tree at /v/:token (no SHOC chrome); session resolved via
  X-Vendor-Token header
- Dashboard lists only the vendor's own dispatches with status filters
- Dispatch detail: accept + status transitions (Acknowledged -> In Progress ->
  Completed), request cancel, checklist toggles, customer signoff before vendor
  signoff, comments attributed by type (dispatcher / vendor / customer)
- SignaturePad component (mouse + touch canvas, drawn or typed)
- Admin vendor form: portal token panel to generate, copy, rotate, or revoke
  the portal link
2026-04-20 12:02:00 -04:00
Adam Moussa
3b3086d873 Update TODO with completed items and vendor portal next steps 2026-04-17 16:33:18 -04:00
Adam Moussa
da51d4a5be Add Cancel Dispatch button to dispatch detail modal
- Red outlined button on the left side of actions row
- Confirmation prompt before cancelling
- Hidden when dispatch is already cancelled or verified
- Updates status to Cancelled and refreshes
2026-04-17 16:31:48 -04:00
Adam Moussa
913d75802c Polish dispatch workflow — custom items, name input, read-only after verify
- Custom checklist items in dispatch modal (type + Enter, removable chips)
- Add checklist item input in dispatch detail modal
- SignatureCapture now has proper Full Name field instead of prompt()
- Verified dispatches are read-only: edit hidden, checkboxes disabled, signoff buttons disabled
- Custom items sent as CustomChecklistItems in dispatch payload
2026-04-17 16:26:22 -04:00