Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

Purpose

Use this method to deactivate employee.

Employee status chartSee on related page.

Specification

Page Properties

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

API paragraph not found

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

Protocol type

REST

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

Request type

PATCH

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

Sync/Async

Sync

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

Logic

...

Preconditions

API paragraph not found

Global and configurable parameters

No

Public/Private/Internal

Public

Logic

...

Input parameters

Input parameter

Values

Type

Description

Example

id

String

Required

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

Filters

No

Dictionaries

API paragraph not found

Request structure

API paragraph not found

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
Code Block
languagesql
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

Code Block
languagesql
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.

  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

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

See on Apiary

Example:

Expand
titleResponse example
Code Block
{
  "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"
      }
    }
  }
}

Post-processing processes

API paragraph not found

HTTP status codes

Page Properties

HTTP status code

Message

What caused the error

200

Response

 

401

  1. Invalid access token

  2. Error

2 Check of the user`s scope failed. Invalid scope

403

Invalid transition

404

Employee not found

Backward compatibility

API paragraph not found