GetWorkersRequestDto
Filters for GET Api/Workers. Every field except pagination is optional — an absent field means the condition is not applied.
statusFilter.available is the universe the counts are computed over, statusFilter.selected is the choice; an absent or empty selected means every status. The counts describe the slice left by the other filters, not the whole table.
Address filters (city, postalCode, street, house, regionCodeIds, addressTypes, addressComment) match if ANY of the worker's addresses matches — a worker can have several.
Backend-источник: core.businesslogicservice/Core.BusinessLogicService/Nuget.BusinessApiClient/Dto/Worker/Request/GetWorkersRequestDto.cs (core.businesslogicservice).
Поля
| Поле | Тип (TS) | Обязательное | Описание | Тип (C#) |
|---|---|---|---|---|
pagination | Pagination | да | — | Pagination |
statusFilter | PaginationFilter<WorkerStatusDto> | нет | Status facet. available is the universe the counts are computed over, selected is the choice; an absent or empty selected means every status, so no condition is applied. | — |
inBlackList | boolean | нет | Omitted or false excludes blacklisted workers, which is the historical behaviour of this endpoint. true returns only blacklisted ones, making GET Api/Workers/InBlackList redundant. | — |
firstName | string | нет | Prefix match on the first name. | — |
lastName | string | нет | Prefix match on the last name. | — |
createdAt | PaginationRangeFilter<string> | нет | ISO 8601 range over the creation timestamp. | — |
updatedAt | PaginationRangeFilter<string> | нет | ISO 8601 range over the last-update timestamp. Workers never updated are excluded. | — |
genders | GenderParam[] | нет | — | — |
birthDate | PaginationRangeFilter<string> | нет | ISO date (yyyy-MM-dd) range over the birth date. | — |
nationality | string | нет | Prefix match on the nationality. | — |
religion | string | нет | Prefix match on the religion. | — |
employmentTypes | EmploymentTypeParam[] | нет | — | — |
referralSources | ReferralSourceDto[] | нет | — | — |
transportTypes | TransportTypeParam[] | нет | Matches workers having any of the listed transport types. | — |
isStaffed | boolean | нет | — | — |
isAvailableForClients | boolean | нет | — | — |
isTrained | boolean | нет | — | — |
hasCertificate | boolean | нет | — | — |
hasExperience | boolean | нет | — | — |
hasAllergy | boolean | нет | — | — |
childs | boolean | нет | — | — |
workWithMen | boolean | нет | — | — |
workWithWomen | boolean | нет | — | — |
maxClientsCount | PaginationRangeFilter<number> | нет | — | — |
paidVacationPerYearCount | PaginationRangeFilter<number> | нет | — | — |
contractSignedDate | PaginationRangeFilter<string> | нет | ISO date (yyyy-MM-dd) range. | — |
contractTerminationDate | PaginationRangeFilter<string> | нет | ISO date (yyyy-MM-dd) range. | — |
goToWorkDate | PaginationRangeFilter<string> | нет | ISO date (yyyy-MM-dd) range. | — |
city | string | нет | Prefix match on any of the worker addresses. | — |
postalCode | string | нет | Prefix match on any of the worker addresses. | — |
street | string | нет | Prefix match on any of the worker addresses. | — |
house | string | нет | Prefix match on any of the worker addresses. | — |
regionCodeIds | number[] | нет | — | — |
addressTypes | WorkerAddressTypeParam[] | нет | — | — |
ratePerHourIds | number[] | нет | — | — |
rate | PaginationRangeFilter<number> | нет | Range over the hourly rate of the assigned tariff. | — |
userId | number | нет | — | — |
phoneNumber | string | нет | Exact match against the linked phone contacts. Normalized before comparison (digits only, 49-prefixed), so +49 221 12345 and 0221 12345 both work, but a partial number does not match. | — |
email | string | нет | Exact match against the linked email contacts. Stored as a value object, so a partial address does not match — pass the full address. | — |
comment | string | нет | Substring match on the general comment. | — |
availabilityComment | string | нет | Substring match on the availability comment. | — |
applicationComment | string | нет | Substring match on the application comment. | — |
allergyComment | string | нет | Substring match on the allergy comment. | — |
addressComment | string | нет | Substring match on the comment of any of the worker addresses. | — |
Пример
json
{
"pagination": "<Pagination>",
"statusFilter": "<PaginationFilter<WorkerStatusDto>>",
"inBlackList": false,
"firstName": "string",
"lastName": "string",
"createdAt": "<PaginationRangeFilter<string>>",
"updatedAt": "<PaginationRangeFilter<string>>",
"genders": [],
"birthDate": "<PaginationRangeFilter<string>>",
"nationality": "string",
"religion": "string",
"employmentTypes": [],
"referralSources": [],
"transportTypes": [],
"isStaffed": false,
"isAvailableForClients": false,
"isTrained": false,
"hasCertificate": false,
"hasExperience": false,
"hasAllergy": false,
"childs": false,
"workWithMen": false,
"workWithWomen": false,
"maxClientsCount": "<PaginationRangeFilter<number>>",
"paidVacationPerYearCount": "<PaginationRangeFilter<number>>",
"contractSignedDate": "<PaginationRangeFilter<string>>",
"contractTerminationDate": "<PaginationRangeFilter<string>>",
"goToWorkDate": "<PaginationRangeFilter<string>>",
"city": "string",
"postalCode": "string",
"street": "string",
"house": "string",
"regionCodeIds": [],
"addressTypes": [],
"ratePerHourIds": [],
"rate": "<PaginationRangeFilter<number>>",
"userId": 0,
"phoneNumber": "+49123456789",
"email": "user@example.com",
"comment": "string",
"availabilityComment": "string",
"applicationComment": "string",
"allergyComment": "string",
"addressComment": "string"
}