Poniższy artykuł dotyczy dodawania niestandardowych pól do karty pracownika i uzupełniania ich wartości.



Definiowanie nowych pól:



Pola te możliwe są do zdefiniowania przez administratora systemu:



Mapowanie pól:



Obiekt:


{
    "ID": "27135884-b62d-ec11-ae72-0050f2961de3",
    "Name": "nowe pole",
    "FieldType": "TEXT",
    "Options": "",
    "IsVersioningEnabled": true,
    "IsPowerBiEnabled": false,
    "PermissionToEdit": "DEFAULT",
    "IsRequired": false,
    "ShowDuringAddingEmployee": false
  }

Typy uprawnień:

  • Domyślnie = DEFAULT
  • Kierownik = MANAGER
  • Regionalny = REGIONAL
  • Administrator = ADMIN
  • REST = REST

Typy pól:

  • Pole tekstowe = TEXT
  • Pole wyboru = SINGLE_CHOICE
  • Pole wielokrotnego wyboru = MULTIPLE_CHOICE
  • Data = DATE




Pobierz listę zdefiniowanych pól, GET:

URL: /api/CustomFields


Przykładowa odpowiedź:

 {
    "ID": "cb07e9ae-be2d-ec11-ae72-0050f2961de3",
    "Name": "nowe pole wyboru",
    "FieldType": "SINGLE_CHOICE",
    "Options": "1;2;3",
    "IsVersioningEnabled": true,
    "IsPowerBiEnabled": false,
    "PermissionToEdit": "REST",
    "IsRequired": false,
    "ShowDuringAddingEmployee": false
  }

Status odpowiedzi: 200 OK 




Dodaj nowe pole, PUT:


URL: /api/CustomFields


Format żądania: 

{
  "ID": "string",
  "Name": "string",
  "FieldType": "string",
  "Options": "string",
  "IsVersioningEnabled": true,
  "IsPowerBiEnabled": true,
  "PermissionToEdit": "string",
  "IsRequired": true,
  "ShowDuringAddingEmployee": true
}

Status odpowiedzi: 200 OK




Edytuj istniejące pole, PUT:


URL: /api/CustomFields


Format żądania: 

{
  "ID": "string",
  "Name": "string",
  "FieldType": "string",
  "Options": "string",
  "IsVersioningEnabled": true,
  "IsPowerBiEnabled": true,
  "PermissionToEdit": "string",
  "IsRequired": true,
  "ShowDuringAddingEmployee": true
}

Status odpowiedzi: 200 OK




Pobierz zdefiniowane pole po nazwie pola, GET:

URL: /api/CustomFields/{name}


Przykładowa odpowiedź:

 {
    "ID": "cb07e9ae-be2d-ec11-ae72-0050f2961de3",
    "Name": "nowe pole wyboru",
    "FieldType": "SINGLE_CHOICE",
    "Options": "1;2;3",
    "IsVersioningEnabled": true,
    "IsPowerBiEnabled": false,
    "PermissionToEdit": "REST",
    "IsRequired": false,
    "ShowDuringAddingEmployee": false
  }

Status odpowiedzi: 200 OK 




Usuń istniejące pole, DELETE:


URL: /api/CustomFields/{ID}


Status odpowiedzi: 200 OK





Wartości w zdefiniowanych polach:



Zdefiniowane pola widoczne są w karcie pracownika w zakładce "DANE": 


 

Obiekt:


[
  {
    "ID": "string",
    "CustomFieldGUID": "string",
    "EmpGUID": "string",
    "StringValue": "string",
    "DateValue": "2021-11-02T12:20:56.332Z",
    "DateFrom": "2021-11-02T12:20:56.332Z",
    "DateTo": "2021-11-02T12:20:56.332Z"
  }
]


  • "ID" - ID niestandardowego pola w karcie pracownika z przypisanymi wartościami
  • "CustomFieldGUID" - ID niestandardowego pola
  • "EmpGUID" - ID pracownika



Pobierz obiekt ze zdefiniowanymi wartościami po ID pracownika i po nazwie pola, GET:


URL: /api/{empId}/CustomFieldValues/{customFieldName}


Przykładowa odpowiedź:

[
  {
    "ID": "e1ea125f-dd3b-ec11-981f-0050f296a188",
    "CustomFieldGUID": "bd3d2db6-dc3b-ec11-981f-0050f296a188",
    "EmpGUID": "0c234b27-bb1c-4545-bc54-fd8ea2847b74",
    "StringValue": "120, 125, 130",
    "DateValue": null,
    "DateFrom": null,
    "DateTo": null
  }
]

Status odpowiedzi: 200 OK




Pobierz listę wszystkich pól ze zdefiniowanymi wartościami po nazwie pola, GET:


URL: /api/CustomFieldValues/{customFieldName}


Przykładowa odpowiedź:

[
  {
    "ID": "e1ea125f-dd3b-ec11-981f-0050f296a188",
    "CustomFieldGUID": "bd3d2db6-dc3b-ec11-981f-0050f296a188",
    "EmpGUID": "0c234b27-bb1c-4545-bc54-fd8ea2847b74",
    "StringValue": "120, 125, 130",
    "DateValue": null,
    "DateFrom": null,
    "DateTo": null
  }
]

Status odpowiedzi: 200 OK




Dodaj wartości do nowego pola/Edytuj wartości istniejącego pole, PUT:


URL: /api/{empId}/CustomFieldValues/{customFieldName}


Format żądania:

[
  {
    "ID": "string",
    "CustomFieldGUID": "string",
    "EmpGUID": "string",
    "StringValue": "string",
    "DateValue": "2021-11-02T12:20:56.332Z",
    "DateFrom": "2021-11-02T12:20:56.332Z",
    "DateTo": "2021-11-02T12:20:56.332Z"
  }
]

Status odpowiedzi: 200 OK