ЕСОЗ - публічна документація
[DRAFT] Deactivate Employee [API-005-007-001-0099]
Сторінка знаходиться в процесі розробки. Інформація на ній може бути застарілою.
https://e-health-ua.atlassian.net/wiki/spaces/EN/pages/17591304241 (remove the link block before publishing the document)
- 1 Properties of a REST API method document
- 2 Purpose
- 3 Logic
- 4 Configuration parameters
- 5 Dictionaries
- 6 Input parameters
- 7 Request structure
- 8 Headers
- 9 Request data validation
- 9.1 Authorize
- 10 Processing
- 10.1 Revoke role from users
- 10.1.1 Get active employees
- 10.2 Deactivate declarations
- 10.2.1 Search active declarations
- 10.2.1.1 Search criteria
- 10.2.2 Change declaration status to TERMINATED
- 10.2.3 Dismiss employee from reorganized legal entity
- 10.2.4 Deactivate employee
- 10.2.1 Search active declarations
- 10.1 Revoke role from users
- 11 Response structure examples
- 12 HTTP status codes
- 13 Post-processing processes
- 14 Technical modules where the method is used
Properties of a REST API method document
Document type | Метод REST API |
---|---|
Document title | [DRAFT] Deactivate Employee [API-005-007-001-0099] |
Guideline ID | GUI-0011 |
Author | @ |
Document version | 1 |
Document status | DRAFT |
Date of creation | ХХ.ХХ.ХХХХ (дата фінальної версії документа – RC або PROD) |
Date of update | ХХ.ХХ.ХХХХ (дата зміни версії) |
Method API ID | API-005-007-001-0099 |
Microservices (namespace) | IL |
Component | Employees |
Component ID | COM-005-007 |
Link на API-специфікацію | |
Resource | {{host}}/api/employees/{{id}}/actions/deactivate |
Scope | employee:deactivate |
Protocol type | REST |
Request type | PATCH |
Sync/Async | Sync |
Public/Private | Public |
Purpose
Use this method to deactivate employee.
Employee status chart
Logic
Configuration parameters
N/A
Dictionaries
+DIVISION_TYPE
+DIVISION_STATUS
LEGAL_ENTITY_TYPE_V2
LICENSE_TYPE
+DOCUMENT_TYPE
PHONE_TYPE
COUNTRY
EDUCATION_DEGREE
QUALIFICATION_TYPE
SPECIALITY_TYPE
SPECIALITY_LEVEL
SPEC_QUALIFICATION_TYPE
Input parameters
Input parameter | Mandatory | Type | Description | Example | |
---|---|---|---|---|---|
1 | id |
| String | Required | d290f1ee-6c54-4b01-90e6-d701748f0851 |
2 |
|
|
|
|
|
Request structure
See on API-specification
Headers
Request data validation
Authorize
Verify the validity of access token.
Check user scope employee:deactivate in order to perform this action
In case error - return 401 error.
Validate transition according to Available transitions.
Deactivation of an employee is possible if parameters have the following values: is_active = true & status = APPROVED.
Processing
Revoke role from users
Get active employees
Invoke PRM API to get list of employees by legal_entity_id, party_id, employee_type
If found only current employee - Revoke role from user
Deactivate declarations
Invoke OPS_DB API to deactivate declarations
Search active declarations
Search active declarations in OPS_DB.declaration using {employee_id}
Search criteria
WHERE OPS_DB.declaration.employee_id = :employee_id
AND OPS_DB.declaration.status = 'ACTIVE'
Change declaration status to TERMINATED
Change declarations status in OPS_DB.declaration to {TERMINATED} for all found declarations
SET OPS_DB.declaration.status = 'TERMINATED'
WHERE OPS_DB.declaration.id in (:LIST)
Dismiss employee from reorganized legal entity
If an employee moved to a new legal entity during the reorganization, his old record (with the same speciality_officio) with the declaration, remain active in the reorganized legal entity.
The owner of the legal successor legal entity can dismiss this employee if necessary. See more details about reorganization process.
If employee id relates to $.related_legal_entities.merged_from_id legal entity OWNER can dismiss this employee
in case no employees were found return 404 with msg (Employee not found)
Deactivate employee
Invoke PRM API to update employee
Parameter | Source | Condition, Action |
---|---|---|
employee_id | Request parameter: $.employee_id |
|
end_date |
|
|
is_active |
| if employee_type in (OWNER, PHARMACY_OWNER) set is_active = false if employee_type ! in (OWNER, PHARMACY_OWNER) is_active not update |
status |
| if employee_type in ( OWNER, PHARMACY_OWNER) status not update if employee_type ! in (OWNER, , PHARMACY_OWNER) set status = DISMISSED |
Response structure examples
See on API-specification
HTTP status codes
Response code | HTTP Status code | Message | Internal name | Description | |
---|---|---|---|---|---|
1 | Базові | ||||
2 |
| 200 | Response |
|
|
3 |
| 401 | Error |
|
|
4 |
| 401 | Invalid access token |
|
|
5 |
| 401 | Invalid scope |
|
|
6 |
| 403 | Invalid transition |
|
|
7 |
| 404 | Employee not found |
|
|
8 | Специфічні | ||||
9 |
|
|
|
|
|
Post-processing processes
N/A
Technical modules where the method is used
ЕСОЗ - публічна документація