diff options
| author | Paul-Christian Volkmer | 2026-04-22 15:50:45 +0200 |
|---|---|---|
| committer | GitHub | 2026-04-22 13:50:45 +0000 |
| commit | a7d57581591c23fd1fd0ad0f4e8f9c6ce2745750 (patch) | |
| tree | 28c70a85e124975c513b8a5f411c7d3c6873c99a /src/main/kotlin | |
| parent | 5d25fc13419493176ff19d115f5015322271a835 (diff) | |
fix: do not block earlier initial requests with error response (#281)
Requests with errors are blocked within DNPM:DIP and not used for MVH.
Any later accepted successful request with SUCCESS or WARNING should be used as ADDITION.
Diffstat (limited to 'src/main/kotlin')
| -rw-r--r-- | src/main/kotlin/dev/dnpm/etl/processor/services/RequestProcessor.kt | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/main/kotlin/dev/dnpm/etl/processor/services/RequestProcessor.kt b/src/main/kotlin/dev/dnpm/etl/processor/services/RequestProcessor.kt index 7325265..f0eed7f 100644 --- a/src/main/kotlin/dev/dnpm/etl/processor/services/RequestProcessor.kt +++ b/src/main/kotlin/dev/dnpm/etl/processor/services/RequestProcessor.kt @@ -115,8 +115,8 @@ class RequestProcessor( if ( appConfigProperties.postInitialSubmissionBlock && - hasSuccessfullInitialSubmission(request.patientPseudonym()) && - hasUnacceptedInitialSubmission(request.patientPseudonym()) + hasSuccessfulInitialSubmission(request.patientPseudonym()) && + hasUnacceptedSuccessfulInitialSubmission(request.patientPseudonym()) ) { requestService.save( Request( @@ -136,8 +136,8 @@ class RequestProcessor( if ( appConfigProperties.postInitialSubmissionBlock && - hasSuccessfullInitialSubmission(request.patientPseudonym()) && - !hasUnacceptedInitialSubmission(request.patientPseudonym()) + hasSuccessfulInitialSubmission(request.patientPseudonym()) && + !hasUnacceptedSuccessfulInitialSubmission(request.patientPseudonym()) ) { // Use "addition" after "intial" with "Meldebestaetigung" request.content.metadata?.let { @@ -184,16 +184,17 @@ class RequestProcessor( ) } - private fun hasSuccessfullInitialSubmission(patientPseudonym: PatientPseudonym): Boolean { + private fun hasSuccessfulInitialSubmission(patientPseudonym: PatientPseudonym): Boolean { return this.requestService.allRequestsByPatientPseudonym(patientPseudonym).any { it.submissionType == SubmissionType.INITIAL && (it.status == RequestStatus.SUCCESS || it.status == RequestStatus.WARNING) } } - private fun hasUnacceptedInitialSubmission(patientPseudonym: PatientPseudonym): Boolean { + private fun hasUnacceptedSuccessfulInitialSubmission(patientPseudonym: PatientPseudonym): Boolean { return this.requestService.allRequestsByPatientPseudonym(patientPseudonym).any { it.submissionType == SubmissionType.INITIAL && + (it.status == RequestStatus.SUCCESS || it.status == RequestStatus.WARNING) && !(it.submissionAccepted || it.status == RequestStatus.BLOCKED_INITIAL) } } |
