Alexandre Brandizzi
8192da7790
Merge pull request #15 from Sea-Haven-Industries/feat/work-orders-phase-3
...
Feat/work orders Phase 3 board create and soft cancel
2026-07-24 13:34:39 -03:00
Alexandre Brandizzi
df828cf48c
Merge pull request #14 from Sea-Haven-Industries/feat/work-orders-phase-2
...
Feat/work orders phase 2
2026-07-24 13:32:25 -03:00
Alexandre Brandizzi
3bd0268129
Merge pull request #13 from Sea-Haven-Industries/feat/work-orders-phase-1-board
...
Feat/work orders phase 1 board
2026-07-24 13:29:09 -03:00
Alexandre Brandizzi
5b4b538c16
fix(vendors): preserve company and phone integrity
2026-07-23 19:17:14 -03:00
Alexandre Brandizzi
8cf49afc2c
feat(vendors): complete core vendor workflows
2026-07-23 17:02:40 -03:00
Arthur Bassi
385812c5c3
merge: sync phase 3 with updated phase 2 base
...
Reconcile migration/docs deletions from phase 2, adopt async audit staging and ApptTime lock contracts, and keep phase 3 create/cancel transactional behavior.
2026-07-23 13:28:54 -03:00
Alexandre Brandizzi
1162c68596
feat(vendors): add directory filters and details API ( #25 )
...
* feat(vendors): add directory filters and details API
* fix(vendors): preserve omitted status
* fix(vendors): align facet filtering
* fix(vendors): address directory review findings
2026-07-23 15:55:47 +00:00
Arthur Bassi
61b4c84337
fix(work-orders): lock ScheduledStart/End when patching apptTime
...
Align board apptTime field locks with SyncFieldMergePolicy field names so sync cannot overwrite a manual appointment edit. Also add shared LifecycleStatusSets so the Phase 2 branch compiles.
2026-07-21 09:31:27 -03:00
Arthur Bassi
76db2b5a37
fix(work-orders): address PR14 phase-2 review feedback
2026-07-17 14:48:48 -03:00
Arthur Bassi
4bd11dcf6b
fix(work-orders): address stacked PR review feedback
2026-07-17 14:31:08 -03:00
Arthur Bassi
ceeb0c8fa3
fix(work-orders): wrap board create in a transaction for atomic persistence
2026-07-10 11:38:58 -03:00
Arthur Bassi
9dc17d4255
fix(work-orders): persist WO identity before staging create audit and locks
2026-07-10 10:49:57 -03:00
Arthur Bassi
88f9245fbf
merge: sync Phase 1 board review fixes into Phase 2
...
Resolve conflicts in WorkOrderController and WorkOrderBoardService so Phase 2 merges cleanly into the Phase 1 base.
2026-07-10 10:41:36 -03:00
Arthur Bassi
c2d0bd45e3
fix(work-orders): address PR #13 review feedback
...
Return BadRequest for invalid board week window, remove duplicate unused board types, fix POC null guard, and document appt precedence and UTC Phase 1 assumptions.
2026-07-09 10:06:36 -03:00
Arthur Bassi
88caede86a
fix(work-orders): address PR #14 board PATCH review feedback
...
Reuse field-lock DB checks during staged audits, defer dispatch creation to the final save, and return 404 for missing work orders.
2026-07-09 09:58:41 -03:00
Arthur Bassi
e5bda0714a
feat(work-orders): add Phase 3 board create and soft cancel API
...
Expose POST /api/workorders/board and POST /api/workorders/{id}/cancel for SHOC wizard/inline creation and soft cancel, with field locks, WO# normalization, and Admin-only hard delete.
2026-07-08 10:17:31 -03:00
Arthur Bassi
91122d753d
merge: integrate Phase 1 board API into Phase 2 branch
...
Combine the reviewed Phase 1 read-only board endpoints with Phase 2 inline edit and optimistic concurrency, resolving shared foundation conflicts while preserving both feature sets.
2026-07-07 13:59:22 -03:00
Arthur Bassi
673bc3b5a9
fix(work-orders): align phase 2 status/type contract to SHOC frontend
...
Expand LifecycleStatus (EnRoute, OnSite, Rescheduled, Pending, PendingQuote) and WorkOrderType (Reactive, AddOn) to match the frontend prototype. Add FE label round-trip via LifecycleStatusMapper/WorkOrderTypeMapper, update derived fields, mutation rules and board unscheduled filter, and reactivate [Authorize] on WorkOrderController. Fix pre-existing dayGroup test expectation.
2026-07-07 13:11:22 -03:00
Arthur Bassi
d040832b87
feat(work-orders): isolate phase 2 inline edit with optimistic concurrency
...
Deliver PATCH board field updates and drop phases 3-7 code from the branch while keeping phase 0/1 dependencies required to build and test.
2026-07-07 11:26:13 -03:00
Arthur Bassi
8efe4460bb
fix(work-orders): complete Phase 1 board indexes, Service DTO and helper wiring
...
Add AssignTo+ScheduledDate and WorkOrderType indexes, expose service on board rows, and route data access through shared projection/filter helpers.
2026-07-07 10:11:04 -03:00
Arthur Bassi
ff53cb9fa6
feat(work-orders): add weekly board read API (Phase 1)
...
- GET /api/workorders/board with week window, Unscheduled section, and X of Y counts
- GET /api/workorders/lookups/dispatchers for SHOC filter avatars
- Board projection via WorkOrderBoardDataService with vendor/dispatch join and derived isPastDue
- Phase1_BoardIndexes migration (IX_workOrders_ScheduledDate)
- 5 board unit tests
2026-07-07 10:10:06 -03:00
Arthur Bassi
e5902e1df3
fix(work-orders): address PR review on sync, audit, lock and mapper
2026-07-02 09:30:05 -03:00
Arthur Bassi
49e5de5152
feat(work-orders): add audit, field lock and sync merge services
2026-07-02 09:17:59 -03:00
Arthur Bassi
4f697f257a
wip: work orders phases 1-7 (isolated from phase 0 foundation)
2026-06-30 10:09:48 -03:00
Arthur Bassi
f52c430c2c
feat(work-orders): add audit, field lock and sync merge services
2026-06-29 17:22:31 -03:00
npalOmega
59385cf5b1
backend changes
2026-05-14 11:00:12 -05:00
npalOmega
5e4d9894e9
backend architectural template
2026-05-06 10:49:33 -05:00
npalOmega
ac76b201de
refactor
2026-04-28 18:55:14 -05:00