Versions Compared

Key

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

Purpose

...

Page Properties

Link

https://ehealthmisapi1.docs.apiary.io/#reference/public.-medical-service-provider-integration-layer/healthcare-services/create-healthcare-service

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

Resource

/api/healthcare_services

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

Scope

healthcare_service:write

Scope для доступу

Components

ePrescriptionHealthcare services

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

Microservices

API paragraph not found

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

Protocol type

REST

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

Request type

POST

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

Sync/Async

Sync

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

Logic

  1. Save new healthcare service in healthcare_services table (PRM DB) with data from request and additional fields:

    1. id = autogenerated;

    2. legal_entity_id = client_id from access token;

    3. status = ACTIVE;

    4. is_active = true;

    5. inserted_at = now();

    6. inserted_by = user_id from access token;

    7. updated_at = now();

    8. updated_by = user_id from access token;

...

  • Check that there is no another record with the same healthcare service, division_id, speciality type and providing condition

    • in case of error - return 409 (“division_id, speciality_type and providing_condition combination should be unique”)

  • Check that there is no another record with the same healthcare service, division_id, category and type

    • in case of error - return 409 (“division_id, category and type combination should be unique”)

  • Check that there is no another record with the same healthcare service, division_id and category = ‘PHARMACY’

    • in case of error - return 409 (“division_id and category = PHARMACY combination should be unique”)

Validate available time

  • If $.all_day = true, check that fields available_start_time and available_end_time does not exist in request

    • in case of error - return 422 (“Should not be present when all_day = true“)

  • If all_day = false, check that fields available_start_time and available_end_time exist in request

    • in case of error - return 422 (“Should be present when all_day = false“)

...