/
RC_Update Party verification status (DMS)

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

RC_Update Party verification status (DMS)

Purpose

This WS allows to update current verification status of specified party. Now updating of DRACS death stream verification status is allowed.

Specification

Apiary

Authorization

  • Verify the validity of access token

    • Return (401, 'Invalid access token') in case of validation fails

  • Verify that token is not expired

    • in case of error - return (401, 'Invalid access token')

  • Check user scopes in order to perform this action (scope = 'party_verification:write')

    • Return (403, 'Your scope does not allow to access this resource. Missing allowances: party_verification:write') in case of invalid scope(s)

  • Ensure that requested party has Employee that relate to the legal entity from token:

    • Return 403 ('Access denied') in case of error

Validations

Validate schema

  1. Validate request according to JSON Schema

    • Check presence of extra parameters

      • In case of error - return 422 ('schema does not allow additional properties')

    • Check presence of required parameters

      • In case of error - return 422 ('required property %{property} was not present')

Validate DRACS verification status

  1. Validate $.dracs_death.verification_status

    • Check if $.dracs_death.verification_status value is "VERIFIED" (from PARTY_VERIFICATION_STATUSES dictionary)

      • In case of error - return 422 error ("value is not allowed in enum")

Validate DRACS verification reason

  1. Validate $.dracs_death.verification_reason

    • Check if $.dracs_death.verification_reason value is MANUAL_CONFIRMED” or “MANUAL_NOT_CONFIRMED” from PARTY_VERIFICATION_STATUS_REASONS dictionary

      • in case of error - return 422 ("verification reason (<$.dracs_death.verification_reason>) is not allowed for party DRACS death status")

Validate Party

  • Get Party identifier from the URL

  • Check it exists in prm.parties table

    • Return 404 ('not found') in case of error

  • Check its party verification record exists in prm.party_verifications table

    • Return 404 ('not found') in case of error

  • Check if party.dracs_death.verification_status is equal to “NOT_VERIFIED”

    • in case of error - return 422 (“verification status for employee in <party.dracs_death.verification_status> status can not be updated“)

Service logic

  • Set party DRACS verification status to prm.party_verifications table:

    • party.dracs_death_verification_status = $.dracs_death.verification_status

    • party..dracs_death_verification_reason = $.dracs_death.verification_reason

    • party..dracs_death_verification_comment = $.dracs_death.verification_comment

  • Calculate cumulative verification status based on persons verification status in each stream:
    DRFO registry verification, DRACS death acts registry verification according to logic described at Party verification status model | Cumulative verification status :

    • Set calculated status to prm.party_verifications field

    • Create StatusChangeEvent in event manager with new verification status if it was changed

  • Render a response according to specification

Related content

Update Party verification status
Update Party verification status
More like this
(GraphQL, NHS) Update Person DRACS death verification status
(GraphQL, NHS) Update Person DRACS death verification status
Read with this
RC_Update Person verification status (DRACS 2.0)
RC_Update Person verification status (DRACS 2.0)
More like this
RC_Update Party verification status (DRACS 2.0)
RC_Update Party verification status (DRACS 2.0)
Read with this
Get Person verification details
Get Person verification details
Read with this
Процеси роботи з ручною верифікацією пацієнта
Процеси роботи з ручною верифікацією пацієнта
Read with this

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