Poniższy artykuł dotyczy absencji pracowników. Pracowników możesz znaleźć logując się do aplikacji jako super admin lub admin oddziału. Następnie przejdź do zakładki "PRACOWNICY" dostępnej w górnym menu. 

W nowym widoku ukaże Ci się lista pracowników, którymi możesz zarządzać. Każdego z nich możesz edytować przyciskiem "EDTYUJ", gdzie następnie możesz sprawdzić absencje wybranego pracownika lub je zmienić.


Przykładowy podgląd absencji:


Typy absencji możliwe są do zdefiniowania przez super administratora:



Obiekt absencji składa się z nastepujących pól:

{
  "Id": "string",
  "EmpId": "string",
  "StartDate": "2020-09-30T08:25:35.656Z",
  "EndDate": "2020-09-30T08:25:35.656Z",
  "Hours": 0,
  "Code": "string",
  "OnDemand": true
}


Pole "Id" reprezentuje ID po stronie grafika.
Pole "EmpId" określa id pracownika do którego przypisujemy absencję.


Pobieranie listy absencji dla pracownika, GET:

URL: /api/Employees/{EmpId}/EmpLeaves

lub

URL: /api/Employees/{EmpExternalID}/EmpLeaves

{EmpId} = ID pracownika

{EmpExternalID} = zewnętrzne ID pracownika


Przykładowa odpowiedź:

JavaScript
[
    {
        "Id": "83b074b2-3e02-eb11-96f5-000d3a208830",
        "EmpId": "0892901b-604b-40da-8830-25ff2effd481",
        "StartDate": "2020-09-29T00:00:00",
        "EndDate": "2020-09-29T23:59:59",
        "Hours": 0,
        "Code": "",
        "Payable": null,
        "TcId": null,
        "OnDemand": false
    }
]


Status odpowiedzi: 200 OK


Tworzenie absencji, POST:

URL: /api/Employees/{EmpId}/EmpLeaves

lub

URL: /api/Employees/{EmpExternalID}/EmpLeaves

{EmpId} = ID pracownika

{EmpExternalID} = zewnętrzne ID pracownika


Format żądania:

JavaScript
{
	"Code": "DEL",
	"EndDate": "2020-11-30T00:00:00",
	"ForceHours": 19.2,
	"Id": "",
	"OnDemand": "false",
	"StartDate": "2020-11-21T00:00:00"
}

Gdzie Pole Code - zawiera kod absencji dla zdefiniowanego wcześniej typu (patrz wyżej: Definiowanie typów absencji)

"ForceHours" = długość absencji dla wartości większej od 0, dla wartości 0 długość absencji wyliczana z planu pracy


Status odpowiedzi:

W nagłówku "location" przechowywany jest URL służący do pobierania/usuwania konkretnej absencji (metoda GET/DELETE) 

Pobieranie konkretnej absencji, GET:

URL: /api/Employees/{EmpId}/EmpLeaves/{IdAbsencji}

lub

URL: /api/Employees/{EmpExternalID}/EmpLeaves/{IdAbsencji}

{EmpId} = ID pracownika

{EmpExternalID} = zewnętrzne ID pracownika


Przykładowa odpowiedź:

HTML
{
    "Id": "b9747869-f902-eb11-96f5-000d3a208830",
    "EmpId": "0892901b-604b-40da-8830-25ff2effd481",
    "StartDate": "2020-08-21T00:00:00",
    "EndDate": "2020-08-31T23:59:59",
    "Hours": 0,
    "Code": "",
    "Payable": "N",
    "TcId": "5441402",
    "OnDemand": false
}

Status odpowiedzi: 200 OK


Usuwanie absencji, DELETE:

URL: /api/Employees/{EmpId}/EmpLeaves/{IdAbsencji}

lub

URL: /api/Employees/{EmpExternalID}/EmpLeaves/{IdAbsencji}

{EmpId} = ID pracownika

{EmpExternalID} = zewnętrzne ID pracownika



Pobieranie listy ostatnio usuniętych absencji:

URL GET: /api/DeletedAbsences?take=100&skip=0

Przykład odpowiedzi:

[
    {
        "DeAGID": "12241ac5-13ba-eb11-bf7d-4c1d965e0091",
        "DeAEmployeeGID": "40f1a4bc-f199-4e45-85e5-45ff01deb89c",
        "DeAAbsenceGID": "ab01a7fe-99a9-eb11-bf78-4c1d965e0091",
        "DeAEmployeeSubCompanyName": "f1"
    },
    {
        "DeAGID": "4b741534-14ba-eb11-bf7d-4c1d965e0091",
        "DeAEmployeeGID": "40f1a4bc-f199-4e45-85e5-45ff01deb89c",
        "DeAAbsenceGID": "2fd34ed7-13ba-eb11-bf7d-4c1d965e0091",
        "DeAEmployeeSubCompanyName": "f2"
    }
]

Informację o usuniętych absencjach można usunąć:

URL DELETE: /api/DeletedAbsences/{DeAGID} 

lub dla wielu  

URL DELETE: /api/DeletedAbsences/ z body ['12241ac5-13ba-eb11-bf7d-4c1d965e0091', '4b741534-14ba-eb11-bf7d-4c1d965e0091']



Pobieranie listy ostatnio dodanych absencji:

URL GET: /api/EmpLeaves?start=2000-01-01&end=2022-01-01&checkfrom=2000-01-01 

Przykład odpowiedzi:

[
    {
        "Id": "6290d864-5d18-eb11-bf5c-f875a4314864",
        "EmpId": "8d9cb9c9-7227-49c4-b02f-07348e8829b1",
        "StartDate": "2020-08-03T00:00:00",
        "EndDate": "2020-08-04T23:59:59",
        "Hours": 0.0,
        "Code": "UW",
        "Payable": null,
        "TcId": null,
        "OnDemand": false,
        "Company": "nowa grupa"
    },
    {
        "Id": "7a4e0d13-3523-eb11-bf5d-f875a4314864",
        "EmpId": "f879fef7-eb1c-45d1-8c9f-c3383b580280",
        "StartDate": "2020-11-02T00:00:00",
        "EndDate": "2020-11-03T23:59:59",
        "Hours": 0.0,
        "Code": "UW",
        "Payable": null,
        "TcId": null,
        "OnDemand": false,
        "Company": "Dział główny"
    }
]