Versions Compared

Key

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

...

This WS is designed to create new healthcare service for division of legal entity.

Key points

  1. Only authenticated and authorized user with appropriate scope can create healthcare service.

  2. Healthcare service can be created for PRIMARY_CARE, EMERGENCY, OUTPATIENT or PHARMACY legal entity.

  3. Healthcare service can be created for legal entities in ACTIVE or SUSPENDED statuses.

  4. It can be only one active healthcare service for the single healthcare service, division, category, speciality and providing condition.

  5. It can be only one active healthcare service for the single healthcare service, division, category and type.

Specification

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

ePrescription

Зазначається перелік бізнес компонентів, які використовують цей метод, наприклад: 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;

Preconditions

API paragraph not found

...

  • 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“)

...