Skip to content

Commit 2665e19

Browse files
committed
feat: add ability to configure sigmax return state
1 parent aa80cc2 commit 2665e19

File tree

3 files changed

+21
-2
lines changed

3 files changed

+21
-2
lines changed

app/signals/apps/sigmax/stuf_protocol/incoming/actualiseerZaakstatus_Lk01.py

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import logging
88
import re
99

10+
from django.conf import settings
1011
from django.core.exceptions import ValidationError
1112
from django.shortcuts import render
1213
from lxml import etree
@@ -105,9 +106,20 @@ def _update_status_actualiseerZaakstatus_Lk01(signal, request_data):
105106
Note: this is the happy flow, only happens when the Signal was in the
106107
expected state in SIA --- else see _add_note_actualiseerZaakstatus_Lk01.
107108
"""
108-
status_text = _get_status_text_actualiseerZaakstatus_Lk01(request_data)
109+
resultaat_text = request_data.get('resultaat', '').strip()
110+
111+
if settings.SIGMAX_END_STATE_IS_AFGEHANDELD and resultaat_text == 'afgerond':
112+
set_status_to_afgehandeld = True
113+
note_text = _get_status_text_actualiseerZaakstatus_Lk01(request_data)
114+
status_text = settings.SIGMAX_END_STATE_IS_AFGEHANDELD_STATUS_TEXT
115+
else:
116+
set_status_to_afgehandeld = False
117+
note_text = None
118+
status_text = _get_status_text_actualiseerZaakstatus_Lk01(request_data)
119+
109120
status_data = {
110-
'state': workflow.AFGEHANDELD_EXTERN,
121+
'state': workflow.AFGEHANDELD if set_status_to_afgehandeld else workflow.AFGEHANDELD_EXTERN,
122+
'send_email': True if set_status_to_afgehandeld else False,
111123
'text': status_text,
112124
'extra_properties': {
113125
'sigmax_datum_afgehandeld': request_data['datum_afgehandeld'],
@@ -116,6 +128,10 @@ def _update_status_actualiseerZaakstatus_Lk01(signal, request_data):
116128
}
117129
}
118130

131+
if note_text:
132+
note_data = {'text': note_text}
133+
Signal.actions.create_note(note_data, signal)
134+
119135
# We let exceptions bubble up (must lead to a error message to CityControl).
120136
Signal.actions.update_status(data=status_data, signal=signal)
121137

app/signals/apps/signals/workflow.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,7 @@
119119
],
120120
VERZONDEN: [
121121
AFGEHANDELD_EXTERN,
122+
AFGEHANDELD,
122123
GEANNULEERD, # SIG-2987
123124
],
124125
VERZENDEN_MISLUKT: [

app/signals/settings.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -378,6 +378,8 @@ def is_super_user(user) -> bool:
378378
SIGMAX_CLIENT_CERT: str | None = os.getenv('SIGMAX_CLIENT_CERT', None)
379379
SIGMAX_CLIENT_KEY: str | None = os.getenv('SIGMAX_CLIENT_KEY', None)
380380
SIGMAX_SEND_FAIL_TIMEOUT_MINUTES: str | int = os.getenv('SIGMAX_SEND_FAIL_TIMEOUT_MINUTES', 60*24) # noqa Default is 24hrs.
381+
SIGMAX_END_STATE_IS_AFGEHANDELD: bool = os.getenv('SIGMAX_END_STATE_IS_AFGEHANDELD', False) in TRUE_VALUES
382+
SIGMAX_END_STATE_IS_AFGEHANDELD_STATUS_TEXT: str = os.getenv('SIGMAX_END_STATE_IS_AFGEHANDELD_STATUS_TEXT', 'We hebben uw melding opgelost. Bedankt voor het doorgeven!')
381383

382384
# Child settings
383385
SIGNAL_MAX_NUMBER_OF_CHILDREN: int = 10

0 commit comments

Comments
 (0)