ЕСОЗ - публічна документація

Deactivate Employee

Purpose

Use this method to deactivate employee.

Employee status chart

Specification

Link

https://ehealthmisapi1.docs.apiary.io/#reference/public.-medical-service-provider-integration-layer/employees/deactivate-employee

Посилання на Apiary або Swagger

Resource

/api/employees/{{id}}/actions/deactivate

Посилання на ресурс, наприклад: /api/persons/create

Scope

employee:deactivate

Scope для доступу

Components

Employees, Legal Entity, Divisions

Зазначається перелік бізнес компонентів, які використовують цей метод, наприклад: ePrescription

Microservices

il/api

Перелік мікросервісів, які використовує метод API, наприклад: Auth, ABAC

Protocol type

REST

Тип протоколу, який використовується запитом, наприклад: SOAP | REST

Request type

PATCH

Тип запиту API, наприклад: GET, POST, PATCH…

Sync/Async

Sync

Метод є синхронним чи асинхронним?

Public/Private/Internal

Public

 

Logic

Input parameters

Input parameter

Values

Type

Description

Example

Input parameter

Values

Type

Description

Example

id

 

String

Required

d290f1ee-6c54-4b01-90e6-d701748f0851

 

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

Authorize

  1. Verify the validity of access token.

  2. Check user scope employee:deactivate in order to perform this action

    1. In case error - return 401 error.

Headers

Content-Type:application/json

Authorization:Bearer c2778f3064753ea70de870a53795f5c9

Request data validation

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)

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.

  1. If employee id relates to $.related_legal_entities.merged_from_id legal entity OWNER can dismiss this employee

    1. 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

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

Example:

{ "meta": { "code": 200, "url": "https://example.com/resource", "type": "object", "request_id": "req-adasdoijasdojsda" }, "data": { "id": "d290f1ee-6c54-4b01-90e6-d701748f0851", "position": "P8", "start_date": "2017-03-02T10:45:16.000Z", "end_date": "2018-03-02T10:45:16.000Z", "status": "APPROVED", "is_active": true, "employee_type": "DOCTOR", "party": { "id": "b075f148-7f93-4fc2-b2ec-2d81b19a9b7b", "first_name": "Петро", "last_name": "Іванов", "second_name": "Миколайович", "birth_date": "1991-08-19T00:00:00.000Z", "gender": "MALE", "no_tax_id": false, "tax_id": "3126509816", "documents": [ { "type": "PASSPORT", "number": "АА120518", "issued_by": "Рокитнянським РВ ГУ МВС Київської області", "issued_at": "2017-02-28" } ], "phones": [ { "type": "MOBILE", "number": "+380503410870" } ], "working_experience": 10, "about_myself": "Закінчив всі можливі курси", "declaration_limit": 0, "declaration_count": 0 }, "doctor": { "educations": [ { "country": "UA", "city": "Київ", "institution_name": "Академія Богомольця", "issued_date": "2017-02-28", "diploma_number": "DD123543", "degree": "MASTER", "speciality": "Педіатр" } ], "qualifications": [ { "type": "SPECIALIZATION", "institution_name": "Академія Богомольця", "speciality": "Педіатр", "issued_date": "2017", "certificate_number": "2017", "valid_to": "2017", "additional_info": "додаткова інофрмація" } ], "specialities": [ { "speciality": "THERAPIST", "speciality_officio": true, "level": "FIRST", "qualification_type": "AWARDING", "attestation_name": "Академія Богомольця", "attestation_date": "2017-02-28", "valid_to_date": "2020-02-28", "certificate_number": "AB/21331" } ], "science_degree": { "country": "UA", "city": "Київ", "degree": "", "institution_name": "Академія Богомольця", "diploma_number": "DD123543", "speciality": "Педіатр", "issued_date": "2017" } }, "division": { "id": "d290f1ee-6c54-4b01-90e6-d701748f0851", "name": "Бориспільське відділення Клініки Ноунейм", "legal_entity_id": "d290f1ee", "type": "CLINIC", "status": "ACTIVE", "mountain_group": false, "dls_id": "2872985", "dls_verified": true, "legal_entity": { "id": "b075f148-7f93-4fc2-b2ec-2d81b19a9b7b", "name": "Клініка Ноунейм", "short_name": "Ноунейм", "public_name": "Клініка Ноунейм", "type": "MSP", "edrpou": "5432345432", "status": "ACTIVE" } } } }

HTTP status codes

HTTP status code

Message

What caused the error

HTTP status code

Message

What caused the error

200

Response

 

401

  1. Invalid access token

  2. Error

2. Invalid scope

403

Invalid transition

 

404

Employee not found

 

ЕСОЗ - публічна документація