shoc-backend/Api.SeaHavenIndustries
Alexandre Brandizzi cbecc7b4ea fix(workorders): persist manual POC override with audit and site-follow (SH-379)
Editing a work order's POC never reached the backend: no update path wrote
PocName/PocPhone/PocNotes, so the optimistic UI edit was lost on refetch and
the completion freeze captured the Site contact instead of the manual value,
and nothing was audited.

- Add tenant-scoped PATCH api/workorders/{id}/poc via new WorkOrderPocService
  + WorkOrderPocDataService: persists the override, stages FieldChanged audit
  entries (which also write field locks so sync never overwrites a manual POC),
  and enforces row-version concurrency and terminal-status read-only rules.
- Lock semantics (SH-190): a manual POC away from the Site's live contacts is
  stored WO-level; an edit equal to a live Site contact (or blanking name+phone)
  stores nothing so the WO follows the Site. PocCustomized exposes the state.
- Board projection, completion freeze and create now share one Site-contact
  fallback (first non-deleted contact by SiteContactOrder) so a never-overridden
  WO keeps following the Site, including at create when the wizard prefills it.
- Route contract baseline gains PATCH {id:int}/poc.
2026-09-18 14:30:54 -03:00
..
.config Initial commit 2024-09-28 14:58:36 -04:00
Controllers fix(workorders): persist manual POC override with audit and site-follow (SH-379) 2026-09-18 14:30:54 -03:00
DTOs feat(locations): manage ordered site contacts 2026-09-15 19:03:54 -03:00
Filters merge: integrate origin/dev into PR #22 flag-color base 2026-07-24 14:20:16 -03:00
Helper feat: add API Sentry tracing (SH-298) (#105) 2026-09-04 14:11:32 -03:00
HostedServices feat: add API Sentry tracing (SH-298) (#105) 2026-09-04 14:11:32 -03:00
Infrastructure feat(work-orders): stream stored WO media safely 2026-09-08 11:09:55 -03:00
Middleware feat: add API Sentry tracing (SH-298) (#105) 2026-09-04 14:11:32 -03:00
Models initial commit for api changes 2025-02-18 13:13:33 -06:00
Observability fix(observability): preserve backend release identity (#114) 2026-09-15 16:08:14 -03:00
Options feat(work-orders): add Phase 5 scheduled domain events (WeekRolled) 2026-07-24 10:13:17 -03:00
Properties Initial commit 2024-09-28 14:58:36 -04:00
wwwroot Add zip-to-zip distance calculation for vendor dispatch 2026-04-17 11:56:06 -04:00
Api.SeaHavenIndustries.csproj feat: add API Sentry tracing (SH-298) (#105) 2026-09-04 14:11:32 -03:00
Api.SeaHavenIndustries.http Initial commit 2024-09-28 14:58:36 -04:00
appsettings.Development.json fix(security): remove hardcoded secrets from source 2026-06-05 11:56:54 -04:00
appsettings.json fix(work-orders): satisfy producer contract review 2026-07-27 16:33:06 -03:00
appsettings.Production.json fix(vendors): address roadmap review findings 2026-07-24 11:49:57 -03:00
aws-beanstalk-tools-defaults.json fixes for Dev changes 2026-04-24 12:12:16 -05:00
db.txt fixes for Dev changes 2026-04-24 12:12:16 -05:00
Program.cs feat(permissions): protect configured account owner (SH-329) 2026-09-16 21:40:22 -03:00