From 6b4ed9372600075af8d3658c2fe88827826ee0ae Mon Sep 17 00:00:00 2001 From: "fergus.oshea" Date: Fri, 19 May 2023 16:07:24 +0100 Subject: [PATCH] RET-2350: ReviewReferralJudiciary & ReviewReferralLegalOps --- ...ancellation-employment-et_englandwales.dmn | 2 +- ...-completion-employment-et_englandwales.dmn | 51 ++++++++------ ...nfiguration-employment-et_englandwales.dmn | 24 ++++--- ...-initiation-employment-et_englandwales.dmn | 66 +++++++++++++++++++ ...permissions-employment-et_englandwales.dmn | 22 +++---- .../dmn/EmploymentTaskCompletionTest.java | 38 +++++++++-- .../dmn/EmploymentTaskInitiationTest.java | 42 ++++++++++-- .../dmn/EmploymentTaskPermissionsTest.java | 9 ++- 8 files changed, 200 insertions(+), 54 deletions(-) diff --git a/src/main/resources/wa-task-cancellation-employment-et_englandwales.dmn b/src/main/resources/wa-task-cancellation-employment-et_englandwales.dmn index d07ccfd8..e8b0b179 100644 --- a/src/main/resources/wa-task-cancellation-employment-et_englandwales.dmn +++ b/src/main/resources/wa-task-cancellation-employment-et_englandwales.dmn @@ -145,4 +145,4 @@ - + \ No newline at end of file diff --git a/src/main/resources/wa-task-completion-employment-et_englandwales.dmn b/src/main/resources/wa-task-completion-employment-et_englandwales.dmn index 4487d813..27a72084 100644 --- a/src/main/resources/wa-task-completion-employment-et_englandwales.dmn +++ b/src/main/resources/wa-task-completion-employment-et_englandwales.dmn @@ -2,7 +2,7 @@ - + eventId @@ -11,7 +11,7 @@ - "PreAcceptanceCase" + "preAcceptanceCase" "Et1Vetting" @@ -20,36 +20,47 @@ "Auto" - - - "et3Response" + + + "replyToReferral","closeReferral" - - "ET3Processing" + + "ReviewReferralAdmin" - + "Auto" - - - "replyToReferral" + + + "preAcceptanceCase","replyToReferral","closeReferral" - - "ReviewReferralAdmin" + + "ReviewReferralJudiciary" - + "Auto" - - - "closeReferral" + + + "preAcceptanceCase","replyToReferral","closeReferral" - - "ReviewReferralAdmin" + + "ReviewReferralLegalOps" - + + "Auto" + + + + + "et3Response" + + + "ET3Processing" + + "Auto" diff --git a/src/main/resources/wa-task-configuration-employment-et_englandwales.dmn b/src/main/resources/wa-task-configuration-employment-et_englandwales.dmn index cad44d91..1f7167ed 100644 --- a/src/main/resources/wa-task-configuration-employment-et_englandwales.dmn +++ b/src/main/resources/wa-task-configuration-employment-et_englandwales.dmn @@ -1,5 +1,5 @@ - + @@ -74,8 +74,8 @@ "draftCaseCreated", "Et1Vetting", - "ReviewReferralLegalOps", "ReviewReferralAdmin", + "ReviewReferralLegalOps", "SendET1Notification", "ListServeClaim", "ET3Processing", @@ -188,8 +188,8 @@ "draftCaseCreated", - "reviewSpecificAccessRequestJudiciary", "ReviewReferralJudiciary", + "reviewSpecificAccessRequestJudiciary", "ReviewReferralResponseJudiciary", "CompleteInitialConsideration", "DraftAndSignJudgment" @@ -211,9 +211,9 @@ + "ReviewReferralLegalOps", "reviewSpecificAccessRequestLegalOps", "ReviewRule21Referral", - "ReviewReferralLegalOps", "ET3ReferralLegalOps", "ReviewReferralResponseLegalOps" @@ -308,9 +308,9 @@ "draftCaseCreated", + "ReviewReferralAdmin", "ReviewReferralJudiciary", - "ReviewReferralLegalOps", - "ReviewReferralAdmin" + "ReviewReferralLegalOps" @@ -680,7 +680,9 @@ - "ReviewReferralAdmin" + "ReviewReferralAdmin", + "ReviewReferralJudiciary", + "ReviewReferralLegalOps" @@ -688,7 +690,7 @@ - if (caseData!= null and caseData.isUrgent != null and caseData.isUrgent = "Yes") then 1000 else 5000 + if (caseData != null and caseData.isUrgent != null and caseData.isUrgent = "Yes") then 1000 else 5000 @@ -722,7 +724,9 @@ - "ReviewReferralAdmin" + "ReviewReferralAdmin", + "ReviewReferralJudiciary", + "ReviewReferralLegalOps" @@ -730,7 +734,7 @@ - if (caseData!= null and caseData.isUrgent != null and caseData.isUrgent = "Yes") then 100 else 500 + if (caseData != null and caseData.isUrgent != null and caseData.isUrgent = "Yes") then 100 else 500 diff --git a/src/main/resources/wa-task-initiation-employment-et_englandwales.dmn b/src/main/resources/wa-task-initiation-employment-et_englandwales.dmn index 8edcc621..1fd59951 100644 --- a/src/main/resources/wa-task-initiation-employment-et_englandwales.dmn +++ b/src/main/resources/wa-task-initiation-employment-et_englandwales.dmn @@ -111,6 +111,72 @@ "Vetting" + + + "createReferral" + + + "Submitted" + + + "Judge" + + + "ReviewReferralJudiciary" + + + "Review Referral - " + additionalData.Data.referralSubject + + + + + + + if(additionalData != null + and additionalData.Data != null + and additionalData.Data.isUrgent != null + and additionalData.Data.isUrgent = "Yes") + then 1 + else 2 + + + + "Vetting" + + + + + "createReferral" + + + "Submitted" + + + "Legal officer" + + + "ReviewReferralLegalOps" + + + "Review Referral - " + additionalData.Data.referralSubject + + + + + + + if(additionalData != null + and additionalData.Data != null + and additionalData.Data.isUrgent != null + and additionalData.Data.isUrgent = "Yes") + then 1 + else 2 + + + + "Vetting" + + "et3Response" diff --git a/src/main/resources/wa-task-permissions-employment-et_englandwales.dmn b/src/main/resources/wa-task-permissions-employment-et_englandwales.dmn index c0e2eae0..4a18ced1 100644 --- a/src/main/resources/wa-task-permissions-employment-et_englandwales.dmn +++ b/src/main/resources/wa-task-permissions-employment-et_englandwales.dmn @@ -1,5 +1,5 @@ - + @@ -114,7 +114,7 @@ - + 1 true @@ -140,7 +140,7 @@ "leadership-judge" - "Read, Own, Manage, Claim, Unclaim, Assign, Unassign, Complete, Cancel" + "Read, Own, Manage, Claim, Assign, Unassign, Complete, Cancel" "JUDICIAL" @@ -149,7 +149,7 @@ - + 4 false @@ -185,7 +185,7 @@ - + 2 false @@ -220,7 +220,7 @@ - + 3 false @@ -286,7 +286,7 @@ - + 1 true @@ -307,7 +307,7 @@ - "senior-tribunal-caseworker" + "senior-tribunal-caseworker" "Read, Own, Manage, Claim, Unclaim, Assign, Unassign, Complete, Cancel" @@ -319,7 +319,7 @@ - + 3 false @@ -341,7 +341,7 @@ - "tribunal-caseworker" + "tribunal-caseworker" "Read, Own, Manage, Claim, Unclaim, UnclaimAssign, CompleteOwn, CancelOwn" @@ -353,7 +353,7 @@ - + 2 false diff --git a/src/test/java/uk/gov/hmcts/et/taskconfiguration/dmn/EmploymentTaskCompletionTest.java b/src/test/java/uk/gov/hmcts/et/taskconfiguration/dmn/EmploymentTaskCompletionTest.java index bb4220c8..4343810b 100644 --- a/src/test/java/uk/gov/hmcts/et/taskconfiguration/dmn/EmploymentTaskCompletionTest.java +++ b/src/test/java/uk/gov/hmcts/et/taskconfiguration/dmn/EmploymentTaskCompletionTest.java @@ -31,37 +31,61 @@ public static void initialization() { static Stream scenarioProvider() { return Stream.of( Arguments.of( - "PreAcceptanceCase", + "preAcceptanceCase", asList( Map.of( "taskType", "Et1Vetting", "completionMode", "Auto" + ), + Map.of( + "taskType", "ReviewReferralJudiciary", + "completionMode", "Auto" + ), + Map.of( + "taskType", "ReviewReferralLegalOps", + "completionMode", "Auto" ) ) ), Arguments.of( - "et3Response", + "replyToReferral", asList( Map.of( - "taskType", "ET3Processing", + "taskType", "ReviewReferralAdmin", + "completionMode", "Auto" + ), + Map.of( + "taskType", "ReviewReferralJudiciary", + "completionMode", "Auto" + ), + Map.of( + "taskType", "ReviewReferralLegalOps", "completionMode", "Auto" ) ) ), Arguments.of( - "replyToReferral", + "closeReferral", asList( Map.of( "taskType", "ReviewReferralAdmin", "completionMode", "Auto" + ), + Map.of( + "taskType", "ReviewReferralJudiciary", + "completionMode", "Auto" + ), + Map.of( + "taskType", "ReviewReferralLegalOps", + "completionMode", "Auto" ) ) ), Arguments.of( - "closeReferral", + "et3Response", asList( Map.of( - "taskType", "ReviewReferralAdmin", + "taskType", "ET3Processing", "completionMode", "Auto" ) ) @@ -92,6 +116,6 @@ void given_event_ids_should_evaluate_dmn(String eventId, List scenarioProvider() { "createReferral", "Submitted", mapAdditionalData("{\n" - + " \"Data\":{\n" + + " \"Data\":{\n" + " \"referCaseTo\":\"" + "Admin" + "\",\n" + " \"referralSubject\":\"" + "(Referral Subject)" + "\",\n" + " \"isUrgent\":\"" + "Yes" + "\"\n" - + " }" - + "}"), + + " }" + + "}"), Map.of( "taskId", "ReviewReferralAdmin", "name", "Review Referral - (Referral Subject)", @@ -71,6 +71,40 @@ public static Stream scenarioProvider() { "processCategories", "Vetting" ) ), + Arguments.of( + "createReferral", + "Submitted", + mapAdditionalData("{\n" + + " \"Data\":{\n" + + " \"referCaseTo\":\"" + "Judge" + "\",\n" + + " \"referralSubject\":\"" + "(Referral Subject)" + "\",\n" + + " \"isUrgent\":\"" + "Yes" + "\"\n" + + " }" + + "}"), + Map.of( + "taskId", "ReviewReferralJudiciary", + "name", "Review Referral - (Referral Subject)", + "workingDaysAllowed", 1, + "processCategories", "Vetting" + ) + ), + Arguments.of( + "createReferral", + "Submitted", + mapAdditionalData("{\n" + + " \"Data\":{\n" + + " \"referCaseTo\":\"" + "Legal officer" + "\",\n" + + " \"referralSubject\":\"" + "(Referral Subject)" + "\",\n" + + " \"isUrgent\":\"" + "Yes" + "\"\n" + + " }" + + "}"), + Map.of( + "taskId", "ReviewReferralLegalOps", + "name", "Review Referral - (Referral Subject)", + "workingDaysAllowed", 1, + "processCategories", "Vetting" + ) + ), Arguments.of( "et3Response", "Accepted", @@ -116,7 +150,7 @@ void given_input_should_return_outcome_dmn(String eventId, void if_this_test_fails_needs_updating_with_your_changes() { //The purpose of this test is to prevent adding new rows without being tested DmnDecisionTableImpl logic = (DmnDecisionTableImpl) decision.getDecisionLogic(); - assertThat(logic.getRules().size(), is(5)); + assertThat(logic.getRules().size(), is(7)); } private static Map mapAdditionalData(String additionalData) { diff --git a/src/test/java/uk/gov/hmcts/et/taskconfiguration/dmn/EmploymentTaskPermissionsTest.java b/src/test/java/uk/gov/hmcts/et/taskconfiguration/dmn/EmploymentTaskPermissionsTest.java index 49ab7fa8..ee0e44ce 100644 --- a/src/test/java/uk/gov/hmcts/et/taskconfiguration/dmn/EmploymentTaskPermissionsTest.java +++ b/src/test/java/uk/gov/hmcts/et/taskconfiguration/dmn/EmploymentTaskPermissionsTest.java @@ -41,24 +41,28 @@ class EmploymentTaskPermissionsTest extends DmnDecisionTableBaseUnitTest { ); private static final Map hearingJudge = Map.of( "autoAssignable", true, + "assignmentPriority", 1, "name", "hearing-judge", "value", "Read, Own, Manage, Claim, Unclaim, UnclaimAssign, CompleteOwn, CancelOwn", "roleCategory", "JUDICIAL" ); private static final Map leadershipJudge = Map.of( "autoAssignable", false, + "assignmentPriority", 4, "name", "leadership-judge", - "value", "Read, Own, Manage, Claim, Unclaim, Assign, Unassign, Complete, Cancel", + "value", "Read, Own, Manage, Claim, Assign, Unassign, Complete, Cancel", "roleCategory", "JUDICIAL" ); private static final Map judge = Map.of( "autoAssignable", false, + "assignmentPriority", 2, "name", "judge", "value", "Read, Own, Manage, Claim, Unclaim, UnclaimAssign, CompleteOwn, CancelOwn", "roleCategory", "JUDICIAL" ); private static final Map feePaidJudge = Map.of( "autoAssignable", false, + "assignmentPriority", 3, "name", "fee-paid-judge", "value", "Read, Own, Manage, Claim, Unclaim, UnclaimAssign, CompleteOwn, CancelOwn", "roleCategory", "JUDICIAL" @@ -72,18 +76,21 @@ class EmploymentTaskPermissionsTest extends DmnDecisionTableBaseUnitTest { ); private static final Map allocatedTribunalCaseworker = Map.of( "autoAssignable", true, + "assignmentPriority", 1, "name", "allocated-tribunal-caseworker", "value", "Read, Own, Manage, Claim, Unclaim, UnclaimAssign, CompleteOwn, CancelOwn", "roleCategory", "LEGAL_OPERATIONS" ); private static final Map seniorTribunalCaseworker = Map.of( "autoAssignable", false, + "assignmentPriority", 3, "name", "senior-tribunal-caseworker", "value", "Read, Own, Manage, Claim, Unclaim, Assign, Unassign, Complete, Cancel", "roleCategory", "LEGAL_OPERATIONS" ); private static final Map tribunalCaseworker = Map.of( "autoAssignable", false, + "assignmentPriority", 2, "name", "tribunal-caseworker", "value", "Read, Own, Manage, Claim, Unclaim, UnclaimAssign, CompleteOwn, CancelOwn", "roleCategory", "LEGAL_OPERATIONS"