feat(projects): surface owning company name in ProjectResponse #276

Merged
vas2000-work merged 1 commit from feat/pms-335-project-company-name into main 2026-06-16 23:49:36 +02:00
Owner

GET /projects and GET /projects/{id} returned company_id but no company_name, so no consumer could show which company a project belongs to without an N+1 lookup. Add company_name: Option to ProjectResponse and resolve it in the list and get queries via a tenant-scoped correlated subquery on companies (LEFT-join semantics: null when company_id is unset or the company row is gone), matching the existing actual_hours/actual_amount subquery style in these queries.

#PMS-335

GET /projects and GET /projects/{id} returned company_id but no company_name, so no consumer could show which company a project belongs to without an N+1 lookup. Add company_name: Option<String> to ProjectResponse and resolve it in the list and get queries via a tenant-scoped correlated subquery on companies (LEFT-join semantics: null when company_id is unset or the company row is gone), matching the existing actual_hours/actual_amount subquery style in these queries. #PMS-335
feat(projects): surface owning company name in ProjectResponse
All checks were successful
E2E / Playwright against staging (pull_request) Successful in 1m3s
Check / fmt + clippy + compile + unit/doc tests (pull_request) Successful in 2m23s
Integration / integration tests (pull_request) Successful in 5m54s
Create release / Create release from merged PR (pull_request) Has been skipped
43102d3d83
GET /projects and GET /projects/{id} returned company_id but no company_name, so no consumer could show which company a project belongs to without an N+1 lookup. Add company_name: Option<String> to ProjectResponse and resolve it in the list and get queries via a tenant-scoped correlated subquery on companies (LEFT-join semantics: null when company_id is unset or the company row is gone), matching the existing actual_hours/actual_amount subquery style in these queries.

#PMS-335
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
psa-systems/mokosh-server!276
No description provided.