7.8. Approve delete block request
| Name | Approve delete block request |
|---|---|
| Purpose | Allow Approver to validate a block delete request |
| Linked user stories |
4.48. Approver - Approve deleted block request 4.53. Organisation Approver - Approve deleted block request for organisation |
| APIs used | PUT /blocks/<block-id>/approve PUT /blocks/<block-id>/reject PUT or PATCH /blocks/<block-id> |
| Scope | This process only handles the validation of an already created block deletion request |
| Roles | System, Approver / Global Approver |
| Input | - id of the block that is marked for deletion - optionally the information to amend |
| Output | - confirmation that the update request has been approved/rejected |
Detailed Process description
Main Process
| Step | Description | Actor(s) | Input(s) | Output(s) | Decision points |
|---|---|---|---|---|---|
| 1 | The System sends out notifications to the Global approvers and organisation approvers, indicating that an approval a pending. | System | - Outside trigger (e.g. Editor sent a delete request) | - notification to the Global and organisation Approvers | |
| 2 | The Approver verifies if the block can be deleted | Approver | - Block deletion request | - yes / no | If the site can be deleted: Go to step 3 Else: Go to secondary process S.1 |
| 3 | The System verifies if the site has other blocks than the one being deleted | System | - Block to be deleted | - yes / no | If the site has more blocks: Go to step 4 Else: Go to E.1 |
| 4 | The System marks the block with the flag “is_deleted = true” and adds the information on the date of validation and the user that validated the request | System | - block with flag “marked_for_deletion = true” | - block with flag “is_deleted = true” - approver set to the user that triggered the approval - approval date set to the current date |
|
| 4 | The System sets all the objects linked to the block with the flag “is_deleted = true” (units, equipments). | System | - block | - all linked objects marked with the flag “is_deleted = true” | |
| 5 | The System creates validated update requests with the flag “is_deleted = true” for each active physical link that are connected to at least one unit of the block. | System | - block | - new validated physical links with the flag “is_deleted = true” for each active physical link that links at least one unit of the deleted block | |
| 6 | The Approver gets a confirmation that the approval has been applied | Approver | - confirmation of the validation |
Secondary Processes
S.1. Delete block request rejected
| Step | Description | Actor(s) | Input(s) | Output(s) | Decision points |
|---|---|---|---|---|---|
| 1 | The System removes the mark_for_deletion tag from the block entry | System | - block marked for deletion | - block with the flag “mark_for_deletion = false” | |
| 2 | The Approver gets a confirmation that the deletion rejection has been applied | Approver | - deletion request rejection confirmation |
Error Processes
E.1. Last block can’t be deleted
| Step | Description | Actor(s) | Input(s) | Output(s) | Decision points |
|---|---|---|---|---|---|
| 1 | The Approver gets an error indicating that the last block of a site cannot be deleted | System | - Error: last block can’t be deleted |
Exceptions
[400 Bad Request] Invalid input:
If mandatory fields are missing or invalid, the system returns an error message. If some addresses do not exist in the system, this is also considered as a bad request.
[404 Not Found] Block not found
Error returned by the system if the block is not found.
[409 Conflict] Block not marked for deletion
Error returned by the system if the block being validated is not marked for deletion.
[500 Internal Server Error] System Error
If the system fails to save changes due to an internal error, it displays an appropriate message and logs the error for further investigation.

No comments to display
No comments to display