feat(backend): return list of orgs in login resp

This commit is contained in:
2026-01-02 15:57:35 +00:00
parent 4688ba49c1
commit b40a80e4b6
8 changed files with 98 additions and 25 deletions

View File

@@ -76,3 +76,21 @@ func (s *Service) PersonalOrganizationForUser(ctx context.Context, db bun.IDB, u
}
return &org, nil
}
func (s *Service) ListOrganizationsForUser(ctx context.Context, db bun.IDB, userID uuid.UUID) ([]Organization, error) {
orgs := make([]Organization, 0)
err := db.NewSelect().
Model(&orgs).
Join("JOIN accounts ON accounts.org_id = organization.id").
Where("accounts.user_id = ?", userID).
Where("accounts.status = ?", account.StatusActive).
Order("organization.kind ASC", "organization.name ASC").
Scan(ctx)
if err != nil {
if errors.Is(err, sql.ErrNoRows) {
return orgs, nil
}
return nil, err
}
return orgs, nil
}