W poniższym artykule zostaną omówione umowy pracownika. Można je sprawdzić przechodząc do edycji wybranego pracownika w menu "Pracownicy".W widoku karty pracownika należy przejść do zakładki "UMOWA", w której przechowywana jest lista wszystkich umów danego pracownika.


Mapowanie pól:

Obiekt:


{
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "empID": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "salary": 0,
    "isGrossSalary": true,
    "taxSalary": 0,
    "time": 0,
    "minHours": 0,
    "maxHours": 0,
    "contractType": "string",
    "start": "2023-11-20T11:48:37.407Z",
    "end": "2023-11-20T11:48:37.407Z",
    "workSystem": 0,
    "accountingPeriodLength": 0,
    "accountingPeriodStart": "2023-11-20T11:48:37.407Z",
    "defaultAbsenceStartTime": 0
  }

ContractType- mapowanie ( wartość w obiekcie -> co reprezentuje):

  • PERMANENT -> umowa na czas nieokreślony
  • CONTRACT -> umowa zlecenie
  • FIXED_TIME -> umowa na czas określony
  • TRY -> okres próbny
  • OUTSOURCING -> outsourcing
  • TASKS -> umowa na czas określony- tryb zadaniowy
  • TASKS_PERMANENT -> umowa na czas nieokreślony- tryb zadaniowy
  • MANAGER_TRY -> umowa o pracę okres próbny- kierownik jednostki organizacyjnej
  • MANAGER_FIXED_TIME -> umowa na czas określony- kierownik jednostki organizacyjnej
  • MANAGER_PERMANENT -> umowa na czas nieokreślony- kierownik jednostki organizacyjnej
  • CONTRACT_FOREIGNER -> obcokrajowiec
  • TASKS_TRIAL -> umowa o pracę na okres próbny- tryb zadaniowy

Pobierz listę umów danego pracownika, GET:

URL: /api/Employees/{EmpID}/Contracts


Przykładowa odpowiedź:

[
    {
        "Id": "2aafd281-c061-ee11-a0b3-00f48deb30f8",
        "EmpID": "b207ee97-debd-4552-8592-5a2b3430d7d4",
        "Salary": 50.0,
        "IsGrossSalary": true,
        "TaxSalary": 61.12,
        "Time": 1.0,
        "MinHours": 4.0,
        "MaxHours": 12.0,
        "ContractType": "FIXED_TIME",
        "Start": "2021-12-01T00:00:00",
        "End": "2024-08-01T00:00:00",
        "WorkSystem": 12,
        "AccountingPeriodLength": 2,
        "AccountingPeriodStart": "2000-01-01T00:00:00",
        "DefaultAbsenceStartTime": 8
    }
]


Status odpowiedzi: 200 OK



Dodaj pracownikowi umowę, POST:

URL: /api/Employees/{EmpID}/Contracts


Format żądania:

{
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "empID": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "salary": 0,
    "isGrossSalary": true,
    "taxSalary": 0,
    "time": 0,
    "minHours": 0,
    "maxHours": 0,
    "contractType": "string",
    "start": "2023-11-20T11:48:37.407Z",
    "end": "2023-11-20T11:48:37.407Z",
    "workSystem": 0,
    "accountingPeriodLength": 0,
    "accountingPeriodStart": "2023-11-20T11:48:37.407Z",
    "defaultAbsenceStartTime": 0
  }


Status odpowiedzi: 201 Created


W odpowiedzi, w nagłówku "location" przechowywany jest adres umożliwiający pobranie stworzonej umowy, schemat- /api/Employees/{EmpID}/Contracts/{Id}




Pobierz konkretną umowę pracownika, GET:

URL: /api/Employees/{EmpID}/Contracts/{Id}


Przykładowa odpowiedź:

[
    {
        "Id": "2aafd281-c061-ee11-a0b3-00f48deb30f8",
        "EmpID": "b207ee97-debd-4552-8592-5a2b3430d7d4",
        "Salary": 50.0,
        "IsGrossSalary": true,
        "TaxSalary": 61.12,
        "Time": 1.0,
        "MinHours": 4.0,
        "MaxHours": 12.0,
        "ContractType": "FIXED_TIME",
        "Start": "2021-12-01T00:00:00",
        "End": "2024-08-01T00:00:00",
        "WorkSystem": 12,
        "AccountingPeriodLength": 2,
        "AccountingPeriodStart": "2000-01-01T00:00:00",
        "DefaultAbsenceStartTime": 8
    }
]


Status odpowiedzi: 200 OK



Edytuj istniejącą umowę, PUT:

URL: /api/Employees/{EmpID}/Contracts/{Id}


Przykładowy format żądania:

[
    {
        "Id": "2aafd281-c061-ee11-a0b3-00f48deb30f8",
        "EmpID": "b207ee97-debd-4552-8592-5a2b3430d7d4",
        "Salary": 50.0,
        "IsGrossSalary": true,
        "TaxSalary": 61.12,
        "Time": 1.0,
        "MinHours": 4.0,
        "MaxHours": 12.0,
        "ContractType": "FIXED_TIME",
        "Start": "2021-12-01T00:00:00",
        "End": "2024-08-01T00:00:00",
        "WorkSystem": 12,
        "AccountingPeriodLength": 2,
        "AccountingPeriodStart": "2000-01-01T00:00:00",
        "DefaultAbsenceStartTime": 8
    }
]

Status odpowiedzi: 200 OK



Usuń umowę, DELETE:

URL: /api/Employees/{EmpID}/Contracts/{Id}


Status odpowiedzi: 200 OK