...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
Table of Contents |
---|
Purpose
Specification
Apiary TBD
Service logic
...
Table of Contents |
---|
Purpose
API paragraph not found
Specification
Page Properties | |||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||
|
Logic
Only authenticated and authorized HR, ADMIN, OWNER employees from MSP, OUTPATIENT, PRIMARY_CARE, EMERGENCY legal
...
entities can deactivate equipments.
Only ACTIVE equipment can be deactivated
Legal entity can deactivate only its own equipments
...
Input parameters
Input parameter | Values | Type | Description | Example |
---|---|---|---|---|
id |
| String | Equipment identifier. Required | d290f1ee-6c54-4b01-90e6-d701748f0851 |
Request structure
API paragraph not found
Authorize
Verify the validity of access token
Return 401 in case validation fails
Check scopes in order to perform this action (scope = 'equipment:write')
Return 403 in case invalid scope(s)
Headers
Наприклад:
Content-Type:application/json
Authorization:Bearer c2778f3064753ea70de870a53795f5c9
api-key:uXhEczJ56adsfh3Ri9SUkc4en
Request data validation
Validate legal entity
Check that legal entity is active (status = ACTIVE, SUSPENDED)
...
Extract client_id
...
from token (token.client_id == legal_entity_id)
Check legal entity status (status = ACTIVE, SUSPENDED)
In case of error - return 409 (Legal entity must be ACTIVE or SUSPENDED)
Validate equipment
Check that equipment with such ID exists in the system (is_active = true)
In case of error - return 404
Check that equipment belongs to the same legal entity as the user
In case of error - return 403
Validate transition
Only ACTIVE equipment can be deactivated
Available transitions
ACTIVE → INACTIVE
In other cases - return 409 error with message "
...
INACTIVE equipment cannot be DEACTIVATED"
Processing
Update object in DB
1. equipments
...
2. division_equipment table
...
table
Patameter | Source | Description |
---|---|---|
status | Const: INACTIVE | By default INACTIVE for deactivated records |
updated_at | Timestamp: now() | Get current date-time |
updated_by | Token: user_id | Extract user from token |
Save object to DB
1. equipment_status_hstr
...
table
Parameter | Source | Description |
---|---|---|
id | UUID | Autogenerated |
equipment_id | UUID | Reference to equipments.id |
status | Const: INACTIVE | By default INACTIVE for deactivated records |
inserted_by | Token: user_id | Extract user from token |
inserted_at | Timestamp: now() | Get current date-time |
Response structure
Example:
Expand | ||
---|---|---|
| ||
|
HTTP status codes
Page Properties | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||
|