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

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 18 Next »

Validate request

  1. Validate request using JSON schema
    1. In case validation failed - generate 422 error
JSON Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "verification_code": {
      "type": "string"
    }
  },
  "required": [
    "verification_code"
  ],
  "additionalProperties": false
}


Authorize user

  1. Verify the validity of access token
  2. Check user scopes declaration_request:write in order to perform this action
    1. In case error - generate 401 response

Get declaration request details

Get declaration request from IL_DB.declaration_request

Determine authorization method

Get authorization_method from IL_DB.declaration_request

SELECT IL_DB.declaration_request.authentication_method
FROM   IL_DB.declaration_request
WHERE IL_DB.declaration_request.id = :id

If authentication_method is NULL - return Error

If authentication_method == OFFLINE - check uploaded documents

If authentication_method IN (SMS, SMS_TRUSTEE) - verify SMS code and check uploaded documents for declaration form

Verify code

Invoke verification module to verify OTP

OTP Verification

Check uploaded documents

Invoke Media Content Storage to check documents exist

Media Content Storage

Check doctor's limit

Get employee.id from declaration request

get party for employee_id

Find all employees in status= 'APPROVED' for the party. Count all declarations in status='active' & declaration_requests in status='APPROVED' for these employees. 

  • If amount of declarations+declaration_requests for party >= parties.declaration_limit and declaration.overlimit is not true
    • return error 422 - This doctor reaches his limit and could not sign more declarations 

Change declaration request status

  1. Change entity status in OPS_DB.declaration_request to APPROVED
  • No labels