From 63a66f729482e4da336ccab006f6f6e620ef7dee Mon Sep 17 00:00:00 2001 From: Amardeep Chimber Date: Tue, 4 Feb 2025 08:03:31 +0000 Subject: [PATCH] MAN-2787 - use disposal id to calculate rar days --- .../gov/justice/digital/hmpps/ComplianceIntegrationTest.kt | 2 +- .../uk/gov/justice/digital/hmpps/OverviewIntegrationTest.kt | 2 +- .../gov/justice/digital/hmpps/service/ComplianceService.kt | 3 +-- .../uk/gov/justice/digital/hmpps/service/OverviewService.kt | 3 +-- .../gov/justice/digital/hmpps/service/RequirementService.kt | 6 +++--- 5 files changed, 7 insertions(+), 9 deletions(-) diff --git a/projects/manage-supervision-and-delius/src/integrationTest/kotlin/uk/gov/justice/digital/hmpps/ComplianceIntegrationTest.kt b/projects/manage-supervision-and-delius/src/integrationTest/kotlin/uk/gov/justice/digital/hmpps/ComplianceIntegrationTest.kt index 4fd543912..13426962f 100644 --- a/projects/manage-supervision-and-delius/src/integrationTest/kotlin/uk/gov/justice/digital/hmpps/ComplianceIntegrationTest.kt +++ b/projects/manage-supervision-and-delius/src/integrationTest/kotlin/uk/gov/justice/digital/hmpps/ComplianceIntegrationTest.kt @@ -37,7 +37,7 @@ internal class ComplianceIntegrationTest { equalTo(2) ) assertThat(res.currentSentences[1].rarCategory, equalTo("Main")) - assertThat(res.currentSentences[1].rarDescription, equalTo("0 of 12 RAR days completed")) + assertThat(res.currentSentences[1].rarDescription, equalTo("2 of 12 RAR days completed")) assertThat(res.currentSentences[0].rarCategory, equalTo(null)) assertThat(res.currentSentences[1].eventNumber, equalTo("7654321")) assertThat(res.currentSentences[0].eventNumber, equalTo("1234567")) diff --git a/projects/manage-supervision-and-delius/src/integrationTest/kotlin/uk/gov/justice/digital/hmpps/OverviewIntegrationTest.kt b/projects/manage-supervision-and-delius/src/integrationTest/kotlin/uk/gov/justice/digital/hmpps/OverviewIntegrationTest.kt index 5db4377a7..bf711aef5 100644 --- a/projects/manage-supervision-and-delius/src/integrationTest/kotlin/uk/gov/justice/digital/hmpps/OverviewIntegrationTest.kt +++ b/projects/manage-supervision-and-delius/src/integrationTest/kotlin/uk/gov/justice/digital/hmpps/OverviewIntegrationTest.kt @@ -78,7 +78,7 @@ internal class OverviewIntegrationTest { assertThat(res.previousOrders.count, equalTo(2)) assertThat(res.previousOrders.breaches, equalTo(2)) assertThat(res.sentences[1].eventNumber, equalTo(EVENT_1.eventNumber)) - assertThat(res.sentences[1].rarDescription, equalTo("0 of 12 RAR days completed")) + assertThat(res.sentences[1].rarDescription, equalTo("2 of 12 RAR days completed")) assertThat(res.personalDetails.dateOfBirth, equalTo(OVERVIEW.dateOfBirth)) assertThat(res.personalDetails.dateOfBirth, equalTo(OVERVIEW.dateOfBirth)) assertThat(res.registrations, equalTo(listOf("Restraining Order", "Domestic Abuse Perpetrator", "Mappa"))) diff --git a/projects/manage-supervision-and-delius/src/main/kotlin/uk/gov/justice/digital/hmpps/service/ComplianceService.kt b/projects/manage-supervision-and-delius/src/main/kotlin/uk/gov/justice/digital/hmpps/service/ComplianceService.kt index 3e611a55c..d75bcf888 100644 --- a/projects/manage-supervision-and-delius/src/main/kotlin/uk/gov/justice/digital/hmpps/service/ComplianceService.kt +++ b/projects/manage-supervision-and-delius/src/main/kotlin/uk/gov/justice/digital/hmpps/service/ComplianceService.kt @@ -17,7 +17,6 @@ import uk.gov.justice.digital.hmpps.integrations.delius.overview.entity.* class ComplianceService( private val personRepository: PersonRepository, private val eventRepository: EventRepository, - private val requirementRepository: RequirementRepository, private val nsiRepository: NsiRepository, private val activityService: ActivityService, private val requirementService: RequirementService @@ -50,7 +49,7 @@ class ComplianceService( eventNumber = eventNumber, mainOffence = Offence(code = offence.code, description = offence.description), rarCategory = getRarCategoryFromSentence(eventNumber), - rarDescription = disposal?.let { requirementService.getRarDescription(id, eventNumber) }, + rarDescription = disposal?.let { requirementService.getRarDescription(id, eventNumber, disposal.id) }, order = disposal?.let { Order( description = it.type.description, diff --git a/projects/manage-supervision-and-delius/src/main/kotlin/uk/gov/justice/digital/hmpps/service/OverviewService.kt b/projects/manage-supervision-and-delius/src/main/kotlin/uk/gov/justice/digital/hmpps/service/OverviewService.kt index 442740afa..9af412852 100644 --- a/projects/manage-supervision-and-delius/src/main/kotlin/uk/gov/justice/digital/hmpps/service/OverviewService.kt +++ b/projects/manage-supervision-and-delius/src/main/kotlin/uk/gov/justice/digital/hmpps/service/OverviewService.kt @@ -16,7 +16,6 @@ import uk.gov.justice.digital.hmpps.integrations.delius.overview.entity.Provisio class OverviewService( private val personRepository: PersonRepository, private val contactRepository: ContactRepository, - private val requirementRepository: RequirementRepository, private val registrationRepository: RegistrationRepository, private val provisionRepository: ProvisionRepository, private val disabilityRepository: DisabilityRepository, @@ -71,7 +70,7 @@ class OverviewService( additionalOffences = additionalOffences.map { it.offence.toOffence() }, order = disposal?.toOrder(), rarDescription = disposal?.let { - requirementService.getRarDescription(id, eventNumber) + requirementService.getRarDescription(id, eventNumber, disposal.id) }) } diff --git a/projects/manage-supervision-and-delius/src/main/kotlin/uk/gov/justice/digital/hmpps/service/RequirementService.kt b/projects/manage-supervision-and-delius/src/main/kotlin/uk/gov/justice/digital/hmpps/service/RequirementService.kt index edc44ff3c..d9f2b07d0 100644 --- a/projects/manage-supervision-and-delius/src/main/kotlin/uk/gov/justice/digital/hmpps/service/RequirementService.kt +++ b/projects/manage-supervision-and-delius/src/main/kotlin/uk/gov/justice/digital/hmpps/service/RequirementService.kt @@ -59,12 +59,12 @@ class RequirementService( return null } - fun getRarDescription(id: Long, eventNumber: String): String? { - val sumRarRequirementLength = requirementRepository.getRequirements(id, eventNumber) + fun getRarDescription(eventId: Long, eventNumber: String, disposalId: Long): String? { + val sumRarRequirementLength = requirementRepository.getRequirements(eventId, eventNumber) .filter { it.mainCategory!!.code == "F" } .sumOf { it.length!! } - val rar = getRar(id, "F") + val rar = getRar(disposalId, "F") return rar?.let { "${it.totalDays} of $sumRarRequirementLength RAR days completed" } }