Ugrás a fő tartalomhoz
Was this helpful?

Szervezet API

Szervezetek és tagság

A hozzáférhető szervezetek listázása, a tagok kezelése és a szervezet-adminisztrátori állapot olvasása

Ez az oldal a nem rendszergazdai szervezet felületét dokumentálja. Kizárja a csak adminisztrátori szervezetet útvonalak létrehozása és törlése, valamint a két vezérlőben létező átfedő tagsági végpontok meghívása.

JWT vagy felhasználói API kulcsRBAC és szervezeti őrökTagságkezelésTörlési előnézet

Forrás

  • Fővezérlő: backend-nestjs/src/organisations/organisations.controller.ts
  • Szervezeti adminisztrátori vezérlő: backend-nestjs/src/organisations/organisation-admin.controller.ts
  • DTO-k: backend-nestjs/src/dto/organisation.dto.ts, backend-nestjs/src/dto/organisation-user.dto.ts, backend-nestjs/src/organisations/dto/update-organisation-color.dto.ts

Hitelesítés és engedélyek

  • Ezen az oldalon minden útvonal hitelesítést igényel.
  • A fő vezérlő a JwtAuthGuard plusz RbacAuthorizationGuard-t használja.
  • További útvonalszintű betartatás OrganisationOwnershipGuard, OrganisationAdminGuard és szervezeti engedély-dekorátorokat használ.
  • Csak adminisztrátori útvonalak, amelyek nem szerepelnek ezen az oldalon:
    • POST /api/organisations
    • DELETE /api/organisations/:id
    • POST /api/organisations/:id/admins
    • DELETE /api/organisations/:id/admins/:userId

Fontos forrás megjegyzés:

  • A POST /api/organisations/:id/users és a DELETE /api/organisations/:id/users/:userId kétszer van megadva, egyszer a organisations.controller.ts-ban, majd a organisation-admin.controller.ts-ban, különböző védőelemekkel és válaszformákkal.

Végpont referencia

Fő szervezeti felület

módszerÚtvonalCélKérjen vagy érdeklődjönAuthForrás
GET/api/organisationsAz aktuális felhasználó számára elérhető szervezetek listája.Egyik semJWT vagy felhasználói API kulcsorganisations/organisations.controller.ts
GET/api/organisations/:idSzerezzen be egy elérhető szervezetet.Elérési út: idJWT vagy felhasználói API kulcsorganisations/organisations.controller.ts
PATCH/api/organisations/:idFrissítse a szervezeti profil mezőit.Elérési út: id, törzs: profilmezőkJWT vagy felhasználói API kulcsorganisations/organisations.controller.ts
POST/api/organisations/:id/usersRendeljen hozzá egy felhasználót a szervezethez.Elérési út: id, törzs: userIdJWT vagy felhasználói API kulcsorganisations/organisations.controller.ts
DELETE/api/organisations/:id/users/:userIdFelhasználó eltávolítása a szervezetből.Elérési út: id,userIdJWT vagy felhasználói API kulcsorganisations/organisations.controller.ts
POST/api/organisations/:id/users/assignRendeljen hozzá egy felhasználót kifejezett szerepkörrel.Elérési út: id, törzs: userId,role,assignedByIdJWT vagy felhasználói API kulcsorganisations/organisations.controller.ts
GET/api/organisations/:id/users/listSorolja fel a szervezet felhasználóit és szerepköreit.Elérési út: idJWT vagy felhasználói API kulcsorganisations/organisations.controller.ts
PATCH/api/organisations/:id/users/:userId/roleTagi szerepkör frissítése.Elérési út: id,userId, törzs: roleJWT vagy felhasználói API kulcsorganisations/organisations.controller.ts
DELETE/api/organisations/:id/users/:userId/removeTávolítson el egy tagot az alternatív eltávolítási útvonalon keresztül.Elérési út: id,userIdJWT vagy felhasználói API kulcsorganisations/organisations.controller.ts
GET/api/organisations/:id/deletion-previewA kaszkádtörlés hatásának előnézete.Elérési út: idJWT vagy felhasználói API kulcsorganisations/organisations.controller.ts
DELETE/api/organisations/:id/cascadeA szervezet tulajdonában lévő adatok lépcsőzetes törlése.Elérési út: idJWT vagy felhasználói API kulcsorganisations/organisations.controller.ts
PATCH/api/organisations/:id/colorSzervezeti szín frissítése.Elérési út: id, törzs: color,cascadeToResourceTypesJWT vagy felhasználói API kulcsorganisations/organisations.controller.ts

Szervezeti Admin Helper felület

módszerÚtvonalCélKérjen vagy érdeklődjönAuthForrás
GET/api/organisations/:id/adminsSzervezeti adminisztrátorok listázása.Elérési út: idJWT vagy felhasználói API kulcsorganisations/organisation-admin.controller.ts
POST/api/organisations/:id/usersFelhasználó hozzáadása a szervezethez.Elérési út: id, törzs: userIdJWT vagy felhasználói API kulcsorganisations/organisation-admin.controller.ts
DELETE/api/organisations/:id/users/:userIdFelhasználó eltávolítása a szervezetből.Elérési út: id,userIdJWT vagy felhasználói API kulcsorganisations/organisation-admin.controller.ts
GET/api/organisations/:id/usersSzervezeti felhasználók listázása.Elérési út: idJWT vagy felhasználói API kulcsorganisations/organisation-admin.controller.ts
GET/api/organisations/admin-rolesSorolja fel azokat a szervezeteket, ahol a jelenlegi felhasználó rendszergazda.Egyik semJWT vagy felhasználói API kulcsorganisations/organisation-admin.controller.ts
GET/api/organisations/:id/admin-statusTesztelje, hogy az aktuális felhasználó szervezeti adminisztrátor-e.Elérési út: idJWT vagy felhasználói API kulcsorganisations/organisation-admin.controller.ts

Kérjen alakzatokat

Szervezeti profil

CreateOrganisationDto és UpdateOrganisationDto a backend-nestjs/src/dto/organisation.dto.ts-ban

  • name: létrehozáskor kötelező
  • description: opcionális karakterlánc
  • address: opcionális karakterlánc
  • phone: opcionális karakterlánc
  • email: opcionális e-mail
  • isActive: csak frissíthető opcionális logikai érték

Tagság

  • AssignUserDto.userId: szükséges szám
  • AssignOrganisationUserDto.userId: szükséges szám
  • AssignOrganisationUserDto.role: kötelező OrganisationRoleType
  • AssignOrganisationUserDto.assignedById: opcionális szám
  • UpdateOrganisationUserRoleDto.role: kötelező OrganisationRoleType

Szín

UpdateOrganisationColorDto

  • color: kötelező hexadecimális szín, #rgb vagy #rrggbb
  • cascadeToResourceTypes: opcionális logikai érték

Példahívások

Az elérhető szervezetek listája

curl "$PRIMECAL_API/api/organisations" \
-H "Authorization: Bearer $TOKEN"

Rendeljen hozzá egy felhasználót szerepkörrel

curl -X POST "$PRIMECAL_API/api/organisations/12/users/assign" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"userId": 42,
"role": "ADMIN"
}'

Frissítse a szervezet színét

curl -X PATCH "$PRIMECAL_API/api/organisations/12/color" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"color": "#14b8a6",
"cascadeToResourceTypes": true
}'

Válasz és viselkedés megjegyzések

  • GET /api/organisations csak azokat a szervezeteket adja vissza, amelyekhez az aktuális felhasználó hozzáférhet.
  • A szervezet-admin vezérlő egyes útvonalai { message, data } borítékot adnak vissza egyszerű entitások helyett.
  • A GET /api/organisations/:id/deletion-preview destruktív kaszkádműveletek előtt használható.

Legjobb gyakorlatok

  • Kezelje a duplikált :id/users útvonalakat átfedő felületekként, és szabványosítsa ügyfelét egy útvonalcsaládon.
  • Használja következetesen a GET /api/organisations/:id/users/list vagy a GET /api/organisations/:id/users-t ahelyett, hogy ugyanazon a kliensen keverné a kettőt.
  • A DELETE /api/organisations/:id/cascade hívása előtt mindig tekintse meg a kaszkádtörlés előnézetét.
  • Az eltávolítási és olvasási munkafolyamatok helyett előnyben részesítse a szerepspecifikus tagsági frissítéseket a /users/assign és a /users/:userId/role használatával.