From fd03bf02513523ac5a6e4c7b1bc56bfab9699987 Mon Sep 17 00:00:00 2001 From: nilay Date: Mon, 14 Oct 2024 11:00:14 +0100 Subject: [PATCH 01/34] defs update --- .../AuthorisationCaseField/AuthorisationCaseField.json | 1 + definitions/benefit/sheets/CaseField/CaseField.json | 3 ++- definitions/benefit/sheets/ComplexTypes/ComplexTypes.json | 5 +++++ 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/definitions/benefit/sheets/AuthorisationCaseField/AuthorisationCaseField.json b/definitions/benefit/sheets/AuthorisationCaseField/AuthorisationCaseField.json index df1041aa364..7777f411ae4 100644 --- a/definitions/benefit/sheets/AuthorisationCaseField/AuthorisationCaseField.json +++ b/definitions/benefit/sheets/AuthorisationCaseField/AuthorisationCaseField.json @@ -1619,5 +1619,6 @@ {"LiveFrom": "07/08/2024", "CaseTypeID": "Benefit", "CaseFieldID": "ignoreCallbackWarnings", "AccessProfile": "caseworker-sscs", "CRUD": "CRUD"}, {"LiveFrom": "07/08/2024", "CaseTypeID": "Benefit", "CaseFieldID": "ignoreCallbackWarnings", "AccessProfile": "caseworker-sscs-clerk", "CRUD": "CRUD"}, {"LiveFrom": "07/08/2024", "CaseTypeID": "Benefit", "CaseFieldID": "ignoreCallbackWarnings", "AccessProfile": "caseworker-sscs-registrar", "CRUD": "CRUD"}, + {"LiveFrom": "07/08/2024", "CaseTypeID": "Benefit", "CaseFieldID": "summaryIbcaReference", "AccessProfile": "caseworker-sscs-ibcaresponsewriter", "CRUD": "CRUD"}, {"LiveFrom": "07/08/2024", "CaseTypeID": "Benefit", "CaseFieldID": "ibcaReference", "AccessProfile": "caseworker-sscs-ibcaresponsewriter", "CRUD": "CRUD"} ] diff --git a/definitions/benefit/sheets/CaseField/CaseField.json b/definitions/benefit/sheets/CaseField/CaseField.json index ec364309d05..f0328f4786f 100644 --- a/definitions/benefit/sheets/CaseField/CaseField.json +++ b/definitions/benefit/sheets/CaseField/CaseField.json @@ -514,6 +514,7 @@ {"LiveFrom": "01/01/2018", "CaseTypeID": "Benefit", "ID": "judgeReserved", "Label": "Reserve to Judge?", "FieldType": "YesOrNo", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "CaseTypeID": "Benefit", "ID": "tribunalDirectPoToAttend", "Label": "Tribunal direct PO to attend?", "FieldType": "YesOrNo", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "06/02/2024", "CaseTypeID": "Benefit", "ID": "preWorkAllocation", "Label": "Case created before WA went Live", "FieldType": "YesOrNo", "SecurityClassification": "PUBLIC"}, - {"LiveFrom": "07/08/2024", "CaseTypeID": "Benefit", "ID": "ignoreCallbackWarnings", "Label": "Ignore callback warningsR", "FieldType": "YesOrNo", "SecurityClassification": "PUBLIC"}, + {"LiveFrom": "07/08/2024", "CaseTypeID": "Benefit", "ID": "ignoreCallbackWarnings", "Label": "Ignore callback warnings", "FieldType": "YesOrNo", "SecurityClassification": "PUBLIC"}, + {"LiveFrom": "20/08/2019", "CaseTypeID": "Benefit", "ID": "summaryIbcaReference", "Label": "**IBCA Reference** \r\n${appeal.appellant.identity.ibcaReference}", "FieldType": "Label", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "CaseTypeID": "Benefit", "ID": "ibcaReference", "Label": "IBCA Reference", "FieldType": "Text", "SecurityClassification": "PUBLIC"} ] diff --git a/definitions/benefit/sheets/ComplexTypes/ComplexTypes.json b/definitions/benefit/sheets/ComplexTypes/ComplexTypes.json index 0d4b3b4aa0c..d8a158dd66f 100644 --- a/definitions/benefit/sheets/ComplexTypes/ComplexTypes.json +++ b/definitions/benefit/sheets/ComplexTypes/ComplexTypes.json @@ -37,8 +37,13 @@ {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "county", "FieldType": "Text", "ElementLabel": "County", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "postcode", "FieldType": "Text", "ElementLabel": "Postcode", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "country", "FieldType": "Text", "ElementLabel": "Country", "SecurityClassification": "PUBLIC"}, + {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "inUk", "FieldType": "YesOrNo", "ElementLabel": "Living in the UK", "SecurityClassification": "PUBLIC"}, + {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "ukPortOfEntry", "FieldType": "portOfEntry", "ElementLabel": "Port of entry", "SecurityClassification": "PUBLIC"}, + {"LiveFrom": "01/01/2018", "ID": "portOfEntry", "ListElementCode": "label", "FieldType": "Text", "ElementLabel": "Name", "SecurityClassification": "PUBLIC"}, + {"LiveFrom": "01/01/2018", "ID": "portOfEntry", "ListElementCode": "locationCode", "FieldType": "Text", "ElementLabel": "Location code", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "identity", "ListElementCode": "dob", "FieldType": "Date", "ElementLabel": "Date of birth", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "identity", "ListElementCode": "nino", "FieldType": "Text", "ElementLabel": "National insurance number", "SecurityClassification": "PUBLIC"}, + {"LiveFrom": "01/01/2018", "ID": "identity", "ListElementCode": "ibcaReference", "FieldType": "Text", "ElementLabel": "IBCA Reference Number", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "name", "ListElementCode": "title", "FieldType": "Text", "ElementLabel": "Title", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "name", "ListElementCode": "firstName", "FieldType": "Text", "ElementLabel": "First Name", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "name", "ListElementCode": "middleName", "FieldType": "Text", "ElementLabel": "Middle Name", "SecurityClassification": "PUBLIC"}, From 396af8a60b60219de75402000a8b8666640cb839 Mon Sep 17 00:00:00 2001 From: nilay Date: Mon, 14 Oct 2024 12:59:00 +0100 Subject: [PATCH 02/34] defs update --- build.gradle | 2 +- .../sheets/ComplexTypes/ComplexTypes.json | 4 +- .../sheets/FixedLists/FixedLists-nonprod.json | 92 ++++++++++++++++++- 3 files changed, 93 insertions(+), 5 deletions(-) diff --git a/build.gradle b/build.gradle index 76e56f6a41b..8559b0c9afd 100644 --- a/build.gradle +++ b/build.gradle @@ -351,7 +351,7 @@ dependencies { implementation group: 'org.flywaydb', name: 'flyway-core', version: '9.22.3' implementation group: 'org.postgresql', name: 'postgresql', version: '42.6.0' - implementation group: 'com.github.hmcts', name: 'sscs-common', version: '5.12.2' + implementation group: 'com.github.hmcts', name: 'sscs-common', version: '5.12.4' implementation group: 'com.github.hmcts', name: 'sscs-pdf-email-common', version: '5.2.13' diff --git a/definitions/benefit/sheets/ComplexTypes/ComplexTypes.json b/definitions/benefit/sheets/ComplexTypes/ComplexTypes.json index d8a158dd66f..6ed3e2d7c95 100644 --- a/definitions/benefit/sheets/ComplexTypes/ComplexTypes.json +++ b/definitions/benefit/sheets/ComplexTypes/ComplexTypes.json @@ -38,9 +38,7 @@ {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "postcode", "FieldType": "Text", "ElementLabel": "Postcode", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "country", "FieldType": "Text", "ElementLabel": "Country", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "inUk", "FieldType": "YesOrNo", "ElementLabel": "Living in the UK", "SecurityClassification": "PUBLIC"}, - {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "ukPortOfEntry", "FieldType": "portOfEntry", "ElementLabel": "Port of entry", "SecurityClassification": "PUBLIC"}, - {"LiveFrom": "01/01/2018", "ID": "portOfEntry", "ListElementCode": "label", "FieldType": "Text", "ElementLabel": "Name", "SecurityClassification": "PUBLIC"}, - {"LiveFrom": "01/01/2018", "ID": "portOfEntry", "ListElementCode": "locationCode", "FieldType": "Text", "ElementLabel": "Location code", "SecurityClassification": "PUBLIC"}, + {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "portOfEntry", "FieldType": "FixedList", "FieldTypeParameter": "FL_portOfEntry", "ElementLabel": "Port of entry", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "identity", "ListElementCode": "dob", "FieldType": "Date", "ElementLabel": "Date of birth", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "identity", "ListElementCode": "nino", "FieldType": "Text", "ElementLabel": "National insurance number", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "identity", "ListElementCode": "ibcaReference", "FieldType": "Text", "ElementLabel": "IBCA Reference Number", "SecurityClassification": "PUBLIC"}, diff --git a/definitions/benefit/sheets/FixedLists/FixedLists-nonprod.json b/definitions/benefit/sheets/FixedLists/FixedLists-nonprod.json index 0075c9d0b69..d2e741481e0 100644 --- a/definitions/benefit/sheets/FixedLists/FixedLists-nonprod.json +++ b/definitions/benefit/sheets/FixedLists/FixedLists-nonprod.json @@ -1,4 +1,94 @@ [ {"LiveFrom": "01/01/2018", "ID": "FL_benefitCodes", "ListElementCode": "093", "ListElement": "093"}, - {"LiveFrom": "01/01/2018", "ID": "FL_dwpRegionalCentre", "ListElementCode": "IBCA", "ListElement": "IBCA"} + {"LiveFrom": "01/01/2018", "ID": "FL_dwpRegionalCentre", "ListElementCode": "IBCA", "ListElement": "IBCA"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000434", "ListElement": "GB000434"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000411", "ListElement": "GB000411"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000033", "ListElement": "GB000033"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003010", "ListElement": "GB003010"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000125", "ListElement": "GB000125"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003020", "ListElement": "GB003020"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003290", "ListElement": "GB003290"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000011", "ListElement": "GB000011"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003030", "ListElement": "GB003030"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000052", "ListElement": "GB000052"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000244", "ListElement": "GB000244"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003060", "ListElement": "GB003060"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003070", "ListElement": "GB003070"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003080", "ListElement": "GB003080"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000328", "ListElement": "GB000328"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000122", "ListElement": "GB000122"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000480", "ListElement": "GB000480"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000500", "ListElement": "GB000500"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB001011", "ListElement": "GB001011"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000040", "ListElement": "GB000040"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000060", "ListElement": "GB000060"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003100", "ListElement": "GB003100"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003180", "ListElement": "GB003180"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000128", "ListElement": "GB000128"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000297", "ListElement": "GB000297"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000108", "ListElement": "GB000108"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003110", "ListElement": "GB003110"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000051", "ListElement": "GB000051"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000041", "ListElement": "GB000041"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003040", "ListElement": "GB003040"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003120", "ListElement": "GB003120"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000059", "ListElement": "GB000059"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000054", "ListElement": "GB000054"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000073", "ListElement": "GB000073"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003140", "ListElement": "GB003140"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000124", "ListElement": "GB000124"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000072", "ListElement": "GB000072"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003130", "ListElement": "GB003130"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000501", "ListElement": "GB000501"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000074", "ListElement": "GB000074"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003150", "ListElement": "GB003150"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000450", "ListElement": "GB000450"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000465", "ListElement": "GB000465"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003160", "ListElement": "GB003160"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000055", "ListElement": "GB000055"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003170", "ListElement": "GB003170"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000087", "ListElement": "GB000087"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB001016", "ListElement": "GB001016"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003190", "ListElement": "GB003190"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000080", "ListElement": "GB000080"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003200", "ListElement": "GB003200"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000130", "ListElement": "GB000130"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000170", "ListElement": "GB000170"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000085", "ListElement": "GB000085"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000084", "ListElement": "GB000084"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000091", "ListElement": "GB000091"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000102", "ListElement": "GB000102"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000191", "ListElement": "GB000191"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003220", "ListElement": "GB003220"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000098", "ListElement": "GB000098"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000218", "ListElement": "GB000218"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003250", "ListElement": "GB003250"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000049", "ListElement": "GB000049"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000058", "ListElement": "GB000058"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003230", "ListElement": "GB003230"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000126", "ListElement": "GB000126"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000416", "ListElement": "GB000416"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000250", "ListElement": "GB000250"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003050", "ListElement": "GB003050"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000291", "ListElement": "GB000291"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003240", "ListElement": "GB003240"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000292", "ListElement": "GB000292"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000070", "ListElement": "GB000070"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000047", "ListElement": "GB000047"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000067", "ListElement": "GB000067"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000045", "ListElement": "GB000045"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000290", "ListElement": "GB000290"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003090", "ListElement": "GB003090"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000461", "ListElement": "GB000461"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000121", "ListElement": "GB000121"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003260", "ListElement": "GB003260"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003270", "ListElement": "GB003270"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000123", "ListElement": "GB000123"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000219", "ListElement": "GB000219"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000099", "ListElement": "GB000099"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000150", "ListElement": "GB000150"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000093", "ListElement": "GB000093"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000245", "ListElement": "GB000245"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000029", "ListElement": "GB000029"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003280", "ListElement": "GB003280"} ] \ No newline at end of file From 301d8f6eebac05d100f48e5108f417a2bb8c06a8 Mon Sep 17 00:00:00 2001 From: nilay Date: Mon, 14 Oct 2024 13:08:18 +0100 Subject: [PATCH 03/34] defs update --- .../AuthorisationCaseField.json | 3 +- .../benefit/sheets/CaseField/CaseField.json | 3 +- .../sheets/FixedLists/FixedLists-nonprod.json | 92 +------------------ .../benefit/sheets/FixedLists/FixedLists.json | 92 ++++++++++++++++++- 4 files changed, 94 insertions(+), 96 deletions(-) diff --git a/definitions/benefit/sheets/AuthorisationCaseField/AuthorisationCaseField.json b/definitions/benefit/sheets/AuthorisationCaseField/AuthorisationCaseField.json index 7777f411ae4..2e4c194a505 100644 --- a/definitions/benefit/sheets/AuthorisationCaseField/AuthorisationCaseField.json +++ b/definitions/benefit/sheets/AuthorisationCaseField/AuthorisationCaseField.json @@ -1619,6 +1619,5 @@ {"LiveFrom": "07/08/2024", "CaseTypeID": "Benefit", "CaseFieldID": "ignoreCallbackWarnings", "AccessProfile": "caseworker-sscs", "CRUD": "CRUD"}, {"LiveFrom": "07/08/2024", "CaseTypeID": "Benefit", "CaseFieldID": "ignoreCallbackWarnings", "AccessProfile": "caseworker-sscs-clerk", "CRUD": "CRUD"}, {"LiveFrom": "07/08/2024", "CaseTypeID": "Benefit", "CaseFieldID": "ignoreCallbackWarnings", "AccessProfile": "caseworker-sscs-registrar", "CRUD": "CRUD"}, - {"LiveFrom": "07/08/2024", "CaseTypeID": "Benefit", "CaseFieldID": "summaryIbcaReference", "AccessProfile": "caseworker-sscs-ibcaresponsewriter", "CRUD": "CRUD"}, - {"LiveFrom": "07/08/2024", "CaseTypeID": "Benefit", "CaseFieldID": "ibcaReference", "AccessProfile": "caseworker-sscs-ibcaresponsewriter", "CRUD": "CRUD"} + {"LiveFrom": "07/08/2024", "CaseTypeID": "Benefit", "CaseFieldID": "summaryIbcaReference", "AccessProfile": "caseworker-sscs-ibcaresponsewriter", "CRUD": "CRUD"} ] diff --git a/definitions/benefit/sheets/CaseField/CaseField.json b/definitions/benefit/sheets/CaseField/CaseField.json index f0328f4786f..a5809d686b6 100644 --- a/definitions/benefit/sheets/CaseField/CaseField.json +++ b/definitions/benefit/sheets/CaseField/CaseField.json @@ -515,6 +515,5 @@ {"LiveFrom": "01/01/2018", "CaseTypeID": "Benefit", "ID": "tribunalDirectPoToAttend", "Label": "Tribunal direct PO to attend?", "FieldType": "YesOrNo", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "06/02/2024", "CaseTypeID": "Benefit", "ID": "preWorkAllocation", "Label": "Case created before WA went Live", "FieldType": "YesOrNo", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "07/08/2024", "CaseTypeID": "Benefit", "ID": "ignoreCallbackWarnings", "Label": "Ignore callback warnings", "FieldType": "YesOrNo", "SecurityClassification": "PUBLIC"}, - {"LiveFrom": "20/08/2019", "CaseTypeID": "Benefit", "ID": "summaryIbcaReference", "Label": "**IBCA Reference** \r\n${appeal.appellant.identity.ibcaReference}", "FieldType": "Label", "SecurityClassification": "PUBLIC"}, - {"LiveFrom": "01/01/2018", "CaseTypeID": "Benefit", "ID": "ibcaReference", "Label": "IBCA Reference", "FieldType": "Text", "SecurityClassification": "PUBLIC"} + {"LiveFrom": "20/08/2019", "CaseTypeID": "Benefit", "ID": "summaryIbcaReference", "Label": "**IBCA Reference** \r\n${appeal.appellant.identity.ibcaReference}", "FieldType": "Label", "SecurityClassification": "PUBLIC"} ] diff --git a/definitions/benefit/sheets/FixedLists/FixedLists-nonprod.json b/definitions/benefit/sheets/FixedLists/FixedLists-nonprod.json index d2e741481e0..0075c9d0b69 100644 --- a/definitions/benefit/sheets/FixedLists/FixedLists-nonprod.json +++ b/definitions/benefit/sheets/FixedLists/FixedLists-nonprod.json @@ -1,94 +1,4 @@ [ {"LiveFrom": "01/01/2018", "ID": "FL_benefitCodes", "ListElementCode": "093", "ListElement": "093"}, - {"LiveFrom": "01/01/2018", "ID": "FL_dwpRegionalCentre", "ListElementCode": "IBCA", "ListElement": "IBCA"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000434", "ListElement": "GB000434"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000411", "ListElement": "GB000411"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000033", "ListElement": "GB000033"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003010", "ListElement": "GB003010"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000125", "ListElement": "GB000125"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003020", "ListElement": "GB003020"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003290", "ListElement": "GB003290"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000011", "ListElement": "GB000011"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003030", "ListElement": "GB003030"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000052", "ListElement": "GB000052"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000244", "ListElement": "GB000244"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003060", "ListElement": "GB003060"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003070", "ListElement": "GB003070"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003080", "ListElement": "GB003080"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000328", "ListElement": "GB000328"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000122", "ListElement": "GB000122"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000480", "ListElement": "GB000480"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000500", "ListElement": "GB000500"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB001011", "ListElement": "GB001011"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000040", "ListElement": "GB000040"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000060", "ListElement": "GB000060"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003100", "ListElement": "GB003100"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003180", "ListElement": "GB003180"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000128", "ListElement": "GB000128"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000297", "ListElement": "GB000297"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000108", "ListElement": "GB000108"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003110", "ListElement": "GB003110"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000051", "ListElement": "GB000051"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000041", "ListElement": "GB000041"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003040", "ListElement": "GB003040"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003120", "ListElement": "GB003120"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000059", "ListElement": "GB000059"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000054", "ListElement": "GB000054"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000073", "ListElement": "GB000073"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003140", "ListElement": "GB003140"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000124", "ListElement": "GB000124"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000072", "ListElement": "GB000072"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003130", "ListElement": "GB003130"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000501", "ListElement": "GB000501"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000074", "ListElement": "GB000074"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003150", "ListElement": "GB003150"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000450", "ListElement": "GB000450"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000465", "ListElement": "GB000465"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003160", "ListElement": "GB003160"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000055", "ListElement": "GB000055"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003170", "ListElement": "GB003170"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000087", "ListElement": "GB000087"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB001016", "ListElement": "GB001016"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003190", "ListElement": "GB003190"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000080", "ListElement": "GB000080"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003200", "ListElement": "GB003200"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000130", "ListElement": "GB000130"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000170", "ListElement": "GB000170"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000085", "ListElement": "GB000085"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000084", "ListElement": "GB000084"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000091", "ListElement": "GB000091"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000102", "ListElement": "GB000102"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000191", "ListElement": "GB000191"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003220", "ListElement": "GB003220"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000098", "ListElement": "GB000098"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000218", "ListElement": "GB000218"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003250", "ListElement": "GB003250"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000049", "ListElement": "GB000049"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000058", "ListElement": "GB000058"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003230", "ListElement": "GB003230"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000126", "ListElement": "GB000126"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000416", "ListElement": "GB000416"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000250", "ListElement": "GB000250"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003050", "ListElement": "GB003050"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000291", "ListElement": "GB000291"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003240", "ListElement": "GB003240"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000292", "ListElement": "GB000292"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000070", "ListElement": "GB000070"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000047", "ListElement": "GB000047"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000067", "ListElement": "GB000067"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000045", "ListElement": "GB000045"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000290", "ListElement": "GB000290"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003090", "ListElement": "GB003090"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000461", "ListElement": "GB000461"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000121", "ListElement": "GB000121"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003260", "ListElement": "GB003260"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003270", "ListElement": "GB003270"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000123", "ListElement": "GB000123"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000219", "ListElement": "GB000219"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000099", "ListElement": "GB000099"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000150", "ListElement": "GB000150"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000093", "ListElement": "GB000093"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000245", "ListElement": "GB000245"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000029", "ListElement": "GB000029"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003280", "ListElement": "GB003280"} + {"LiveFrom": "01/01/2018", "ID": "FL_dwpRegionalCentre", "ListElementCode": "IBCA", "ListElement": "IBCA"} ] \ No newline at end of file diff --git a/definitions/benefit/sheets/FixedLists/FixedLists.json b/definitions/benefit/sheets/FixedLists/FixedLists.json index e6e251dc6bd..9d2c7035235 100644 --- a/definitions/benefit/sheets/FixedLists/FixedLists.json +++ b/definitions/benefit/sheets/FixedLists/FixedLists.json @@ -904,5 +904,95 @@ {"LiveFrom": "05/05/2023", "ID": "FL_dwpStates", "ListElementCode": "decisionRemade", "ListElement": "Review Decision"}, {"LiveFrom": "01/09/2021", "ID": "FL_actionSendToFirstTier", "ListElementCode": "remade", "ListElement": "Remade"}, {"LiveFrom": "01/09/2021", "ID": "FL_actionSendToFirstTier", "ListElementCode": "refused", "ListElement": "Refused"}, - {"LiveFrom": "01/09/2021", "ID": "FL_actionSendToFirstTier", "ListElementCode": "remitted", "ListElement": "Remit from UT"} + {"LiveFrom": "01/09/2021", "ID": "FL_actionSendToFirstTier", "ListElementCode": "remitted", "ListElement": "Remit from UT"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000434", "ListElement": "GB000434"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000411", "ListElement": "GB000411"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000033", "ListElement": "GB000033"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003010", "ListElement": "GB003010"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000125", "ListElement": "GB000125"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003020", "ListElement": "GB003020"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003290", "ListElement": "GB003290"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000011", "ListElement": "GB000011"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003030", "ListElement": "GB003030"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000052", "ListElement": "GB000052"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000244", "ListElement": "GB000244"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003060", "ListElement": "GB003060"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003070", "ListElement": "GB003070"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003080", "ListElement": "GB003080"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000328", "ListElement": "GB000328"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000122", "ListElement": "GB000122"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000480", "ListElement": "GB000480"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000500", "ListElement": "GB000500"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB001011", "ListElement": "GB001011"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000040", "ListElement": "GB000040"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000060", "ListElement": "GB000060"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003100", "ListElement": "GB003100"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003180", "ListElement": "GB003180"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000128", "ListElement": "GB000128"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000297", "ListElement": "GB000297"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000108", "ListElement": "GB000108"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003110", "ListElement": "GB003110"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000051", "ListElement": "GB000051"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000041", "ListElement": "GB000041"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003040", "ListElement": "GB003040"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003120", "ListElement": "GB003120"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000059", "ListElement": "GB000059"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000054", "ListElement": "GB000054"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000073", "ListElement": "GB000073"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003140", "ListElement": "GB003140"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000124", "ListElement": "GB000124"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000072", "ListElement": "GB000072"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003130", "ListElement": "GB003130"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000501", "ListElement": "GB000501"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000074", "ListElement": "GB000074"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003150", "ListElement": "GB003150"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000450", "ListElement": "GB000450"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000465", "ListElement": "GB000465"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003160", "ListElement": "GB003160"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000055", "ListElement": "GB000055"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003170", "ListElement": "GB003170"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000087", "ListElement": "GB000087"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB001016", "ListElement": "GB001016"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003190", "ListElement": "GB003190"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000080", "ListElement": "GB000080"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003200", "ListElement": "GB003200"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000130", "ListElement": "GB000130"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000170", "ListElement": "GB000170"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000085", "ListElement": "GB000085"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000084", "ListElement": "GB000084"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000091", "ListElement": "GB000091"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000102", "ListElement": "GB000102"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000191", "ListElement": "GB000191"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003220", "ListElement": "GB003220"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000098", "ListElement": "GB000098"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000218", "ListElement": "GB000218"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003250", "ListElement": "GB003250"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000049", "ListElement": "GB000049"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000058", "ListElement": "GB000058"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003230", "ListElement": "GB003230"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000126", "ListElement": "GB000126"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000416", "ListElement": "GB000416"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000250", "ListElement": "GB000250"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003050", "ListElement": "GB003050"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000291", "ListElement": "GB000291"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003240", "ListElement": "GB003240"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000292", "ListElement": "GB000292"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000070", "ListElement": "GB000070"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000047", "ListElement": "GB000047"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000067", "ListElement": "GB000067"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000045", "ListElement": "GB000045"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000290", "ListElement": "GB000290"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003090", "ListElement": "GB003090"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000461", "ListElement": "GB000461"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000121", "ListElement": "GB000121"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003260", "ListElement": "GB003260"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003270", "ListElement": "GB003270"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000123", "ListElement": "GB000123"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000219", "ListElement": "GB000219"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000099", "ListElement": "GB000099"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000150", "ListElement": "GB000150"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000093", "ListElement": "GB000093"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000245", "ListElement": "GB000245"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000029", "ListElement": "GB000029"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003280", "ListElement": "GB003280"} ] From 9c9aa192cd237f1ab0109d2444f81a182a21541c Mon Sep 17 00:00:00 2001 From: nilay Date: Mon, 14 Oct 2024 16:53:25 +0100 Subject: [PATCH 04/34] getting a basic in uk iba appeal submitted successfully to exui preview attempt 1 --- build.gradle | 2 +- .../sheets/ComplexTypes/ComplexTypes.json | 14 +- .../benefit/sheets/FixedLists/FixedLists.json | 92 +--------- .../SearchInputFields/SearchInputFields.json | 2 +- .../WorkBasketInputFields.json | 2 +- .../CreateCaseAboutToSubmitHandler.java | 12 +- .../sscs/domain/wrapper/SyaAppellant.java | 2 + .../sscs/service/SubmitAppealServiceBase.java | 159 ++++++++++-------- ...itYourAppealToCcdCaseDataDeserializer.java | 22 ++- ...edCaseUpdatedAboutToSubmitHandlerTest.java | 4 +- .../CaseUpdatedAboutToStartHandlerTest.java | 3 +- 11 files changed, 129 insertions(+), 185 deletions(-) diff --git a/build.gradle b/build.gradle index 8559b0c9afd..ff4444fddc8 100644 --- a/build.gradle +++ b/build.gradle @@ -351,7 +351,7 @@ dependencies { implementation group: 'org.flywaydb', name: 'flyway-core', version: '9.22.3' implementation group: 'org.postgresql', name: 'postgresql', version: '42.6.0' - implementation group: 'com.github.hmcts', name: 'sscs-common', version: '5.12.4' + implementation group: 'com.github.hmcts', name: 'sscs-common', version: 'DEV-SNAPSHOT' implementation group: 'com.github.hmcts', name: 'sscs-pdf-email-common', version: '5.2.13' diff --git a/definitions/benefit/sheets/ComplexTypes/ComplexTypes.json b/definitions/benefit/sheets/ComplexTypes/ComplexTypes.json index 6ed3e2d7c95..d82af6a2d9a 100644 --- a/definitions/benefit/sheets/ComplexTypes/ComplexTypes.json +++ b/definitions/benefit/sheets/ComplexTypes/ComplexTypes.json @@ -1,4 +1,7 @@ [ + {"LiveFrom": "01/01/2018", "ID": "ukPortOfEntry", "ListElementCode": "label", "FieldType": "Text", "ElementLabel": "Label", "SecurityClassification": "PUBLIC"}, + {"LiveFrom": "01/01/2018", "ID": "ukPortOfEntry", "ListElementCode": "trafficType", "FieldType": "Text", "ElementLabel": "Traffic Type", "SecurityClassification": "PUBLIC"}, + {"LiveFrom": "01/01/2018", "ID": "ukPortOfEntry", "ListElementCode": "locationCode", "FieldType": "Text", "ElementLabel": "Location Code", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "judicialUserPanel", "ListElementCode": "assignedTo", "FieldType": "JudicialUser", "ElementLabel": "Judge", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/02/2023", "ID": "judicialUserPanel", "ListElementCode": "panelMembers", "FieldType": "Collection", "FieldTypeParameter": "JudicialUser", "ElementLabel": "Panel Members", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "dateRange", "ListElementCode": "start", "FieldType": "Date", "ElementLabel": "Start Date", "SecurityClassification": "PUBLIC"}, @@ -37,8 +40,9 @@ {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "county", "FieldType": "Text", "ElementLabel": "County", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "postcode", "FieldType": "Text", "ElementLabel": "Postcode", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "country", "FieldType": "Text", "ElementLabel": "Country", "SecurityClassification": "PUBLIC"}, - {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "inUk", "FieldType": "YesOrNo", "ElementLabel": "Living in the UK", "SecurityClassification": "PUBLIC"}, - {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "portOfEntry", "FieldType": "FixedList", "FieldTypeParameter": "FL_portOfEntry", "ElementLabel": "Port of entry", "SecurityClassification": "PUBLIC"}, + {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "isInUk", "FieldType": "YesOrNo", "ElementLabel": "Living in the UK", "SecurityClassification": "PUBLIC"}, + {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "portOfEntry", "FieldType": "ukPortOfEntry", "ElementLabel": "Port of entry", "SecurityClassification": "PUBLIC"}, + {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "ukPortOfEntryList", "FieldType": "DynamicList", "ElementLabel": "Port of Entry", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "identity", "ListElementCode": "dob", "FieldType": "Date", "ElementLabel": "Date of birth", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "identity", "ListElementCode": "nino", "FieldType": "Text", "ElementLabel": "National insurance number", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "identity", "ListElementCode": "ibcaReference", "FieldType": "Text", "ElementLabel": "IBCA Reference Number", "SecurityClassification": "PUBLIC"}, @@ -87,8 +91,8 @@ {"LiveFrom": "01/01/2018", "ID": "supporter", "ListElementCode": "name", "FieldType": "name", "ElementLabel": "Name", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "supporter", "ListElementCode": "contact", "FieldType": "contact", "ElementLabel": "Contact Details", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "mrnDetails", "ListElementCode": "dwpIssuingOffice", "FieldType": "Text", "ElementLabel": "FTA Issuing Office", "SecurityClassification": "PUBLIC"}, - {"LiveFrom": "01/01/2018", "ID": "mrnDetails", "ListElementCode": "mrnDate", "FieldType": "Date", "ElementLabel": "MRN Date", "SecurityClassification": "PUBLIC"}, - {"LiveFrom": "01/01/2018", "ID": "mrnDetails", "ListElementCode": "mrnLateReason", "FieldType": "Text", "ElementLabel": "MRN Late Reason", "SecurityClassification": "PUBLIC"}, + {"LiveFrom": "01/01/2018", "ID": "mrnDetails", "ListElementCode": "mrnDate", "FieldType": "Date", "ElementLabel": "MRN/IRN Date", "SecurityClassification": "PUBLIC"}, + {"LiveFrom": "01/01/2018", "ID": "mrnDetails", "ListElementCode": "mrnLateReason", "FieldType": "Text", "ElementLabel": "MRN/IRN Late Reason", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "mrnDetails", "ListElementCode": "mrnMissingReason", "FieldType": "Text", "ElementLabel": "MRN Missing Reason", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "appellant", "ListElementCode": "name", "FieldType": "name", "ElementLabel": "Name", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "appellant", "ListElementCode": "identity", "FieldType": "identity", "ElementLabel": "Identity", "SecurityClassification": "PUBLIC"}, @@ -128,7 +132,7 @@ {"LiveFrom": "01/01/2018", "ID": "doc", "ListElementCode": "evidenceType", "FieldType": "Text", "ElementLabel": "Evidence Type", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "doc", "ListElementCode": "evidenceProvidedBy", "FieldType": "Text", "ElementLabel": "Evidence Provided By", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "appeal", "ListElementCode": "receivedVia", "FieldType": "FixedList", "FieldTypeParameter": "receivedVia", "ElementLabel": "Channel of receipt", "SecurityClassification": "PUBLIC"}, - {"LiveFrom": "01/01/2018", "ID": "appeal", "ListElementCode": "mrnDetails", "FieldType": "mrnDetails", "ElementLabel": "MRN Details", "SecurityClassification": "PUBLIC"}, + {"LiveFrom": "01/01/2018", "ID": "appeal", "ListElementCode": "mrnDetails", "FieldType": "mrnDetails", "ElementLabel": "MRN/IRN Details", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "appeal", "ListElementCode": "appellant", "FieldType": "appellant", "ElementLabel": "Appellant Details", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "appeal", "ListElementCode": "benefitType", "FieldType": "benefit", "ElementLabel": "Benefit Type", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "appeal", "ListElementCode": "hearingType", "FieldType": "FixedList", "FieldTypeParameter": "hearingType", "ElementLabel": "Hearing Type", "SecurityClassification": "PUBLIC"}, diff --git a/definitions/benefit/sheets/FixedLists/FixedLists.json b/definitions/benefit/sheets/FixedLists/FixedLists.json index 9d2c7035235..e6e251dc6bd 100644 --- a/definitions/benefit/sheets/FixedLists/FixedLists.json +++ b/definitions/benefit/sheets/FixedLists/FixedLists.json @@ -904,95 +904,5 @@ {"LiveFrom": "05/05/2023", "ID": "FL_dwpStates", "ListElementCode": "decisionRemade", "ListElement": "Review Decision"}, {"LiveFrom": "01/09/2021", "ID": "FL_actionSendToFirstTier", "ListElementCode": "remade", "ListElement": "Remade"}, {"LiveFrom": "01/09/2021", "ID": "FL_actionSendToFirstTier", "ListElementCode": "refused", "ListElement": "Refused"}, - {"LiveFrom": "01/09/2021", "ID": "FL_actionSendToFirstTier", "ListElementCode": "remitted", "ListElement": "Remit from UT"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000434", "ListElement": "GB000434"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000411", "ListElement": "GB000411"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000033", "ListElement": "GB000033"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003010", "ListElement": "GB003010"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000125", "ListElement": "GB000125"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003020", "ListElement": "GB003020"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003290", "ListElement": "GB003290"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000011", "ListElement": "GB000011"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003030", "ListElement": "GB003030"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000052", "ListElement": "GB000052"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000244", "ListElement": "GB000244"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003060", "ListElement": "GB003060"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003070", "ListElement": "GB003070"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003080", "ListElement": "GB003080"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000328", "ListElement": "GB000328"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000122", "ListElement": "GB000122"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000480", "ListElement": "GB000480"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000500", "ListElement": "GB000500"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB001011", "ListElement": "GB001011"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000040", "ListElement": "GB000040"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000060", "ListElement": "GB000060"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003100", "ListElement": "GB003100"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003180", "ListElement": "GB003180"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000128", "ListElement": "GB000128"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000297", "ListElement": "GB000297"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000108", "ListElement": "GB000108"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003110", "ListElement": "GB003110"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000051", "ListElement": "GB000051"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000041", "ListElement": "GB000041"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003040", "ListElement": "GB003040"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003120", "ListElement": "GB003120"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000059", "ListElement": "GB000059"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000054", "ListElement": "GB000054"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000073", "ListElement": "GB000073"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003140", "ListElement": "GB003140"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000124", "ListElement": "GB000124"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000072", "ListElement": "GB000072"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003130", "ListElement": "GB003130"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000501", "ListElement": "GB000501"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000074", "ListElement": "GB000074"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003150", "ListElement": "GB003150"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000450", "ListElement": "GB000450"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000465", "ListElement": "GB000465"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003160", "ListElement": "GB003160"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000055", "ListElement": "GB000055"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003170", "ListElement": "GB003170"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000087", "ListElement": "GB000087"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB001016", "ListElement": "GB001016"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003190", "ListElement": "GB003190"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000080", "ListElement": "GB000080"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003200", "ListElement": "GB003200"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000130", "ListElement": "GB000130"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000170", "ListElement": "GB000170"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000085", "ListElement": "GB000085"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000084", "ListElement": "GB000084"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000091", "ListElement": "GB000091"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000102", "ListElement": "GB000102"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000191", "ListElement": "GB000191"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003220", "ListElement": "GB003220"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000098", "ListElement": "GB000098"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000218", "ListElement": "GB000218"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003250", "ListElement": "GB003250"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000049", "ListElement": "GB000049"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000058", "ListElement": "GB000058"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003230", "ListElement": "GB003230"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000126", "ListElement": "GB000126"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000416", "ListElement": "GB000416"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000250", "ListElement": "GB000250"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003050", "ListElement": "GB003050"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000291", "ListElement": "GB000291"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003240", "ListElement": "GB003240"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000292", "ListElement": "GB000292"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000070", "ListElement": "GB000070"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000047", "ListElement": "GB000047"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000067", "ListElement": "GB000067"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000045", "ListElement": "GB000045"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000290", "ListElement": "GB000290"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003090", "ListElement": "GB003090"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000461", "ListElement": "GB000461"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000121", "ListElement": "GB000121"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003260", "ListElement": "GB003260"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003270", "ListElement": "GB003270"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000123", "ListElement": "GB000123"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000219", "ListElement": "GB000219"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000099", "ListElement": "GB000099"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000150", "ListElement": "GB000150"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000093", "ListElement": "GB000093"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000245", "ListElement": "GB000245"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000029", "ListElement": "GB000029"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003280", "ListElement": "GB003280"} + {"LiveFrom": "01/09/2021", "ID": "FL_actionSendToFirstTier", "ListElementCode": "remitted", "ListElement": "Remit from UT"} ] diff --git a/definitions/benefit/sheets/SearchInputFields/SearchInputFields.json b/definitions/benefit/sheets/SearchInputFields/SearchInputFields.json index 60d1effa7cc..c340891bc33 100644 --- a/definitions/benefit/sheets/SearchInputFields/SearchInputFields.json +++ b/definitions/benefit/sheets/SearchInputFields/SearchInputFields.json @@ -47,7 +47,7 @@ {"LiveFrom": "13/01/2022", "CaseTypeID": "Benefit", "AccessProfile": "caseworker-sscs-hmrcresponsewriter", "CaseFieldID": "documentSentToDwp", "Label": "Documents sent to FTA?", "DisplayOrder": 10}, {"LiveFrom": "13/01/2022", "CaseTypeID": "Benefit", "AccessProfile": "caseworker-sscs-hmrcresponsewriter", "CaseFieldID": "evidenceHandled", "Label": "Further evidence actioned", "DisplayOrder": 11}, {"LiveFrom": "13/01/2022", "CaseTypeID": "Benefit", "AccessProfile": "caseworker-sscs-hmrcresponsewriter", "CaseFieldID": "hmctsDwpState", "Label": "Send to FTA error", "DisplayOrder": 12}, - {"LiveFrom": "13/01/2022", "CaseTypeID": "Benefit", "AccessProfile": "caseworker-sscs-ibcaresponsewriter", "CaseFieldID": "ibcaReference", "Label": "IBCA reference", "DisplayOrder": 2}, + {"LiveFrom": "13/01/2022", "CaseTypeID": "Benefit", "AccessProfile": "caseworker-sscs-ibcaresponsewriter", "CaseFieldID": "appeal", "ListElementCode": "appellant.identity.ibcaReference", "Label": "IBCA reference", "DisplayOrder": 2}, {"LiveFrom": "13/01/2022", "CaseTypeID": "Benefit", "AccessProfile": "caseworker-sscs-ibcaresponsewriter", "CaseFieldID": "appeal", "ListElementCode": "appellant.name.lastName", "Label": "Appellant surname", "DisplayOrder": 3}, {"LiveFrom": "13/01/2022", "CaseTypeID": "Benefit", "AccessProfile": "caseworker-sscs-ibcaresponsewriter", "CaseFieldID": "subscriptions", "ListElementCode": "appellantSubscription.email", "Label": "Email address", "DisplayOrder": 4}, {"LiveFrom": "13/01/2022", "CaseTypeID": "Benefit", "AccessProfile": "caseworker-sscs-ibcaresponsewriter", "CaseFieldID": "subscriptions", "ListElementCode": "appellantSubscription.mobile", "Label": "Phone number", "DisplayOrder": 5}, diff --git a/definitions/benefit/sheets/WorkBasketInputFields/WorkBasketInputFields.json b/definitions/benefit/sheets/WorkBasketInputFields/WorkBasketInputFields.json index 433227607c3..fffcc055e86 100644 --- a/definitions/benefit/sheets/WorkBasketInputFields/WorkBasketInputFields.json +++ b/definitions/benefit/sheets/WorkBasketInputFields/WorkBasketInputFields.json @@ -119,7 +119,7 @@ {"LiveFrom": "13/01/2022", "CaseTypeID": "Benefit", "AccessProfile": "caseworker-sscs-hmrcresponsewriter", "CaseFieldID": "workBasketHearingEpimsId", "Label": "Hearing Venue", "DisplayOrder": 21}, {"LiveFrom": "13/01/2022", "CaseTypeID": "Benefit", "AccessProfile": "caseworker-sscs-hmrcresponsewriter", "CaseFieldID": "hearingRoute", "Label": "Hearing Route", "DisplayOrder": 22}, {"LiveFrom": "01/01/2024", "CaseTypeID": "Benefit", "AccessProfile": "caseworker-sscs-ibcaresponsewriter", "CaseFieldID": "[CASE_REFERENCE]", "Label": "CCD case number", "DisplayOrder": 1}, - {"LiveFrom": "13/01/2022", "CaseTypeID": "Benefit", "AccessProfile": "caseworker-sscs-ibcaresponsewriter", "CaseFieldID": "ibcaReference", "Label": "IBCA reference", "DisplayOrder": 2}, + {"LiveFrom": "13/01/2022", "CaseTypeID": "Benefit", "AccessProfile": "caseworker-sscs-ibcaresponsewriter", "CaseFieldID": "appeal", "ListElementCode": "appellant.identity.ibcaReference", "Label": "IBCA reference", "DisplayOrder": 2}, {"LiveFrom": "01/01/2024", "CaseTypeID": "Benefit", "AccessProfile": "caseworker-sscs-ibcaresponsewriter", "CaseFieldID": "appeal", "ListElementCode": "appellant.name.lastName", "Label": "Appellant surname", "DisplayOrder": 3}, {"LiveFrom": "01/01/2024", "CaseTypeID": "Benefit", "AccessProfile": "caseworker-sscs-ibcaresponsewriter", "CaseFieldID": "dwpState", "Label": "FTA state", "DisplayOrder": 4}, {"LiveFrom": "01/01/2024", "CaseTypeID": "Benefit", "AccessProfile": "caseworker-sscs-ibcaresponsewriter", "CaseFieldID": "benefitCode", "Label": "Appeal code", "DisplayOrder": 5}, diff --git a/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandler.java b/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandler.java index ac23bd1035a..fcfcf31d87d 100644 --- a/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandler.java +++ b/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandler.java @@ -99,7 +99,17 @@ private void updateLanguage(SscsCaseData caseData) { } private void createAppealPdf(SscsCaseData caseData) { - String fileName = emailHelper.generateUniqueEmailId(caseData.getAppeal().getAppellant()) + ".pdf"; + String fileName; + Benefit benefitType = caseData.getBenefitType().orElse(null); + boolean isIba = (benefitType != null && benefitType.equals(Benefit.INFECTED_BLOOD_APPEAL)); + if (isIba) { + String appellantLastName = caseData.getAppeal().getAppellant().getName().getLastName(); + String ibcaRef = caseData.getAppeal().getAppellant().getIdentity().getIbcaReference(); + fileName = String.format("%s_%s", appellantLastName, ibcaRef) + ".pdf"; + // temp solution - need to update generateUniqueEmailId in sscs-common to work with ibcaRef + } else { + fileName = emailHelper.generateUniqueEmailId(caseData.getAppeal().getAppellant()) + ".pdf"; + } boolean hasPdf = hasPdfDocument(caseData, fileName); diff --git a/src/main/java/uk/gov/hmcts/reform/sscs/domain/wrapper/SyaAppellant.java b/src/main/java/uk/gov/hmcts/reform/sscs/domain/wrapper/SyaAppellant.java index 979ce380b30..d6e3afd0920 100644 --- a/src/main/java/uk/gov/hmcts/reform/sscs/domain/wrapper/SyaAppellant.java +++ b/src/main/java/uk/gov/hmcts/reform/sscs/domain/wrapper/SyaAppellant.java @@ -28,6 +28,8 @@ public class SyaAppellant { private String nino; + private String ibcaReference; + @JsonProperty("contactDetails") private SyaContactDetails contactDetails; diff --git a/src/main/java/uk/gov/hmcts/reform/sscs/service/SubmitAppealServiceBase.java b/src/main/java/uk/gov/hmcts/reform/sscs/service/SubmitAppealServiceBase.java index 660cf435b91..b608b29304a 100644 --- a/src/main/java/uk/gov/hmcts/reform/sscs/service/SubmitAppealServiceBase.java +++ b/src/main/java/uk/gov/hmcts/reform/sscs/service/SubmitAppealServiceBase.java @@ -22,6 +22,7 @@ import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.jetbrains.annotations.NotNull; +import uk.gov.hmcts.reform.sscs.ccd.domain.Benefit; import uk.gov.hmcts.reform.sscs.ccd.domain.CaseLink; import uk.gov.hmcts.reform.sscs.ccd.domain.CaseLinkDetails; import uk.gov.hmcts.reform.sscs.ccd.domain.CaseManagementLocation; @@ -76,7 +77,7 @@ public SubmitAppealServiceBase(CcdService ccdService, this.idamService = idamService; this.convertAIntoBService = convertAIntoBService; this.regionalProcessingCenterService = regionalProcessingCenterService; - this.caseAccessManagementFeature = caseAccessManagementFeature; + this.caseAccessManagementFeature = caseAccessManagementFeature; this.airLookupService = airLookupService; this.refDataService = refDataService; this.venueService = venueService; @@ -105,8 +106,8 @@ public Optional getDraftAppeal(String oauth2Token) { } log.info("GET Draft case with CCD Id {} , IDAM Id {} and roles {} ", - (caseDetails == null) ? null : caseDetails.getCcdCaseId(), idamTokens.getUserId(), - idamTokens.getRoles()); + (caseDetails == null) ? null : caseDetails.getCcdCaseId(), idamTokens.getUserId(), + idamTokens.getRoles()); return (sessionDraft != null) ? Optional.of(sessionDraft) : Optional.empty(); } @@ -122,8 +123,8 @@ public List getDraftAppeals(String oauth2Token) { log.info("GET all Draft cases with IDAM Id {} and roles {}", idamTokens.getUserId(), idamTokens.getRoles()); return caseDetailsList.stream() - .map(convertAIntoBService::convert) - .toList(); + .map(convertAIntoBService::convert) + .toList(); } public Long submitAppeal(SyaCaseWrapper appeal, String userToken) { @@ -151,30 +152,30 @@ SscsCaseData convertAppealToSscsCaseData(SyaCaseWrapper appeal) { RegionalProcessingCenter rpc = regionalProcessingCenterService.getByPostcode(firstHalfOfPostcode); SscsCaseData sscsCaseData = rpc == null - ? convertSyaToCcdCaseDataV1(appeal, caseAccessManagementFeature) - : convertSyaToCcdCaseDataV1(appeal, rpc.getName(), rpc, caseAccessManagementFeature); + ? convertSyaToCcdCaseDataV1(appeal, caseAccessManagementFeature) + : convertSyaToCcdCaseDataV1(appeal, rpc.getName(), rpc, caseAccessManagementFeature); sscsCaseData.setCreatedInGapsFrom(READY_TO_LIST.getId()); String processingVenue = airLookupService.lookupAirVenueNameByPostCode(postCode, sscsCaseData.getAppeal().getBenefitType()); sscsCaseData.setProcessingVenue(processingVenue); if (caseAccessManagementFeature - && StringUtils.isNotEmpty(processingVenue) - && rpc != null) { + && StringUtils.isNotEmpty(processingVenue) + && rpc != null) { String venueEpimsId = venueService.getEpimsIdForVenue(processingVenue); CourtVenue courtVenue = refDataService.getCourtVenueRefDataByEpimsId(venueEpimsId); sscsCaseData.setCaseManagementLocation(CaseManagementLocation.builder() - .baseLocation(rpc.getEpimsId()) - .region(courtVenue.getRegionId()).build()); + .baseLocation(rpc.getEpimsId()) + .region(courtVenue.getRegionId()).build()); log.info("Successfully updated case management location details for case {}. Processing venue {}, epimsId {}", - appeal.getCcdCaseId(), processingVenue, venueEpimsId); + appeal.getCcdCaseId(), processingVenue, venueEpimsId); } log.info("{} - setting venue name to {}", - sscsCaseData.getAppeal().getAppellant().getIdentity().getNino(), - sscsCaseData.getProcessingVenue()); + sscsCaseData.getAppeal().getAppellant().getIdentity().getNino(), + sscsCaseData.getProcessingVenue()); return sscsCaseData; } @@ -188,82 +189,92 @@ private EventType findEventType(SscsCaseData caseData, boolean saveAndReturnCase return handleMoveToNonCompliant(caseData, saveAndReturnCase, moveToNoneCompliant); } else { log.info("Moving case for NINO {} to incomplete due to MRN Details {} present and MRN Date {} present", - caseData.getAppeal().getAppellant().getIdentity().getNino(), - (caseData.getAppeal().getMrnDetails() != null ? "" : "not"), - (caseData.getAppeal().getMrnDetails().getMrnDate() != null ? "" : "not")); + caseData.getAppeal().getAppellant().getIdentity().getNino(), + (caseData.getAppeal().getMrnDetails() != null ? "" : "not"), + (caseData.getAppeal().getMrnDetails().getMrnDate() != null ? "" : "not")); return saveAndReturnCase ? DRAFT_TO_INCOMPLETE_APPLICATION : INCOMPLETE_APPLICATION_RECEIVED; } } private SscsCaseDetails createOrUpdateCase(SscsCaseData caseData, EventType eventType, IdamTokens idamTokens) { SscsCaseDetails caseDetails = null; - + Benefit benefitType = caseData.getBenefitType().orElse(null); + boolean isIba = (benefitType != null && benefitType.equals(Benefit.INFECTED_BLOOD_APPEAL)); + String referenceName = isIba ? "IBCA Reference" : "Nino"; + String referenceValue = isIba ? caseData.getAppeal().getAppellant().getIdentity().getIbcaReference() + : caseData.getAppeal().getAppellant().getIdentity().getNino(); + List matchedByNinoCases = List.of(); try { - List matchedByNinoCases = getMatchedCases(caseData.getAppeal().getAppellant().getIdentity().getNino(), idamTokens); - if (!matchedByNinoCases.isEmpty()) { - log.info("Found " + matchedByNinoCases.size() + " matching cases for Nino " + if (!isIba) { + matchedByNinoCases = getMatchedCases(caseData.getAppeal().getAppellant().getIdentity().getNino(), idamTokens); + + if (!matchedByNinoCases.isEmpty()) { + log.info("Found " + matchedByNinoCases.size() + " matching cases for Nino " + caseData.getAppeal().getAppellant().getIdentity().getNino() + " before filtering non exact matches"); + } else { + log.info("No matching cases for Nino {}", caseData.getAppeal().getAppellant().getIdentity().getNino()); + } + + caseDetails = matchedByNinoCases.stream().filter(createNinoAndBenefitTypeAndMrnDatePredicate(caseData)).findFirst().orElse(null); } else { - log.info("No matching cases for Nino {}", caseData.getAppeal().getAppellant().getIdentity().getNino()); + log.info("Case is IBA with reference {}", caseData.getAppeal().getAppellant().getIdentity().getIbcaReference()); } - caseDetails = matchedByNinoCases.stream().filter(createNinoAndBenefitTypeAndMrnDatePredicate(caseData)).findFirst().orElse(null); - if (caseDetails == null) { if (!matchedByNinoCases.isEmpty()) { log.info("Found " + matchedByNinoCases.size() + " matching cases for Nino " - + caseData.getAppeal().getAppellant().getIdentity().getNino()); + + caseData.getAppeal().getAppellant().getIdentity().getNino()); caseData = addAssociatedCases(caseData, matchedByNinoCases); } log.info("About to attempt creating case or updating draft case in CCD with event {} for benefit type {} and event {} and isScottish {} and languagePreference {}", - eventType, - caseData.getAppeal().getBenefitType().getCode(), - eventType, - caseData.getIsScottishCase(), - caseData.getLanguagePreference().getCode()); + eventType, + caseData.getAppeal().getBenefitType().getCode(), + eventType, + caseData.getIsScottishCase(), + caseData.getLanguagePreference().getCode()); if (eventType == DRAFT_TO_VALID_APPEAL_CREATED || eventType == DRAFT_TO_INCOMPLETE_APPLICATION || eventType == DRAFT_TO_NON_COMPLIANT) { caseData.setCaseCreated(LocalDate.now().toString()); caseDetails = ccdService.updateCase(caseData, - Long.valueOf(caseData.getCcdCaseId()), - eventType.getCcdType(), - "SSCS - new case created", - "Created SSCS case from Submit Your Appeal online draft with event " + eventType.getCcdType(), - idamTokens); + Long.valueOf(caseData.getCcdCaseId()), + eventType.getCcdType(), + "SSCS - new case created", + "Created SSCS case from Submit Your Appeal online draft with event " + eventType.getCcdType(), + idamTokens); log.info("Case {} successfully converted from Draft to SSCS case in CCD for benefit type {} with event {}", - caseDetails.getId(), - caseData.getAppeal().getBenefitType().getCode(), - eventType); + caseDetails.getId(), + caseData.getAppeal().getBenefitType().getCode(), + eventType); } else { caseDetails = ccdService.createCase(caseData, - eventType.getCcdType(), - "SSCS - new case created", - "Created SSCS case from Submit Your Appeal online with event " + eventType.getCcdType(), - idamTokens); + eventType.getCcdType(), + "SSCS - new case created", + "Created SSCS case from Submit Your Appeal online with event " + eventType.getCcdType(), + idamTokens); log.info("Case {} successfully created in CCD for benefit type {} with event {}", - caseDetails.getId(), - caseData.getAppeal().getBenefitType().getCode(), - eventType); + caseDetails.getId(), + caseData.getAppeal().getBenefitType().getCode(), + eventType); } return caseDetails; } } catch (Exception e) { throw new CcdException( - String.format("Error found in the creating case process for case with Id - %s" - + " and Nino - %s and Benefit type - %s and exception: %s", - caseDetails != null ? caseDetails.getId() : "", caseData.getAppeal().getAppellant().getIdentity().getNino(), - caseData.getAppeal().getBenefitType().getCode(), e.getMessage()), e); + String.format("Error found in the creating case process for case with Id - %s" + + " and " + referenceName + " - %s and Benefit type - %s and exception: %s", + caseDetails != null ? caseDetails.getId() : "", referenceValue, + caseData.getAppeal().getBenefitType().getCode(), e.getMessage()), e); } log.info("Duplicate case {} found for Nino {} and benefit type {}. " - + "No need to continue with post create case processing.", - caseDetails.getId(), caseData.getAppeal().getAppellant().getIdentity().getNino(), - caseData.getAppeal().getBenefitType().getCode()); + + "No need to continue with post create case processing.", + caseDetails.getId(), caseData.getAppeal().getAppellant().getIdentity().getNino(), + caseData.getAppeal().getBenefitType().getCode()); throw new DuplicateCaseException( - String.format("An appeal has already been submitted, for that decision date %s ", - caseData.getAppeal().getMrnDetails().getMrnDate())); + String.format("An appeal has already been submitted, for that decision date %s ", + caseData.getAppeal().getMrnDetails().getMrnDate())); } private void associateCase(IdamTokens idamTokens, @@ -277,10 +288,10 @@ private void associateCase(IdamTokens idamTokens, private String resolvePostCode(SyaCaseWrapper appeal) { if (Boolean.TRUE.equals(appeal.getIsAppointee())) { return Optional.ofNullable(appeal.getAppointee()) - .map(SyaAppointee::getContactDetails) - .map(SyaContactDetails::getPostCode) - .filter(appointeePostCode -> !StringUtils.isEmpty(appointeePostCode)) - .orElse(null); + .map(SyaAppointee::getContactDetails) + .map(SyaContactDetails::getPostCode) + .filter(appointeePostCode -> !StringUtils.isEmpty(appointeePostCode)) + .orElse(null); } else { return appeal.getAppellant().getContactDetails().getPostCode(); } @@ -304,11 +315,11 @@ protected List getMatchedCases(String nino, IdamTokens idamToke private Predicate createNinoAndBenefitTypeAndMrnDatePredicate(SscsCaseData caseData) { return c -> c.getData().getAppeal().getAppellant().getIdentity() != null - && c.getData().getAppeal().getAppellant().getIdentity().getNino().equalsIgnoreCase(caseData.getAppeal().getAppellant().getIdentity().getNino()) - && c.getData().getAppeal().getBenefitType() != null - && c.getData().getAppeal().getBenefitType().getCode().equals(caseData.getAppeal().getBenefitType().getCode()) - && c.getData().getAppeal().getMrnDetails().getMrnDate() != null - && c.getData().getAppeal().getMrnDetails().getMrnDate().equalsIgnoreCase(caseData.getAppeal().getMrnDetails().getMrnDate()); + && c.getData().getAppeal().getAppellant().getIdentity().getNino().equalsIgnoreCase(caseData.getAppeal().getAppellant().getIdentity().getNino()) + && c.getData().getAppeal().getBenefitType() != null + && c.getData().getAppeal().getBenefitType().getCode().equals(caseData.getAppeal().getBenefitType().getCode()) + && c.getData().getAppeal().getMrnDetails().getMrnDate() != null + && c.getData().getAppeal().getMrnDetails().getMrnDate().equalsIgnoreCase(caseData.getAppeal().getMrnDetails().getMrnDate()); } protected SscsCaseData addAssociatedCases(SscsCaseData caseData, List matchedByNinoCases) { @@ -316,10 +327,10 @@ protected SscsCaseData addAssociatedCases(SscsCaseData caseData, List associatedCases = new ArrayList<>(); - for (SscsCaseDetails sscsCaseDetails: matchedByNinoCases) { + for (SscsCaseDetails sscsCaseDetails : matchedByNinoCases) { log.info("Linking case " + sscsCaseDetails.getId().toString()); associatedCases.add(CaseLink.builder().value( - CaseLinkDetails.builder().caseReference(sscsCaseDetails.getId().toString()).build()).build()); + CaseLinkDetails.builder().caseReference(sscsCaseDetails.getId().toString()).build()).build()); } if (!matchedByNinoCases.isEmpty()) { @@ -332,12 +343,12 @@ protected SscsCaseData addAssociatedCases(SscsCaseData caseData, List Date: Mon, 14 Oct 2024 17:22:35 +0100 Subject: [PATCH 05/34] updating commons --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index ff4444fddc8..36c44842b20 100644 --- a/build.gradle +++ b/build.gradle @@ -351,7 +351,7 @@ dependencies { implementation group: 'org.flywaydb', name: 'flyway-core', version: '9.22.3' implementation group: 'org.postgresql', name: 'postgresql', version: '42.6.0' - implementation group: 'com.github.hmcts', name: 'sscs-common', version: 'DEV-SNAPSHOT' + implementation group: 'com.github.hmcts', name: 'sscs-common', version: '5.12.5' implementation group: 'com.github.hmcts', name: 'sscs-pdf-email-common', version: '5.2.13' From 9bfba5e42b261394223196efa1175f3c6544c85f Mon Sep 17 00:00:00 2001 From: nilay Date: Tue, 15 Oct 2024 11:09:31 +0100 Subject: [PATCH 06/34] fixing sonar issues --- .../sscs/service/SubmitAppealServiceBase.java | 79 ++++++++++--------- ...itYourAppealToCcdCaseDataDeserializer.java | 2 +- .../CaseUpdatedAboutToStartHandlerTest.java | 2 +- .../CreateCaseAboutToSubmitHandlerTest.java | 39 ++++++++- .../AbstractSubmitAppealServiceTest.java | 27 +++++-- 5 files changed, 102 insertions(+), 47 deletions(-) diff --git a/src/main/java/uk/gov/hmcts/reform/sscs/service/SubmitAppealServiceBase.java b/src/main/java/uk/gov/hmcts/reform/sscs/service/SubmitAppealServiceBase.java index b608b29304a..e2e17f0283c 100644 --- a/src/main/java/uk/gov/hmcts/reform/sscs/service/SubmitAppealServiceBase.java +++ b/src/main/java/uk/gov/hmcts/reform/sscs/service/SubmitAppealServiceBase.java @@ -21,15 +21,9 @@ import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; +import org.apache.commons.lang3.tuple.Pair; import org.jetbrains.annotations.NotNull; -import uk.gov.hmcts.reform.sscs.ccd.domain.Benefit; -import uk.gov.hmcts.reform.sscs.ccd.domain.CaseLink; -import uk.gov.hmcts.reform.sscs.ccd.domain.CaseLinkDetails; -import uk.gov.hmcts.reform.sscs.ccd.domain.CaseManagementLocation; -import uk.gov.hmcts.reform.sscs.ccd.domain.EventType; -import uk.gov.hmcts.reform.sscs.ccd.domain.RegionalProcessingCenter; -import uk.gov.hmcts.reform.sscs.ccd.domain.SscsCaseData; -import uk.gov.hmcts.reform.sscs.ccd.domain.SscsCaseDetails; +import uk.gov.hmcts.reform.sscs.ccd.domain.*; import uk.gov.hmcts.reform.sscs.ccd.exception.CcdException; import uk.gov.hmcts.reform.sscs.ccd.service.CcdService; import uk.gov.hmcts.reform.sscs.config.CitizenCcdService; @@ -196,39 +190,49 @@ private EventType findEventType(SscsCaseData caseData, boolean saveAndReturnCase } } - private SscsCaseDetails createOrUpdateCase(SscsCaseData caseData, EventType eventType, IdamTokens idamTokens) { + private Pair, SscsCaseDetails> getMatchedNinoCasesAndCaseDetails(SscsCaseData caseData, + IdamTokens idamTokens, + boolean isIba, + String nino, + String ibcaReference) { SscsCaseDetails caseDetails = null; - Benefit benefitType = caseData.getBenefitType().orElse(null); - boolean isIba = (benefitType != null && benefitType.equals(Benefit.INFECTED_BLOOD_APPEAL)); - String referenceName = isIba ? "IBCA Reference" : "Nino"; - String referenceValue = isIba ? caseData.getAppeal().getAppellant().getIdentity().getIbcaReference() - : caseData.getAppeal().getAppellant().getIdentity().getNino(); List matchedByNinoCases = List.of(); - try { - if (!isIba) { - matchedByNinoCases = getMatchedCases(caseData.getAppeal().getAppellant().getIdentity().getNino(), idamTokens); - - if (!matchedByNinoCases.isEmpty()) { - log.info("Found " + matchedByNinoCases.size() + " matching cases for Nino " - + caseData.getAppeal().getAppellant().getIdentity().getNino() + " before filtering non exact matches"); - } else { - log.info("No matching cases for Nino {}", caseData.getAppeal().getAppellant().getIdentity().getNino()); - } - - caseDetails = matchedByNinoCases.stream().filter(createNinoAndBenefitTypeAndMrnDatePredicate(caseData)).findFirst().orElse(null); + if (!isIba) { + matchedByNinoCases = getMatchedCases(nino, idamTokens); + if (!matchedByNinoCases.isEmpty()) { + log.info("Found " + matchedByNinoCases.size() + " matching cases for Nino " + + nino + " before filtering non exact matches"); } else { - log.info("Case is IBA with reference {}", caseData.getAppeal().getAppellant().getIdentity().getIbcaReference()); + log.info("No matching cases for Nino {}", nino); } + caseDetails = matchedByNinoCases.stream().filter(createNinoAndBenefitTypeAndMrnDatePredicate(caseData)).findFirst().orElse(null); + } else { + log.info("Case is IBA with reference {}", ibcaReference); + } + return Pair.of(matchedByNinoCases, caseDetails); + } + + private SscsCaseDetails createOrUpdateCase(SscsCaseData caseData, EventType eventType, IdamTokens idamTokens) { + SscsCaseDetails caseDetails = null; + String benefitShortName = caseData.getAppeal().getBenefitType().getCode(); + boolean isIba = (caseData.getBenefitCode().equals(Benefit.INFECTED_BLOOD_APPEAL.getBenefitCode())); + String nino = caseData.getAppeal().getAppellant().getIdentity().getNino(); + String ibcaReference = caseData.getAppeal().getAppellant().getIdentity().getIbcaReference(); + try { + Pair, SscsCaseDetails> matchedByNinoCasesCaseDetails = + getMatchedNinoCasesAndCaseDetails(caseData, idamTokens, isIba, nino, ibcaReference); + List matchedByNinoCases = matchedByNinoCasesCaseDetails.getLeft(); + caseDetails = matchedByNinoCasesCaseDetails.getRight(); if (caseDetails == null) { if (!matchedByNinoCases.isEmpty()) { log.info("Found " + matchedByNinoCases.size() + " matching cases for Nino " - + caseData.getAppeal().getAppellant().getIdentity().getNino()); + + nino); caseData = addAssociatedCases(caseData, matchedByNinoCases); } log.info("About to attempt creating case or updating draft case in CCD with event {} for benefit type {} and event {} and isScottish {} and languagePreference {}", eventType, - caseData.getAppeal().getBenefitType().getCode(), + benefitShortName, eventType, caseData.getIsScottishCase(), caseData.getLanguagePreference().getCode()); @@ -245,7 +249,7 @@ private SscsCaseDetails createOrUpdateCase(SscsCaseData caseData, EventType even log.info("Case {} successfully converted from Draft to SSCS case in CCD for benefit type {} with event {}", caseDetails.getId(), - caseData.getAppeal().getBenefitType().getCode(), + benefitShortName, eventType); } else { caseDetails = ccdService.createCase(caseData, @@ -255,23 +259,26 @@ private SscsCaseDetails createOrUpdateCase(SscsCaseData caseData, EventType even idamTokens); log.info("Case {} successfully created in CCD for benefit type {} with event {}", caseDetails.getId(), - caseData.getAppeal().getBenefitType().getCode(), + benefitShortName, eventType); } return caseDetails; } } catch (Exception e) { + String caseId = caseDetails != null ? caseDetails.getId().toString() : ""; + String referenceName = isIba ? "IBCA Reference" : "Nino"; + String referenceValue = isIba ? ibcaReference : nino; throw new CcdException( String.format("Error found in the creating case process for case with Id - %s" - + " and " + referenceName + " - %s and Benefit type - %s and exception: %s", - caseDetails != null ? caseDetails.getId() : "", referenceValue, - caseData.getAppeal().getBenefitType().getCode(), e.getMessage()), e); + + " and %s - %s and Benefit type - %s and exception: %s", + caseId, referenceName, referenceValue, + benefitShortName, e.getMessage()), e); } log.info("Duplicate case {} found for Nino {} and benefit type {}. " + "No need to continue with post create case processing.", - caseDetails.getId(), caseData.getAppeal().getAppellant().getIdentity().getNino(), - caseData.getAppeal().getBenefitType().getCode()); + caseDetails.getId(), nino, + benefitShortName); throw new DuplicateCaseException( String.format("An appeal has already been submitted, for that decision date %s ", caseData.getAppeal().getMrnDetails().getMrnDate())); diff --git a/src/main/java/uk/gov/hmcts/reform/sscs/transform/deserialize/SubmitYourAppealToCcdCaseDataDeserializer.java b/src/main/java/uk/gov/hmcts/reform/sscs/transform/deserialize/SubmitYourAppealToCcdCaseDataDeserializer.java index 26f736c2b3b..08d8993015c 100644 --- a/src/main/java/uk/gov/hmcts/reform/sscs/transform/deserialize/SubmitYourAppealToCcdCaseDataDeserializer.java +++ b/src/main/java/uk/gov/hmcts/reform/sscs/transform/deserialize/SubmitYourAppealToCcdCaseDataDeserializer.java @@ -309,7 +309,7 @@ private static Appellant getAppellant(SyaCaseWrapper syaCaseWrapper) { contact = Contact.builder().build(); } Identity identity; - if (syaCaseWrapper.getBenefitType().getCode().equals("infectedBloodAppeal")) { + if (syaCaseWrapper.getBenefitType().getCode().equals(Benefit.INFECTED_BLOOD_APPEAL.getBenefitCode())) { identity = buildAppellantIdentity(syaAppellant, true); } else { identity = buildAppellantIdentity(syaAppellant, false); diff --git a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/CaseUpdatedAboutToStartHandlerTest.java b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/CaseUpdatedAboutToStartHandlerTest.java index 2616aa6bad3..7a4628c3873 100644 --- a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/CaseUpdatedAboutToStartHandlerTest.java +++ b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/CaseUpdatedAboutToStartHandlerTest.java @@ -91,7 +91,7 @@ void givenBenefitType_shouldHaveCorrectBenefitSelectionWithInfectedBloodAppealEn assertThat(benefitSelection).isNotNull(); assertThat(benefitSelection.getValue()).isNotNull(); assertThat(benefitSelection.getValue().getCode()).isEqualTo("002"); - assertThat(benefitSelection.getListItems().size()).isEqualTo(35); + assertThat(benefitSelection.getListItems()).hasSize(35); } @Test diff --git a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandlerTest.java b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandlerTest.java index 0e9d1147c75..55bd0f86fca 100644 --- a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandlerTest.java +++ b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandlerTest.java @@ -8,6 +8,7 @@ import java.util.ArrayList; import java.util.Collections; import java.util.List; +import java.util.Optional; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; @@ -44,6 +45,21 @@ public class CreateCaseAboutToSubmitHandlerTest { @Mock private CaseDetails caseDetails; + @Mock + private SscsCaseData mockedCaseData; + + @Mock + private Appeal mockedAppeal; + + @Mock + private Appellant mockedAppellant; + + @Mock + private Name mockedName; + + @Mock + private Identity mockedIdentity; + @Mock private VerbalLanguagesService verbalLanguagesService; @@ -108,7 +124,28 @@ void shouldCallPdfService() throws CcdException { createCaseAboutToSubmitHandler.handle(ABOUT_TO_SUBMIT, callback, USER_AUTHORISATION); verify(emailHelper).generateUniqueEmailId(eq(caseDetails.getCaseData().getAppeal().getAppellant())); - verify(sscsPdfService).generatePdf(eq(caseDetails.getCaseData()), any(), any(), any()); + verify(sscsPdfService).generatePdf(eq(caseDetails.getCaseData()), any(), any(), eq("Test.pdf")); + } + + + @Test + void shouldCallPdfServiceWhenIbca() throws CcdException { + when(caseDetails.getCaseData()).thenReturn(mockedCaseData); + when(mockedCaseData.getCaseCreated()).thenReturn(""); + when(mockedCaseData.getCcdCaseId()).thenReturn("1021"); + when(mockedCaseData.getBenefitType()).thenReturn(Optional.of(Benefit.INFECTED_BLOOD_APPEAL)); + when(mockedCaseData.getAppeal()).thenReturn(mockedAppeal); + when(mockedAppeal.getAppellant()).thenReturn(mockedAppellant); + when(mockedAppellant.getName()).thenReturn(mockedName); + when(mockedAppellant.getIdentity()).thenReturn(mockedIdentity); + when(mockedName.getLastName()).thenReturn("appellantLastName"); + when(mockedIdentity.getIbcaReference()).thenReturn("ibcaRef"); + + createCaseAboutToSubmitHandler.handle(ABOUT_TO_SUBMIT, callback, USER_AUTHORISATION); + + verify(emailHelper, never()).generateUniqueEmailId(any()); + String expectedFilename = String.format("%s_%s", "appellantLastName", "ibcaRef") + ".pdf"; + verify(sscsPdfService).generatePdf(eq(caseDetails.getCaseData()), any(), any(), eq(expectedFilename)); } @Test diff --git a/src/test/java/uk/gov/hmcts/reform/sscs/service/AbstractSubmitAppealServiceTest.java b/src/test/java/uk/gov/hmcts/reform/sscs/service/AbstractSubmitAppealServiceTest.java index bf94e2c47ed..16458954c5b 100644 --- a/src/test/java/uk/gov/hmcts/reform/sscs/service/AbstractSubmitAppealServiceTest.java +++ b/src/test/java/uk/gov/hmcts/reform/sscs/service/AbstractSubmitAppealServiceTest.java @@ -54,14 +54,7 @@ import org.mockito.quality.Strictness; import uk.gov.hmcts.reform.ccd.client.model.CaseDetails; import uk.gov.hmcts.reform.pdf.service.client.PDFServiceClient; -import uk.gov.hmcts.reform.sscs.ccd.domain.Appeal; -import uk.gov.hmcts.reform.sscs.ccd.domain.Appellant; -import uk.gov.hmcts.reform.sscs.ccd.domain.BenefitType; -import uk.gov.hmcts.reform.sscs.ccd.domain.Identity; -import uk.gov.hmcts.reform.sscs.ccd.domain.MrnDetails; -import uk.gov.hmcts.reform.sscs.ccd.domain.RegionalProcessingCenter; -import uk.gov.hmcts.reform.sscs.ccd.domain.SscsCaseData; -import uk.gov.hmcts.reform.sscs.ccd.domain.SscsCaseDetails; +import uk.gov.hmcts.reform.sscs.ccd.domain.*; import uk.gov.hmcts.reform.sscs.ccd.exception.CcdException; import uk.gov.hmcts.reform.sscs.ccd.service.CcdService; import uk.gov.hmcts.reform.sscs.config.CitizenCcdService; @@ -228,6 +221,24 @@ public void givenCaseDoesNotExistInCcd_shouldCreateCaseWithAppealDetailsWithVali assertEquals("No", capture.getValue().getIsSaveAndReturn()); } + @Test + public void givenCaseIsIbca_shouldCreateCaseWithAppealDetailsWithValidAppealCreatedEvent() { + byte[] expected = {}; + given(pdfServiceClient.generateFromHtml(any(byte[].class), any())).willReturn(expected); + + given(ccdService.findCcdCaseByNinoAndBenefitTypeAndMrnDate(anyString(), anyString(), anyString(), any())).willReturn(null); + appealData.setBenefitType(new SyaBenefitType("Infected blood appeal", "infectedBloodAppeal")); + submitAppealService.submitAppeal(appealData, userToken); + appealData.setBenefitType(null); + verify(ccdService).createCase(capture.capture(), eq(VALID_APPEAL_CREATED.getCcdType()), any(String.class), any(String.class), any(IdamTokens.class)); + assertEquals("No", capture.getValue().getIsSaveAndReturn()); + Optional benefitType = capture.getValue().getBenefitType(); + assertTrue(benefitType.isPresent()); + assertEquals(Benefit.INFECTED_BLOOD_APPEAL, benefitType.get()); + assertEquals(Benefit.INFECTED_BLOOD_APPEAL.getShortName(), capture.getValue().getAppeal().getBenefitType().getCode()); + assertEquals(Benefit.INFECTED_BLOOD_APPEAL.getBenefitCode(), capture.getValue().getBenefitCode()); + } + @Test public void givenDraftCaseDoesExistAndCaseSubmitted_shouldUpdateCaseWithAppealDetailsWithDraftToValidAppealCreatedEvent() { byte[] expected = {}; From 61e86e2d3e6f9e42890f561016f5ab20c2dfd7ef Mon Sep 17 00:00:00 2001 From: nilay Date: Tue, 15 Oct 2024 11:17:57 +0100 Subject: [PATCH 07/34] pointing preview values to relevant sya pr --- charts/sscs-tribunals-api/values.preview.template.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/sscs-tribunals-api/values.preview.template.yaml b/charts/sscs-tribunals-api/values.preview.template.yaml index 49a85022bf8..0d3571883bd 100644 --- a/charts/sscs-tribunals-api/values.preview.template.yaml +++ b/charts/sscs-tribunals-api/values.preview.template.yaml @@ -537,7 +537,7 @@ sscs-tribunals-frontend: nodejs: memoryLimits: "2Gi" cpuLimits: 2000m - image: hmctspublic.azurecr.io/sscs/tribunals-frontend:latest + image: hmctspublic.azurecr.io/sscs/tribunals-frontend:pr-1548 ingressHost: sya-${SERVICE_FQDN} registerAdditionalDns: enabled: true From 3378d56e6099e6dc862cf890ecdf643ad0676883 Mon Sep 17 00:00:00 2001 From: nilay Date: Tue, 15 Oct 2024 15:43:19 +0100 Subject: [PATCH 08/34] TEMP reverting port of entry back to fixed list --- .../sheets/ComplexTypes/ComplexTypes.json | 6 +- .../benefit/sheets/FixedLists/FixedLists.json | 92 ++++++++++++++++++- 2 files changed, 92 insertions(+), 6 deletions(-) diff --git a/definitions/benefit/sheets/ComplexTypes/ComplexTypes.json b/definitions/benefit/sheets/ComplexTypes/ComplexTypes.json index d82af6a2d9a..6b38c1dad71 100644 --- a/definitions/benefit/sheets/ComplexTypes/ComplexTypes.json +++ b/definitions/benefit/sheets/ComplexTypes/ComplexTypes.json @@ -1,7 +1,4 @@ [ - {"LiveFrom": "01/01/2018", "ID": "ukPortOfEntry", "ListElementCode": "label", "FieldType": "Text", "ElementLabel": "Label", "SecurityClassification": "PUBLIC"}, - {"LiveFrom": "01/01/2018", "ID": "ukPortOfEntry", "ListElementCode": "trafficType", "FieldType": "Text", "ElementLabel": "Traffic Type", "SecurityClassification": "PUBLIC"}, - {"LiveFrom": "01/01/2018", "ID": "ukPortOfEntry", "ListElementCode": "locationCode", "FieldType": "Text", "ElementLabel": "Location Code", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "judicialUserPanel", "ListElementCode": "assignedTo", "FieldType": "JudicialUser", "ElementLabel": "Judge", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/02/2023", "ID": "judicialUserPanel", "ListElementCode": "panelMembers", "FieldType": "Collection", "FieldTypeParameter": "JudicialUser", "ElementLabel": "Panel Members", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "dateRange", "ListElementCode": "start", "FieldType": "Date", "ElementLabel": "Start Date", "SecurityClassification": "PUBLIC"}, @@ -41,8 +38,7 @@ {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "postcode", "FieldType": "Text", "ElementLabel": "Postcode", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "country", "FieldType": "Text", "ElementLabel": "Country", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "isInUk", "FieldType": "YesOrNo", "ElementLabel": "Living in the UK", "SecurityClassification": "PUBLIC"}, - {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "portOfEntry", "FieldType": "ukPortOfEntry", "ElementLabel": "Port of entry", "SecurityClassification": "PUBLIC"}, - {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "ukPortOfEntryList", "FieldType": "DynamicList", "ElementLabel": "Port of Entry", "SecurityClassification": "PUBLIC"}, + {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "portOfEntry", "FieldType": "FixedList", "FieldTypeParameter": "FL_portOfEntry", "ElementLabel": "Port of entry", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "identity", "ListElementCode": "dob", "FieldType": "Date", "ElementLabel": "Date of birth", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "identity", "ListElementCode": "nino", "FieldType": "Text", "ElementLabel": "National insurance number", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "identity", "ListElementCode": "ibcaReference", "FieldType": "Text", "ElementLabel": "IBCA Reference Number", "SecurityClassification": "PUBLIC"}, diff --git a/definitions/benefit/sheets/FixedLists/FixedLists.json b/definitions/benefit/sheets/FixedLists/FixedLists.json index e6e251dc6bd..9d2c7035235 100644 --- a/definitions/benefit/sheets/FixedLists/FixedLists.json +++ b/definitions/benefit/sheets/FixedLists/FixedLists.json @@ -904,5 +904,95 @@ {"LiveFrom": "05/05/2023", "ID": "FL_dwpStates", "ListElementCode": "decisionRemade", "ListElement": "Review Decision"}, {"LiveFrom": "01/09/2021", "ID": "FL_actionSendToFirstTier", "ListElementCode": "remade", "ListElement": "Remade"}, {"LiveFrom": "01/09/2021", "ID": "FL_actionSendToFirstTier", "ListElementCode": "refused", "ListElement": "Refused"}, - {"LiveFrom": "01/09/2021", "ID": "FL_actionSendToFirstTier", "ListElementCode": "remitted", "ListElement": "Remit from UT"} + {"LiveFrom": "01/09/2021", "ID": "FL_actionSendToFirstTier", "ListElementCode": "remitted", "ListElement": "Remit from UT"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000434", "ListElement": "GB000434"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000411", "ListElement": "GB000411"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000033", "ListElement": "GB000033"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003010", "ListElement": "GB003010"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000125", "ListElement": "GB000125"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003020", "ListElement": "GB003020"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003290", "ListElement": "GB003290"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000011", "ListElement": "GB000011"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003030", "ListElement": "GB003030"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000052", "ListElement": "GB000052"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000244", "ListElement": "GB000244"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003060", "ListElement": "GB003060"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003070", "ListElement": "GB003070"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003080", "ListElement": "GB003080"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000328", "ListElement": "GB000328"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000122", "ListElement": "GB000122"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000480", "ListElement": "GB000480"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000500", "ListElement": "GB000500"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB001011", "ListElement": "GB001011"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000040", "ListElement": "GB000040"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000060", "ListElement": "GB000060"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003100", "ListElement": "GB003100"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003180", "ListElement": "GB003180"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000128", "ListElement": "GB000128"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000297", "ListElement": "GB000297"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000108", "ListElement": "GB000108"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003110", "ListElement": "GB003110"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000051", "ListElement": "GB000051"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000041", "ListElement": "GB000041"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003040", "ListElement": "GB003040"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003120", "ListElement": "GB003120"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000059", "ListElement": "GB000059"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000054", "ListElement": "GB000054"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000073", "ListElement": "GB000073"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003140", "ListElement": "GB003140"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000124", "ListElement": "GB000124"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000072", "ListElement": "GB000072"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003130", "ListElement": "GB003130"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000501", "ListElement": "GB000501"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000074", "ListElement": "GB000074"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003150", "ListElement": "GB003150"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000450", "ListElement": "GB000450"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000465", "ListElement": "GB000465"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003160", "ListElement": "GB003160"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000055", "ListElement": "GB000055"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003170", "ListElement": "GB003170"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000087", "ListElement": "GB000087"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB001016", "ListElement": "GB001016"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003190", "ListElement": "GB003190"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000080", "ListElement": "GB000080"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003200", "ListElement": "GB003200"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000130", "ListElement": "GB000130"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000170", "ListElement": "GB000170"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000085", "ListElement": "GB000085"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000084", "ListElement": "GB000084"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000091", "ListElement": "GB000091"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000102", "ListElement": "GB000102"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000191", "ListElement": "GB000191"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003220", "ListElement": "GB003220"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000098", "ListElement": "GB000098"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000218", "ListElement": "GB000218"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003250", "ListElement": "GB003250"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000049", "ListElement": "GB000049"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000058", "ListElement": "GB000058"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003230", "ListElement": "GB003230"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000126", "ListElement": "GB000126"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000416", "ListElement": "GB000416"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000250", "ListElement": "GB000250"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003050", "ListElement": "GB003050"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000291", "ListElement": "GB000291"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003240", "ListElement": "GB003240"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000292", "ListElement": "GB000292"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000070", "ListElement": "GB000070"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000047", "ListElement": "GB000047"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000067", "ListElement": "GB000067"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000045", "ListElement": "GB000045"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000290", "ListElement": "GB000290"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003090", "ListElement": "GB003090"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000461", "ListElement": "GB000461"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000121", "ListElement": "GB000121"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003260", "ListElement": "GB003260"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003270", "ListElement": "GB003270"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000123", "ListElement": "GB000123"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000219", "ListElement": "GB000219"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000099", "ListElement": "GB000099"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000150", "ListElement": "GB000150"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000093", "ListElement": "GB000093"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000245", "ListElement": "GB000245"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000029", "ListElement": "GB000029"}, + {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003280", "ListElement": "GB003280"} ] From ee1e48b1ef8713efe5782ed7478c77b9e9fc4f68 Mon Sep 17 00:00:00 2001 From: nilay Date: Tue, 15 Oct 2024 17:46:08 +0100 Subject: [PATCH 09/34] Revert "TEMP reverting port of entry back to fixed list" This reverts commit 3378d56e6099e6dc862cf890ecdf643ad0676883. --- .../sheets/ComplexTypes/ComplexTypes.json | 6 +- .../benefit/sheets/FixedLists/FixedLists.json | 92 +------------------ 2 files changed, 6 insertions(+), 92 deletions(-) diff --git a/definitions/benefit/sheets/ComplexTypes/ComplexTypes.json b/definitions/benefit/sheets/ComplexTypes/ComplexTypes.json index 6b38c1dad71..d82af6a2d9a 100644 --- a/definitions/benefit/sheets/ComplexTypes/ComplexTypes.json +++ b/definitions/benefit/sheets/ComplexTypes/ComplexTypes.json @@ -1,4 +1,7 @@ [ + {"LiveFrom": "01/01/2018", "ID": "ukPortOfEntry", "ListElementCode": "label", "FieldType": "Text", "ElementLabel": "Label", "SecurityClassification": "PUBLIC"}, + {"LiveFrom": "01/01/2018", "ID": "ukPortOfEntry", "ListElementCode": "trafficType", "FieldType": "Text", "ElementLabel": "Traffic Type", "SecurityClassification": "PUBLIC"}, + {"LiveFrom": "01/01/2018", "ID": "ukPortOfEntry", "ListElementCode": "locationCode", "FieldType": "Text", "ElementLabel": "Location Code", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "judicialUserPanel", "ListElementCode": "assignedTo", "FieldType": "JudicialUser", "ElementLabel": "Judge", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/02/2023", "ID": "judicialUserPanel", "ListElementCode": "panelMembers", "FieldType": "Collection", "FieldTypeParameter": "JudicialUser", "ElementLabel": "Panel Members", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "dateRange", "ListElementCode": "start", "FieldType": "Date", "ElementLabel": "Start Date", "SecurityClassification": "PUBLIC"}, @@ -38,7 +41,8 @@ {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "postcode", "FieldType": "Text", "ElementLabel": "Postcode", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "country", "FieldType": "Text", "ElementLabel": "Country", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "isInUk", "FieldType": "YesOrNo", "ElementLabel": "Living in the UK", "SecurityClassification": "PUBLIC"}, - {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "portOfEntry", "FieldType": "FixedList", "FieldTypeParameter": "FL_portOfEntry", "ElementLabel": "Port of entry", "SecurityClassification": "PUBLIC"}, + {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "portOfEntry", "FieldType": "ukPortOfEntry", "ElementLabel": "Port of entry", "SecurityClassification": "PUBLIC"}, + {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "ukPortOfEntryList", "FieldType": "DynamicList", "ElementLabel": "Port of Entry", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "identity", "ListElementCode": "dob", "FieldType": "Date", "ElementLabel": "Date of birth", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "identity", "ListElementCode": "nino", "FieldType": "Text", "ElementLabel": "National insurance number", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "identity", "ListElementCode": "ibcaReference", "FieldType": "Text", "ElementLabel": "IBCA Reference Number", "SecurityClassification": "PUBLIC"}, diff --git a/definitions/benefit/sheets/FixedLists/FixedLists.json b/definitions/benefit/sheets/FixedLists/FixedLists.json index 9d2c7035235..e6e251dc6bd 100644 --- a/definitions/benefit/sheets/FixedLists/FixedLists.json +++ b/definitions/benefit/sheets/FixedLists/FixedLists.json @@ -904,95 +904,5 @@ {"LiveFrom": "05/05/2023", "ID": "FL_dwpStates", "ListElementCode": "decisionRemade", "ListElement": "Review Decision"}, {"LiveFrom": "01/09/2021", "ID": "FL_actionSendToFirstTier", "ListElementCode": "remade", "ListElement": "Remade"}, {"LiveFrom": "01/09/2021", "ID": "FL_actionSendToFirstTier", "ListElementCode": "refused", "ListElement": "Refused"}, - {"LiveFrom": "01/09/2021", "ID": "FL_actionSendToFirstTier", "ListElementCode": "remitted", "ListElement": "Remit from UT"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000434", "ListElement": "GB000434"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000411", "ListElement": "GB000411"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000033", "ListElement": "GB000033"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003010", "ListElement": "GB003010"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000125", "ListElement": "GB000125"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003020", "ListElement": "GB003020"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003290", "ListElement": "GB003290"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000011", "ListElement": "GB000011"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003030", "ListElement": "GB003030"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000052", "ListElement": "GB000052"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000244", "ListElement": "GB000244"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003060", "ListElement": "GB003060"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003070", "ListElement": "GB003070"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003080", "ListElement": "GB003080"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000328", "ListElement": "GB000328"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000122", "ListElement": "GB000122"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000480", "ListElement": "GB000480"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000500", "ListElement": "GB000500"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB001011", "ListElement": "GB001011"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000040", "ListElement": "GB000040"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000060", "ListElement": "GB000060"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003100", "ListElement": "GB003100"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003180", "ListElement": "GB003180"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000128", "ListElement": "GB000128"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000297", "ListElement": "GB000297"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000108", "ListElement": "GB000108"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003110", "ListElement": "GB003110"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000051", "ListElement": "GB000051"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000041", "ListElement": "GB000041"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003040", "ListElement": "GB003040"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003120", "ListElement": "GB003120"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000059", "ListElement": "GB000059"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000054", "ListElement": "GB000054"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000073", "ListElement": "GB000073"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003140", "ListElement": "GB003140"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000124", "ListElement": "GB000124"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000072", "ListElement": "GB000072"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003130", "ListElement": "GB003130"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000501", "ListElement": "GB000501"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000074", "ListElement": "GB000074"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003150", "ListElement": "GB003150"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000450", "ListElement": "GB000450"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000465", "ListElement": "GB000465"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003160", "ListElement": "GB003160"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000055", "ListElement": "GB000055"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003170", "ListElement": "GB003170"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000087", "ListElement": "GB000087"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB001016", "ListElement": "GB001016"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003190", "ListElement": "GB003190"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000080", "ListElement": "GB000080"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003200", "ListElement": "GB003200"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000130", "ListElement": "GB000130"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000170", "ListElement": "GB000170"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000085", "ListElement": "GB000085"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000084", "ListElement": "GB000084"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000091", "ListElement": "GB000091"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000102", "ListElement": "GB000102"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000191", "ListElement": "GB000191"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003220", "ListElement": "GB003220"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000098", "ListElement": "GB000098"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000218", "ListElement": "GB000218"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003250", "ListElement": "GB003250"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000049", "ListElement": "GB000049"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000058", "ListElement": "GB000058"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003230", "ListElement": "GB003230"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000126", "ListElement": "GB000126"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000416", "ListElement": "GB000416"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000250", "ListElement": "GB000250"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003050", "ListElement": "GB003050"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000291", "ListElement": "GB000291"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003240", "ListElement": "GB003240"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000292", "ListElement": "GB000292"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000070", "ListElement": "GB000070"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000047", "ListElement": "GB000047"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000067", "ListElement": "GB000067"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000045", "ListElement": "GB000045"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000290", "ListElement": "GB000290"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003090", "ListElement": "GB003090"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000461", "ListElement": "GB000461"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000121", "ListElement": "GB000121"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003260", "ListElement": "GB003260"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003270", "ListElement": "GB003270"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000123", "ListElement": "GB000123"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000219", "ListElement": "GB000219"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000099", "ListElement": "GB000099"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000150", "ListElement": "GB000150"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000093", "ListElement": "GB000093"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000245", "ListElement": "GB000245"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB000029", "ListElement": "GB000029"}, - {"LiveFrom": "01/01/2018", "ID": "FL_portOfEntry", "ListElementCode": "GB003280", "ListElement": "GB003280"} + {"LiveFrom": "01/09/2021", "ID": "FL_actionSendToFirstTier", "ListElementCode": "remitted", "ListElement": "Remit from UT"} ] From 1390ab7880e0aab888588afc94a31aab949c28ce Mon Sep 17 00:00:00 2001 From: nilay Date: Thu, 17 Oct 2024 16:00:43 +0100 Subject: [PATCH 10/34] TEMP pointing to commons --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index be97fc89089..dc03f21efa2 100644 --- a/build.gradle +++ b/build.gradle @@ -351,7 +351,7 @@ dependencies { implementation group: 'org.flywaydb', name: 'flyway-core', version: '9.22.3' implementation group: 'org.postgresql', name: 'postgresql', version: '42.6.0' - implementation group: 'com.github.hmcts', name: 'sscs-common', version: '5.12.5' + implementation group: 'com.github.hmcts', name: 'sscs-common', version: 'SSCSCI-1179-SNAPSHOT' implementation group: 'com.github.hmcts', name: 'sscs-pdf-email-common', version: '5.2.14' From 567c7550b552f0ccd0b5f71eb75c8d3a70fc8735 Mon Sep 17 00:00:00 2001 From: nilay Date: Thu, 17 Oct 2024 16:03:47 +0100 Subject: [PATCH 11/34] getting SYA to submit successfully with in uk or out of uk IBA appeals --- .../sheets/ComplexTypes/ComplexTypes.json | 8 +- .../benefit/sheets/FixedLists/FixedLists.json | 5 + .../sscs/domain/wrapper/SyaAppellant.java | 3 + .../domain/wrapper/SyaContactDetails.java | 3 + .../sscs/service/SubmitAppealServiceBase.java | 38 +- ...itYourAppealToCcdCaseDataDeserializer.java | 548 +++++++++--------- 6 files changed, 321 insertions(+), 284 deletions(-) diff --git a/definitions/benefit/sheets/ComplexTypes/ComplexTypes.json b/definitions/benefit/sheets/ComplexTypes/ComplexTypes.json index d82af6a2d9a..1cd3091bf43 100644 --- a/definitions/benefit/sheets/ComplexTypes/ComplexTypes.json +++ b/definitions/benefit/sheets/ComplexTypes/ComplexTypes.json @@ -1,7 +1,4 @@ [ - {"LiveFrom": "01/01/2018", "ID": "ukPortOfEntry", "ListElementCode": "label", "FieldType": "Text", "ElementLabel": "Label", "SecurityClassification": "PUBLIC"}, - {"LiveFrom": "01/01/2018", "ID": "ukPortOfEntry", "ListElementCode": "trafficType", "FieldType": "Text", "ElementLabel": "Traffic Type", "SecurityClassification": "PUBLIC"}, - {"LiveFrom": "01/01/2018", "ID": "ukPortOfEntry", "ListElementCode": "locationCode", "FieldType": "Text", "ElementLabel": "Location Code", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "judicialUserPanel", "ListElementCode": "assignedTo", "FieldType": "JudicialUser", "ElementLabel": "Judge", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/02/2023", "ID": "judicialUserPanel", "ListElementCode": "panelMembers", "FieldType": "Collection", "FieldTypeParameter": "JudicialUser", "ElementLabel": "Panel Members", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "dateRange", "ListElementCode": "start", "FieldType": "Date", "ElementLabel": "Start Date", "SecurityClassification": "PUBLIC"}, @@ -40,8 +37,8 @@ {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "county", "FieldType": "Text", "ElementLabel": "County", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "postcode", "FieldType": "Text", "ElementLabel": "Postcode", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "country", "FieldType": "Text", "ElementLabel": "Country", "SecurityClassification": "PUBLIC"}, - {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "isInUk", "FieldType": "YesOrNo", "ElementLabel": "Living in the UK", "SecurityClassification": "PUBLIC"}, - {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "portOfEntry", "FieldType": "ukPortOfEntry", "ElementLabel": "Port of entry", "SecurityClassification": "PUBLIC"}, + {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "inMainlandUk", "FieldType": "YesOrNo", "ElementLabel": "Living in the UK", "SecurityClassification": "PUBLIC"}, + {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "portOfEntry", "FieldType": "Text", "ElementLabel": "Port of Entry Code", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "address", "ListElementCode": "ukPortOfEntryList", "FieldType": "DynamicList", "ElementLabel": "Port of Entry", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "identity", "ListElementCode": "dob", "FieldType": "Date", "ElementLabel": "Date of birth", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "identity", "ListElementCode": "nino", "FieldType": "Text", "ElementLabel": "National insurance number", "SecurityClassification": "PUBLIC"}, @@ -103,6 +100,7 @@ {"LiveFrom": "01/01/2018", "ID": "appellant", "ListElementCode": "isAddressSameAsAppointee", "FieldType": "YesOrNo", "ElementLabel": "Is Address same as Appointee", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/10/2021", "ID": "appellant", "ListElementCode": "confidentialityRequired", "FieldType": "YesOrNo", "ElementLabel": "Confidentiality Status", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "appellant", "ListElementCode": "role", "FieldType": "role", "ElementLabel": "Appellant Role", "SecurityClassification": "PUBLIC"}, + {"LiveFrom": "01/01/2018", "ID": "appellant", "ListElementCode": "ibcRole", "FieldType": "FixedList", "FieldTypeParameter": "FL_ibcRoles", "ElementLabel": "Role", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "appellant", "ListElementCode": "id", "FieldType": "Text", "ElementLabel": "Id", "FieldShowCondition": "name=\"AnyValueToFailThisCondition\"" ,"SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "appellant", "ListElementCode": "organisation", "FieldType": "Text", "ElementLabel": "Organisation", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "01/01/2018", "ID": "appellant", "ListElementCode": "pcqId", "FieldType": "Text", "ElementLabel": "PCQ ID", "SecurityClassification": "PUBLIC"}, diff --git a/definitions/benefit/sheets/FixedLists/FixedLists.json b/definitions/benefit/sheets/FixedLists/FixedLists.json index e6e251dc6bd..a590d4892f2 100644 --- a/definitions/benefit/sheets/FixedLists/FixedLists.json +++ b/definitions/benefit/sheets/FixedLists/FixedLists.json @@ -772,6 +772,11 @@ {"LiveFrom": "01/09/2021", "ID": "FL_roles", "ListElementCode": "Paying parent", "ListElement": "Paying parent"}, {"LiveFrom": "01/09/2021", "ID": "FL_roles", "ListElementCode": "Receiving parent", "ListElement": "Receiving parent"}, {"LiveFrom": "01/09/2021", "ID": "FL_roles", "ListElementCode": "Other", "ListElement": "Other"}, + {"LiveFrom": "01/09/2021", "ID": "FL_ibcRoles", "ListElementCode": "myself", "ListElement": "I am appealing for myself"}, + {"LiveFrom": "01/09/2021", "ID": "FL_ibcRoles", "ListElementCode": "parent", "ListElement": "I am appealing for a person under 18 for whom I have parental responsibility"}, + {"LiveFrom": "01/09/2021", "ID": "FL_ibcRoles", "ListElementCode": "guardian", "ListElement": "I am appealing for a person as their Guardian, Deputy or Controller for reasons of their mental incapacity"}, + {"LiveFrom": "01/09/2021", "ID": "FL_ibcRoles", "ListElementCode": "powerOfAttorney", "ListElement": "I am appealing on behalf of a person for who I have been granted a Power of Attorney"}, + {"LiveFrom": "01/09/2021", "ID": "FL_ibcRoles", "ListElementCode": "deceasedRepresentative", "ListElement": "I am appealing on behalf of a deceased person as their Personal Representative"}, {"LiveFrom": "08/03/2022", "ID": "FL_hearingRoute", "ListElementCode": "gaps", "ListElement": "Gaps"}, {"LiveFrom": "04/07/2022", "ID": "FL_hearingRoute", "ListElementCode": "listAssist", "ListElement": "List Assist"}, {"LiveFrom": "08/03/2022", "ID": "FL_hearingState", "ListElementCode": "createHearing", "ListElement": "Create Hearing"}, diff --git a/src/main/java/uk/gov/hmcts/reform/sscs/domain/wrapper/SyaAppellant.java b/src/main/java/uk/gov/hmcts/reform/sscs/domain/wrapper/SyaAppellant.java index d6e3afd0920..185cd18189b 100644 --- a/src/main/java/uk/gov/hmcts/reform/sscs/domain/wrapper/SyaAppellant.java +++ b/src/main/java/uk/gov/hmcts/reform/sscs/domain/wrapper/SyaAppellant.java @@ -36,6 +36,9 @@ public class SyaAppellant { @JsonProperty("isAddressSameAsAppointee") private Boolean isAddressSameAsAppointee; + @JsonProperty("ibcRole") + private String ibcRole; + public void setNino(String nino) { this.nino = normaliseNino(nino); } diff --git a/src/main/java/uk/gov/hmcts/reform/sscs/domain/wrapper/SyaContactDetails.java b/src/main/java/uk/gov/hmcts/reform/sscs/domain/wrapper/SyaContactDetails.java index dd8ad7a4f4b..2168514bb0a 100644 --- a/src/main/java/uk/gov/hmcts/reform/sscs/domain/wrapper/SyaContactDetails.java +++ b/src/main/java/uk/gov/hmcts/reform/sscs/domain/wrapper/SyaContactDetails.java @@ -13,4 +13,7 @@ public class SyaContactDetails { private String emailAddress; private String postcodeLookup; private String postcodeAddress; + private String portOfEntry; + private String country; + private Boolean inMainlandUk; } diff --git a/src/main/java/uk/gov/hmcts/reform/sscs/service/SubmitAppealServiceBase.java b/src/main/java/uk/gov/hmcts/reform/sscs/service/SubmitAppealServiceBase.java index e2e17f0283c..f9e9c1d9912 100644 --- a/src/main/java/uk/gov/hmcts/reform/sscs/service/SubmitAppealServiceBase.java +++ b/src/main/java/uk/gov/hmcts/reform/sscs/service/SubmitAppealServiceBase.java @@ -140,10 +140,9 @@ public Long submitAppeal(SyaCaseWrapper appeal, String userToken) { } SscsCaseData convertAppealToSscsCaseData(SyaCaseWrapper appeal) { - - String postCode = resolvePostCode(appeal); - String firstHalfOfPostcode = getFirstHalfOfPostcode(postCode); - RegionalProcessingCenter rpc = regionalProcessingCenterService.getByPostcode(firstHalfOfPostcode); + boolean isIba = appeal.getBenefitType().getCode().equals(Benefit.INFECTED_BLOOD_APPEAL.getShortName()); + String postCode = resolvePostCode(appeal, isIba); + RegionalProcessingCenter rpc = regionalProcessingCenterService.getByPostcode(isIba ? postCode : getFirstHalfOfPostcode(postCode)); SscsCaseData sscsCaseData = rpc == null ? convertSyaToCcdCaseDataV1(appeal, caseAccessManagementFeature) @@ -168,24 +167,30 @@ SscsCaseData convertAppealToSscsCaseData(SyaCaseWrapper appeal) { } log.info("{} - setting venue name to {}", - sscsCaseData.getAppeal().getAppellant().getIdentity().getNino(), + isIba + ? sscsCaseData.getAppeal().getAppellant().getIdentity().getIbcaReference() + : sscsCaseData.getAppeal().getAppellant().getIdentity().getNino(), sscsCaseData.getProcessingVenue()); return sscsCaseData; } private EventType findEventType(SscsCaseData caseData, boolean saveAndReturnCase) { - - if (caseData.getAppeal().getMrnDetails() != null && caseData.getAppeal().getMrnDetails().getMrnDate() != null) { - LocalDate mrnDate = LocalDate.parse(caseData.getAppeal().getMrnDetails().getMrnDate()); + Appeal appeal = caseData.getAppeal(); + MrnDetails mrnDetails = appeal.getMrnDetails(); + if (mrnDetails != null && mrnDetails.getMrnDate() != null) { + LocalDate mrnDate = LocalDate.parse(mrnDetails.getMrnDate()); boolean moveToNoneCompliant = mrnDate.plusMonths(13L).isBefore(LocalDate.now()); return handleMoveToNonCompliant(caseData, saveAndReturnCase, moveToNoneCompliant); } else { - log.info("Moving case for NINO {} to incomplete due to MRN Details {} present and MRN Date {} present", - caseData.getAppeal().getAppellant().getIdentity().getNino(), - (caseData.getAppeal().getMrnDetails() != null ? "" : "not"), - (caseData.getAppeal().getMrnDetails().getMrnDate() != null ? "" : "not")); + boolean isIba = caseData.getBenefitCode().equals(Benefit.INFECTED_BLOOD_APPEAL.getBenefitCode()); + Identity identity = appeal.getAppellant().getIdentity(); + log.info("Moving case for {} {} to incomplete due to MRN Details {} present and MRN Date {} present", + isIba ? "Ibca Reference" : "NINO", + isIba ? identity.getIbcaReference() : identity.getNino(), + (mrnDetails != null ? "" : "not"), + (mrnDetails != null && mrnDetails.getMrnDate() != null ? "" : "not")); return saveAndReturnCase ? DRAFT_TO_INCOMPLETE_APPLICATION : INCOMPLETE_APPLICATION_RECEIVED; } } @@ -215,7 +220,7 @@ private Pair, SscsCaseDetails> getMatchedNinoCasesAndCaseD private SscsCaseDetails createOrUpdateCase(SscsCaseData caseData, EventType eventType, IdamTokens idamTokens) { SscsCaseDetails caseDetails = null; String benefitShortName = caseData.getAppeal().getBenefitType().getCode(); - boolean isIba = (caseData.getBenefitCode().equals(Benefit.INFECTED_BLOOD_APPEAL.getBenefitCode())); + boolean isIba = caseData.getBenefitCode().equals(Benefit.INFECTED_BLOOD_APPEAL.getBenefitCode()); String nino = caseData.getAppeal().getAppellant().getIdentity().getNino(); String ibcaReference = caseData.getAppeal().getAppellant().getIdentity().getIbcaReference(); try { @@ -292,8 +297,11 @@ private void associateCase(IdamTokens idamTokens, } } - private String resolvePostCode(SyaCaseWrapper appeal) { - if (Boolean.TRUE.equals(appeal.getIsAppointee())) { + private String resolvePostCode(SyaCaseWrapper appeal, boolean isIba) { + Boolean inMainlandUk = appeal.getContactDetails().getInMainlandUk(); + if (isIba && inMainlandUk != null && inMainlandUk.equals(Boolean.FALSE)) { + return appeal.getAppellant().getContactDetails().getPortOfEntry(); + } else if (Boolean.TRUE.equals(appeal.getIsAppointee())) { return Optional.ofNullable(appeal.getAppointee()) .map(SyaAppointee::getContactDetails) .map(SyaContactDetails::getPostCode) diff --git a/src/main/java/uk/gov/hmcts/reform/sscs/transform/deserialize/SubmitYourAppealToCcdCaseDataDeserializer.java b/src/main/java/uk/gov/hmcts/reform/sscs/transform/deserialize/SubmitYourAppealToCcdCaseDataDeserializer.java index 08d8993015c..119f8c3cbe0 100644 --- a/src/main/java/uk/gov/hmcts/reform/sscs/transform/deserialize/SubmitYourAppealToCcdCaseDataDeserializer.java +++ b/src/main/java/uk/gov/hmcts/reform/sscs/transform/deserialize/SubmitYourAppealToCcdCaseDataDeserializer.java @@ -31,9 +31,9 @@ private SubmitYourAppealToCcdCaseDataDeserializer() { } public static SscsCaseData convertSyaToCcdCaseDataV1(SyaCaseWrapper syaCaseWrapper, - String region, - RegionalProcessingCenter rpc, - boolean caseAccessManagementEnabled) { + String region, + RegionalProcessingCenter rpc, + boolean caseAccessManagementEnabled) { return convertSyaToCcdCaseDataV1(syaCaseWrapper, caseAccessManagementEnabled) .toBuilder() .region(region) @@ -47,10 +47,10 @@ public static SscsCaseData convertSyaToCcdCaseDataV1(SyaCaseWrapper syaCaseWrapp } public static SscsCaseData convertSyaToCcdCaseDataV2(SyaCaseWrapper syaCaseWrapper, - String region, - RegionalProcessingCenter rpc, - boolean caseAccessManagementEnabled, - SscsCaseData sscsCaseData) { + String region, + RegionalProcessingCenter rpc, + boolean caseAccessManagementEnabled, + SscsCaseData sscsCaseData) { return convertSyaToCcdCaseDataV2(syaCaseWrapper, caseAccessManagementEnabled, sscsCaseData) .toBuilder() .region(region) @@ -74,7 +74,7 @@ public static SscsCaseData convertSyaToCcdCaseDataGeneric(SyaCaseWrapper syaCase } String benefitCode = isDraft ? null : generateBenefitCode(appeal.getBenefitType().getCode(), addressName) - .orElseThrow(() -> BenefitMappingException.createException(appeal.getBenefitType().getCode())); + .orElseThrow(() -> BenefitMappingException.createException(appeal.getBenefitType().getCode())); String issueCode = isDraft ? null : generateIssueCode(); @@ -101,45 +101,45 @@ public static SscsCaseData convertSyaToCcdCaseDataGeneric(SyaCaseWrapper syaCase caseAccessManagementFields.setOgdType(benefit.getSscsType().equals(SscsType.SSCS5) ? "HMRC" : "DWP"); return builder - .caseAccessManagementFields(caseAccessManagementFields) - .caseCreated(LocalDate.now().toString()) - .isSaveAndReturn(syaCaseWrapper.getIsSaveAndReturn()) - .appeal(appeal) - .subscriptions(getSubscriptions(syaCaseWrapper)) - .sscsDocument(sscsDocuments.isEmpty() ? Collections.emptyList() : sscsDocuments) - .evidencePresent(hasEvidence(syaCaseWrapper.getEvidenceProvide())) - .benefitCode(benefitCode) - .issueCode(issueCode) - .caseCode(caseCode) - .dwpRegionalCentre(getDwpRegionalCenterGivenDwpIssuingOffice(appeal.getBenefitType().getCode(), - appeal.getMrnDetails().getDwpIssuingOffice())) - .pcqId(syaCaseWrapper.getPcqId()) - .languagePreferenceWelsh(booleanToYesNo(syaCaseWrapper.getLanguagePreferenceWelsh())) - .translationWorkOutstanding(booleanToYesNull(!sscsDocuments.isEmpty() - && syaCaseWrapper.getLanguagePreferenceWelsh() != null - && syaCaseWrapper.getLanguagePreferenceWelsh())) - .ccdCaseId(ccdCaseId) - .build(); + .caseAccessManagementFields(caseAccessManagementFields) + .caseCreated(LocalDate.now().toString()) + .isSaveAndReturn(syaCaseWrapper.getIsSaveAndReturn()) + .appeal(appeal) + .subscriptions(getSubscriptions(syaCaseWrapper)) + .sscsDocument(sscsDocuments.isEmpty() ? Collections.emptyList() : sscsDocuments) + .evidencePresent(hasEvidence(syaCaseWrapper.getEvidenceProvide())) + .benefitCode(benefitCode) + .issueCode(issueCode) + .caseCode(caseCode) + .dwpRegionalCentre(getDwpRegionalCenterGivenDwpIssuingOffice(appeal.getBenefitType().getCode(), + appeal.getMrnDetails().getDwpIssuingOffice())) + .pcqId(syaCaseWrapper.getPcqId()) + .languagePreferenceWelsh(booleanToYesNo(syaCaseWrapper.getLanguagePreferenceWelsh())) + .translationWorkOutstanding(booleanToYesNull(!sscsDocuments.isEmpty() + && syaCaseWrapper.getLanguagePreferenceWelsh() != null + && syaCaseWrapper.getLanguagePreferenceWelsh())) + .ccdCaseId(ccdCaseId) + .build(); } else { return builder - .caseCreated(LocalDate.now().toString()) - .isSaveAndReturn(syaCaseWrapper.getIsSaveAndReturn()) - .appeal(appeal) - .subscriptions(getSubscriptions(syaCaseWrapper)) - .sscsDocument(sscsDocuments.isEmpty() ? Collections.emptyList() : sscsDocuments) - .evidencePresent(hasEvidence(syaCaseWrapper.getEvidenceProvide())) - .benefitCode(benefitCode) - .issueCode(issueCode) - .caseCode(caseCode) - .dwpRegionalCentre(getDwpRegionalCenterGivenDwpIssuingOffice(appeal.getBenefitType().getCode(), - appeal.getMrnDetails().getDwpIssuingOffice())) - .pcqId(syaCaseWrapper.getPcqId()) - .languagePreferenceWelsh(booleanToYesNo(syaCaseWrapper.getLanguagePreferenceWelsh())) - .translationWorkOutstanding(booleanToYesNull(!sscsDocuments.isEmpty() - && syaCaseWrapper.getLanguagePreferenceWelsh() != null - && syaCaseWrapper.getLanguagePreferenceWelsh())) - .ccdCaseId(ccdCaseId) - .build(); + .caseCreated(LocalDate.now().toString()) + .isSaveAndReturn(syaCaseWrapper.getIsSaveAndReturn()) + .appeal(appeal) + .subscriptions(getSubscriptions(syaCaseWrapper)) + .sscsDocument(sscsDocuments.isEmpty() ? Collections.emptyList() : sscsDocuments) + .evidencePresent(hasEvidence(syaCaseWrapper.getEvidenceProvide())) + .benefitCode(benefitCode) + .issueCode(issueCode) + .caseCode(caseCode) + .dwpRegionalCentre(getDwpRegionalCenterGivenDwpIssuingOffice(appeal.getBenefitType().getCode(), + appeal.getMrnDetails().getDwpIssuingOffice())) + .pcqId(syaCaseWrapper.getPcqId()) + .languagePreferenceWelsh(booleanToYesNo(syaCaseWrapper.getLanguagePreferenceWelsh())) + .translationWorkOutstanding(booleanToYesNull(!sscsDocuments.isEmpty() + && syaCaseWrapper.getLanguagePreferenceWelsh() != null + && syaCaseWrapper.getLanguagePreferenceWelsh())) + .ccdCaseId(ccdCaseId) + .build(); } } @@ -184,15 +184,15 @@ private static Subscriptions getSubscriptions(SyaCaseWrapper syaCaseWrapper) { } private static Appeal getAppeal(SyaCaseWrapper syaCaseWrapper) { + boolean isIba = syaCaseWrapper.getBenefitType().getCode().equals(Benefit.INFECTED_BLOOD_APPEAL.getShortName()); + MrnDetails mrnDetails = getMrnDetails(syaCaseWrapper, isIba); - MrnDetails mrnDetails = getMrnDetails(syaCaseWrapper); - - Appellant appellant = getAppellant(syaCaseWrapper); + Appellant appellant = getAppellant(syaCaseWrapper, isIba); BenefitType benefitType = BenefitType.builder() - .code(syaCaseWrapper.getBenefitType().getCode()) - .description(syaCaseWrapper.getBenefitType().getDescription()) - .build(); + .code(syaCaseWrapper.getBenefitType().getCode()) + .description(syaCaseWrapper.getBenefitType().getDescription()) + .build(); HearingOptions hearingOptions = getHearingOptions(syaCaseWrapper.getSyaHearingOptions()); @@ -203,17 +203,17 @@ private static Appeal getAppeal(SyaCaseWrapper syaCaseWrapper) { HearingSubtype hearingSubtype = getHearingSubType(syaCaseWrapper.getSyaHearingOptions()); return Appeal.builder() - .mrnDetails(mrnDetails) - .appellant(appellant) - .benefitType(benefitType) - .hearingOptions(hearingOptions) - .appealReasons(appealReasons) - .rep(representative) - .signer(syaCaseWrapper.getSignAndSubmit() != null ? syaCaseWrapper.getSignAndSubmit().getSigner() : null) - .hearingType(getHearingType(hearingOptions)) - .hearingSubtype(hearingSubtype) - .receivedVia("Online") - .build(); + .mrnDetails(mrnDetails) + .appellant(appellant) + .benefitType(benefitType) + .hearingOptions(hearingOptions) + .appealReasons(appealReasons) + .rep(representative) + .signer(syaCaseWrapper.getSignAndSubmit() != null ? syaCaseWrapper.getSignAndSubmit().getSigner() : null) + .hearingType(getHearingType(hearingOptions)) + .hearingSubtype(hearingSubtype) + .receivedVia("Online") + .build(); } private static String getHearingType(HearingOptions hearingOptions) { @@ -221,17 +221,19 @@ private static String getHearingType(HearingOptions hearingOptions) { return null; } return YES.equals(hearingOptions.getWantsToAttend()) ? HearingType.ORAL.getValue() : - HearingType.PAPER.getValue(); + HearingType.PAPER.getValue(); } - private static MrnDetails getMrnDetails(SyaCaseWrapper syaCaseWrapper) { - return MrnDetails.builder() + private static MrnDetails getMrnDetails(SyaCaseWrapper syaCaseWrapper, boolean isIba) { + MrnDetails.MrnDetailsBuilder builder = MrnDetails.builder() + .mrnDate(getMrnDate(syaCaseWrapper)) + .mrnLateReason(getReasonForBeingLate(syaCaseWrapper)); + if (!isIba) { + builder .dwpIssuingOffice(getDwpIssuingOffice(syaCaseWrapper)) - .mrnDate(getMrnDate(syaCaseWrapper)) - .mrnLateReason(getReasonForBeingLate(syaCaseWrapper)) - .mrnMissingReason(getReasonForNoMrn(syaCaseWrapper)) - .build(); - + .mrnMissingReason(getReasonForNoMrn(syaCaseWrapper)); + } + return builder.build(); } private static String getReasonForNoMrn(SyaCaseWrapper syaCaseWrapper) { @@ -267,8 +269,8 @@ private static String getDwpIssuingOffice(SyaCaseWrapper syaCaseWrapper) { if (!mrnIsNullOrUndefined(syaCaseWrapper) && isNotBlank(syaCaseWrapper.getMrn().getDwpIssuingOffice())) { result = dwpLookup.getDwpMappingByOffice(benefitType, syaCaseWrapper.getMrn().getDwpIssuingOffice()) - .map(office -> office.getMapping().getCcd()) - .orElse(null); + .map(office -> office.getMapping().getCcd()) + .orElse(null); } return result; @@ -279,37 +281,52 @@ private static String getMrnDate(SyaCaseWrapper syaCaseWrapper) { return null; } return syaCaseWrapper.getMrn().getDate() != null ? syaCaseWrapper.getMrn().getDate().toString() : - null; + null; } - private static Appellant getAppellant(SyaCaseWrapper syaCaseWrapper) { + private static Appellant getAppellant(SyaCaseWrapper syaCaseWrapper, boolean isIba) { SyaAppellant syaAppellant = syaCaseWrapper.getAppellant(); SyaContactDetails contactDetails = (null != syaAppellant) ? syaAppellant.getContactDetails() : null; - Address address = null; Contact contact; if (null != contactDetails) { - address = Address.builder() - .line1(contactDetails.getAddressLine1()) - .line2(contactDetails.getAddressLine2()) - .town(contactDetails.getTownCity()) + Address.AddressBuilder addressBuilder = Address.builder() + .line1(contactDetails.getAddressLine1()) + .line2(contactDetails.getAddressLine2()) + .town(contactDetails.getTownCity()); + if (isIba && contactDetails.getInMainlandUk() != null) { + YesNo inMainlandUkYesNo = contactDetails.getInMainlandUk() ? YesNo.YES : YesNo.NO; + addressBuilder.inMainlandUk(inMainlandUkYesNo); + if (inMainlandUkYesNo.equals(YesNo.NO)) { + addressBuilder + .country(contactDetails.getCountry()) + .portOfEntry(contactDetails.getPortOfEntry()); + } else { + addressBuilder + .county(contactDetails.getCounty()) + .postcode(contactDetails.getPostCode()) + .postcodeLookup(contactDetails.getPostcodeLookup()) + .postcodeAddress(contactDetails.getPostcodeAddress()); + } + } else { + addressBuilder .county(contactDetails.getCounty()) .postcode(contactDetails.getPostCode()) .postcodeLookup(contactDetails.getPostcodeLookup()) - .postcodeAddress(contactDetails.getPostcodeAddress()) - .build(); - + .postcodeAddress(contactDetails.getPostcodeAddress()); + } + address = addressBuilder.build(); contact = Contact.builder() - .email(contactDetails.getEmailAddress()) - .mobile(getPhoneNumberWithOutSpaces(contactDetails.getPhoneNumber())) - .build(); + .email(contactDetails.getEmailAddress()) + .mobile(getPhoneNumberWithOutSpaces(contactDetails.getPhoneNumber())) + .build(); } else { contact = Contact.builder().build(); } Identity identity; - if (syaCaseWrapper.getBenefitType().getCode().equals(Benefit.INFECTED_BLOOD_APPEAL.getBenefitCode())) { + if (isIba) { identity = buildAppellantIdentity(syaAppellant, true); } else { identity = buildAppellantIdentity(syaAppellant, false); @@ -321,18 +338,18 @@ private static Appellant getAppellant(SyaCaseWrapper syaCaseWrapper) { Appointee appointee = getAppointee(syaCaseWrapper); if (null != appointee - && null != syaAppellant - && null != syaAppellant.getIsAddressSameAsAppointee() - && syaAppellant.getIsAddressSameAsAppointee()) { + && null != syaAppellant + && null != syaAppellant.getIsAddressSameAsAppointee() + && syaAppellant.getIsAddressSameAsAppointee()) { address = Address.builder() - .line1(appointee.getAddress().getLine1()) - .line2(appointee.getAddress().getLine2()) - .town(appointee.getAddress().getTown()) - .county(appointee.getAddress().getCounty()) - .postcode(appointee.getAddress().getPostcode()) - .postcodeLookup(appointee.getAddress().getPostcodeLookup()) - .postcodeAddress(appointee.getAddress().getPostcodeAddress()) - .build(); + .line1(appointee.getAddress().getLine1()) + .line2(appointee.getAddress().getLine2()) + .town(appointee.getAddress().getTown()) + .county(appointee.getAddress().getCounty()) + .postcode(appointee.getAddress().getPostcode()) + .postcodeLookup(appointee.getAddress().getPostcodeLookup()) + .postcodeAddress(appointee.getAddress().getPostcodeAddress()) + .build(); } String useSameAddress = null; @@ -340,15 +357,18 @@ private static Appellant getAppellant(SyaCaseWrapper syaCaseWrapper) { useSameAddress = !syaAppellant.getIsAddressSameAsAppointee() ? "No" : "Yes"; } - return Appellant.builder() - .name(getName(syaAppellant)) - .address(address) - .contact(appointee == null ? contact : Contact.builder().build()) - .identity(identity) - .isAppointee(isAppointee) - .appointee(appointee) - .isAddressSameAsAppointee(useSameAddress) - .build(); + Appellant.AppellantBuilder builder = Appellant.builder() + .name(getName(syaAppellant)) + .address(address) + .contact(appointee == null ? contact : Contact.builder().build()) + .identity(identity) + .isAppointee(isAppointee) + .appointee(appointee) + .isAddressSameAsAppointee(useSameAddress); + if (syaAppellant != null && syaAppellant.getIbcRole() != null && isIba) { + builder.ibcRole(syaAppellant.getIbcRole()); + } + return builder.build(); } private static Identity buildAppellantIdentity(SyaAppellant syaAppellant, boolean isIba) { @@ -380,10 +400,10 @@ private static Name getName(SyaAppellant syaAppellant) { if (null != syaAppellant) { name = name.toBuilder() - .title(syaAppellant.getTitle()) - .firstName(syaAppellant.getFirstName()) - .lastName(syaAppellant.getLastName()) - .build(); + .title(syaAppellant.getTitle()) + .firstName(syaAppellant.getFirstName()) + .lastName(syaAppellant.getLastName()) + .build(); } return name; } @@ -396,42 +416,42 @@ private static Appointee getAppointee(SyaCaseWrapper syaCaseWrapper) { Address address = null; if (null != syaAppointee.getContactDetails()) { address = Address.builder() - .line1(syaAppointee.getContactDetails().getAddressLine1()) - .line2(syaAppointee.getContactDetails().getAddressLine2()) - .town(syaAppointee.getContactDetails().getTownCity()) - .county(syaAppointee.getContactDetails().getCounty()) - .postcode(syaAppointee.getContactDetails().getPostCode()) - .postcodeLookup(syaAppointee.getContactDetails().getPostcodeLookup()) - .postcodeAddress(syaAppointee.getContactDetails().getPostcodeAddress()) - .build(); + .line1(syaAppointee.getContactDetails().getAddressLine1()) + .line2(syaAppointee.getContactDetails().getAddressLine2()) + .town(syaAppointee.getContactDetails().getTownCity()) + .county(syaAppointee.getContactDetails().getCounty()) + .postcode(syaAppointee.getContactDetails().getPostCode()) + .postcodeLookup(syaAppointee.getContactDetails().getPostcodeLookup()) + .postcodeAddress(syaAppointee.getContactDetails().getPostcodeAddress()) + .build(); } Contact contact = null; if (null != syaAppointee.getContactDetails()) { contact = Contact.builder() - .email(syaAppointee.getContactDetails().getEmailAddress()) - .mobile(getPhoneNumberWithOutSpaces(syaAppointee.getContactDetails().getPhoneNumber())) - .build(); + .email(syaAppointee.getContactDetails().getEmailAddress()) + .mobile(getPhoneNumberWithOutSpaces(syaAppointee.getContactDetails().getPhoneNumber())) + .build(); } Identity identity = null; if (null != syaAppointee.getDob()) { identity = Identity.builder() - .dob(syaAppointee.getDob().toString()) - .build(); + .dob(syaAppointee.getDob().toString()) + .build(); } return Appointee.builder() - .name(Name.builder() - .title(syaAppointee.getTitle()) - .firstName(syaAppointee.getFirstName()) - .lastName(syaAppointee.getLastName()) - .build() - ) - .address(address) - .contact(contact) - .identity(identity) - .build(); + .name(Name.builder() + .title(syaAppointee.getTitle()) + .firstName(syaAppointee.getFirstName()) + .lastName(syaAppointee.getLastName()) + .build() + ) + .address(address) + .contact(contact) + .identity(identity) + .build(); } else { return null; } @@ -444,18 +464,18 @@ private static AppealReasons getReasonsForAppealing(SyaReasonsForAppealing syaRe List appealReasons = new ArrayList<>(); for (Reason reason : syaReasonsForAppealing.getReasons()) { AppealReasonDetails appealReasonDetails = AppealReasonDetails.builder() - .reason(reason.getWhatYouDisagreeWith()) - .description(reason.getReasonForAppealing()) - .build(); + .reason(reason.getWhatYouDisagreeWith()) + .description(reason.getReasonForAppealing()) + .build(); AppealReason appealReason = AppealReason.builder() - .value(appealReasonDetails) - .build(); + .value(appealReasonDetails) + .build(); appealReasons.add(appealReason); } return AppealReasons.builder() - .reasons(appealReasons) - .otherReasons(syaReasonsForAppealing.getOtherReasons()) - .build(); + .reasons(appealReasons) + .otherReasons(syaReasonsForAppealing.getOtherReasons()) + .build(); } @@ -464,12 +484,12 @@ private static HearingSubtype getHearingSubType(SyaHearingOptions syaHearingOpti if (syaHearingOptions != null && syaHearingOptions.getOptions() != null) { SyaOptions options = syaHearingOptions.getOptions(); return HearingSubtype.builder() - .wantsHearingTypeTelephone(options.getHearingTypeTelephone() ? YES : NO) - .hearingTelephoneNumber(getPhoneNumberWithOutSpaces(options.getTelephone())) - .wantsHearingTypeVideo(options.getHearingTypeVideo() ? YES : NO) - .hearingVideoEmail(options.getEmail()) - .wantsHearingTypeFaceToFace(options.getHearingTypeFaceToFace() ? YES : NO) - .build(); + .wantsHearingTypeTelephone(options.getHearingTypeTelephone() ? YES : NO) + .hearingTelephoneNumber(getPhoneNumberWithOutSpaces(options.getTelephone())) + .wantsHearingTypeVideo(options.getHearingTypeVideo() ? YES : NO) + .hearingVideoEmail(options.getEmail()) + .wantsHearingTypeFaceToFace(options.getHearingTypeFaceToFace() ? YES : NO) + .build(); } return builder.build(); } @@ -485,9 +505,9 @@ private static HearingOptions getHearingOptions(SyaHearingOptions syaHearingOpti if (syaHearingOptions.getWantsSupport() == null) { return HearingOptions.builder() - .wantsToAttend(YES) - .wantsSupport(null) - .build(); + .wantsToAttend(YES) + .wantsSupport(null) + .build(); } String languageInterpreter = null; @@ -496,10 +516,10 @@ private static HearingOptions getHearingOptions(SyaHearingOptions syaHearingOpti if (syaHearingOptions.getWantsSupport()) { if (syaHearingOptions.getArrangements() == null) { return HearingOptions.builder() - .wantsToAttend(YES) - .wantsSupport(wantsSupport) - .arrangements(null) - .build(); + .wantsToAttend(YES) + .wantsSupport(wantsSupport) + .arrangements(null) + .build(); } arrangements = getArrangements(syaHearingOptions.getArrangements()); languageInterpreter = getLanguageInterpreter(syaHearingOptions.getArrangements().getLanguageInterpreter()); @@ -507,16 +527,16 @@ private static HearingOptions getHearingOptions(SyaHearingOptions syaHearingOpti if (syaHearingOptions.getScheduleHearing() == null) { return HearingOptions.builder() - .wantsToAttend(YES) - .wantsSupport(wantsSupport) - .arrangements(arrangements) - .languageInterpreter(languageInterpreter) - .languages(languageInterpreter != null && languageInterpreter.equals(YES) - ? syaHearingOptions.getInterpreterLanguageType() : null) - .scheduleHearing(null) - .signLanguageType(syaHearingOptions.getSignLanguageType()) - .other(syaHearingOptions.getAnythingElse()) - .build(); + .wantsToAttend(YES) + .wantsSupport(wantsSupport) + .arrangements(arrangements) + .languageInterpreter(languageInterpreter) + .languages(languageInterpreter != null && languageInterpreter.equals(YES) + ? syaHearingOptions.getInterpreterLanguageType() : null) + .scheduleHearing(null) + .signLanguageType(syaHearingOptions.getSignLanguageType()) + .other(syaHearingOptions.getAnythingElse()) + .build(); } String scheduleHearing = Boolean.TRUE.equals(syaHearingOptions.getScheduleHearing()) ? YES : NO; @@ -526,20 +546,20 @@ private static HearingOptions getHearingOptions(SyaHearingOptions syaHearingOpti } return HearingOptions.builder() - .wantsToAttend(YES) - .wantsSupport(wantsSupport) - .languageInterpreter(languageInterpreter) - .languages(syaHearingOptions.getInterpreterLanguageType()) - .signLanguageType(syaHearingOptions.getSignLanguageType()) - .scheduleHearing(scheduleHearing) - .arrangements(arrangements) - .excludeDates(excludedDates) - .other(syaHearingOptions.getAnythingElse()) - .build(); + .wantsToAttend(YES) + .wantsSupport(wantsSupport) + .languageInterpreter(languageInterpreter) + .languages(syaHearingOptions.getInterpreterLanguageType()) + .signLanguageType(syaHearingOptions.getSignLanguageType()) + .scheduleHearing(scheduleHearing) + .arrangements(arrangements) + .excludeDates(excludedDates) + .other(syaHearingOptions.getAnythingElse()) + .build(); } else { return HearingOptions.builder() - .wantsToAttend(NO) - .build(); + .wantsToAttend(NO) + .build(); } } @@ -557,9 +577,9 @@ private static List getExcludedDates(String[] dates) { List excludeDates = new ArrayList<>(); for (String date : dates) { DateRange dateRange = DateRange.builder() - .start(getLocalDate(date)) - .end(getLocalDate(date)) - .build(); + .start(getLocalDate(date)) + .end(getLocalDate(date)) + .build(); excludeDates.add(ExcludeDate.builder().value(dateRange).build()); } return excludeDates; @@ -587,12 +607,12 @@ private static List getArrangements(SyaArrangements syaArrangements) { private static Subscriptions populateSubscriptions(SyaCaseWrapper syaCaseWrapper) { return Subscriptions.builder() - .appellantSubscription(syaCaseWrapper.getIsAppointee() != null && !syaCaseWrapper.getIsAppointee() - ? getAppellantSubscription(syaCaseWrapper) : null) - .appointeeSubscription(syaCaseWrapper.getIsAppointee() != null && syaCaseWrapper.getIsAppointee() - ? getAppointeeSubscription(syaCaseWrapper) : null) - .representativeSubscription(getRepresentativeSubscription(syaCaseWrapper)) - .build(); + .appellantSubscription(syaCaseWrapper.getIsAppointee() != null && !syaCaseWrapper.getIsAppointee() + ? getAppellantSubscription(syaCaseWrapper) : null) + .appointeeSubscription(syaCaseWrapper.getIsAppointee() != null && syaCaseWrapper.getIsAppointee() + ? getAppointeeSubscription(syaCaseWrapper) : null) + .representativeSubscription(getRepresentativeSubscription(syaCaseWrapper)) + .build(); } private static Subscription getAppellantSubscription(SyaCaseWrapper syaCaseWrapper) { @@ -607,13 +627,13 @@ private static Subscription getAppellantSubscription(SyaCaseWrapper syaCaseWrapp final String mobile = getMobile(syaCaseWrapper, smsNotify); return Subscription.builder() - .wantSmsNotifications(subscribeSms) - .subscribeSms(subscribeSms) - .tya(generateAppealNumber()) - .mobile(cleanPhoneNumber(mobile).orElse(mobile)) - .subscribeEmail(wantEmailNotifications) - .email(email) - .build(); + .wantSmsNotifications(subscribeSms) + .subscribeSms(subscribeSms) + .tya(generateAppealNumber()) + .mobile(cleanPhoneNumber(mobile).orElse(mobile)) + .subscribeEmail(wantEmailNotifications) + .email(email) + .build(); } return null; @@ -636,35 +656,35 @@ private static String getSubscribeSms(SyaSmsNotify smsNotify) { private static Subscription getRepresentativeSubscription(SyaCaseWrapper syaCaseWrapper) { if (syaCaseWrapper.getHasRepresentative() != null - && syaCaseWrapper.getHasRepresentative() - && syaCaseWrapper.getRepresentative() != null - && syaCaseWrapper.getRepresentative().getContactDetails() != null) { + && syaCaseWrapper.getHasRepresentative() + && syaCaseWrapper.getRepresentative() != null + && syaCaseWrapper.getRepresentative().getContactDetails() != null) { boolean emailAddressExists = isNotBlank(syaCaseWrapper.getRepresentative().getContactDetails().getEmailAddress()); boolean isMobileNumber = PhoneNumbersUtil.isValidMobileNumber( - syaCaseWrapper.getRepresentative().getContactDetails().getPhoneNumber()); + syaCaseWrapper.getRepresentative().getContactDetails().getPhoneNumber()); final String mobileNumber = getPhoneNumberWithOutSpaces(syaCaseWrapper - .getRepresentative().getContactDetails().getPhoneNumber()); + .getRepresentative().getContactDetails().getPhoneNumber()); final String cleanedMobileNumber = cleanPhoneNumber(mobileNumber).orElse(mobileNumber); return Subscription.builder() - .wantSmsNotifications(isMobileNumber ? YES : NO) - .subscribeSms(isMobileNumber ? YES : NO) - .mobile(cleanedMobileNumber) - .subscribeEmail(emailAddressExists ? YES : NO) - .email(syaCaseWrapper.getRepresentative().getContactDetails().getEmailAddress()) - .tya(generateAppealNumber()) - .build(); + .wantSmsNotifications(isMobileNumber ? YES : NO) + .subscribeSms(isMobileNumber ? YES : NO) + .mobile(cleanedMobileNumber) + .subscribeEmail(emailAddressExists ? YES : NO) + .email(syaCaseWrapper.getRepresentative().getContactDetails().getEmailAddress()) + .tya(generateAppealNumber()) + .build(); } return Subscription.builder() - .wantSmsNotifications(NO) - .subscribeSms(NO) - .subscribeEmail(NO) - .tya(generateAppealNumber()) - .build(); + .wantSmsNotifications(NO) + .subscribeSms(NO) + .subscribeEmail(NO) + .tya(generateAppealNumber()) + .build(); } private static Subscription getAppointeeSubscription(SyaCaseWrapper syaCaseWrapper) { @@ -676,27 +696,27 @@ private static Subscription getAppointeeSubscription(SyaCaseWrapper syaCaseWrapp String email = syaCaseWrapper.getAppointee().getContactDetails().getEmailAddress(); String wantEmailNotifications = isNotBlank(email) ? YES : NO; String mobile = getPhoneNumberWithOutSpaces( - getNotificationSmsNumber(smsNotify, syaCaseWrapper.getAppointee().getContactDetails())); + getNotificationSmsNumber(smsNotify, syaCaseWrapper.getAppointee().getContactDetails())); return Subscription.builder() - .wantSmsNotifications(subscribeSms) - .subscribeSms(subscribeSms) - .tya(generateAppealNumber()) - .mobile(cleanPhoneNumber(mobile).orElse(mobile)) - .subscribeEmail(wantEmailNotifications) - .email(email) - .build(); + .wantSmsNotifications(subscribeSms) + .subscribeSms(subscribeSms) + .tya(generateAppealNumber()) + .mobile(cleanPhoneNumber(mobile).orElse(mobile)) + .subscribeEmail(wantEmailNotifications) + .email(email) + .build(); } return null; } private static String getNotificationSmsNumber(SyaSmsNotify smsNotify, SyaContactDetails contactDetails) { return smsNotify != null - && smsNotify.isWantsSmsNotifications() != null - && smsNotify.isWantsSmsNotifications() - && (null == smsNotify.isUseSameNumber() || !smsNotify.isUseSameNumber()) - ? smsNotify.getSmsNumber() - : contactDetails.getPhoneNumber(); + && smsNotify.isWantsSmsNotifications() != null + && smsNotify.isWantsSmsNotifications() + && (null == smsNotify.isUseSameNumber() || !smsNotify.isUseSameNumber()) + ? smsNotify.getSmsNumber() + : contactDetails.getPhoneNumber(); } private static Representative getRepresentative(SyaCaseWrapper syaCaseWrapper) { @@ -707,45 +727,45 @@ private static Representative getRepresentative(SyaCaseWrapper syaCaseWrapper) { SyaRepresentative syaRepresentative = syaCaseWrapper.getRepresentative(); if (syaRepresentative == null) { return Representative.builder() - .hasRepresentative(YES) - .build(); + .hasRepresentative(YES) + .build(); } String repFirstName = "undefined".equalsIgnoreCase(syaRepresentative.getFirstName()) ? null : syaRepresentative.getFirstName(); String repLastName = "undefined".equalsIgnoreCase(syaRepresentative.getLastName()) ? null : syaRepresentative.getLastName(); Name name = Name.builder() - .title(syaRepresentative.getTitle()) - .firstName(repFirstName) - .lastName(repLastName) - .build(); + .title(syaRepresentative.getTitle()) + .firstName(repFirstName) + .lastName(repLastName) + .build(); Address address = Address.builder() - .line1(syaRepresentative.getContactDetails().getAddressLine1()) - .line2(syaRepresentative.getContactDetails().getAddressLine2()) - .town(syaRepresentative.getContactDetails().getTownCity()) - .county(syaRepresentative.getContactDetails().getCounty()) - .postcode(syaRepresentative.getContactDetails().getPostCode()) - .postcodeLookup(syaRepresentative.getContactDetails().getPostcodeLookup()) - .postcodeAddress(syaRepresentative.getContactDetails().getPostcodeAddress()) - .build(); + .line1(syaRepresentative.getContactDetails().getAddressLine1()) + .line2(syaRepresentative.getContactDetails().getAddressLine2()) + .town(syaRepresentative.getContactDetails().getTownCity()) + .county(syaRepresentative.getContactDetails().getCounty()) + .postcode(syaRepresentative.getContactDetails().getPostCode()) + .postcodeLookup(syaRepresentative.getContactDetails().getPostcodeLookup()) + .postcodeAddress(syaRepresentative.getContactDetails().getPostcodeAddress()) + .build(); Contact contact = Contact.builder() - .email(syaRepresentative.getContactDetails().getEmailAddress()) - .mobile(getPhoneNumberWithOutSpaces(syaRepresentative.getContactDetails().getPhoneNumber())) - .build(); + .email(syaRepresentative.getContactDetails().getEmailAddress()) + .mobile(getPhoneNumberWithOutSpaces(syaRepresentative.getContactDetails().getPhoneNumber())) + .build(); return Representative.builder() - .hasRepresentative(YES) - .organisation(syaRepresentative.getOrganisation()) - .name(name) - .address(address) - .contact(contact) - .build(); + .hasRepresentative(YES) + .organisation(syaRepresentative.getOrganisation()) + .name(name) + .address(address) + .contact(contact) + .build(); } else { return Representative.builder() - .hasRepresentative(NO) - .build(); + .hasRepresentative(NO) + .build(); } } return Representative.builder().hasRepresentative(null).build(); @@ -758,29 +778,29 @@ private static String getLocalDate(String dateStr) { private static List getEvidenceDocumentDetails(SyaCaseWrapper syaCaseWrapper) { if (syaCaseWrapper.getReasonsForAppealing() == null - || syaCaseWrapper.getReasonsForAppealing().getEvidences() == null) { + || syaCaseWrapper.getReasonsForAppealing().getEvidences() == null) { return Collections.emptyList(); } List evidences = syaCaseWrapper.getReasonsForAppealing().getEvidences(); if (null != evidences && !evidences.isEmpty()) { return evidences.stream() - .map(syaEvidence -> { - DocumentLink documentLink = DocumentLink.builder().documentUrl(syaEvidence.getUrl()) - .documentBinaryUrl(syaEvidence.getUrl() + "/binary") - .documentFilename(syaEvidence.getFileName()) - .documentHash(syaEvidence.getHashToken()).build(); - - SscsDocumentDetails sscsDocumentDetails = SscsDocumentDetails.builder() - .documentFileName(syaEvidence.getFileName()) - .documentDateAdded(syaEvidence.getUploadedDate().format(DateTimeFormatter.ISO_DATE)) - .documentLink(documentLink) - .documentType("appellantEvidence") - .documentTranslationStatus(getDocumentTranslationStatus(syaCaseWrapper)) - .documentComment(syaCaseWrapper.getReasonsForAppealing().getEvidenceDescription()) - .build(); - return SscsDocument.builder().value(sscsDocumentDetails).build(); - }).collect(Collectors.toList()); + .map(syaEvidence -> { + DocumentLink documentLink = DocumentLink.builder().documentUrl(syaEvidence.getUrl()) + .documentBinaryUrl(syaEvidence.getUrl() + "/binary") + .documentFilename(syaEvidence.getFileName()) + .documentHash(syaEvidence.getHashToken()).build(); + + SscsDocumentDetails sscsDocumentDetails = SscsDocumentDetails.builder() + .documentFileName(syaEvidence.getFileName()) + .documentDateAdded(syaEvidence.getUploadedDate().format(DateTimeFormatter.ISO_DATE)) + .documentLink(documentLink) + .documentType("appellantEvidence") + .documentTranslationStatus(getDocumentTranslationStatus(syaCaseWrapper)) + .documentComment(syaCaseWrapper.getReasonsForAppealing().getEvidenceDescription()) + .build(); + return SscsDocument.builder().value(sscsDocumentDetails).build(); + }).collect(Collectors.toList()); } return Collections.emptyList(); } From cc7bcfe752f1d228c526089811ee2e7cccaaaff7 Mon Sep 17 00:00:00 2001 From: nilay Date: Thu, 17 Oct 2024 17:29:32 +0100 Subject: [PATCH 12/34] updating TODO info and test for coverage --- .../CreateCaseAboutToSubmitHandler.java | 2 +- .../CreateCaseAboutToSubmitHandlerTest.java | 16 ++++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandler.java b/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandler.java index fcfcf31d87d..0ca26d4958b 100644 --- a/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandler.java +++ b/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandler.java @@ -106,7 +106,7 @@ private void createAppealPdf(SscsCaseData caseData) { String appellantLastName = caseData.getAppeal().getAppellant().getName().getLastName(); String ibcaRef = caseData.getAppeal().getAppellant().getIdentity().getIbcaReference(); fileName = String.format("%s_%s", appellantLastName, ibcaRef) + ".pdf"; - // temp solution - need to update generateUniqueEmailId in sscs-common to work with ibcaRef + // TODO temp solution - need to update generateUniqueEmailId in sscs-pdf-email-common to work with ibcaRef } else { fileName = emailHelper.generateUniqueEmailId(caseData.getAppeal().getAppellant()) + ".pdf"; } diff --git a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandlerTest.java b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandlerTest.java index 55bd0f86fca..1fd350a52d6 100644 --- a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandlerTest.java +++ b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandlerTest.java @@ -148,6 +148,22 @@ void shouldCallPdfServiceWhenIbca() throws CcdException { verify(sscsPdfService).generatePdf(eq(caseDetails.getCaseData()), any(), any(), eq(expectedFilename)); } + + @Test + void isIbaFalseIfNullBenefitType() throws CcdException { + when(caseDetails.getCaseData()).thenReturn(mockedCaseData); + when(mockedCaseData.getCaseCreated()).thenReturn(""); + when(mockedCaseData.getCcdCaseId()).thenReturn("1021"); + when(mockedCaseData.getBenefitType()).thenReturn(Optional.empty()); + when(mockedCaseData.getAppeal()).thenReturn(mockedAppeal); + when(mockedAppeal.getAppellant()).thenReturn(mockedAppellant); + + createCaseAboutToSubmitHandler.handle(ABOUT_TO_SUBMIT, callback, USER_AUTHORISATION); + + verify(emailHelper, times(1)).generateUniqueEmailId(any()); + verify(sscsPdfService).generatePdf(eq(caseDetails.getCaseData()), any(), any(), any()); + } + @Test void shouldCallPdfServiceWhenNoAppointee() throws CcdException { From e1daecf5234cf7ce28578b8a5a49887ef30bfd18 Mon Sep 17 00:00:00 2001 From: nilay Date: Thu, 17 Oct 2024 17:45:38 +0100 Subject: [PATCH 13/34] updating coverage --- .../AbstractSubmitAppealServiceTest.java | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/src/test/java/uk/gov/hmcts/reform/sscs/service/AbstractSubmitAppealServiceTest.java b/src/test/java/uk/gov/hmcts/reform/sscs/service/AbstractSubmitAppealServiceTest.java index 16458954c5b..2bb80ef549a 100644 --- a/src/test/java/uk/gov/hmcts/reform/sscs/service/AbstractSubmitAppealServiceTest.java +++ b/src/test/java/uk/gov/hmcts/reform/sscs/service/AbstractSubmitAppealServiceTest.java @@ -373,6 +373,22 @@ public void givenCaseDoesNotExistInCcdAndMrnDateIsMissing_shouldCreateCaseWithAp assertEquals("No", capture.getValue().getIsSaveAndReturn()); } + @Test + public void givenCaseDoesNotExistInCcdAndMrnDateIsMissing_shouldCreateCaseWithAppealDetailsWithIncompleteApplicationEventIba() { + byte[] expected = {}; + appealData.getMrn().setDate(null); + + given(pdfServiceClient.generateFromHtml(any(byte[].class), any())).willReturn(expected); + + given(ccdService.findCcdCaseByNinoAndBenefitTypeAndMrnDate(anyString(), anyString(), anyString(), any())).willReturn(null); + appealData.setBenefitType(new SyaBenefitType("Infected blood appeal", "infectedBloodAppeal")); + submitAppealService.submitAppeal(appealData, userToken); + + verify(ccdService).createCase(capture.capture(), eq(INCOMPLETE_APPLICATION_RECEIVED.getCcdType()), any(String.class), any(String.class), any(IdamTokens.class)); + verify(ccdService, times(0)).updateCase(any(SscsCaseData.class), eq(123L), eq(SEND_TO_DWP.getCcdType()), any(String.class), any(String.class), any(IdamTokens.class)); + assertEquals("No", capture.getValue().getIsSaveAndReturn()); + } + @Test public void givenDraftCaseDoesExistAndMrnDateIsMissingAndCaseSubmitted_shouldUpdateCaseWithAppealDetailsWithDraftToIncompleteApplicationEvent() { byte[] expected = {}; @@ -698,6 +714,33 @@ public void givenAppellantPostCode_shouldSetRegionAndRpcCorrectly(String expecte assertEquals(expectedRpcObject.getName(), caseData.getRegion()); } + @Test + @Parameters(method = "generateDifferentRpcScenariosIba") + public void givenAppellantPostCode_shouldSetRegionAndRpcCorrectlyIba(String expectedRpc, String appellantPostCode) throws JsonProcessingException { + RegionalProcessingCenter rpc = getRpcObjectForGivenJsonRpc(expectedRpc); + when(regionalProcessingCenterService.getByPostcode(RegionalProcessingCenterService.getFirstHalfOfPostcode(appellantPostCode))) + .thenReturn(getRpcObjectForGivenJsonRpc(expectedRpc)); + when(airLookupService.lookupAirVenueNameByPostCode(eq(appellantPostCode), any())).thenReturn(rpc.getCity()); + when(venueService.getEpimsIdForVenue(rpc.getCity())).thenReturn("1234"); + when(refDataService.getCourtVenueRefDataByEpimsId("1234")).thenReturn(CourtVenue.builder().courtStatus("Open").regionId("1").build()); + + SyaCaseWrapper appealData = getSyaCaseWrapper(); + appealData.getAppellant().getContactDetails().setPostCode(appellantPostCode); + + SscsCaseData caseData = submitAppealService.convertAppealToSscsCaseData(appealData); + + RegionalProcessingCenter actualRpc = caseData.getRegionalProcessingCenter(); + RegionalProcessingCenter expectedRpcObject = getRpcObjectForGivenJsonRpc(expectedRpc); + assertThat(actualRpc) + .usingRecursiveComparison() + .ignoringFields("hearingRoute","epimsId") + .isEqualTo(expectedRpcObject); + assertThat(actualRpc) + .extracting("hearingRoute","epimsId") + .doesNotContainNull(); + assertEquals(expectedRpcObject.getName(), caseData.getRegion()); + } + @Test public void givenAppointeePostCode_shouldSetRegionAndRpcToAppointee() throws JsonProcessingException { when(regionalProcessingCenterService.getByPostcode("B1")).thenReturn(getRpcObjectForGivenJsonRpc(BIRMINGHAM_RPC)); @@ -786,6 +829,13 @@ public Object[] generateDifferentRpcScenarios() { }; } + public Object[] generateDifferentRpcScenariosIba() { + return new Object[]{ + new Object[]{BRADFORD_RPC, "GB000084"}, + new Object[]{BRADFORD_RPC, "GB003090"} + }; + } + @Test public void givenAPipCase_thenSetCreatedInGapsFromFieldToReadyToList() { SyaCaseWrapper appealData = getSyaCaseWrapper(); From 3db2d1a8c43b6c419655508d57b2afac38ce2067 Mon Sep 17 00:00:00 2001 From: nilay Date: Fri, 18 Oct 2024 10:22:31 +0100 Subject: [PATCH 14/34] sonar fixes --- ...itYourAppealToCcdCaseDataDeserializer.java | 55 ++++++++++--------- 1 file changed, 29 insertions(+), 26 deletions(-) diff --git a/src/main/java/uk/gov/hmcts/reform/sscs/transform/deserialize/SubmitYourAppealToCcdCaseDataDeserializer.java b/src/main/java/uk/gov/hmcts/reform/sscs/transform/deserialize/SubmitYourAppealToCcdCaseDataDeserializer.java index 119f8c3cbe0..3bfcb3d3d59 100644 --- a/src/main/java/uk/gov/hmcts/reform/sscs/transform/deserialize/SubmitYourAppealToCcdCaseDataDeserializer.java +++ b/src/main/java/uk/gov/hmcts/reform/sscs/transform/deserialize/SubmitYourAppealToCcdCaseDataDeserializer.java @@ -284,6 +284,34 @@ private static String getMrnDate(SyaCaseWrapper syaCaseWrapper) { null; } + private static Address handleAddress(SyaContactDetails contactDetails, boolean isIba) { + Address.AddressBuilder addressBuilder = Address.builder() + .line1(contactDetails.getAddressLine1()) + .line2(contactDetails.getAddressLine2()) + .town(contactDetails.getTownCity()); + if (isIba && contactDetails.getInMainlandUk() != null) { + YesNo inMainlandUkYesNo = contactDetails.getInMainlandUk().equals(Boolean.FALSE) ? YesNo.YES : YesNo.NO; + addressBuilder.inMainlandUk(inMainlandUkYesNo); + if (inMainlandUkYesNo.equals(YesNo.NO)) { + addressBuilder + .country(contactDetails.getCountry()) + .portOfEntry(contactDetails.getPortOfEntry()); + } else { + addressBuilder + .county(contactDetails.getCounty()) + .postcode(contactDetails.getPostCode()) + .postcodeLookup(contactDetails.getPostcodeLookup()) + .postcodeAddress(contactDetails.getPostcodeAddress()); + } + } else { + addressBuilder + .county(contactDetails.getCounty()) + .postcode(contactDetails.getPostCode()) + .postcodeLookup(contactDetails.getPostcodeLookup()) + .postcodeAddress(contactDetails.getPostcodeAddress()); + } + return addressBuilder.build(); + } private static Appellant getAppellant(SyaCaseWrapper syaCaseWrapper, boolean isIba) { SyaAppellant syaAppellant = syaCaseWrapper.getAppellant(); @@ -292,32 +320,7 @@ private static Appellant getAppellant(SyaCaseWrapper syaCaseWrapper, boolean isI Address address = null; Contact contact; if (null != contactDetails) { - Address.AddressBuilder addressBuilder = Address.builder() - .line1(contactDetails.getAddressLine1()) - .line2(contactDetails.getAddressLine2()) - .town(contactDetails.getTownCity()); - if (isIba && contactDetails.getInMainlandUk() != null) { - YesNo inMainlandUkYesNo = contactDetails.getInMainlandUk() ? YesNo.YES : YesNo.NO; - addressBuilder.inMainlandUk(inMainlandUkYesNo); - if (inMainlandUkYesNo.equals(YesNo.NO)) { - addressBuilder - .country(contactDetails.getCountry()) - .portOfEntry(contactDetails.getPortOfEntry()); - } else { - addressBuilder - .county(contactDetails.getCounty()) - .postcode(contactDetails.getPostCode()) - .postcodeLookup(contactDetails.getPostcodeLookup()) - .postcodeAddress(contactDetails.getPostcodeAddress()); - } - } else { - addressBuilder - .county(contactDetails.getCounty()) - .postcode(contactDetails.getPostCode()) - .postcodeLookup(contactDetails.getPostcodeLookup()) - .postcodeAddress(contactDetails.getPostcodeAddress()); - } - address = addressBuilder.build(); + address = handleAddress(contactDetails, isIba); contact = Contact.builder() .email(contactDetails.getEmailAddress()) .mobile(getPhoneNumberWithOutSpaces(contactDetails.getPhoneNumber())) From b9946ddeed8e0c48fec1df463ad404c2cb648f0b Mon Sep 17 00:00:00 2001 From: nilay Date: Fri, 18 Oct 2024 10:22:48 +0100 Subject: [PATCH 15/34] coverage upping --- .../AbstractSubmitAppealServiceTest.java | 82 ++++++++++++++++--- 1 file changed, 69 insertions(+), 13 deletions(-) diff --git a/src/test/java/uk/gov/hmcts/reform/sscs/service/AbstractSubmitAppealServiceTest.java b/src/test/java/uk/gov/hmcts/reform/sscs/service/AbstractSubmitAppealServiceTest.java index 2bb80ef549a..96beb5101bd 100644 --- a/src/test/java/uk/gov/hmcts/reform/sscs/service/AbstractSubmitAppealServiceTest.java +++ b/src/test/java/uk/gov/hmcts/reform/sscs/service/AbstractSubmitAppealServiceTest.java @@ -406,7 +406,58 @@ public void givenDraftCaseDoesExistAndMrnDateIsMissingAndCaseSubmitted_shouldUpd verify(ccdService).updateCase(capture.capture(), eq(123L), eq(DRAFT_TO_INCOMPLETE_APPLICATION.getCcdType()), any(String.class), any(String.class), any(IdamTokens.class)); assertEquals("Yes", capture.getValue().getIsSaveAndReturn()); + } + + + @Test + public void givenCaseDoesNotExistInCcdAndMrnIsMissing_shouldCreateCaseWithAppealDetailsWithIncompleteApplicationEvent() { + byte[] expected = {}; + appealData.setMrn(null); + + given(pdfServiceClient.generateFromHtml(any(byte[].class), any())).willReturn(expected); + + given(ccdService.findCcdCaseByNinoAndBenefitTypeAndMrnDate(anyString(), anyString(), anyString(), any())).willReturn(null); + + submitAppealService.submitAppeal(appealData, userToken); + + verify(ccdService).createCase(capture.capture(), eq(INCOMPLETE_APPLICATION_RECEIVED.getCcdType()), any(String.class), any(String.class), any(IdamTokens.class)); + verify(ccdService, times(0)).updateCase(any(SscsCaseData.class), eq(123L), eq(SEND_TO_DWP.getCcdType()), any(String.class), any(String.class), any(IdamTokens.class)); + assertEquals("No", capture.getValue().getIsSaveAndReturn()); + } + + @Test + public void givenCaseDoesNotExistInCcdAndMrnIsMissing_shouldCreateCaseWithAppealDetailsWithIncompleteApplicationEventIba() { + byte[] expected = {}; + appealData.setMrn(null); + + given(pdfServiceClient.generateFromHtml(any(byte[].class), any())).willReturn(expected); + + given(ccdService.findCcdCaseByNinoAndBenefitTypeAndMrnDate(anyString(), anyString(), anyString(), any())).willReturn(null); + appealData.setBenefitType(new SyaBenefitType("Infected blood appeal", "infectedBloodAppeal")); + submitAppealService.submitAppeal(appealData, userToken); + + verify(ccdService).createCase(capture.capture(), eq(INCOMPLETE_APPLICATION_RECEIVED.getCcdType()), any(String.class), any(String.class), any(IdamTokens.class)); + verify(ccdService, times(0)).updateCase(any(SscsCaseData.class), eq(123L), eq(SEND_TO_DWP.getCcdType()), any(String.class), any(String.class), any(IdamTokens.class)); + assertEquals("No", capture.getValue().getIsSaveAndReturn()); + } + @Test + public void givenDraftCaseDoesExistAndMrnIsMissingAndCaseSubmitted_shouldUpdateCaseWithAppealDetailsWithDraftToIncompleteApplicationEvent() { + byte[] expected = {}; + appealData.setMrn(null); + + given(pdfServiceClient.generateFromHtml(any(byte[].class), any())).willReturn(expected); + + given(ccdService.findCcdCaseByNinoAndBenefitTypeAndMrnDate(anyString(), anyString(), anyString(), any())).willReturn(null); + + given(ccdService.getByCaseId(eq(123L), any())).willReturn(SscsCaseDetails.builder().build()); + + appealData.setCcdCaseId("123"); + appealData.setIsSaveAndReturn("Yes"); + submitAppealService.submitAppeal(appealData, userToken); + + verify(ccdService).updateCase(capture.capture(), eq(123L), eq(DRAFT_TO_INCOMPLETE_APPLICATION.getCcdType()), any(String.class), any(String.class), any(IdamTokens.class)); + assertEquals("Yes", capture.getValue().getIsSaveAndReturn()); } @Test @@ -697,7 +748,6 @@ public void givenAppellantPostCode_shouldSetRegionAndRpcCorrectly(String expecte when(venueService.getEpimsIdForVenue(rpc.getCity())).thenReturn("1234"); when(refDataService.getCourtVenueRefDataByEpimsId("1234")).thenReturn(CourtVenue.builder().courtStatus("Open").regionId("1").build()); - SyaCaseWrapper appealData = getSyaCaseWrapper(); appealData.getAppellant().getContactDetails().setPostCode(appellantPostCode); SscsCaseData caseData = submitAppealService.convertAppealToSscsCaseData(appealData); @@ -716,19 +766,18 @@ public void givenAppellantPostCode_shouldSetRegionAndRpcCorrectly(String expecte @Test @Parameters(method = "generateDifferentRpcScenariosIba") - public void givenAppellantPostCode_shouldSetRegionAndRpcCorrectlyIba(String expectedRpc, String appellantPostCode) throws JsonProcessingException { + public void givenAppellantPostCode_shouldSetRegionAndRpcCorrectlyIba(String expectedRpc, String appellantLocationCode) throws JsonProcessingException { RegionalProcessingCenter rpc = getRpcObjectForGivenJsonRpc(expectedRpc); - when(regionalProcessingCenterService.getByPostcode(RegionalProcessingCenterService.getFirstHalfOfPostcode(appellantPostCode))) + when(regionalProcessingCenterService.getByPostcode(appellantLocationCode)) .thenReturn(getRpcObjectForGivenJsonRpc(expectedRpc)); - when(airLookupService.lookupAirVenueNameByPostCode(eq(appellantPostCode), any())).thenReturn(rpc.getCity()); + when(airLookupService.lookupAirVenueNameByPostCode(eq(appellantLocationCode), any())).thenReturn(rpc.getCity()); when(venueService.getEpimsIdForVenue(rpc.getCity())).thenReturn("1234"); when(refDataService.getCourtVenueRefDataByEpimsId("1234")).thenReturn(CourtVenue.builder().courtStatus("Open").regionId("1").build()); - - SyaCaseWrapper appealData = getSyaCaseWrapper(); - appealData.getAppellant().getContactDetails().setPostCode(appellantPostCode); - + SyaBenefitType syaBenefitType = new SyaBenefitType("Infected Blood Appeal", "infectedBloodAppeal"); + appealData.setBenefitType(syaBenefitType); + appealData.getAppellant().getContactDetails().setPortOfEntry(appellantLocationCode); + appealData.getAppellant().getContactDetails().setInMainlandUk(Boolean.FALSE); SscsCaseData caseData = submitAppealService.convertAppealToSscsCaseData(appealData); - RegionalProcessingCenter actualRpc = caseData.getRegionalProcessingCenter(); RegionalProcessingCenter expectedRpcObject = getRpcObjectForGivenJsonRpc(expectedRpc); assertThat(actualRpc) @@ -805,7 +854,6 @@ private SyaCaseWrapper getSyaWrapperWithAppointee(SyaContactDetails appointeeCon SyaAppointee appointee = new SyaAppointee(); appointee.setContactDetails(appointeeContact); - SyaCaseWrapper appealData = getSyaCaseWrapper(); appealData.getAppellant().getContactDetails().setPostCode("TN32 6PL"); appealData.setAppointee(appointee); appealData.setIsAppointee(true); @@ -838,7 +886,6 @@ public Object[] generateDifferentRpcScenariosIba() { @Test public void givenAPipCase_thenSetCreatedInGapsFromFieldToReadyToList() { - SyaCaseWrapper appealData = getSyaCaseWrapper(); SyaBenefitType syaBenefitType = new SyaBenefitType("PIP", "PIP"); appealData.setBenefitType(syaBenefitType); @@ -852,7 +899,6 @@ public void givenAPipCase_thenSetCreatedInGapsFromFieldToReadyToList() { @Test public void givenAEsaCase_thenSetCreatedInGapsFromToReadyToList() { - SyaCaseWrapper appealData = getSyaCaseWrapper(); SyaBenefitType syaBenefitType = new SyaBenefitType("ESA", "ESA"); appealData.setBenefitType(syaBenefitType); @@ -866,7 +912,6 @@ public void givenAEsaCase_thenSetCreatedInGapsFromToReadyToList() { @Test public void givenAUcCaseWithRecoveryFromEstatesOffice_thenSetOfficeCorrectly() { - SyaCaseWrapper appealData = getSyaCaseWrapper(); SyaBenefitType syaBenefitType = new SyaBenefitType("Universal Credit", "UC"); appealData.setBenefitType(syaBenefitType); @@ -888,6 +933,17 @@ public void givenExceptionWhenSearchingForCaseInCcd_shouldThrowException() { submitAppealService.submitAppeal(appealData, userToken); } + + @Test(expected = CcdException.class) + public void givenExceptionWhenCreatingOrUpdatingIbaCase_shouldThrowException() { + SyaBenefitType syaBenefitType = new SyaBenefitType("Infected Blood Appeal", "infectedBloodAppeal"); + appealData.setBenefitType(syaBenefitType); + given(ccdService.createCase(any(SscsCaseData.class), anyString(), anyString(), anyString(), any(IdamTokens.class))) + .willThrow(RuntimeException.class); + + submitAppealService.submitAppeal(appealData, userToken); + } + @Test(expected = CcdException.class) public void givenCaseDoesNotExistInCcdAndGivenExceptionWhenCreatingCaseInCcd_shouldThrowException() { given(ccdService.findCcdCaseByNinoAndBenefitTypeAndMrnDate(anyString(), anyString(), anyString(), any(IdamTokens.class))) From 11c54b92c3536a74ecc730012cebf9e12a822d32 Mon Sep 17 00:00:00 2001 From: nilay Date: Fri, 18 Oct 2024 11:22:44 +0100 Subject: [PATCH 16/34] unit test coverage and fix --- ...itYourAppealToCcdCaseDataDeserializer.java | 2 +- ...urAppealToCcdCaseDataDeserializerTest.java | 142 ++++++++++++++++++ 2 files changed, 143 insertions(+), 1 deletion(-) diff --git a/src/main/java/uk/gov/hmcts/reform/sscs/transform/deserialize/SubmitYourAppealToCcdCaseDataDeserializer.java b/src/main/java/uk/gov/hmcts/reform/sscs/transform/deserialize/SubmitYourAppealToCcdCaseDataDeserializer.java index 3bfcb3d3d59..0721fb633e4 100644 --- a/src/main/java/uk/gov/hmcts/reform/sscs/transform/deserialize/SubmitYourAppealToCcdCaseDataDeserializer.java +++ b/src/main/java/uk/gov/hmcts/reform/sscs/transform/deserialize/SubmitYourAppealToCcdCaseDataDeserializer.java @@ -290,7 +290,7 @@ private static Address handleAddress(SyaContactDetails contactDetails, boolean i .line2(contactDetails.getAddressLine2()) .town(contactDetails.getTownCity()); if (isIba && contactDetails.getInMainlandUk() != null) { - YesNo inMainlandUkYesNo = contactDetails.getInMainlandUk().equals(Boolean.FALSE) ? YesNo.YES : YesNo.NO; + YesNo inMainlandUkYesNo = contactDetails.getInMainlandUk().equals(Boolean.TRUE) ? YesNo.YES : YesNo.NO; addressBuilder.inMainlandUk(inMainlandUkYesNo); if (inMainlandUkYesNo.equals(YesNo.NO)) { addressBuilder diff --git a/src/test/java/uk/gov/hmcts/reform/sscs/transform/deserialize/AbstractSubmitYourAppealToCcdCaseDataDeserializerTest.java b/src/test/java/uk/gov/hmcts/reform/sscs/transform/deserialize/AbstractSubmitYourAppealToCcdCaseDataDeserializerTest.java index c07dd5007e8..8d8caef3e31 100644 --- a/src/test/java/uk/gov/hmcts/reform/sscs/transform/deserialize/AbstractSubmitYourAppealToCcdCaseDataDeserializerTest.java +++ b/src/test/java/uk/gov/hmcts/reform/sscs/transform/deserialize/AbstractSubmitYourAppealToCcdCaseDataDeserializerTest.java @@ -19,9 +19,11 @@ import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; +import uk.gov.hmcts.reform.sscs.ccd.domain.Address; import uk.gov.hmcts.reform.sscs.ccd.domain.RegionalProcessingCenter; import uk.gov.hmcts.reform.sscs.ccd.domain.SscsCaseData; import uk.gov.hmcts.reform.sscs.ccd.domain.Subscription; +import uk.gov.hmcts.reform.sscs.ccd.domain.YesNo; import uk.gov.hmcts.reform.sscs.domain.wrapper.Reason; import uk.gov.hmcts.reform.sscs.domain.wrapper.SyaBenefitType; import uk.gov.hmcts.reform.sscs.domain.wrapper.SyaCaseWrapper; @@ -102,6 +104,146 @@ public void givenAUniversalCreditCaseFromSya_thenDefaultIssuingOfficeToNull() { assertNull(caseData.getAppeal().getMrnDetails().getDwpIssuingOffice()); } + + @Test + public void givenAIbaNullValueMainlandUkCaseFromSya_thenAddressBuildsCorrectly() { + SyaCaseWrapper syaCaseWrapper = ALL_DETAILS.getDeserializeMessage(); + SyaBenefitType benefitType = new SyaBenefitType("Infected Blood Appeal", "infectedBloodAppeal"); + syaCaseWrapper.setBenefitType(benefitType); + syaCaseWrapper.getContactDetails().setInMainlandUk(null); + syaCaseWrapper.getContactDetails().setAddressLine1("line1"); + syaCaseWrapper.getContactDetails().setAddressLine2("line2"); + syaCaseWrapper.getContactDetails().setTownCity("townCity"); + syaCaseWrapper.getContactDetails().setCounty("county"); + syaCaseWrapper.getContactDetails().setPostCode("postcode"); + syaCaseWrapper.getContactDetails().setPostcodeLookup("postcodeLookup"); + syaCaseWrapper.getContactDetails().setPostcodeAddress("postcodeAddress"); + SscsCaseData caseData = callConvertSyaToCcdCaseDataRelevantVersion(syaCaseWrapper, + regionalProcessingCenter.getName(), regionalProcessingCenter, false); + Address expectedAddress = Address.builder() + .line1("line1") + .line2("line2") + .town("townCity") + .county("county") + .postcode("postcode") + .postcodeLookup("postcodeLookup") + .postcodeAddress("postcodeAddress") + .build(); + assertEquals(expectedAddress, caseData.getAppeal().getAppellant().getAddress()); + } + + @Test + public void givenAIbaMainlandUkCaseFromSya_thenAddressBuildsCorrectly() { + SyaCaseWrapper syaCaseWrapper = ALL_DETAILS.getDeserializeMessage(); + SyaBenefitType benefitType = new SyaBenefitType("Infected Blood Appeal", "infectedBloodAppeal"); + syaCaseWrapper.setBenefitType(benefitType); + syaCaseWrapper.getContactDetails().setInMainlandUk(Boolean.TRUE); + syaCaseWrapper.getContactDetails().setAddressLine1("line1"); + syaCaseWrapper.getContactDetails().setAddressLine2("line2"); + syaCaseWrapper.getContactDetails().setTownCity("townCity"); + syaCaseWrapper.getContactDetails().setCounty("county"); + syaCaseWrapper.getContactDetails().setPostCode("postcode"); + syaCaseWrapper.getContactDetails().setPostcodeLookup("postcodeLookup"); + syaCaseWrapper.getContactDetails().setPostcodeAddress("postcodeAddress"); + SscsCaseData caseData = callConvertSyaToCcdCaseDataRelevantVersion(syaCaseWrapper, + regionalProcessingCenter.getName(), regionalProcessingCenter, false); + Address expectedAddress = Address.builder() + .line1("line1") + .line2("line2") + .town("townCity") + .county("county") + .postcode("postcode") + .postcodeLookup("postcodeLookup") + .postcodeAddress("postcodeAddress") + .inMainlandUk(YesNo.YES) + .build(); + assertEquals(expectedAddress, caseData.getAppeal().getAppellant().getAddress()); + } + + @Test + public void givenAIbaNonMainlandUkCaseFromSya_thenAddressBuildsCorrectly() { + SyaCaseWrapper syaCaseWrapper = ALL_DETAILS.getDeserializeMessage(); + SyaBenefitType benefitType = new SyaBenefitType("Infected Blood Appeal", "infectedBloodAppeal"); + syaCaseWrapper.setBenefitType(benefitType); + syaCaseWrapper.getContactDetails().setInMainlandUk(Boolean.FALSE); + syaCaseWrapper.getContactDetails().setAddressLine1("line1"); + syaCaseWrapper.getContactDetails().setAddressLine2("line2"); + syaCaseWrapper.getContactDetails().setTownCity("townCity"); + syaCaseWrapper.getContactDetails().setCountry("country"); + syaCaseWrapper.getContactDetails().setPortOfEntry("GB100100"); + SscsCaseData caseData = callConvertSyaToCcdCaseDataRelevantVersion(syaCaseWrapper, + regionalProcessingCenter.getName(), regionalProcessingCenter, false); + Address expectedAddress = Address.builder() + .line1("line1") + .line2("line2") + .town("townCity") + .country("country") + .portOfEntry("GB100100") + .inMainlandUk(YesNo.NO) + .build(); + assertEquals(expectedAddress, caseData.getAppeal().getAppellant().getAddress()); + } + + @Test + public void givenAIbaCaseWithIbcRoleFromSya_thenAppellantBuildsWithIbcRole() { + SyaCaseWrapper syaCaseWrapper = ALL_DETAILS.getDeserializeMessage(); + SyaBenefitType benefitType = new SyaBenefitType("Infected Blood Appeal", "infectedBloodAppeal"); + syaCaseWrapper.setBenefitType(benefitType); + syaCaseWrapper.getAppellant().setIbcRole("someRole"); + SscsCaseData caseData = callConvertSyaToCcdCaseDataRelevantVersion(syaCaseWrapper, + regionalProcessingCenter.getName(), regionalProcessingCenter, false); + assertEquals("someRole", caseData.getAppeal().getAppellant().getIbcRole()); + } + + @Test + public void givenANonIbaCaseWithIbcRoleFromSya_thenAppellantBuildsCorrectlyWithoutIbcRole() { + SyaCaseWrapper syaCaseWrapper = ALL_DETAILS.getDeserializeMessage(); + syaCaseWrapper.getAppellant().setIbcRole("someRole"); + SscsCaseData caseData = callConvertSyaToCcdCaseDataRelevantVersion(syaCaseWrapper, + regionalProcessingCenter.getName(), regionalProcessingCenter, false); + assertNull(caseData.getAppeal().getAppellant().getIbcRole()); + } + + @Test + public void givenAIbaCaseWithNoIbcRoleFromSya_thenAppellantBuildsCorrectlyWithoutIbcRole() { + SyaCaseWrapper syaCaseWrapper = ALL_DETAILS.getDeserializeMessage(); + SyaBenefitType benefitType = new SyaBenefitType("Infected Blood Appeal", "infectedBloodAppeal"); + syaCaseWrapper.setBenefitType(benefitType); + syaCaseWrapper.getAppellant().setIbcRole(null); + SscsCaseData caseData = callConvertSyaToCcdCaseDataRelevantVersion(syaCaseWrapper, + regionalProcessingCenter.getName(), regionalProcessingCenter, false); + assertNull(caseData.getAppeal().getAppellant().getIbcRole()); + } + + @Test + public void givenANonIbaCaseWithNoIbcRoleFromSya_thenAppellantBuildsCorrectlyWithoutIbcRole() { + SyaCaseWrapper syaCaseWrapper = ALL_DETAILS.getDeserializeMessage(); + syaCaseWrapper.getAppellant().setIbcRole(null); + SscsCaseData caseData = callConvertSyaToCcdCaseDataRelevantVersion(syaCaseWrapper, + regionalProcessingCenter.getName(), regionalProcessingCenter, false); + assertNull(caseData.getAppeal().getAppellant().getIbcRole()); + } + + @Test + public void givenAIbaCaseWithNoSyaAppellantFromSya_thenAppellantBuildsCorrectlyWithoutIbcRole() { + SyaCaseWrapper syaCaseWrapper = ALL_DETAILS.getDeserializeMessage(); + SyaBenefitType benefitType = new SyaBenefitType("Infected Blood Appeal", "infectedBloodAppeal"); + syaCaseWrapper.setBenefitType(benefitType); + syaCaseWrapper.setAppellant(null); + SscsCaseData caseData = callConvertSyaToCcdCaseDataRelevantVersion(syaCaseWrapper, + regionalProcessingCenter.getName(), regionalProcessingCenter, false); + assertNull(caseData.getAppeal().getAppellant().getIbcRole()); + } + + @Test + public void givenANonIbaCaseWithNoSyaAppellantFromSya_thenAppellantBuildsCorrectlyWithoutIbcRole() { + SyaCaseWrapper syaCaseWrapper = ALL_DETAILS.getDeserializeMessage(); + syaCaseWrapper.setAppellant(null); + SscsCaseData caseData = callConvertSyaToCcdCaseDataRelevantVersion(syaCaseWrapper, + regionalProcessingCenter.getName(), regionalProcessingCenter, false); + assertNull(caseData.getAppeal().getAppellant().getIbcRole()); + } + @Test @Parameters({"Universal Credit, Universal Credit", "Recovery from Estates, UC Recovery from Estates"}) public void givenAUniversalCreditCaseFromSyaAndMrnIsPopulated_thenUseTheIssuingOfficeFromSya(String mrnOffice, String expectedOffice) { From 3d39cc597e9ba00aaa7fcca272c205307e23768a Mon Sep 17 00:00:00 2001 From: nilay Date: Fri, 18 Oct 2024 11:41:16 +0100 Subject: [PATCH 17/34] checkstyle fix --- .../deserialize/SubmitYourAppealToCcdCaseDataDeserializer.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/uk/gov/hmcts/reform/sscs/transform/deserialize/SubmitYourAppealToCcdCaseDataDeserializer.java b/src/main/java/uk/gov/hmcts/reform/sscs/transform/deserialize/SubmitYourAppealToCcdCaseDataDeserializer.java index 0721fb633e4..2d8569afa89 100644 --- a/src/main/java/uk/gov/hmcts/reform/sscs/transform/deserialize/SubmitYourAppealToCcdCaseDataDeserializer.java +++ b/src/main/java/uk/gov/hmcts/reform/sscs/transform/deserialize/SubmitYourAppealToCcdCaseDataDeserializer.java @@ -312,6 +312,7 @@ private static Address handleAddress(SyaContactDetails contactDetails, boolean i } return addressBuilder.build(); } + private static Appellant getAppellant(SyaCaseWrapper syaCaseWrapper, boolean isIba) { SyaAppellant syaAppellant = syaCaseWrapper.getAppellant(); From a1e551873e2ff4d1cea0cfd94456be03063ce47d Mon Sep 17 00:00:00 2001 From: nilay Date: Fri, 18 Oct 2024 13:19:04 +0100 Subject: [PATCH 18/34] resolving master conflicts --- build.gradle | 2 +- charts/sscs-tribunals-api/Chart.yaml | 2 +- charts/sscs-tribunals-api/values.yaml | 2 +- .../AbstractedCaseUpdatedAboutToSubmitHandlerTest.java | 2 -- .../caseupdated/CaseUpdatedAboutToStartHandlerTest.java | 2 +- 5 files changed, 4 insertions(+), 6 deletions(-) diff --git a/build.gradle b/build.gradle index dc03f21efa2..18cb9be78a4 100644 --- a/build.gradle +++ b/build.gradle @@ -351,7 +351,7 @@ dependencies { implementation group: 'org.flywaydb', name: 'flyway-core', version: '9.22.3' implementation group: 'org.postgresql', name: 'postgresql', version: '42.6.0' - implementation group: 'com.github.hmcts', name: 'sscs-common', version: 'SSCSCI-1179-SNAPSHOT' + implementation group: 'com.github.hmcts', name: 'sscs-common', version: '5.12.8' implementation group: 'com.github.hmcts', name: 'sscs-pdf-email-common', version: '5.2.14' diff --git a/charts/sscs-tribunals-api/Chart.yaml b/charts/sscs-tribunals-api/Chart.yaml index f73cf83abf9..3209c3ab8f0 100644 --- a/charts/sscs-tribunals-api/Chart.yaml +++ b/charts/sscs-tribunals-api/Chart.yaml @@ -1,7 +1,7 @@ apiVersion: v2 name: sscs-tribunals-api home: https://github.com/hmcts/sscs-tribunals-case-api -version: 0.0.160 +version: 0.0.161 description: SSCS Tribunals Case API maintainers: - name: HMCTS SSCS Team diff --git a/charts/sscs-tribunals-api/values.yaml b/charts/sscs-tribunals-api/values.yaml index 15a52faec7a..d3b418799cd 100644 --- a/charts/sscs-tribunals-api/values.yaml +++ b/charts/sscs-tribunals-api/values.yaml @@ -63,7 +63,7 @@ java: &javavalues #This is an anchor to reuse settings in Job mode. alias: NOTIFICATION_API_KEY - name: notification-test-key alias: NOTIFICATION_API_TEST_KEY - - name: tya-notif-POSTGRES-PASS-FLEX-V15 + - name: tribunals-api-POSTGRES-PASS alias: JOB_SCHEDULER_DB_PASSWORD - name: sscs-email-mac-secret-text alias: EMAIL_MAC_SECRET_TEXT diff --git a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/AbstractedCaseUpdatedAboutToSubmitHandlerTest.java b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/AbstractedCaseUpdatedAboutToSubmitHandlerTest.java index 339ac93c8f4..69217858c1f 100644 --- a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/AbstractedCaseUpdatedAboutToSubmitHandlerTest.java +++ b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/AbstractedCaseUpdatedAboutToSubmitHandlerTest.java @@ -1054,7 +1054,6 @@ void givenInvalidBenefitTypeAndDwpIssuingOfficeEmpty_thenAddWarningMessages() { assertEquals(1, response.getErrors().size()); assertThat(response.getWarnings(), hasItems("FTA issuing office is empty")); - //TODO: update this test when PR raised to point at new SSCS Common changes for IBCA assertThat(response.getErrors(), hasItems("Benefit type code is invalid, should be one of: ESA, JSA, PIP, DLA, UC, carersAllowance, attendanceAllowance, " + "bereavementBenefit, industrialInjuriesDisablement, maternityAllowance, socialFund, incomeSupport, bereavementSupportPaymentScheme, " + "industrialDeathBenefit, pensionCredit, retirementPension, childSupport, taxCredit, guardiansAllowance, taxFreeChildcare, " @@ -1069,7 +1068,6 @@ void givenInvalidBenefitTypeAndInvalidDwpIssuingOffice_thenAddWarningMessages() PreSubmitCallbackResponse response = handler.handle(ABOUT_TO_SUBMIT, callback, USER_AUTHORISATION); assertEquals(1, response.getErrors().size()); - //TODO: update this test when PR raised to point at new SSCS Common changes for IBCA assertThat(response.getErrors(), hasItems("Benefit type code is invalid, should be one of: ESA, JSA, PIP, DLA, UC, carersAllowance, attendanceAllowance, " + "bereavementBenefit, industrialInjuriesDisablement, maternityAllowance, socialFund, incomeSupport, bereavementSupportPaymentScheme, " + "industrialDeathBenefit, pensionCredit, retirementPension, childSupport, taxCredit, guardiansAllowance, taxFreeChildcare, " diff --git a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/CaseUpdatedAboutToStartHandlerTest.java b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/CaseUpdatedAboutToStartHandlerTest.java index 7a4628c3873..2616aa6bad3 100644 --- a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/CaseUpdatedAboutToStartHandlerTest.java +++ b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/CaseUpdatedAboutToStartHandlerTest.java @@ -91,7 +91,7 @@ void givenBenefitType_shouldHaveCorrectBenefitSelectionWithInfectedBloodAppealEn assertThat(benefitSelection).isNotNull(); assertThat(benefitSelection.getValue()).isNotNull(); assertThat(benefitSelection.getValue().getCode()).isEqualTo("002"); - assertThat(benefitSelection.getListItems()).hasSize(35); + assertThat(benefitSelection.getListItems().size()).isEqualTo(35); } @Test From b1ea0eec582e7370b80dc86868bb7d3d7861f967 Mon Sep 17 00:00:00 2001 From: nilay Date: Fri, 18 Oct 2024 15:47:16 +0100 Subject: [PATCH 19/34] helping flakey functional tests --- .../reform/sscs/functional/mya/SubscriptionTest.java | 6 ++++++ .../AdminAppealWithdrawnNotificationsTest.java | 10 ++++++---- .../sya/notifications/NotificationsFunctionalTest.java | 5 +++++ 3 files changed, 17 insertions(+), 4 deletions(-) diff --git a/src/functionalTest/java/uk/gov/hmcts/reform/sscs/functional/mya/SubscriptionTest.java b/src/functionalTest/java/uk/gov/hmcts/reform/sscs/functional/mya/SubscriptionTest.java index 47e8c69a800..8c1f7afdf8a 100644 --- a/src/functionalTest/java/uk/gov/hmcts/reform/sscs/functional/mya/SubscriptionTest.java +++ b/src/functionalTest/java/uk/gov/hmcts/reform/sscs/functional/mya/SubscriptionTest.java @@ -4,13 +4,19 @@ import static org.hamcrest.Matchers.is; import java.io.IOException; + +import org.junit.Rule; import org.junit.Test; import uk.gov.hmcts.reform.sscs.ccd.domain.SscsCaseDetails; +import uk.gov.hmcts.reform.sscs.functional.tyanotifications.Retry; public class SubscriptionTest extends BaseFunctionTest { private static final String YES = "yes"; private static final String NO = "no"; + @Rule + public Retry retry = new Retry(3); + @Test public void shouldUpdateSubscription() throws IOException, InterruptedException { String newUserEmail = createRandomEmail(); diff --git a/src/functionalTest/java/uk/gov/hmcts/reform/sscs/functional/tyanotifications/handlers/AdminAppealWithdrawnNotificationsTest.java b/src/functionalTest/java/uk/gov/hmcts/reform/sscs/functional/tyanotifications/handlers/AdminAppealWithdrawnNotificationsTest.java index e9ed3f7f5b8..228dc010092 100644 --- a/src/functionalTest/java/uk/gov/hmcts/reform/sscs/functional/tyanotifications/handlers/AdminAppealWithdrawnNotificationsTest.java +++ b/src/functionalTest/java/uk/gov/hmcts/reform/sscs/functional/tyanotifications/handlers/AdminAppealWithdrawnNotificationsTest.java @@ -27,11 +27,10 @@ public AdminAppealWithdrawnNotificationsTest() { } @Rule - public Retry retry = new Retry(0); + public Retry retry = new Retry(3); - //Test method runs three times and in worst case it needs 90 seconds waiting time. @Rule - public Timeout globalTimeout = Timeout.seconds(100); + public Timeout globalTimeout = Timeout.seconds(90); @Before public void setUp() { @@ -63,12 +62,15 @@ public void givenCallbackWithSubscriptions_shouldSendEmailSmsAndLetterNotificati } private boolean fetchLetters(int expectedNumLetters, String subscription) { + int fetchCount = 0; do { if (getNumberOfLetterCorrespondence(subscription) == expectedNumLetters) { return true; } + fetchCount++; delayInSeconds(5); - } while (true); + } while (fetchCount < 5); + return false; } private void initialiseCcdCase() { diff --git a/src/functionalTest/java/uk/gov/hmcts/reform/sscs/functional/tyanotifications/sya/notifications/NotificationsFunctionalTest.java b/src/functionalTest/java/uk/gov/hmcts/reform/sscs/functional/tyanotifications/sya/notifications/NotificationsFunctionalTest.java index a839f31e528..6287a977fb7 100644 --- a/src/functionalTest/java/uk/gov/hmcts/reform/sscs/functional/tyanotifications/sya/notifications/NotificationsFunctionalTest.java +++ b/src/functionalTest/java/uk/gov/hmcts/reform/sscs/functional/tyanotifications/sya/notifications/NotificationsFunctionalTest.java @@ -8,6 +8,7 @@ import java.util.stream.Collectors; import junitparams.Parameters; import org.junit.Ignore; +import org.junit.Rule; import org.junit.Test; import org.springframework.beans.factory.annotation.Value; import uk.gov.hmcts.reform.sscs.ccd.domain.ReasonableAdjustmentStatus; @@ -15,6 +16,7 @@ import uk.gov.hmcts.reform.sscs.ccd.domain.SscsCaseDetails; import uk.gov.hmcts.reform.sscs.ccd.domain.YesNo; import uk.gov.hmcts.reform.sscs.functional.tyanotifications.AbstractFunctionalTest; +import uk.gov.hmcts.reform.sscs.functional.tyanotifications.Retry; import uk.gov.service.notify.Notification; import uk.gov.service.notify.NotificationClientException; @@ -154,6 +156,9 @@ public NotificationsFunctionalTest() { super(30); } + @Rule + public Retry retry = new Retry(3); + @Test public void shouldSendEvidenceReceivedNotification() throws NotificationClientException, IOException { simulateCcdCallback(EVIDENCE_RECEIVED); From 5a14a3421839ae726ac877fa236b2c96d469aa14 Mon Sep 17 00:00:00 2001 From: nilay Date: Fri, 18 Oct 2024 15:47:53 +0100 Subject: [PATCH 20/34] helping flakey functional tests --- .../gov/hmcts/reform/sscs/functional/mya/SubscriptionTest.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/functionalTest/java/uk/gov/hmcts/reform/sscs/functional/mya/SubscriptionTest.java b/src/functionalTest/java/uk/gov/hmcts/reform/sscs/functional/mya/SubscriptionTest.java index 8c1f7afdf8a..a0c5de2d95b 100644 --- a/src/functionalTest/java/uk/gov/hmcts/reform/sscs/functional/mya/SubscriptionTest.java +++ b/src/functionalTest/java/uk/gov/hmcts/reform/sscs/functional/mya/SubscriptionTest.java @@ -4,7 +4,6 @@ import static org.hamcrest.Matchers.is; import java.io.IOException; - import org.junit.Rule; import org.junit.Test; import uk.gov.hmcts.reform.sscs.ccd.domain.SscsCaseDetails; @@ -15,7 +14,7 @@ public class SubscriptionTest extends BaseFunctionTest { private static final String NO = "no"; @Rule - public Retry retry = new Retry(3); + public Retry retry = new Retry(3);z @Test public void shouldUpdateSubscription() throws IOException, InterruptedException { From e9c88d109e70fd29a4a0fb47b22cd8b715f7abfc Mon Sep 17 00:00:00 2001 From: nilay Date: Fri, 18 Oct 2024 15:51:19 +0100 Subject: [PATCH 21/34] helping flakey functional tests --- .../gov/hmcts/reform/sscs/functional/mya/SubscriptionTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/functionalTest/java/uk/gov/hmcts/reform/sscs/functional/mya/SubscriptionTest.java b/src/functionalTest/java/uk/gov/hmcts/reform/sscs/functional/mya/SubscriptionTest.java index a0c5de2d95b..3cbae1f92b1 100644 --- a/src/functionalTest/java/uk/gov/hmcts/reform/sscs/functional/mya/SubscriptionTest.java +++ b/src/functionalTest/java/uk/gov/hmcts/reform/sscs/functional/mya/SubscriptionTest.java @@ -14,7 +14,7 @@ public class SubscriptionTest extends BaseFunctionTest { private static final String NO = "no"; @Rule - public Retry retry = new Retry(3);z + public Retry retry = new Retry(3); @Test public void shouldUpdateSubscription() throws IOException, InterruptedException { From 06d54b4ef26232ef0e2049fb0459c695389d81e8 Mon Sep 17 00:00:00 2001 From: nilay Date: Fri, 18 Oct 2024 17:39:07 +0100 Subject: [PATCH 22/34] potential functional fix --- Jenkinsfile_CNP | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Jenkinsfile_CNP b/Jenkinsfile_CNP index 4dd42760c91..871cde24fbf 100644 --- a/Jenkinsfile_CNP +++ b/Jenkinsfile_CNP @@ -195,6 +195,7 @@ def setAatEnvVars() { env.PREVIEW_BRANCH_WITH_LOCAL_CCD = false; env.TEST_E2E_URL_WEB = "https://manage-case.aat.platform.hmcts.net/" env.TEST_E2E_API_URI = "http://sscs-tribunals-api-aat.service.core-compute-aat.internal" + env.TEST_URL = "http://sscs-tribunals-api-aat.service.core-compute-aat.internal" env.CCD_API_URL = "http://ccd-data-store-api-aat.service.core-compute-aat.internal" env.CORE_CASE_DATA_API_URL = "http://ccd-data-store-api-aat.service.core-compute-aat.internal" env.CCD_GW_API = "https://gateway-ccd.aat.platform.hmcts.net" @@ -206,6 +207,7 @@ def setPreviewEnvVars() { env.PREVIEW_BRANCH_WITH_LOCAL_CCD = true; env.TEST_E2E_URL_WEB = "https://xui-sscs-tribunals-api-pr-${CHANGE_ID}.preview.platform.hmcts.net" env.TEST_E2E_API_URI = "https://sscs-tribunals-api-pr-${CHANGE_ID}.preview.platform.hmcts.net" + env.TEST_URL = "https://sscs-tribunals-api-pr-${CHANGE_ID}.preview.platform.hmcts.net" env.CCD_API_URL = "https://ccd-data-store-api-sscs-tribunals-api-pr-${CHANGE_ID}.preview.platform.hmcts.net" env.CORE_CASE_DATA_API_URL = "https://ccd-data-store-api-sscs-tribunals-api-pr-${CHANGE_ID}.preview.platform.hmcts.net" env.CCD_GW_API = "http://sscs-tribunals-api-pr-${CHANGE_ID}-ccd-api-gw" From 2ce8edf791e59d61048cc198811dbfeaec3b3ee9 Mon Sep 17 00:00:00 2001 From: nilay Date: Mon, 21 Oct 2024 12:01:21 +0100 Subject: [PATCH 23/34] allowing representative address in/out of Uk handling --- ...itYourAppealToCcdCaseDataDeserializer.java | 44 +++++++------------ 1 file changed, 16 insertions(+), 28 deletions(-) diff --git a/src/main/java/uk/gov/hmcts/reform/sscs/transform/deserialize/SubmitYourAppealToCcdCaseDataDeserializer.java b/src/main/java/uk/gov/hmcts/reform/sscs/transform/deserialize/SubmitYourAppealToCcdCaseDataDeserializer.java index 2d8569afa89..3263a13d3a3 100644 --- a/src/main/java/uk/gov/hmcts/reform/sscs/transform/deserialize/SubmitYourAppealToCcdCaseDataDeserializer.java +++ b/src/main/java/uk/gov/hmcts/reform/sscs/transform/deserialize/SubmitYourAppealToCcdCaseDataDeserializer.java @@ -198,7 +198,7 @@ private static Appeal getAppeal(SyaCaseWrapper syaCaseWrapper) { AppealReasons appealReasons = getReasonsForAppealing(syaCaseWrapper.getReasonsForAppealing()); - Representative representative = getRepresentative(syaCaseWrapper); + Representative representative = getRepresentative(syaCaseWrapper, isIba); HearingSubtype hearingSubtype = getHearingSubType(syaCaseWrapper.getSyaHearingOptions()); @@ -284,7 +284,7 @@ private static String getMrnDate(SyaCaseWrapper syaCaseWrapper) { null; } - private static Address handleAddress(SyaContactDetails contactDetails, boolean isIba) { + private static Address handleAddress(SyaContactDetails contactDetails, boolean isIba, String party) { Address.AddressBuilder addressBuilder = Address.builder() .line1(contactDetails.getAddressLine1()) .line2(contactDetails.getAddressLine2()) @@ -293,23 +293,18 @@ private static Address handleAddress(SyaContactDetails contactDetails, boolean i YesNo inMainlandUkYesNo = contactDetails.getInMainlandUk().equals(Boolean.TRUE) ? YesNo.YES : YesNo.NO; addressBuilder.inMainlandUk(inMainlandUkYesNo); if (inMainlandUkYesNo.equals(YesNo.NO)) { - addressBuilder - .country(contactDetails.getCountry()) - .portOfEntry(contactDetails.getPortOfEntry()); - } else { - addressBuilder - .county(contactDetails.getCounty()) - .postcode(contactDetails.getPostCode()) - .postcodeLookup(contactDetails.getPostcodeLookup()) - .postcodeAddress(contactDetails.getPostcodeAddress()); + addressBuilder.country(contactDetails.getCountry()); + if (party.equalsIgnoreCase("appellant")) { + addressBuilder.portOfEntry(contactDetails.getPortOfEntry()); + } + return addressBuilder.build(); } - } else { - addressBuilder - .county(contactDetails.getCounty()) - .postcode(contactDetails.getPostCode()) - .postcodeLookup(contactDetails.getPostcodeLookup()) - .postcodeAddress(contactDetails.getPostcodeAddress()); } + addressBuilder + .county(contactDetails.getCounty()) + .postcode(contactDetails.getPostCode()) + .postcodeLookup(contactDetails.getPostcodeLookup()) + .postcodeAddress(contactDetails.getPostcodeAddress()); return addressBuilder.build(); } @@ -321,7 +316,7 @@ private static Appellant getAppellant(SyaCaseWrapper syaCaseWrapper, boolean isI Address address = null; Contact contact; if (null != contactDetails) { - address = handleAddress(contactDetails, isIba); + address = handleAddress(contactDetails, isIba, "appellant"); contact = Contact.builder() .email(contactDetails.getEmailAddress()) .mobile(getPhoneNumberWithOutSpaces(contactDetails.getPhoneNumber())) @@ -723,7 +718,7 @@ private static String getNotificationSmsNumber(SyaSmsNotify smsNotify, SyaContac : contactDetails.getPhoneNumber(); } - private static Representative getRepresentative(SyaCaseWrapper syaCaseWrapper) { + private static Representative getRepresentative(SyaCaseWrapper syaCaseWrapper, boolean isIba) { if (syaCaseWrapper.getHasRepresentative() != null) { if (syaCaseWrapper.getHasRepresentative()) { @@ -744,15 +739,8 @@ private static Representative getRepresentative(SyaCaseWrapper syaCaseWrapper) { .lastName(repLastName) .build(); - Address address = Address.builder() - .line1(syaRepresentative.getContactDetails().getAddressLine1()) - .line2(syaRepresentative.getContactDetails().getAddressLine2()) - .town(syaRepresentative.getContactDetails().getTownCity()) - .county(syaRepresentative.getContactDetails().getCounty()) - .postcode(syaRepresentative.getContactDetails().getPostCode()) - .postcodeLookup(syaRepresentative.getContactDetails().getPostcodeLookup()) - .postcodeAddress(syaRepresentative.getContactDetails().getPostcodeAddress()) - .build(); + SyaContactDetails contactDetails = syaRepresentative.getContactDetails(); + Address address = handleAddress(contactDetails, isIba, "representative"); Contact contact = Contact.builder() .email(syaRepresentative.getContactDetails().getEmailAddress()) From 2f9625fcc53f74813d2f017b00533280ffbd6559 Mon Sep 17 00:00:00 2001 From: nilay Date: Mon, 21 Oct 2024 14:56:18 +0100 Subject: [PATCH 24/34] replacing some instances of Infected Blood Appeal with Infected Blood Compensation --- .../service/AbstractSubmitAppealServiceTest.java | 10 +++++----- ...ubmitYourAppealToCcdCaseDataDeserializerTest.java | 12 ++++++------ 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/src/test/java/uk/gov/hmcts/reform/sscs/service/AbstractSubmitAppealServiceTest.java b/src/test/java/uk/gov/hmcts/reform/sscs/service/AbstractSubmitAppealServiceTest.java index 96beb5101bd..6c22aaf8abd 100644 --- a/src/test/java/uk/gov/hmcts/reform/sscs/service/AbstractSubmitAppealServiceTest.java +++ b/src/test/java/uk/gov/hmcts/reform/sscs/service/AbstractSubmitAppealServiceTest.java @@ -227,7 +227,7 @@ public void givenCaseIsIbca_shouldCreateCaseWithAppealDetailsWithValidAppealCrea given(pdfServiceClient.generateFromHtml(any(byte[].class), any())).willReturn(expected); given(ccdService.findCcdCaseByNinoAndBenefitTypeAndMrnDate(anyString(), anyString(), anyString(), any())).willReturn(null); - appealData.setBenefitType(new SyaBenefitType("Infected blood appeal", "infectedBloodAppeal")); + appealData.setBenefitType(new SyaBenefitType("Infected Blood Compensation", "infectedBloodAppeal")); submitAppealService.submitAppeal(appealData, userToken); appealData.setBenefitType(null); verify(ccdService).createCase(capture.capture(), eq(VALID_APPEAL_CREATED.getCcdType()), any(String.class), any(String.class), any(IdamTokens.class)); @@ -381,7 +381,7 @@ public void givenCaseDoesNotExistInCcdAndMrnDateIsMissing_shouldCreateCaseWithAp given(pdfServiceClient.generateFromHtml(any(byte[].class), any())).willReturn(expected); given(ccdService.findCcdCaseByNinoAndBenefitTypeAndMrnDate(anyString(), anyString(), anyString(), any())).willReturn(null); - appealData.setBenefitType(new SyaBenefitType("Infected blood appeal", "infectedBloodAppeal")); + appealData.setBenefitType(new SyaBenefitType("Infected Blood Compensation", "infectedBloodAppeal")); submitAppealService.submitAppeal(appealData, userToken); verify(ccdService).createCase(capture.capture(), eq(INCOMPLETE_APPLICATION_RECEIVED.getCcdType()), any(String.class), any(String.class), any(IdamTokens.class)); @@ -433,7 +433,7 @@ public void givenCaseDoesNotExistInCcdAndMrnIsMissing_shouldCreateCaseWithAppeal given(pdfServiceClient.generateFromHtml(any(byte[].class), any())).willReturn(expected); given(ccdService.findCcdCaseByNinoAndBenefitTypeAndMrnDate(anyString(), anyString(), anyString(), any())).willReturn(null); - appealData.setBenefitType(new SyaBenefitType("Infected blood appeal", "infectedBloodAppeal")); + appealData.setBenefitType(new SyaBenefitType("Infected Blood Compensation", "infectedBloodAppeal")); submitAppealService.submitAppeal(appealData, userToken); verify(ccdService).createCase(capture.capture(), eq(INCOMPLETE_APPLICATION_RECEIVED.getCcdType()), any(String.class), any(String.class), any(IdamTokens.class)); @@ -773,7 +773,7 @@ public void givenAppellantPostCode_shouldSetRegionAndRpcCorrectlyIba(String expe when(airLookupService.lookupAirVenueNameByPostCode(eq(appellantLocationCode), any())).thenReturn(rpc.getCity()); when(venueService.getEpimsIdForVenue(rpc.getCity())).thenReturn("1234"); when(refDataService.getCourtVenueRefDataByEpimsId("1234")).thenReturn(CourtVenue.builder().courtStatus("Open").regionId("1").build()); - SyaBenefitType syaBenefitType = new SyaBenefitType("Infected Blood Appeal", "infectedBloodAppeal"); + SyaBenefitType syaBenefitType = new SyaBenefitType("Infected Blood Compensation", "infectedBloodAppeal"); appealData.setBenefitType(syaBenefitType); appealData.getAppellant().getContactDetails().setPortOfEntry(appellantLocationCode); appealData.getAppellant().getContactDetails().setInMainlandUk(Boolean.FALSE); @@ -936,7 +936,7 @@ public void givenExceptionWhenSearchingForCaseInCcd_shouldThrowException() { @Test(expected = CcdException.class) public void givenExceptionWhenCreatingOrUpdatingIbaCase_shouldThrowException() { - SyaBenefitType syaBenefitType = new SyaBenefitType("Infected Blood Appeal", "infectedBloodAppeal"); + SyaBenefitType syaBenefitType = new SyaBenefitType("Infected Blood Compensation", "infectedBloodAppeal"); appealData.setBenefitType(syaBenefitType); given(ccdService.createCase(any(SscsCaseData.class), anyString(), anyString(), anyString(), any(IdamTokens.class))) .willThrow(RuntimeException.class); diff --git a/src/test/java/uk/gov/hmcts/reform/sscs/transform/deserialize/AbstractSubmitYourAppealToCcdCaseDataDeserializerTest.java b/src/test/java/uk/gov/hmcts/reform/sscs/transform/deserialize/AbstractSubmitYourAppealToCcdCaseDataDeserializerTest.java index 8d8caef3e31..68bcffed10f 100644 --- a/src/test/java/uk/gov/hmcts/reform/sscs/transform/deserialize/AbstractSubmitYourAppealToCcdCaseDataDeserializerTest.java +++ b/src/test/java/uk/gov/hmcts/reform/sscs/transform/deserialize/AbstractSubmitYourAppealToCcdCaseDataDeserializerTest.java @@ -108,7 +108,7 @@ public void givenAUniversalCreditCaseFromSya_thenDefaultIssuingOfficeToNull() { @Test public void givenAIbaNullValueMainlandUkCaseFromSya_thenAddressBuildsCorrectly() { SyaCaseWrapper syaCaseWrapper = ALL_DETAILS.getDeserializeMessage(); - SyaBenefitType benefitType = new SyaBenefitType("Infected Blood Appeal", "infectedBloodAppeal"); + SyaBenefitType benefitType = new SyaBenefitType("Infected Blood Compensation", "infectedBloodAppeal"); syaCaseWrapper.setBenefitType(benefitType); syaCaseWrapper.getContactDetails().setInMainlandUk(null); syaCaseWrapper.getContactDetails().setAddressLine1("line1"); @@ -135,7 +135,7 @@ public void givenAIbaNullValueMainlandUkCaseFromSya_thenAddressBuildsCorrectly() @Test public void givenAIbaMainlandUkCaseFromSya_thenAddressBuildsCorrectly() { SyaCaseWrapper syaCaseWrapper = ALL_DETAILS.getDeserializeMessage(); - SyaBenefitType benefitType = new SyaBenefitType("Infected Blood Appeal", "infectedBloodAppeal"); + SyaBenefitType benefitType = new SyaBenefitType("Infected Blood Compensation", "infectedBloodAppeal"); syaCaseWrapper.setBenefitType(benefitType); syaCaseWrapper.getContactDetails().setInMainlandUk(Boolean.TRUE); syaCaseWrapper.getContactDetails().setAddressLine1("line1"); @@ -163,7 +163,7 @@ public void givenAIbaMainlandUkCaseFromSya_thenAddressBuildsCorrectly() { @Test public void givenAIbaNonMainlandUkCaseFromSya_thenAddressBuildsCorrectly() { SyaCaseWrapper syaCaseWrapper = ALL_DETAILS.getDeserializeMessage(); - SyaBenefitType benefitType = new SyaBenefitType("Infected Blood Appeal", "infectedBloodAppeal"); + SyaBenefitType benefitType = new SyaBenefitType("Infected Blood Compensation", "infectedBloodAppeal"); syaCaseWrapper.setBenefitType(benefitType); syaCaseWrapper.getContactDetails().setInMainlandUk(Boolean.FALSE); syaCaseWrapper.getContactDetails().setAddressLine1("line1"); @@ -187,7 +187,7 @@ public void givenAIbaNonMainlandUkCaseFromSya_thenAddressBuildsCorrectly() { @Test public void givenAIbaCaseWithIbcRoleFromSya_thenAppellantBuildsWithIbcRole() { SyaCaseWrapper syaCaseWrapper = ALL_DETAILS.getDeserializeMessage(); - SyaBenefitType benefitType = new SyaBenefitType("Infected Blood Appeal", "infectedBloodAppeal"); + SyaBenefitType benefitType = new SyaBenefitType("Infected Blood Compensation", "infectedBloodAppeal"); syaCaseWrapper.setBenefitType(benefitType); syaCaseWrapper.getAppellant().setIbcRole("someRole"); SscsCaseData caseData = callConvertSyaToCcdCaseDataRelevantVersion(syaCaseWrapper, @@ -207,7 +207,7 @@ public void givenANonIbaCaseWithIbcRoleFromSya_thenAppellantBuildsCorrectlyWitho @Test public void givenAIbaCaseWithNoIbcRoleFromSya_thenAppellantBuildsCorrectlyWithoutIbcRole() { SyaCaseWrapper syaCaseWrapper = ALL_DETAILS.getDeserializeMessage(); - SyaBenefitType benefitType = new SyaBenefitType("Infected Blood Appeal", "infectedBloodAppeal"); + SyaBenefitType benefitType = new SyaBenefitType("Infected Blood Compensation", "infectedBloodAppeal"); syaCaseWrapper.setBenefitType(benefitType); syaCaseWrapper.getAppellant().setIbcRole(null); SscsCaseData caseData = callConvertSyaToCcdCaseDataRelevantVersion(syaCaseWrapper, @@ -227,7 +227,7 @@ public void givenANonIbaCaseWithNoIbcRoleFromSya_thenAppellantBuildsCorrectlyWit @Test public void givenAIbaCaseWithNoSyaAppellantFromSya_thenAppellantBuildsCorrectlyWithoutIbcRole() { SyaCaseWrapper syaCaseWrapper = ALL_DETAILS.getDeserializeMessage(); - SyaBenefitType benefitType = new SyaBenefitType("Infected Blood Appeal", "infectedBloodAppeal"); + SyaBenefitType benefitType = new SyaBenefitType("Infected Blood Compensation", "infectedBloodAppeal"); syaCaseWrapper.setBenefitType(benefitType); syaCaseWrapper.setAppellant(null); SscsCaseData caseData = callConvertSyaToCcdCaseDataRelevantVersion(syaCaseWrapper, From cedbc92eac94f304209572ff8e0fc314af39c6a3 Mon Sep 17 00:00:00 2001 From: nilay Date: Mon, 21 Oct 2024 14:57:01 +0100 Subject: [PATCH 25/34] showing nino / ibca ref depending on case type and validating in update case data similarly --- .../benefit/sheets/CaseTypeTab/CaseTypeTab.json | 3 ++- .../CaseUpdatedAboutToSubmitHandler.java | 15 ++++++++++----- ...ractedCaseUpdatedAboutToSubmitHandlerTest.java | 12 ++++++++++++ 3 files changed, 24 insertions(+), 6 deletions(-) diff --git a/definitions/benefit/sheets/CaseTypeTab/CaseTypeTab.json b/definitions/benefit/sheets/CaseTypeTab/CaseTypeTab.json index 3b03a1b99b0..1322065454e 100644 --- a/definitions/benefit/sheets/CaseTypeTab/CaseTypeTab.json +++ b/definitions/benefit/sheets/CaseTypeTab/CaseTypeTab.json @@ -15,7 +15,8 @@ {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "urgentCase", "TabFieldDisplayOrder": 9}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryName", "TabFieldDisplayOrder": 10}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryAddress", "TabFieldDisplayOrder": 11}, - {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryNino", "TabFieldDisplayOrder": 12}, + {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryNino", "FieldShowCondition": "appeal.benefitType.code!=\"infectedBloodAppeal\"", "TabFieldDisplayOrder": 12}, + {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryIbcaReference", "FieldShowCondition": "appeal.benefitType.code=\"infectedBloodAppeal\"", "TabFieldDisplayOrder": 12}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryDOB", "TabFieldDisplayOrder": 13}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryRole", "FieldShowCondition": "appeal.appellant.role.name!=\"\"", "TabFieldDisplayOrder": 14}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryRoleDescription", "FieldShowCondition": "appeal.appellant.role.description!=\"\"", "TabFieldDisplayOrder": 15}, diff --git a/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/CaseUpdatedAboutToSubmitHandler.java b/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/CaseUpdatedAboutToSubmitHandler.java index a09bf14f284..1ca734af3a6 100644 --- a/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/CaseUpdatedAboutToSubmitHandler.java +++ b/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/CaseUpdatedAboutToSubmitHandler.java @@ -373,7 +373,7 @@ private void updateProcessingVenueIfRequired(CaseDetails caseDetai } } - private List validatePartyCaseData(Entity entity, String partyType) { + private List validatePartyCaseData(Entity entity, String partyType, boolean isIba) { List listOfWarnings = new ArrayList<>(); if (entity != null) { @@ -389,9 +389,12 @@ private List validatePartyCaseData(Entity entity, String partyType) { if (isBlank(entity.getIdentity().getDob())) { listOfWarnings.add(String.format(WARNING_MESSAGE, "Date of Birth", partyType)); } - if (isBlank(entity.getIdentity().getNino())) { + if (isBlank(entity.getIdentity().getNino()) && !isIba) { listOfWarnings.add(String.format(WARNING_MESSAGE, "National Insurance Number", partyType)); } + if (isBlank(entity.getIdentity().getIbcaReference()) && isIba) { + listOfWarnings.add(String.format(WARNING_MESSAGE, "IBCA Reference Number", partyType)); + } } } return listOfWarnings; @@ -400,8 +403,10 @@ private List validatePartyCaseData(Entity entity, String partyType) { private void validateAppellantCaseData(SscsCaseData sscsCaseData, PreSubmitCallbackResponse response) { Appellant appellantInfo = sscsCaseData.getAppeal().getAppellant(); - - List warnings = validatePartyCaseData(appellantInfo, "Appellant"); + String benefitCode = sscsCaseData.getAppeal().getBenefitType() != null ? + sscsCaseData.getAppeal().getBenefitType().getCode() : ""; + boolean isIba = benefitCode.equals("infectedBloodAppeal"); + List warnings = validatePartyCaseData(appellantInfo, "Appellant", isIba); if (!warnings.isEmpty()) { response.addWarnings(warnings); @@ -413,7 +418,7 @@ private void validateAppointeeCaseData(SscsCaseData sscsCaseData, PreSubmitCallb String isAppointee = sscsCaseData.getAppeal().getAppellant().getIsAppointee(); if (isAppointee != null && isAppointee.equals("Yes") && appointeeInfo != null) { - List warnings = validatePartyCaseData(appointeeInfo, "Appointee"); + List warnings = validatePartyCaseData(appointeeInfo, "Appointee", false); if (!warnings.isEmpty()) { response.addWarnings(warnings); diff --git a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/AbstractedCaseUpdatedAboutToSubmitHandlerTest.java b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/AbstractedCaseUpdatedAboutToSubmitHandlerTest.java index 69217858c1f..1c852468eef 100644 --- a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/AbstractedCaseUpdatedAboutToSubmitHandlerTest.java +++ b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/AbstractedCaseUpdatedAboutToSubmitHandlerTest.java @@ -1043,6 +1043,18 @@ void givenBenefitTypeAndDwpIssuingOfficeEmpty_thenAddWarningMessages() { assertThat(response.getWarnings(), hasItems("Benefit type code is empty", "FTA issuing office is empty")); } + @Test + void givenIbaCaseAndIbcaReferenceEmpty_thenAddWarningMessages() { + callback.getCaseDetails().getCaseData().getAppeal().setBenefitType(BenefitType.builder() + .code("infectedBloodAppeal").description("Infected Blood Compensation").build()); + callback.getCaseDetails().getCaseData().getAppeal().setMrnDetails(MrnDetails.builder().build()); + + PreSubmitCallbackResponse response = handler.handle(ABOUT_TO_SUBMIT, callback, USER_AUTHORISATION); + + assertEquals(2, response.getWarnings().size()); + assertThat(response.getWarnings(), hasItems("FTA issuing office is empty", "IBCA Reference Number has not been provided for the Appellant, do you want to ignore this warning and proceed?")); + } + @Test void givenInvalidBenefitTypeAndDwpIssuingOfficeEmpty_thenAddWarningMessages() { callback.getCaseDetails().getCaseData().getAppeal().setBenefitType(BenefitType.builder().code("INVALID").build()); From f8e4a1233f212d09eff435cda768be7355483342 Mon Sep 17 00:00:00 2001 From: nilay Date: Mon, 21 Oct 2024 15:02:48 +0100 Subject: [PATCH 26/34] checkstyle fix --- .../caseupdated/CaseUpdatedAboutToSubmitHandler.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/CaseUpdatedAboutToSubmitHandler.java b/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/CaseUpdatedAboutToSubmitHandler.java index 1ca734af3a6..ebd8f6d65d8 100644 --- a/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/CaseUpdatedAboutToSubmitHandler.java +++ b/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/CaseUpdatedAboutToSubmitHandler.java @@ -403,8 +403,8 @@ private List validatePartyCaseData(Entity entity, String partyType, bool private void validateAppellantCaseData(SscsCaseData sscsCaseData, PreSubmitCallbackResponse response) { Appellant appellantInfo = sscsCaseData.getAppeal().getAppellant(); - String benefitCode = sscsCaseData.getAppeal().getBenefitType() != null ? - sscsCaseData.getAppeal().getBenefitType().getCode() : ""; + String benefitCode = sscsCaseData.getAppeal().getBenefitType() != null + ? sscsCaseData.getAppeal().getBenefitType().getCode() : ""; boolean isIba = benefitCode.equals("infectedBloodAppeal"); List warnings = validatePartyCaseData(appellantInfo, "Appellant", isIba); From 48a1b0c2243a9a3ef7c4de370019b73e078d1095 Mon Sep 17 00:00:00 2001 From: nilay Date: Tue, 22 Oct 2024 10:23:55 +0100 Subject: [PATCH 27/34] pulling in 1128 changes --- .../CaseEventToComplexTypes.json | 323 +++++++++++++----- .../CaseEventToFields/CaseEventToFields.json | 5 +- .../CaseUpdatedAboutToSubmitHandler.java | 60 ++-- .../CreateCaseAboutToStartHandler.java | 12 + .../CreateCaseAboutToSubmitHandler.java | 20 +- .../createcase/CreateCaseMidEventHandler.java | 86 +++++ .../hmcts/reform/sscs/model/AppConstants.java | 2 + .../gov/hmcts/reform/sscs/util/SscsUtil.java | 22 ++ ...edCaseUpdatedAboutToSubmitHandlerTest.java | 13 + .../CreateCaseAboutToStartHandlerTest.java | 7 +- .../CreateCaseAboutToSubmitHandlerTest.java | 42 ++- .../CreateCaseMidEventHandlerTest.java | 172 ++++++++++ .../hmcts/reform/sscs/util/SscsUtilTest.java | 43 +++ 13 files changed, 673 insertions(+), 134 deletions(-) create mode 100644 src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseMidEventHandler.java create mode 100644 src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseMidEventHandlerTest.java diff --git a/definitions/benefit/sheets/CaseEventToComplexTypes/CaseEventToComplexTypes.json b/definitions/benefit/sheets/CaseEventToComplexTypes/CaseEventToComplexTypes.json index 142ba4e813f..676e87615cd 100644 --- a/definitions/benefit/sheets/CaseEventToComplexTypes/CaseEventToComplexTypes.json +++ b/definitions/benefit/sheets/CaseEventToComplexTypes/CaseEventToComplexTypes.json @@ -504,6 +504,48 @@ "FieldDisplayOrder": 1, "PageID": "1.0" }, + { + "CaseEventID": "caseUpdated", + "CaseFieldID": "appeal", + "ListElementCode": "benefitType", + "ID": "appealBenefitType", + "DisplayContext": "OPTIONAL", + "LiveFrom": "19/11/2019", + "FieldDisplayOrder": 2, + "PageID": "1.0" + }, + { + "CaseEventID": "caseUpdated", + "CaseFieldID": "appeal", + "ListElementCode": "benefitType.code", + "ID": "appealBenefitTypeCode", + "DisplayContext": "OPTIONAL", + "LiveFrom": "19/11/2019", + "FieldDisplayOrder": 1, + "FieldShowCondition": "benefitType=\"DO_NOT_SHOW\"", + "PageID": "1.0" + }, + { + "CaseEventID": "caseUpdated", + "CaseFieldID": "appeal", + "ListElementCode": "benefitType.description", + "ID": "appealBenefitTypeDescription", + "DisplayContext": "OPTIONAL", + "LiveFrom": "19/11/2019", + "FieldDisplayOrder": 2, + "FieldShowCondition": "benefitType=\"DO_NOT_SHOW\"", + "PageID": "1.0" + }, + { + "CaseEventID": "caseUpdated", + "CaseFieldID": "appeal", + "ListElementCode": "benefitType.descriptionSelection", + "ID": "appealBenefitTypeDescriptionSelection", + "DisplayContext": "OPTIONAL", + "LiveFrom": "19/11/2019", + "FieldDisplayOrder": 1, + "PageID": "1.0" + }, { "CaseEventID": "caseUpdated", "CaseFieldID": "appeal", @@ -520,6 +562,7 @@ "ListElementCode": "mrnDetails.dwpIssuingOffice", "ID": "appealMrnDetailsDwpIssuingOffice", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "19/11/2019", "FieldDisplayOrder": 2, "PageID": "1.0" @@ -550,6 +593,7 @@ "ListElementCode": "mrnDetails.mrnMissingReason", "ID": "appealMrnDetailsMissingReason", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "19/11/2019", "FieldDisplayOrder": 2, "PageID": "1.0" @@ -623,9 +667,20 @@ "ListElementCode": "appellant.identity.nino", "ID": "appealAppellantNino", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "19/11/2020", "FieldDisplayOrder": 8 }, + { + "CaseEventID": "caseUpdated", + "CaseFieldID": "appeal", + "ListElementCode": "appellant.identity.ibcaReference", + "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection=\"093\"", + "LiveFrom": "01/01/2018", + "FieldDisplayOrder": 1, + "PageID": "1.0" + }, { "CaseEventID": "caseUpdated", "CaseFieldID": "appeal", @@ -680,6 +735,36 @@ "LiveFrom": "19/11/2020", "FieldDisplayOrder": 13 }, + { + "CaseEventID": "caseUpdated", + "CaseFieldID": "appeal", + "ListElementCode": "appellant.address.country", + "DisplayContext": "OPTIONAL", + "LiveFrom": "01/01/2018", + "FieldDisplayOrder": 14, + "PageID": "1.0" + }, + { + "CaseEventID": "caseUpdated", + "CaseFieldID": "appeal", + "ListElementCode": "appellant.address.inMainlandUk", + "DisplayContext": "MANDATORY", + "FieldShowCondition": "appeal.benefitType.descriptionSelection=\"093\"", + "LiveFrom": "01/01/2018", + "FieldDisplayOrder": 15, + "PageID": "1.0", + "EventElementLabel": "Does the appellant live in England, Wales or Scotland?" + }, + { + "CaseEventID": "caseUpdated", + "CaseFieldID": "appeal", + "ListElementCode": "appellant.address.ukPortOfEntryList", + "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.appellant.address.inMainlandUk=\"No\"", + "LiveFrom": "01/01/2018", + "FieldDisplayOrder": 16, + "PageID": "1.0" + }, { "CaseEventID": "caseUpdated", "CaseFieldID": "appeal", @@ -732,6 +817,7 @@ "ListElementCode": "appellant.isAppointee", "ID": "appealApellantIsAppointee", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "19/11/2020", "FieldDisplayOrder": 17 }, @@ -898,48 +984,6 @@ "LiveFrom": "19/11/2020", "FieldDisplayOrder": 31 }, - { - "CaseEventID": "caseUpdated", - "CaseFieldID": "appeal", - "ListElementCode": "benefitType", - "ID": "appealBenefitType", - "DisplayContext": "OPTIONAL", - "LiveFrom": "19/11/2019", - "FieldDisplayOrder": 32, - "PageID": "1.0" - }, - { - "CaseEventID": "caseUpdated", - "CaseFieldID": "appeal", - "ListElementCode": "benefitType.code", - "ID": "appealBenefitTypeCode", - "DisplayContext": "OPTIONAL", - "LiveFrom": "19/11/2019", - "FieldDisplayOrder": 32, - "FieldShowCondition": "benefitType=\"DO_NOT_SHOW\"", - "PageID": "1.0" - }, - { - "CaseEventID": "caseUpdated", - "CaseFieldID": "appeal", - "ListElementCode": "benefitType.description", - "ID": "appealBenefitTypeDescription", - "DisplayContext": "OPTIONAL", - "LiveFrom": "19/11/2019", - "FieldDisplayOrder": 32, - "FieldShowCondition": "benefitType=\"DO_NOT_SHOW\"", - "PageID": "1.0" - }, - { - "CaseEventID": "caseUpdated", - "CaseFieldID": "appeal", - "ListElementCode": "benefitType.descriptionSelection", - "ID": "appealBenefitTypeDescriptionSelection", - "DisplayContext": "OPTIONAL", - "LiveFrom": "19/11/2019", - "FieldDisplayOrder": 32, - "PageID": "1.0" - }, { "CaseEventID": "caseUpdated", "CaseFieldID": "appeal", @@ -1412,6 +1456,16 @@ "FieldDisplayOrder": 68, "PageID": "1.0" }, + { + "CaseEventID": "incompleteApplicationReceived", + "CaseFieldID": "appeal", + "ListElementCode": "appellant.ibcRole", + "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection=\"093\"", + "LiveFrom": "01/01/2018", + "FieldDisplayOrder": 69, + "PageID": "1.0" + }, { "CaseEventID": "caseUpdated", "CaseFieldID": "jointPartyAddress", @@ -1419,7 +1473,7 @@ "ID": "jointPartyAddressLine1", "DisplayContext": "OPTIONAL", "LiveFrom": "19/11/2019", - "FieldDisplayOrder": 69, + "FieldDisplayOrder": 70, "PageID": "1.0" }, { @@ -1429,7 +1483,7 @@ "ID": "jointPartyAddressLine2", "DisplayContext": "OPTIONAL", "LiveFrom": "19/11/2019", - "FieldDisplayOrder": 70, + "FieldDisplayOrder": 71, "PageID": "1.0" }, { @@ -1439,7 +1493,7 @@ "ID": "jointPartyAddressTown", "DisplayContext": "OPTIONAL", "LiveFrom": "19/11/2019", - "FieldDisplayOrder": 71, + "FieldDisplayOrder": 72, "PageID": "1.0" }, { @@ -1449,7 +1503,7 @@ "ID": "jointPartyAddressCounty", "DisplayContext": "OPTIONAL", "LiveFrom": "19/11/2019", - "FieldDisplayOrder": 72, + "FieldDisplayOrder": 73, "PageID": "1.0" }, { @@ -1459,7 +1513,7 @@ "ID": "jointPartyAddressPostcode", "DisplayContext": "OPTIONAL", "LiveFrom": "19/11/2019", - "FieldDisplayOrder": 73, + "FieldDisplayOrder": 74, "PageID": "1.0" }, { @@ -1469,7 +1523,7 @@ "ID": "jointPartyContactEmail", "DisplayContext": "OPTIONAL", "LiveFrom": "19/11/2019", - "FieldDisplayOrder": 74, + "FieldDisplayOrder": 75, "PageID": "1.0" }, { @@ -1479,7 +1533,7 @@ "ID": "jointPartyContactPhone", "DisplayContext": "OPTIONAL", "LiveFrom": "19/11/2019", - "FieldDisplayOrder": 75, + "FieldDisplayOrder": 76, "PageID": "1.0" }, { @@ -1489,7 +1543,7 @@ "ID": "jointPartyContactMobile", "DisplayContext": "OPTIONAL", "LiveFrom": "19/11/2019", - "FieldDisplayOrder": 76, + "FieldDisplayOrder": 77, "PageID": "1.0" }, { @@ -4853,17 +4907,63 @@ { "CaseEventID": "incompleteApplicationReceived", "CaseFieldID": "appeal", - "ListElementCode": "mrnDetails", + "ListElementCode": "benefitType", + "DisplayContext": "OPTIONAL", + "LiveFrom": "01/01/2018", + "FieldDisplayOrder": 2, + "PageID": "1.0" + }, + { + "CaseEventID": "incompleteApplicationReceived", + "CaseFieldID": "appeal", + "ListElementCode": "benefitType.code", + "DisplayContext": "OPTIONAL", + "LiveFrom": "01/01/2018", + "FieldDisplayOrder": 1, + "PageID": "1.0" + }, + { + "CaseEventID": "incompleteApplicationReceived", + "CaseFieldID": "appeal", + "ListElementCode": "benefitType.descriptionSelection", + "DisplayContext": "OPTIONAL", + "LiveFrom": "19/11/2019", + "FieldDisplayOrder": 1, + "PageID": "1.0" + }, + { + "CaseEventID": "incompleteApplicationReceived", + "CaseFieldID": "appeal", + "ListElementCode": "benefitType.description", "DisplayContext": "OPTIONAL", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 2, "PageID": "1.0" }, + { + "CaseEventID": "incompleteApplicationReceived", + "CaseFieldID": "appeal", + "ListElementCode": "hearingType", + "DisplayContext": "OPTIONAL", + "LiveFrom": "01/01/2018", + "FieldDisplayOrder": 2, + "PageID": "1.0" + }, + { + "CaseEventID": "incompleteApplicationReceived", + "CaseFieldID": "appeal", + "ListElementCode": "mrnDetails", + "DisplayContext": "OPTIONAL", + "LiveFrom": "01/01/2018", + "FieldDisplayOrder": 3, + "PageID": "1.0" + }, { "CaseEventID": "incompleteApplicationReceived", "CaseFieldID": "appeal", "ListElementCode": "mrnDetails.dwpIssuingOffice", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 1, "PageID": "1.0" @@ -4891,6 +4991,7 @@ "CaseFieldID": "appeal", "ListElementCode": "mrnDetails.mrnMissingReason", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 4, "PageID": "1.0" @@ -4901,7 +5002,7 @@ "ListElementCode": "appellant", "DisplayContext": "OPTIONAL", "LiveFrom": "01/01/2018", - "FieldDisplayOrder": 3, + "FieldDisplayOrder": 4, "PageID": "1.0" }, { @@ -4972,10 +5073,21 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.identity.nino", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 2, "PageID": "1.0" }, + { + "CaseEventID": "incompleteApplicationReceived", + "CaseFieldID": "appeal", + "ListElementCode": "appellant.identity.ibcaReference", + "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection=\"093\"", + "LiveFrom": "01/01/2018", + "FieldDisplayOrder": 1, + "PageID": "1.0" + }, { "CaseEventID": "incompleteApplicationReceived", "CaseFieldID": "appeal", @@ -5048,6 +5160,27 @@ "FieldDisplayOrder": 7, "PageID": "1.0" }, + { + "CaseEventID": "incompleteApplicationReceived", + "CaseFieldID": "appeal", + "ListElementCode": "appellant.address.inMainlandUk", + "DisplayContext": "MANDATORY", + "FieldShowCondition": "appeal.benefitType.descriptionSelection=\"093\"", + "LiveFrom": "01/01/2018", + "FieldDisplayOrder": 8, + "PageID": "1.0", + "EventElementLabel": "Does the appellant live in England, Wales or Scotland?" + }, + { + "CaseEventID": "incompleteApplicationReceived", + "CaseFieldID": "appeal", + "ListElementCode": "appellant.address.ukPortOfEntryList", + "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.appellant.address.inMainlandUk=\"No\"", + "LiveFrom": "01/01/2018", + "FieldDisplayOrder": 9, + "PageID": "1.0" + }, { "CaseEventID": "incompleteApplicationReceived", "CaseFieldID": "appeal", @@ -5089,6 +5222,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.isAppointee", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 5, "PageID": "1.0" @@ -5098,6 +5232,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.appointee", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 6, "PageID": "1.0" @@ -5107,6 +5242,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.appointee.name", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 1, "PageID": "1.0" @@ -5116,6 +5252,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.appointee.name.title", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 1, "PageID": "1.0" @@ -5125,6 +5262,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.appointee.name.firstName", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 2, "PageID": "1.0" @@ -5134,6 +5272,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.appointee.name.middleName", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 3, "PageID": "1.0" @@ -5143,6 +5282,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.appointee.name.lastName", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 4, "PageID": "1.0" @@ -5152,6 +5292,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.appointee.identity", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 2, "PageID": "1.0" @@ -5161,6 +5302,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.appointee.identity.dob", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 1, "PageID": "1.0" @@ -5170,6 +5312,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.appointee.identity.nino", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 2, "PageID": "1.0" @@ -5179,6 +5322,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.appointee.address", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 3, "PageID": "1.0" @@ -5188,6 +5332,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.appointee.address.line1", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 1, "PageID": "1.0" @@ -5197,6 +5342,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.appointee.address.line2", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 2, "PageID": "1.0" @@ -5206,6 +5352,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.appointee.address.line3", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 3, "PageID": "1.0" @@ -5215,6 +5362,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.appointee.address.town", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 4, "PageID": "1.0" @@ -5224,6 +5372,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.appointee.address.county", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 5, "PageID": "1.0" @@ -5233,6 +5382,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.appointee.address.postcode", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 6, "PageID": "1.0" @@ -5242,6 +5392,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.appointee.address.country", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 7, "PageID": "1.0" @@ -5251,6 +5402,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.appointee.contact", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 4, "PageID": "1.0" @@ -5260,6 +5412,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.appointee.contact.phone", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 1, "PageID": "1.0" @@ -5269,6 +5422,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.appointee.contact.mobile", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 2, "PageID": "1.0" @@ -5278,6 +5432,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.appointee.contact.email", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 3, "PageID": "1.0" @@ -5287,6 +5442,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.appointee.id", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 5, "PageID": "1.0" @@ -5296,6 +5452,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.appointee.organisation", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 6, "PageID": "1.0" @@ -5305,6 +5462,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.isAddressSameAsAppointee", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 7, "PageID": "1.0" @@ -5314,6 +5472,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.confidentialityRequired", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 8, "PageID": "1.0" @@ -5332,6 +5491,7 @@ "CaseFieldID": "appeal", "ListElementCode": "appellant.role.name", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 1, "PageID": "1.0" @@ -5348,55 +5508,21 @@ { "CaseEventID": "incompleteApplicationReceived", "CaseFieldID": "appeal", - "ListElementCode": "appellant.organisation", - "DisplayContext": "OPTIONAL", - "LiveFrom": "01/01/2018", - "FieldDisplayOrder": 10, - "PageID": "1.0" - }, - { - "CaseEventID": "incompleteApplicationReceived", - "CaseFieldID": "appeal", - "ListElementCode": "benefitType", - "DisplayContext": "OPTIONAL", - "LiveFrom": "01/01/2018", - "FieldDisplayOrder": 4, - "PageID": "1.0" - }, - { - "CaseEventID": "incompleteApplicationReceived", - "CaseFieldID": "appeal", - "ListElementCode": "benefitType.code", + "ListElementCode": "appellant.ibcRole", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection=\"093\"", "LiveFrom": "01/01/2018", - "FieldDisplayOrder": 1, - "PageID": "1.0" - }, - { - "CaseEventID": "incompleteApplicationReceived", - "CaseFieldID": "appeal", - "ListElementCode": "benefitType.descriptionSelection", - "DisplayContext": "OPTIONAL", - "LiveFrom": "19/11/2019", - "FieldDisplayOrder": 1, - "PageID": "1.0" - }, - { - "CaseEventID": "incompleteApplicationReceived", - "CaseFieldID": "appeal", - "ListElementCode": "benefitType.description", - "DisplayContext": "OPTIONAL", - "LiveFrom": "01/01/2018", - "FieldDisplayOrder": 2, + "FieldDisplayOrder": 9, "PageID": "1.0" }, { "CaseEventID": "incompleteApplicationReceived", "CaseFieldID": "appeal", - "ListElementCode": "hearingType", + "ListElementCode": "appellant.organisation", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", - "FieldDisplayOrder": 5, + "FieldDisplayOrder": 11, "PageID": "1.0" }, { @@ -5575,6 +5701,7 @@ "CaseFieldID": "appeal", "ListElementCode": "hearingOptions.hearingRoute", "DisplayContext": "MANDATORY", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 11, "PageID": "1.0" @@ -5746,6 +5873,7 @@ "CaseFieldID": "appeal", "ListElementCode": "rep.identity.nino", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "FieldDisplayOrder": 2, "PageID": "1.0" @@ -5885,6 +6013,17 @@ "FieldDisplayOrder": 7, "PageID": "1.0" }, + { + "CaseEventID": "incompleteApplicationReceived", + "CaseFieldID": "appeal", + "ListElementCode": "rep.address.inMainlandUk", + "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection=\"093\"", + "LiveFrom": "01/01/2018", + "FieldDisplayOrder": 8, + "PageID": "1.0", + "EventElementLabel": "Does the representative live in England, Wales or Scotland?" + }, { "CaseEventID": "incompleteApplicationReceived", "CaseFieldID": "appeal", diff --git a/definitions/benefit/sheets/CaseEventToFields/CaseEventToFields.json b/definitions/benefit/sheets/CaseEventToFields/CaseEventToFields.json index 4306f3b6d4d..5fe83b38e9a 100644 --- a/definitions/benefit/sheets/CaseEventToFields/CaseEventToFields.json +++ b/definitions/benefit/sheets/CaseEventToFields/CaseEventToFields.json @@ -581,6 +581,7 @@ "CaseFieldID": "caseReference", "CaseTypeID": "Benefit", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "PageDisplayOrder": 1, "PageFieldDisplayOrder": 1, @@ -972,7 +973,8 @@ "PageDisplayOrder": 1, "PageFieldDisplayOrder": 1, "PageID": "1.0", - "PageLabel": "Incomplete appeal" + "PageLabel": "Incomplete appeal", + "CallBackURLMidEvent": "${CCD_DEF_TRIBUNALS_API_URL}/ccdMidEvent?pageId=incompleteApplicationReceived1.0" }, { "CaseEventID": "incompleteApplicationReceived", @@ -990,6 +992,7 @@ "CaseFieldID": "caseReference", "CaseTypeID": "Benefit", "DisplayContext": "OPTIONAL", + "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", "LiveFrom": "01/01/2018", "PageDisplayOrder": 1, "PageFieldDisplayOrder": 3, diff --git a/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/CaseUpdatedAboutToSubmitHandler.java b/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/CaseUpdatedAboutToSubmitHandler.java index ebd8f6d65d8..8d124d199bd 100644 --- a/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/CaseUpdatedAboutToSubmitHandler.java +++ b/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/CaseUpdatedAboutToSubmitHandler.java @@ -6,11 +6,13 @@ import static org.apache.commons.lang3.StringUtils.isEmpty; import static org.apache.commons.lang3.StringUtils.isNotBlank; import static org.apache.commons.lang3.StringUtils.isNotEmpty; +import static uk.gov.hmcts.reform.sscs.ccd.domain.YesNo.NO; import static uk.gov.hmcts.reform.sscs.ccd.domain.YesNo.YES; import static uk.gov.hmcts.reform.sscs.ccd.domain.YesNo.isYes; import static uk.gov.hmcts.reform.sscs.helper.SscsHelper.validateHearingOptionsAndExcludeDates; import static uk.gov.hmcts.reform.sscs.idam.UserRole.*; import static uk.gov.hmcts.reform.sscs.idam.UserRole.SUPER_USER; +import static uk.gov.hmcts.reform.sscs.model.AppConstants.IBCA_BENEFIT_CODE; import static uk.gov.hmcts.reform.sscs.util.OtherPartyDataUtil.isConfidential; import static uk.gov.hmcts.reform.sscs.util.SscsUtil.handleBenefitType; @@ -107,7 +109,9 @@ public PreSubmitCallbackResponse handle(CallbackType callbackType, final CaseDetails caseDetails = callback.getCaseDetails(); final Optional> caseDetailsBefore = callback.getCaseDetailsBefore(); - final SscsCaseData sscsCaseData = associatedCaseLinkHelper.linkCaseByNino(caseDetails.getCaseData(), caseDetailsBefore); + final SscsCaseData sscsCaseData = !IBCA_BENEFIT_CODE.equals(caseDetails.getCaseData().getBenefitCode()) + ? associatedCaseLinkHelper.linkCaseByNino(caseDetails.getCaseData(), caseDetailsBefore) + : caseDetails.getCaseData(); PreSubmitCallbackResponse preSubmitCallbackResponse = new PreSubmitCallbackResponse<>(sscsCaseData); @@ -129,7 +133,8 @@ public PreSubmitCallbackResponse handle(CallbackType callbackType, Appellant appellant = sscsCaseData.getAppeal().getAppellant(); if (appellant != null && appellant.getAddress() != null - && isNotBlank(appellant.getAddress().getPostcode())) { + && (isNotBlank(appellant.getAddress().getPostcode()) + || isNotBlank(appellant.getAddress().getPortOfEntry()))) { String postCode = resolvePostCode(sscsCaseData); RegionalProcessingCenter newRpc = regionalProcessingCenterService.getByPostcode(postCode); @@ -209,9 +214,12 @@ private void validateBenefitIssueCode(SscsCaseData caseData, } private void validatingPartyAddresses(SscsCaseData sscsCaseData, PreSubmitCallbackResponse response) { - validateAddressAndPostcode(response, sscsCaseData.getAppeal().getAppellant(), "appellant"); + if (!IBCA_BENEFIT_CODE.equals(sscsCaseData.getBenefitCode()) + || YES.equals(sscsCaseData.getAppeal().getAppellant().getAddress().getInMainlandUk())) { + validateAddressAndPostcode(response, sscsCaseData.getAppeal().getAppellant(), "appellant"); + } - if (sscsCaseData.isThereAJointParty()) { + if (!IBCA_BENEFIT_CODE.equals(sscsCaseData.getBenefitCode()) && sscsCaseData.isThereAJointParty()) { YesNo isJointPartyAddressSameAsAppellant = sscsCaseData.getJointParty().getJointPartyAddressSameAsAppellant(); if (Objects.isNull(isJointPartyAddressSameAsAppellant) || !isJointPartyAddressSameAsAppellant.toBoolean()) { validateAddressAndPostcode(response, sscsCaseData.getJointParty(), "joint party"); @@ -219,11 +227,11 @@ private void validatingPartyAddresses(SscsCaseData sscsCaseData, PreSubmitCallba } String isAppointee = sscsCaseData.getAppeal().getAppellant().getIsAppointee(); - if (isYes(isAppointee)) { + if (!IBCA_BENEFIT_CODE.equals(sscsCaseData.getBenefitCode()) && isYes(isAppointee)) { validateAddressAndPostcode(response, sscsCaseData.getAppeal().getAppellant().getAppointee(), "appointee"); } - if (sscsCaseData.isThereARepresentative()) { + if (!IBCA_BENEFIT_CODE.equals(sscsCaseData.getBenefitCode()) && sscsCaseData.isThereARepresentative()) { validateAddressAndPostcode(response, sscsCaseData.getAppeal().getRep(), "representative"); } } @@ -299,7 +307,8 @@ && isBenefitTypeValidForHearingTypeValidation(response.getData().getBenefitType( private boolean isBenefitTypeValidForHearingTypeValidation(Optional benefitType) { return benefitType.filter(benefit -> SscsType.SSCS2.equals(benefit.getSscsType()) - || SscsType.SSCS5.equals(benefit.getSscsType())) + || SscsType.SSCS5.equals(benefit.getSscsType()) + || SscsType.SSCS8.equals(benefit.getSscsType())) .isPresent(); } @@ -373,7 +382,7 @@ private void updateProcessingVenueIfRequired(CaseDetails caseDetai } } - private List validatePartyCaseData(Entity entity, String partyType, boolean isIba) { + private List validatePartyCaseData(Entity entity, String partyType, String benefitCode) { List listOfWarnings = new ArrayList<>(); if (entity != null) { @@ -389,10 +398,10 @@ private List validatePartyCaseData(Entity entity, String partyType, bool if (isBlank(entity.getIdentity().getDob())) { listOfWarnings.add(String.format(WARNING_MESSAGE, "Date of Birth", partyType)); } - if (isBlank(entity.getIdentity().getNino()) && !isIba) { + if (!IBCA_BENEFIT_CODE.equals(benefitCode) && isBlank(entity.getIdentity().getNino())) { listOfWarnings.add(String.format(WARNING_MESSAGE, "National Insurance Number", partyType)); } - if (isBlank(entity.getIdentity().getIbcaReference()) && isIba) { + if (IBCA_BENEFIT_CODE.equals(benefitCode) && isBlank(entity.getIdentity().getIbcaReference())) { listOfWarnings.add(String.format(WARNING_MESSAGE, "IBCA Reference Number", partyType)); } } @@ -403,10 +412,8 @@ private List validatePartyCaseData(Entity entity, String partyType, bool private void validateAppellantCaseData(SscsCaseData sscsCaseData, PreSubmitCallbackResponse response) { Appellant appellantInfo = sscsCaseData.getAppeal().getAppellant(); - String benefitCode = sscsCaseData.getAppeal().getBenefitType() != null - ? sscsCaseData.getAppeal().getBenefitType().getCode() : ""; - boolean isIba = benefitCode.equals("infectedBloodAppeal"); - List warnings = validatePartyCaseData(appellantInfo, "Appellant", isIba); + + List warnings = validatePartyCaseData(appellantInfo, "Appellant", sscsCaseData.getBenefitCode()); if (!warnings.isEmpty()) { response.addWarnings(warnings); @@ -418,7 +425,7 @@ private void validateAppointeeCaseData(SscsCaseData sscsCaseData, PreSubmitCallb String isAppointee = sscsCaseData.getAppeal().getAppellant().getIsAppointee(); if (isAppointee != null && isAppointee.equals("Yes") && appointeeInfo != null) { - List warnings = validatePartyCaseData(appointeeInfo, "Appointee", false); + List warnings = validatePartyCaseData(appointeeInfo, "Appointee", sscsCaseData.getBenefitCode()); if (!warnings.isEmpty()) { response.addWarnings(warnings); @@ -542,16 +549,19 @@ private Optional getOldBenefitCode(CaseDetails oldCaseDet } private static String resolvePostCode(SscsCaseData sscsCaseData) { - if (YES.getValue().equalsIgnoreCase(sscsCaseData.getAppeal().getAppellant().getIsAppointee())) { - return Optional.ofNullable(sscsCaseData.getAppeal().getAppellant().getAppointee()) - .map(Appointee::getAddress) - .map(Address::getPostcode) - .map(String::trim) - .filter(StringUtils::isNotEmpty) - .orElse(sscsCaseData.getAppeal().getAppellant().getAddress().getPostcode()); - } + if (NO.equals(sscsCaseData.getAppeal().getAppellant().getAddress().getInMainlandUk())) { + return sscsCaseData.getAppeal().getAppellant().getAddress().getPortOfEntry(); + } else { + if (YES.getValue().equalsIgnoreCase(sscsCaseData.getAppeal().getAppellant().getIsAppointee())) { + return Optional.ofNullable(sscsCaseData.getAppeal().getAppellant().getAppointee()) + .map(Appointee::getAddress) + .map(Address::getPostcode) + .map(String::trim) + .filter(StringUtils::isNotEmpty) + .orElse(sscsCaseData.getAppeal().getAppellant().getAddress().getPostcode()); + } - return sscsCaseData.getAppeal().getAppellant().getAddress().getPostcode(); + return sscsCaseData.getAppeal().getAppellant().getAddress().getPostcode(); + } } - } diff --git a/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToStartHandler.java b/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToStartHandler.java index c76832cdadc..0b5076a94fb 100644 --- a/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToStartHandler.java +++ b/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToStartHandler.java @@ -54,6 +54,18 @@ public PreSubmitCallbackResponse handle(CallbackType callbackType, appeal.getBenefitType().setDescriptionSelection(SscsUtil.getBenefitDescriptions(isInfectedBloodAppealEnabled)); + if (isNull(appeal.getAppellant())) { + Appellant appellant = Appellant.builder().build(); + appeal.setAppellant(appellant); + } + + if (isNull(appeal.getAppellant().getAddress())) { + Address address = Address.builder().build(); + appeal.getAppellant().setAddress(address); + } + + appeal.getAppellant().getAddress().setUkPortOfEntryList(SscsUtil.getPortsOfEntry()); + return new PreSubmitCallbackResponse<>(caseData); } } diff --git a/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandler.java b/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandler.java index 0ca26d4958b..ac51af3f88f 100644 --- a/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandler.java +++ b/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandler.java @@ -4,7 +4,10 @@ import static java.util.Objects.nonNull; import static uk.gov.hmcts.reform.sscs.ccd.domain.YesNo.NO; import static uk.gov.hmcts.reform.sscs.ccd.domain.YesNo.YES; +import static uk.gov.hmcts.reform.sscs.model.AppConstants.IBCA_BENEFIT_CODE; +import static uk.gov.hmcts.reform.sscs.util.SscsUtil.generateUniqueIbcaId; import static uk.gov.hmcts.reform.sscs.util.SscsUtil.handleBenefitType; +import static uk.gov.hmcts.reform.sscs.util.SscsUtil.handleIbcaCase; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -59,6 +62,9 @@ public PreSubmitCallbackResponse handle(CallbackType callbackType, caseData.setTribunalDirectPoToAttend(YesNo.NO); handleBenefitType(caseData); + if (IBCA_BENEFIT_CODE.equals(caseData.getBenefitCode())) { + handleIbcaCase(caseData); + } updateLanguage(caseData); if (isNull(caseData.getDwpIsOfficerAttending())) { @@ -99,17 +105,9 @@ private void updateLanguage(SscsCaseData caseData) { } private void createAppealPdf(SscsCaseData caseData) { - String fileName; - Benefit benefitType = caseData.getBenefitType().orElse(null); - boolean isIba = (benefitType != null && benefitType.equals(Benefit.INFECTED_BLOOD_APPEAL)); - if (isIba) { - String appellantLastName = caseData.getAppeal().getAppellant().getName().getLastName(); - String ibcaRef = caseData.getAppeal().getAppellant().getIdentity().getIbcaReference(); - fileName = String.format("%s_%s", appellantLastName, ibcaRef) + ".pdf"; - // TODO temp solution - need to update generateUniqueEmailId in sscs-pdf-email-common to work with ibcaRef - } else { - fileName = emailHelper.generateUniqueEmailId(caseData.getAppeal().getAppellant()) + ".pdf"; - } + String fileName = IBCA_BENEFIT_CODE.equals(caseData.getBenefitCode()) + ? generateUniqueIbcaId(caseData.getAppeal().getAppellant()) + ".pdf" + : emailHelper.generateUniqueEmailId(caseData.getAppeal().getAppellant()) + ".pdf"; boolean hasPdf = hasPdfDocument(caseData, fileName); diff --git a/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseMidEventHandler.java b/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseMidEventHandler.java new file mode 100644 index 00000000000..5d5050bc7a5 --- /dev/null +++ b/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseMidEventHandler.java @@ -0,0 +1,86 @@ +package uk.gov.hmcts.reform.sscs.ccd.presubmit.createcase; + +import static java.util.Objects.isNull; +import static org.apache.commons.lang3.ObjectUtils.isNotEmpty; +import static org.apache.commons.lang3.StringUtils.isBlank; +import static uk.gov.hmcts.reform.sscs.ccd.domain.YesNo.NO; +import static uk.gov.hmcts.reform.sscs.ccd.domain.YesNo.YES; +import static uk.gov.hmcts.reform.sscs.model.AppConstants.IBCA_BENEFIT_CODE; + +import java.util.Collection; +import java.util.HashSet; +import java.util.Objects; +import java.util.Set; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Component; +import uk.gov.hmcts.reform.sscs.ccd.callback.Callback; +import uk.gov.hmcts.reform.sscs.ccd.callback.CallbackType; +import uk.gov.hmcts.reform.sscs.ccd.callback.PreSubmitCallbackResponse; +import uk.gov.hmcts.reform.sscs.ccd.domain.Entity; +import uk.gov.hmcts.reform.sscs.ccd.domain.EventType; +import uk.gov.hmcts.reform.sscs.ccd.domain.SscsCaseData; +import uk.gov.hmcts.reform.sscs.ccd.presubmit.PreSubmitCallbackHandler; +import uk.gov.hmcts.reform.sscs.ccd.validation.address.PostcodeValidator; + +@Component +@Slf4j +public class CreateCaseMidEventHandler implements PreSubmitCallbackHandler { + + private final PostcodeValidator postcodeValidator = new PostcodeValidator(); + + @Override + public boolean canHandle(CallbackType callbackType, Callback callback) { + return callbackType.equals(CallbackType.MID_EVENT) + && ((callback.getEvent() == EventType.VALID_APPEAL_CREATED + || callback.getEvent() == EventType.NON_COMPLIANT + || callback.getEvent() == EventType.INCOMPLETE_APPLICATION_RECEIVED)) + && Objects.nonNull(callback.getCaseDetails()) + && Objects.nonNull(callback.getCaseDetails().getCaseData()); + } + + @Override + public PreSubmitCallbackResponse handle(CallbackType callbackType, Callback callback, String userAuthorisation) { + SscsCaseData caseData = callback.getCaseDetails().getCaseData(); + PreSubmitCallbackResponse errorResponse = new PreSubmitCallbackResponse<>(caseData); + + if (IBCA_BENEFIT_CODE.equals(caseData.getBenefitCode())) { + if (NO.equals(caseData.getAppeal().getAppellant().getAddress().getInMainlandUk())) { + final String selectedPortOfEntryLocationCode = caseData.getAppeal().getAppellant().getAddress().getUkPortOfEntryList().getValue().getCode(); + caseData.getAppeal().getAppellant().getAddress().setPortOfEntry(selectedPortOfEntryLocationCode); + } + + errorResponse.addErrors(validateAddress(caseData.getAppeal().getAppellant())); + + if (YES.equals(caseData.getHasRepresentative()) + && isNotEmpty(caseData.getAppeal().getRep().getAddress()) + && isNull(caseData.getAppeal().getRep().getAddress().getInMainlandUk())) { + errorResponse.addError("You must enter Living in the UK for the representative"); + } + } + + return errorResponse; + } + + private Collection validateAddress(Entity party) { + Set validationErrors = new HashSet<>(); + String addressLine1 = party.getAddress().getLine1(); + String postcode = party.getAddress().getPostcode(); + String country = party.getAddress().getCountry(); + + if (isBlank(addressLine1)) { + validationErrors.add("You must enter address line 1 for the appellant"); + } + + if (NO.equals(party.getAddress().getInMainlandUk())) { + if (isBlank(country)) { + validationErrors.add("You must enter a valid country for the appellant"); + } + } else { + if (isBlank(postcode) || !postcodeValidator.isValid(postcode, null)) { + validationErrors.add("You must enter a valid UK postcode for the appellant"); + } + } + + return validationErrors; + } +} diff --git a/src/main/java/uk/gov/hmcts/reform/sscs/model/AppConstants.java b/src/main/java/uk/gov/hmcts/reform/sscs/model/AppConstants.java index 3aee4c6da79..6398e73e210 100644 --- a/src/main/java/uk/gov/hmcts/reform/sscs/model/AppConstants.java +++ b/src/main/java/uk/gov/hmcts/reform/sscs/model/AppConstants.java @@ -38,6 +38,8 @@ public class AppConstants { public static final String DWP_DOCUMENT_EDITED_EVIDENCE_FILENAME_PREFIX = "FTA edited evidence received"; public static final String DATE_FORMAT_YYYYMMDD = "yyyy-MM-dd"; + public static final String IBCA_BENEFIT_CODE = "093"; + private AppConstants() { // } diff --git a/src/main/java/uk/gov/hmcts/reform/sscs/util/SscsUtil.java b/src/main/java/uk/gov/hmcts/reform/sscs/util/SscsUtil.java index f3154506680..bf583b59d3b 100644 --- a/src/main/java/uk/gov/hmcts/reform/sscs/util/SscsUtil.java +++ b/src/main/java/uk/gov/hmcts/reform/sscs/util/SscsUtil.java @@ -40,6 +40,8 @@ public class SscsUtil { public static final String INVALID_BENEFIT_ISSUE_CODE = "Incorrect benefit/issue code combination"; public static final String BENEFIT_CODE_NOT_IN_USE = "The benefit code selected is not in use"; + private static final String ID_FORMAT = "%s_%s"; + private SscsUtil() { // } @@ -373,6 +375,15 @@ && nonNull(hearingDetails.getVenue()) return false; } + public static DynamicList getPortsOfEntry() { + List items = Arrays.stream(UkPortOfEntry.values()) + .sorted(Comparator.comparing(UkPortOfEntry::getLabel)) + .map(ukPortOfEntry -> new DynamicListItem(ukPortOfEntry.getLocationCode(), ukPortOfEntry.getLabel())) + .toList(); + + return new DynamicList(null, items); + } + public static DynamicList getBenefitDescriptions(boolean isInfectedBloodAppealEnabled) { List items = Arrays.stream(Benefit.values()) .filter(benefit -> isInfectedBloodAppealEnabled || !benefit.getShortName().equals("infectedBloodAppeal")) @@ -419,6 +430,17 @@ public static void handleBenefitType(SscsCaseData caseData) { caseData.setBenefitCode(code); } + public static void handleIbcaCase(SscsCaseData caseData) { + caseData.getAppeal().getHearingOptions().setHearingRoute(LIST_ASSIST); + caseData.getAppeal().getMrnDetails().setDwpIssuingOffice("IBCA"); + } + + public static String generateUniqueIbcaId(Appellant appellant) { + String appellantLastName = appellant.getName().getLastName(); + String ibcaReference = appellant.getIdentity().getIbcaReference(); + return String.format(ID_FORMAT, appellantLastName, ibcaReference); + } + public static void updateHearingChannel(SscsCaseData caseData, HearingChannel hearingChannel) { String wantsToAttend = YES.toString(); HearingType hearingType = HearingType.ORAL; diff --git a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/AbstractedCaseUpdatedAboutToSubmitHandlerTest.java b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/AbstractedCaseUpdatedAboutToSubmitHandlerTest.java index 1c852468eef..33847f6affb 100644 --- a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/AbstractedCaseUpdatedAboutToSubmitHandlerTest.java +++ b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/AbstractedCaseUpdatedAboutToSubmitHandlerTest.java @@ -14,6 +14,7 @@ import static uk.gov.hmcts.reform.sscs.ccd.domain.YesNo.YES; import static uk.gov.hmcts.reform.sscs.idam.UserRole.CTSC_CLERK; import static uk.gov.hmcts.reform.sscs.idam.UserRole.SUPER_USER; +import static uk.gov.hmcts.reform.sscs.model.AppConstants.IBCA_BENEFIT_CODE; import java.util.ArrayList; import java.util.List; @@ -1854,4 +1855,16 @@ public void givenInterpreterLanguage_thenSetInterpreterLanguageFromLanguageList( assertEquals(language, item.getLabel()); } + + @Test + void shouldSuccessfullyUpdateCaseWithIbcaBenefitType() { + sscsCaseData.setBenefitCode(IBCA_BENEFIT_CODE); + sscsCaseData.getAppeal().getAppellant().getIdentity().setIbcaReference("IBCA12345"); + sscsCaseData.getAppeal().getAppellant().getAddress().setInMainlandUk(NO); + sscsCaseData.getAppeal().getAppellant().getAddress().setPortOfEntry("GB000434"); + + PreSubmitCallbackResponse response = handler.handle(ABOUT_TO_SUBMIT, callback, USER_AUTHORISATION); + + assertThat(response.getErrors().size(), is(0)); + } } diff --git a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToStartHandlerTest.java b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToStartHandlerTest.java index be27dc06d99..9d2848c0ee8 100644 --- a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToStartHandlerTest.java +++ b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToStartHandlerTest.java @@ -66,9 +66,15 @@ void whenEventStart_shouldReturnNonEmptyDescriptionSelection() { var result = handler.handle(ABOUT_TO_START, callback, USER_AUTHORISATION); Appeal appeal = result.getData().getAppeal(); BenefitType benefitType = appeal.getBenefitType(); + Appellant appellant = appeal.getAppellant(); + Address address = appellant.getAddress(); + DynamicList ukPortOfEntryList = address.getUkPortOfEntryList(); DynamicList descriptionSelection = benefitType.getDescriptionSelection(); assertThat(appeal).isNotNull(); assertThat(benefitType).isNotNull(); + assertThat(appellant).isNotNull(); + assertThat(address).isNotNull(); + assertThat(ukPortOfEntryList).isNotNull(); assertThat(descriptionSelection).isNotNull(); assertThat(descriptionSelection.getListItems()).isNotEmpty(); } @@ -83,5 +89,4 @@ void whenCorrectEventAndCallbackType_shouldNotHaveErrors() { var result = handler.handle(ABOUT_TO_START, callback, USER_AUTHORISATION); assertThat(result.getErrors()).isEmpty(); } - } diff --git a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandlerTest.java b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandlerTest.java index 1fd350a52d6..2a916d87dca 100644 --- a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandlerTest.java +++ b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandlerTest.java @@ -4,6 +4,8 @@ import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.*; import static uk.gov.hmcts.reform.sscs.ccd.callback.CallbackType.ABOUT_TO_SUBMIT; +import static uk.gov.hmcts.reform.sscs.ccd.util.CaseDataUtils.buildCaseData; +import static uk.gov.hmcts.reform.sscs.model.AppConstants.IBCA_BENEFIT_CODE; import java.util.ArrayList; import java.util.Collections; @@ -21,7 +23,6 @@ import uk.gov.hmcts.reform.sscs.ccd.callback.PreSubmitCallbackResponse; import uk.gov.hmcts.reform.sscs.ccd.domain.*; import uk.gov.hmcts.reform.sscs.ccd.exception.CcdException; -import uk.gov.hmcts.reform.sscs.ccd.util.CaseDataUtils; import uk.gov.hmcts.reform.sscs.helper.EmailHelper; import uk.gov.hmcts.reform.sscs.reference.data.model.Language; import uk.gov.hmcts.reform.sscs.reference.data.service.VerbalLanguagesService; @@ -223,6 +224,40 @@ void shouldCallPdfServiceWhenSscsDocumentIsPopulated() { verify(sscsPdfService).generatePdf(eq(caseDetails.getCaseData()), any(), any(), any()); } + @Test + void shouldSetPdfFileNameWithIbcaReferenceWhenBenefitIsIbca() { + SscsCaseData caseDataWithSscsDocument = buildCaseData("Test", "infectedBloodAppeal", "IBCA"); + caseDataWithSscsDocument.setCcdCaseId(CCD_CASE_ID.toString()); + caseDataWithSscsDocument.setBenefitCode(IBCA_BENEFIT_CODE); + caseDataWithSscsDocument.getAppeal().getAppellant().getIdentity().setIbcaReference("IBCA12345"); + caseDataWithSscsDocument.setSscsDocument(buildDocuments()); + + when(caseDetails.getCaseData()).thenReturn(caseDataWithSscsDocument); + + PreSubmitCallbackResponse response = createCaseAboutToSubmitHandler.handle(ABOUT_TO_SUBMIT, callback, USER_AUTHORISATION); + + assertEquals("Yes", response.getData().getEvidencePresent()); + + verify(sscsPdfService).generatePdf(eq(caseDetails.getCaseData()), any(), any(), any()); + } + + @Test + void shouldCallPdfServiceWhenSscsDocumentIsNullWhenBenefitCodeIsIbca() { + SscsCaseData caseDataWithNullSscsDocument = buildCaseData("Test", "infectedBloodAppeal", "IBCA"); + caseDataWithNullSscsDocument.setCcdCaseId(CCD_CASE_ID.toString()); + caseDataWithNullSscsDocument.setBenefitCode(IBCA_BENEFIT_CODE); + caseDataWithNullSscsDocument.getAppeal().getAppellant().getIdentity().setIbcaReference("IBCA12345"); + caseDataWithNullSscsDocument.setSscsDocument(null); + + when(caseDetails.getCaseData()).thenReturn(caseDataWithNullSscsDocument); + + PreSubmitCallbackResponse response = createCaseAboutToSubmitHandler.handle(ABOUT_TO_SUBMIT, callback, USER_AUTHORISATION); + + assertEquals("No", response.getData().getEvidencePresent()); + + verify(sscsPdfService).generatePdf(eq(caseDetails.getCaseData()), any(), any(), any()); + } + @Test void givenPdfAlreadyExists_shouldNotCallPdfService() throws CcdException { @@ -304,7 +339,7 @@ void whenBenefitAndIssueCodeIsNotNull_shouldSetCorrectCaseCode() { private SscsCaseData buildCaseDataWithoutPdf() { - SscsCaseData caseData = CaseDataUtils.buildCaseData(); + SscsCaseData caseData = buildCaseData(); caseData.setSscsDocument(Collections.emptyList()); caseData.setCcdCaseId(CCD_CASE_ID.toString()); return caseData; @@ -317,7 +352,7 @@ private SscsCaseData buildCaseDataWithPdf() { } private SscsCaseData buildCaseDataWithNullSscsDocument() { - SscsCaseData caseData = CaseDataUtils.buildCaseData(); + SscsCaseData caseData = buildCaseData(); caseData.setSscsDocument(null); caseData.setCcdCaseId(CCD_CASE_ID.toString()); return caseData; @@ -363,5 +398,4 @@ private List buildDocuments() { ); return list; } - } diff --git a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseMidEventHandlerTest.java b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseMidEventHandlerTest.java new file mode 100644 index 00000000000..00d93a03530 --- /dev/null +++ b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseMidEventHandlerTest.java @@ -0,0 +1,172 @@ +package uk.gov.hmcts.reform.sscs.ccd.presubmit.createcase; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.mockito.Mockito.when; +import static uk.gov.hmcts.reform.sscs.ccd.callback.CallbackType.MID_EVENT; +import static uk.gov.hmcts.reform.sscs.ccd.domain.YesNo.NO; +import static uk.gov.hmcts.reform.sscs.ccd.domain.YesNo.YES; +import static uk.gov.hmcts.reform.sscs.model.AppConstants.IBCA_BENEFIT_CODE; + +import java.util.ArrayList; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.CsvSource; +import org.mockito.InjectMocks; +import org.mockito.Mock; +import org.mockito.junit.jupiter.MockitoExtension; +import uk.gov.hmcts.reform.sscs.ccd.callback.Callback; +import uk.gov.hmcts.reform.sscs.ccd.callback.PreSubmitCallbackResponse; +import uk.gov.hmcts.reform.sscs.ccd.domain.Address; +import uk.gov.hmcts.reform.sscs.ccd.domain.Appeal; +import uk.gov.hmcts.reform.sscs.ccd.domain.Appellant; +import uk.gov.hmcts.reform.sscs.ccd.domain.CaseDetails; +import uk.gov.hmcts.reform.sscs.ccd.domain.DynamicList; +import uk.gov.hmcts.reform.sscs.ccd.domain.DynamicListItem; +import uk.gov.hmcts.reform.sscs.ccd.domain.EventType; +import uk.gov.hmcts.reform.sscs.ccd.domain.Representative; +import uk.gov.hmcts.reform.sscs.ccd.domain.SscsCaseData; + +@ExtendWith(MockitoExtension.class) +public class CreateCaseMidEventHandlerTest { + + private static final String USER_AUTHORISATION = "Bearer token"; + + @Mock + private Callback callback; + + @Mock + private CaseDetails caseDetails; + + @InjectMocks + private CreateCaseMidEventHandler midEventHandler; + + @ParameterizedTest + @CsvSource({ + "VALID_APPEAL_CREATED", + "NON_COMPLIANT", + "INCOMPLETE_APPLICATION_RECEIVED" + }) + void canHandleTest(EventType eventType) { + SscsCaseData caseData = SscsCaseData.builder().build(); + + when(callback.getEvent()).thenReturn(eventType); + when(callback.getCaseDetails()).thenReturn(caseDetails); + when(caseDetails.getCaseData()).thenReturn(caseData); + + assertTrue(midEventHandler.canHandle(MID_EVENT, callback)); + } + + @Test + void shouldReturnErrorsOnMidEventErrorsForUkIbcaCase() { + SscsCaseData caseData = SscsCaseData.builder() + .appeal(Appeal.builder() + + .appellant(Appellant.builder() + .address(Address.builder() + .inMainlandUk(YES) + .build()) + .build() + ) + .rep(Representative.builder() + .address(Address.builder().build()) + .build() + ) + .build() + ) + .hasRepresentative(YES) + .benefitCode(IBCA_BENEFIT_CODE) + .build(); + + when(callback.getCaseDetails()).thenReturn(caseDetails); + when(caseDetails.getCaseData()).thenReturn(caseData); + + PreSubmitCallbackResponse response = midEventHandler.handle(MID_EVENT, callback, USER_AUTHORISATION); + + assertThat(response.getErrors()).hasSize(3); + assertThat(response.getErrors()).contains("You must enter address line 1 for the appellant"); + assertThat(response.getErrors()).contains("You must enter a valid UK postcode for the appellant"); + assertThat(response.getErrors()).contains("You must enter Living in the UK for the representative"); + } + + @Test + void shouldReturnErrorsOnMidEventErrorsForOverseasIbcaCase() { + SscsCaseData caseData = SscsCaseData.builder() + .appeal(Appeal.builder() + .appellant(Appellant.builder() + .address(Address.builder() + .ukPortOfEntryList( + new DynamicList( + new DynamicListItem("GB000434", "Aberdeen"), + new ArrayList<>() + ) + ) + .inMainlandUk(NO) + .build()) + .build()) + .rep(Representative.builder() + .address(Address.builder().build()) + .build() + ) + .build() + ) + .hasRepresentative(YES) + .benefitCode(IBCA_BENEFIT_CODE) + .build(); + + when(callback.getCaseDetails()).thenReturn(caseDetails); + when(caseDetails.getCaseData()).thenReturn(caseData); + + PreSubmitCallbackResponse response = midEventHandler.handle(MID_EVENT, callback, USER_AUTHORISATION); + + assertThat(response.getErrors()).hasSize(3); + assertThat(response.getErrors()).contains("You must enter address line 1 for the appellant"); + assertThat(response.getErrors()).contains("You must enter a valid country for the appellant"); + assertThat(response.getErrors()).contains("You must enter Living in the UK for the representative"); + + } + + @Test + void shouldNotReturnErrorsOnMidEventForIbcaCase() { + SscsCaseData caseData = SscsCaseData.builder() + .appeal(Appeal.builder() + .appellant(Appellant.builder() + .address(Address.builder() + .line1("Test line 1") + .country("Panama") + .ukPortOfEntryList( + new DynamicList( + new DynamicListItem("GB000434", "Aberdeen"), + new ArrayList<>() + ) + ) + .inMainlandUk(NO) + .build()) + .build()) + .build() + ) + .benefitCode(IBCA_BENEFIT_CODE) + .build(); + + + when(callback.getCaseDetails()).thenReturn(caseDetails); + when(caseDetails.getCaseData()).thenReturn(caseData); + + PreSubmitCallbackResponse response = midEventHandler.handle(MID_EVENT, callback, USER_AUTHORISATION); + + assertThat(response.getErrors()).isEmpty(); + } + + @Test + void shouldNotReturnErrorsOnMidEventForNonIbcaCase() { + SscsCaseData caseData = SscsCaseData.builder().benefitCode("091").build(); + + when(callback.getCaseDetails()).thenReturn(caseDetails); + when(caseDetails.getCaseData()).thenReturn(caseData); + + PreSubmitCallbackResponse response = midEventHandler.handle(MID_EVENT, callback, USER_AUTHORISATION); + + assertThat(response.getErrors()).isEmpty(); + } +} diff --git a/src/test/java/uk/gov/hmcts/reform/sscs/util/SscsUtilTest.java b/src/test/java/uk/gov/hmcts/reform/sscs/util/SscsUtilTest.java index a00ef4fbeeb..31952743b13 100644 --- a/src/test/java/uk/gov/hmcts/reform/sscs/util/SscsUtilTest.java +++ b/src/test/java/uk/gov/hmcts/reform/sscs/util/SscsUtilTest.java @@ -9,6 +9,7 @@ import static uk.gov.hmcts.reform.sscs.ccd.callback.DocumentType.DRAFT_DECISION_NOTICE; import static uk.gov.hmcts.reform.sscs.ccd.callback.DocumentType.FINAL_DECISION_NOTICE; import static uk.gov.hmcts.reform.sscs.ccd.domain.EventType.READY_TO_LIST; +import static uk.gov.hmcts.reform.sscs.ccd.domain.HearingRoute.LIST_ASSIST; import static uk.gov.hmcts.reform.sscs.reference.data.model.HearingChannel.NOT_ATTENDING; import static uk.gov.hmcts.reform.sscs.reference.data.model.HearingChannel.PAPER; import static uk.gov.hmcts.reform.sscs.reference.data.model.HearingChannel.TELEPHONE; @@ -434,4 +435,46 @@ void givenAppellantInterpreterIsSetToYesAndLanguageValueIsNull_ThrowAnError() { assertThat(response.getData().getAppeal().getHearingOptions().getLanguages()).isNull(); assertEquals("Interpreter language must be selected if an interpreter is wanted.", response.getErrors().toArray()[0]); } + + @Test + void shouldReturnPortsOfEntry() { + final DynamicList portsOfEntry = getPortsOfEntry(); + + assertThat(portsOfEntry.getValue()).isNull(); + assertThat(portsOfEntry.getListItems()).hasSize(90); + } + + @Test + void shouldPopulateIbcaFieldsOnHandleIbcaCase() { + final SscsCaseData caseData = SscsCaseData.builder() + .appeal(Appeal.builder() + .mrnDetails(MrnDetails.builder().build()) + .hearingOptions(HearingOptions.builder().build()) + .build() + ) + .build(); + + handleIbcaCase(caseData); + + assertThat(caseData.getAppeal().getHearingOptions().getHearingRoute()).isEqualTo(LIST_ASSIST); + assertThat(caseData.getAppeal().getMrnDetails().getDwpIssuingOffice()).isEqualTo("IBCA"); + } + + @Test + void shouldGenerateUniqueIbcaId() { + final Appellant appellant = Appellant.builder() + .name(Name.builder() + .lastName("Test") + .build() + ) + .identity(Identity.builder() + .ibcaReference("IBCA12345") + .build() + ) + .build(); + + final String result = generateUniqueIbcaId(appellant); + + assertThat(result).isEqualTo("Test_IBCA12345"); + } } From 40642db7bce49545ee1f232df5573930998d85d4 Mon Sep 17 00:00:00 2001 From: nilay Date: Tue, 22 Oct 2024 10:37:15 +0100 Subject: [PATCH 28/34] test fixes --- .../AbstractedCaseUpdatedAboutToSubmitHandlerTest.java | 3 +-- .../createcase/CreateCaseAboutToSubmitHandlerTest.java | 6 ++++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/AbstractedCaseUpdatedAboutToSubmitHandlerTest.java b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/AbstractedCaseUpdatedAboutToSubmitHandlerTest.java index 33847f6affb..5d869276198 100644 --- a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/AbstractedCaseUpdatedAboutToSubmitHandlerTest.java +++ b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/caseupdated/AbstractedCaseUpdatedAboutToSubmitHandlerTest.java @@ -1046,8 +1046,7 @@ void givenBenefitTypeAndDwpIssuingOfficeEmpty_thenAddWarningMessages() { @Test void givenIbaCaseAndIbcaReferenceEmpty_thenAddWarningMessages() { - callback.getCaseDetails().getCaseData().getAppeal().setBenefitType(BenefitType.builder() - .code("infectedBloodAppeal").description("Infected Blood Compensation").build()); + callback.getCaseDetails().getCaseData().setBenefitCode(IBCA_BENEFIT_CODE); callback.getCaseDetails().getCaseData().getAppeal().setMrnDetails(MrnDetails.builder().build()); PreSubmitCallbackResponse response = handler.handle(ABOUT_TO_SUBMIT, callback, USER_AUTHORISATION); diff --git a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandlerTest.java b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandlerTest.java index 2a916d87dca..e2414fa9e18 100644 --- a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandlerTest.java +++ b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandlerTest.java @@ -134,8 +134,10 @@ void shouldCallPdfServiceWhenIbca() throws CcdException { when(caseDetails.getCaseData()).thenReturn(mockedCaseData); when(mockedCaseData.getCaseCreated()).thenReturn(""); when(mockedCaseData.getCcdCaseId()).thenReturn("1021"); - when(mockedCaseData.getBenefitType()).thenReturn(Optional.of(Benefit.INFECTED_BLOOD_APPEAL)); + when(mockedCaseData.getBenefitCode()).thenReturn(IBCA_BENEFIT_CODE); when(mockedCaseData.getAppeal()).thenReturn(mockedAppeal); + when(mockedAppeal.getHearingOptions()).thenReturn(HearingOptions.builder().build()); + when(mockedAppeal.getMrnDetails()).thenReturn(MrnDetails.builder().build()); when(mockedAppeal.getAppellant()).thenReturn(mockedAppellant); when(mockedAppellant.getName()).thenReturn(mockedName); when(mockedAppellant.getIdentity()).thenReturn(mockedIdentity); @@ -155,7 +157,7 @@ void isIbaFalseIfNullBenefitType() throws CcdException { when(caseDetails.getCaseData()).thenReturn(mockedCaseData); when(mockedCaseData.getCaseCreated()).thenReturn(""); when(mockedCaseData.getCcdCaseId()).thenReturn("1021"); - when(mockedCaseData.getBenefitType()).thenReturn(Optional.empty()); + when(mockedCaseData.getBenefitCode()).thenReturn(""); when(mockedCaseData.getAppeal()).thenReturn(mockedAppeal); when(mockedAppeal.getAppellant()).thenReturn(mockedAppellant); From f1f56444d8585560d3decb6ada9427cfc61d28c0 Mon Sep 17 00:00:00 2001 From: nilay Date: Tue, 22 Oct 2024 10:37:34 +0100 Subject: [PATCH 29/34] replacing SC case number with IBCA reference number for iba in summary tab --- definitions/benefit/sheets/CaseTypeTab/CaseTypeTab.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/definitions/benefit/sheets/CaseTypeTab/CaseTypeTab.json b/definitions/benefit/sheets/CaseTypeTab/CaseTypeTab.json index 1322065454e..6174aec19c1 100644 --- a/definitions/benefit/sheets/CaseTypeTab/CaseTypeTab.json +++ b/definitions/benefit/sheets/CaseTypeTab/CaseTypeTab.json @@ -16,7 +16,6 @@ {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryName", "TabFieldDisplayOrder": 10}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryAddress", "TabFieldDisplayOrder": 11}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryNino", "FieldShowCondition": "appeal.benefitType.code!=\"infectedBloodAppeal\"", "TabFieldDisplayOrder": 12}, - {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryIbcaReference", "FieldShowCondition": "appeal.benefitType.code=\"infectedBloodAppeal\"", "TabFieldDisplayOrder": 12}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryDOB", "TabFieldDisplayOrder": 13}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryRole", "FieldShowCondition": "appeal.appellant.role.name!=\"\"", "TabFieldDisplayOrder": 14}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryRoleDescription", "FieldShowCondition": "appeal.appellant.role.description!=\"\"", "TabFieldDisplayOrder": 15}, @@ -34,7 +33,8 @@ {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "confidentialityRequestOutcomeJointParty", "TabFieldDisplayOrder": 26}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryBenefitType", "TabFieldDisplayOrder": 27}, - {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryCaseReference", "TabFieldDisplayOrder": 28}, + {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryCaseReference", "FieldShowCondition": "appeal.benefitType.code!=\"infectedBloodAppeal\"", "TabFieldDisplayOrder": 28}, + {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryIbcaReference", "FieldShowCondition": "appeal.benefitType.code=\"infectedBloodAppeal\"", "TabFieldDisplayOrder": 28}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryState", "TabFieldDisplayOrder": 29}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryHearingType", "TabFieldDisplayOrder": 30}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryConfidentialityRequired", "FieldShowCondition": "appeal.appellant.confidentialityRequired!=\"\"", "TabFieldDisplayOrder": 31}, From b6cc47462d4569ba11dfbe7adb306c411f681647 Mon Sep 17 00:00:00 2001 From: nilay Date: Tue, 22 Oct 2024 10:50:22 +0100 Subject: [PATCH 30/34] checkstyle fix --- .../presubmit/createcase/CreateCaseAboutToSubmitHandlerTest.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandlerTest.java b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandlerTest.java index e2414fa9e18..33f8055b2ae 100644 --- a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandlerTest.java +++ b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseAboutToSubmitHandlerTest.java @@ -10,7 +10,6 @@ import java.util.ArrayList; import java.util.Collections; import java.util.List; -import java.util.Optional; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; From f949ddb02980ce6405d0b1c7a0554000e5ac64f3 Mon Sep 17 00:00:00 2001 From: nilay Date: Tue, 22 Oct 2024 12:21:09 +0100 Subject: [PATCH 31/34] disabling hearings-api for build --- charts/sscs-tribunals-api/values.preview.template.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/charts/sscs-tribunals-api/values.preview.template.yaml b/charts/sscs-tribunals-api/values.preview.template.yaml index 7a10163734a..b2fce748f9a 100644 --- a/charts/sscs-tribunals-api/values.preview.template.yaml +++ b/charts/sscs-tribunals-api/values.preview.template.yaml @@ -583,9 +583,9 @@ redis: #Turning either hearings api (with either listener on) or cft hearing service on requires #service bus to be turned on. sscs-hearings-api: - enabled: true + enabled: false java: - image: "hmctspublic.azurecr.io/sscs/hearings-api:pr-646" #Change to pr if required + image: "hmctspublic.azurecr.io/sscs/hearings-api:latest" #Change to pr if required releaseNameOverride: ${SERVICE_NAME}-sscs-hearings-api ingressHost: hearings-${SERVICE_FQDN} environment: From 1d9ed68bcbb9aae5a3f0fab3cc763998c090051f Mon Sep 17 00:00:00 2001 From: nilay Date: Tue, 22 Oct 2024 12:21:56 +0100 Subject: [PATCH 32/34] upgrading commons --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 18cb9be78a4..50109c35962 100644 --- a/build.gradle +++ b/build.gradle @@ -351,7 +351,7 @@ dependencies { implementation group: 'org.flywaydb', name: 'flyway-core', version: '9.22.3' implementation group: 'org.postgresql', name: 'postgresql', version: '42.6.0' - implementation group: 'com.github.hmcts', name: 'sscs-common', version: '5.12.8' + implementation group: 'com.github.hmcts', name: 'sscs-common', version: '5.12.9' implementation group: 'com.github.hmcts', name: 'sscs-pdf-email-common', version: '5.2.14' From 00abd4f4a84ecaf9a6816d5d87a8e7e071431bcc Mon Sep 17 00:00:00 2001 From: nilay Date: Tue, 22 Oct 2024 14:41:41 +0100 Subject: [PATCH 33/34] temp for build --- Jenkinsfile_CNP | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Jenkinsfile_CNP b/Jenkinsfile_CNP index 72b435153af..bea7e00048f 100644 --- a/Jenkinsfile_CNP +++ b/Jenkinsfile_CNP @@ -39,12 +39,12 @@ def secrets = [ secret('evidence-share-topic-shared-access-key', 'AMQP_PASSWORD'), // hearing-api - secret('idam-s2s-api', 'IDAM_S2S_URL'), - secret('caseworker-ref-api', 'CASEWORKER_REF_API_URL'), - secret('ccd-api', 'CORE_CASE_DATA_API_URL'), - secret('judicial-ref-api', 'JUDICIAL_REF_API_URL'), - secret('s2s-micro', 'IDAM_S2S_AUTH_MICROSERVICES'), - secret('common-ref-data-api', 'COMMON_REF_API_URL'), + // secret('idam-s2s-api', 'IDAM_S2S_URL'), + // secret('caseworker-ref-api', 'CASEWORKER_REF_API_URL'), + // secret('ccd-api', 'CORE_CASE_DATA_API_URL'), + // secret('judicial-ref-api', 'JUDICIAL_REF_API_URL'), + // secret('s2s-micro', 'IDAM_S2S_AUTH_MICROSERVICES'), + // secret('common-ref-data-api', 'COMMON_REF_API_URL'), // e2es secret('test-e2e-caseofficer-username', 'TEST_CASEOFFICER_USERNAME'), From 3bc882fcf0cb5fb6bdb7c629e9ebd6b7fad52b36 Mon Sep 17 00:00:00 2001 From: nilay Date: Tue, 22 Oct 2024 16:49:18 +0100 Subject: [PATCH 34/34] SSCSCI-1128 merge --- Jenkinsfile_CNP | 9 +- charts/sscs-tribunals-api/Chart.yaml | 6 +- .../values.preview.template.yaml | 60 +--- .../values.wa.preview.template.yaml | 43 --- charts/sscs-tribunals-api/values.yaml | 4 +- .../AuthorisationCaseField.json | 3 + .../sheets/CaseEvent/CaseEvent-nonprod.json | 3 +- .../CaseEventToComplexTypes.json | 3 +- .../CaseEventToFields/CaseEventToFields.json | 308 +++++++++--------- .../benefit/sheets/CaseField/CaseField.json | 1 + .../sheets/CaseTypeTab/CaseTypeTab.json | 12 +- .../createcase/CreateCaseMidEventHandler.java | 13 +- .../HmcHearingsEventTopicListener.java | 2 - .../TribunalsHearingsEventQueueListener.java | 2 - .../CreateCaseMidEventHandlerTest.java | 14 +- 15 files changed, 190 insertions(+), 293 deletions(-) diff --git a/Jenkinsfile_CNP b/Jenkinsfile_CNP index bea7e00048f..c7955a2f596 100644 --- a/Jenkinsfile_CNP +++ b/Jenkinsfile_CNP @@ -39,12 +39,7 @@ def secrets = [ secret('evidence-share-topic-shared-access-key', 'AMQP_PASSWORD'), // hearing-api - // secret('idam-s2s-api', 'IDAM_S2S_URL'), - // secret('caseworker-ref-api', 'CASEWORKER_REF_API_URL'), - // secret('ccd-api', 'CORE_CASE_DATA_API_URL'), - // secret('judicial-ref-api', 'JUDICIAL_REF_API_URL'), - // secret('s2s-micro', 'IDAM_S2S_AUTH_MICROSERVICES'), - // secret('common-ref-data-api', 'COMMON_REF_API_URL'), + secret('s2s-micro', 'IDAM_S2S_AUTH_MICROSERVICES'), // e2es secret('test-e2e-caseofficer-username', 'TEST_CASEOFFICER_USERNAME'), @@ -141,7 +136,7 @@ withPipeline(type, product, component) { } onPR() { setPreviewEnvVars(); - + echo "isHearingsPr " + isHearingsPr if (isHearingsPr) { env.CASE_TYPE = "Benefit-${CHANGE_ID}" setAatEnvVars(); diff --git a/charts/sscs-tribunals-api/Chart.yaml b/charts/sscs-tribunals-api/Chart.yaml index 9a22fe2db11..8616779d94e 100644 --- a/charts/sscs-tribunals-api/Chart.yaml +++ b/charts/sscs-tribunals-api/Chart.yaml @@ -1,7 +1,7 @@ apiVersion: v2 name: sscs-tribunals-api home: https://github.com/hmcts/sscs-tribunals-case-api -version: 0.0.163 +version: 0.0.164 description: SSCS Tribunals Case API maintainers: - name: HMCTS SSCS Team @@ -48,10 +48,6 @@ dependencies: version: 1.7.14 repository: 'https://hmctspublic.azurecr.io/helm/v1/repo/' condition: ccd-case-document-am-api.enabled - - name: sscs-hearings-api - version: 0.0.39 - repository: 'https://hmctspublic.azurecr.io/helm/v1/repo/' - condition: sscs-hearings-api.enabled - name: servicebus version: 1.0.7 repository: 'https://hmctspublic.azurecr.io/helm/v1/repo/' diff --git a/charts/sscs-tribunals-api/values.preview.template.yaml b/charts/sscs-tribunals-api/values.preview.template.yaml index b2fce748f9a..e9ab7cf5273 100644 --- a/charts/sscs-tribunals-api/values.preview.template.yaml +++ b/charts/sscs-tribunals-api/values.preview.template.yaml @@ -47,6 +47,7 @@ java: BYPASS_HEARING_API_SERVICE: true HANDLE_CCD_CALLBACKMAP_V2: true TESTING_SUPPORT_ENABLED: true + EXUI_API_URL: "https://${SERVICE_NAME}-xui" TOPIC_NAME: "${SERVICE_NAME}-servicebus-main-topic" SUBSCRIPTION_NAME: "${SERVICE_NAME}-servicebus-main-topic" AMQP_HOST: "sscs-sb-preview.servicebus.windows.net" @@ -580,65 +581,6 @@ redis: persistence: enabled: false -#Turning either hearings api (with either listener on) or cft hearing service on requires -#service bus to be turned on. -sscs-hearings-api: - enabled: false - java: - image: "hmctspublic.azurecr.io/sscs/hearings-api:latest" #Change to pr if required - releaseNameOverride: ${SERVICE_NAME}-sscs-hearings-api - ingressHost: hearings-${SERVICE_FQDN} - environment: - ROOT_LOGGING_LEVEL: INFO - SSCS_LOG_LEVEL: DEBUG #Switch to debug to see requests being sent. - SERVICE_BUS_LOG_LEVEL: ERROR - LOG_OUTPUT: single - CREATE_CCD_ENDPOINT: false - IDAM_S2S_URL: "http://rpe-service-auth-provider-aat.service.core-compute-aat.internal" - CASEWORKER_REF_API_URL: "http://rd-caseworker-ref-api-aat.service.core-compute-aat.internal" - IDAM_API_URL: "https://idam-api.aat.platform.hmcts.net" - CORE_CASE_DATA_API_URL: ${CORE_CASE_DATA_API_URL} - COMMON_REF_API_URL: "http://rd-commondata-api-aat.service.core-compute-aat.internal" - JUDICIAL_REF_API_URL: "http://rd-judicial-api-aat.service.core-compute-aat.internal" - EXUI_API_URL: "https://${SERVICE_NAME}-xui" - HMC_API_URL: "http://hmc-cft-hearing-service-aat.service.core-compute-aat.internal" - #Messaging - HMC_HEARINGS_LISTENING_ENABLED: true - HMC_HEARINGS_TOPIC_NAME: "hmc-to-cft-aat" - HMC_HEARINGS_TOPIC_SUBSCRIPTION_NAME: "hmc-to-sscs-subscription-pr-4064" - TRIBUNALS_HEARINGS_LISTENING_ENABLED: true - TRIBUNALS_EVENT_QUEUE_NAME: ${SERVICE_NAME}-servicebus-tribunals-to-hearing-api - TRIBUNALS_EVENT_QUEUE_POLICY_NAME: RootManageSharedAccessKey - TRIBUNALS_EVENT_QUEUE_NAMESPACE: sscs-sb-preview - HMC_HEARINGS_TOPIC_NAMESPACE: hmc-servicebus-aat - HMC_DEPLOYMENT_ID: deployment-${SERVICE_NAME} - HMC_DEPLOYMENT_FILTER_ENABLED: true - CORE_CASE_DATA_CASE_TYPE_ID: Benefit-${CHANGE_ID} - HEARINGS_CASE_UPDATE_V2_ENABLED: true - ADJOURNMENT_ENABLED: true - BYPASS_HEARING_API_SERVICE: true - secrets: - TRIBUNALS_EVENT_QUEUE_ACCESS_KEY: - secretRef: sscs-sb-preview - key: primaryKey - keyVaults: - sscs: - secrets: - - name: hmc-servicebus-shared-access-key-tf - alias: HMC_HEARINGS_TOPIC_ACCESS_KEY - - name: sscs-hearing-manager-username - alias: IDAM_SSCS_SYSTEMUPDATE_USER - - name: sscs-hearing-manager-pass - alias: IDAM_SSCS_SYSTEMUPDATE_PASSWORD - - name: app-insights-connection-string - alias: app-insights-connection-string - - name: sscs-s2s-secret - alias: IDAM_S2S_AUTH_TOTP_SECRET - - name: idam-oauth-user - alias: IDAM_OAUTH2_CLIENT_ID - - name: idam-sscs-oauth2-client-secret - alias: IDAM_OAUTH2_CLIENT_SECRET - #Enable for queues/topics #If you need a subscription for a topic, topic name should be not longer than 10 characters diff --git a/charts/sscs-tribunals-api/values.wa.preview.template.yaml b/charts/sscs-tribunals-api/values.wa.preview.template.yaml index 2d017a12cc4..106dfbb1fd7 100644 --- a/charts/sscs-tribunals-api/values.wa.preview.template.yaml +++ b/charts/sscs-tribunals-api/values.wa.preview.template.yaml @@ -746,49 +746,6 @@ redis: persistence: enabled: false -#Turning either hearings api (with either listener on) or cft hearing service on requires -#service bus to be turned on. -sscs-hearings-api: - enabled: false - java: - image: "hmctspublic.azurecr.io/sscs/hearings-api:latest" #Change to pr if required - releaseNameOverride: ${SERVICE_NAME}-sscs-hearings-api - environment: - ROOT_LOGGING_LEVEL: INFO - SSCS_LOG_LEVEL: INFO #Switch to debug to see requests being sent. - SERVICE_BUS_LOG_LEVEL: ERROR - LOG_OUTPUT: single - CREATE_CCD_ENDPOINT: false - IDAM_S2S_URL: "http://rpe-service-auth-provider-aat.service.core-compute-aat.internal" - CASEWORKER_REF_API_URL: "http://rd-caseworker-ref-api-aat.service.core-compute-aat.internal" - IDAM_API_URL: "https://idam-api.aat.platform.hmcts.net" - CORE_CASE_DATA_API_URL: "http://${SERVICE_NAME}-ccd-data-store-api" - COMMON_REF_API_URL: "http://rd-commondata-api-aat.service.core-compute-aat.internal" - JUDICIAL_REF_API_URL: "http://rd-judicial-api-aat.service.core-compute-aat.internal" - EXUI_API_URL: "https://${SERVICE_NAME}-xui" - HMC_API_URL: "http://hmc-cft-hearing-service-{{ .Values.global.environment }}.service.core-compute-{{ .Values.global.environment }}.internal" - #Messaging - HMC_HEARING_LISTENING_ENABLED: false - HEARINGS_TOPIC_NAME: "hmc-to-cft" - HEARINGS_TOPIC_SUBSCRIPTION_NAME: "tribunals-to-hearing-api" - HMC_HEARINGS_TOPIC_POLICY_NAME: RootManageSharedAccessKey - TRIBUNALS_HEARINGS_LISTENING_ENABLED: false - TRIBUNALS_EVENT_QUEUE_NAME: "tribunals-to-hearing-api" - TRIBUNALS_EVENT_QUEUE_POLICY_NAME: RootManageSharedAccessKey - secrets: - TRIBUNALS_EVENT_QUEUE_NAMESPACE: - secretRef: servicebus-secret-queue-{{ .Release.Name }}-servicebus-tribunals-to-hearing-api - key: namespaceName - TRIBUNALS_EVENT_QUEUE_ACCESS_KEY: - secretRef: servicebus-secret-queue-{{ .Release.Name }}-servicebus-tribunals-to-hearing-api - key: primaryKey - HMC_HEARINGS_TOPIC_NAMESPACE: - secretRef: servicebus-secret-topic-{{ .Release.Name }}-servicebus-hmc-to-cft - key: namespaceName - HMC_HEARINGS_TOPIC_ACCESS_KEY: - secretRef: servicebus-secret-topic-{{ .Release.Name }}-servicebus-hmc-to-cft - key: primaryKey - hmc-cft-hearing-service: enabled: false java: diff --git a/charts/sscs-tribunals-api/values.yaml b/charts/sscs-tribunals-api/values.yaml index d3b418799cd..ca580bfe064 100644 --- a/charts/sscs-tribunals-api/values.yaml +++ b/charts/sscs-tribunals-api/values.yaml @@ -157,8 +157,8 @@ java: &javavalues #This is an anchor to reuse settings in Job mode. HMC_API_URL: "http://hmc-cft-hearing-service-{{ .Values.global.environment }}.service.core-compute-{{ .Values.global.environment }}.internal" SSCS_SERVICE_CODE: BBA3 HMC_DEPLOYMENT_FILTER_ENABLED: false - HEARINGS_CASE_UPDATE_V2_ENABLED: false - BYPASS_HEARING_API_SERVICE: false + HEARINGS_CASE_UPDATE_V2_ENABLED: true + BYPASS_HEARING_API_SERVICE: true postgresql: enabled: false diff --git a/definitions/benefit/sheets/AuthorisationCaseField/AuthorisationCaseField.json b/definitions/benefit/sheets/AuthorisationCaseField/AuthorisationCaseField.json index 2e4c194a505..88a1967d547 100644 --- a/definitions/benefit/sheets/AuthorisationCaseField/AuthorisationCaseField.json +++ b/definitions/benefit/sheets/AuthorisationCaseField/AuthorisationCaseField.json @@ -795,6 +795,7 @@ {"LiveFrom": "01/01/2018", "CaseTypeID": "Benefit", "CaseFieldID": "summaryRoleDescription", "AccessProfile": "caseworker-sscs", "CRUD": "CRUD"}, {"LiveFrom": "01/01/2018", "CaseTypeID": "Benefit", "CaseFieldID": "summaryDOB", "AccessProfile": "caseworker-sscs", "CRUD": "CRUD"}, {"LiveFrom": "01/01/2018", "CaseTypeID": "Benefit", "CaseFieldID": "summaryBenefitType", "AccessProfile": "caseworker-sscs", "CRUD": "CRUD"}, + {"LiveFrom": "01/01/2018", "CaseTypeID": "Benefit", "CaseFieldID": "summaryAppealType", "AccessProfile": "caseworker-sscs", "CRUD": "CRUD"}, {"LiveFrom": "01/01/2018", "CaseTypeID": "Benefit", "CaseFieldID": "summaryCaseReference", "AccessProfile": "caseworker-sscs", "CRUD": "CRUD"}, {"LiveFrom": "01/01/2018", "CaseTypeID": "Benefit", "CaseFieldID": "summaryHearingType", "AccessProfile": "caseworker-sscs", "CRUD": "CRUD"}, {"LiveFrom": "01/01/2018", "CaseTypeID": "Benefit", "CaseFieldID": "summaryAreAppointee", "AccessProfile": "caseworker-sscs", "CRUD": "CRUD"}, @@ -1619,5 +1620,7 @@ {"LiveFrom": "07/08/2024", "CaseTypeID": "Benefit", "CaseFieldID": "ignoreCallbackWarnings", "AccessProfile": "caseworker-sscs", "CRUD": "CRUD"}, {"LiveFrom": "07/08/2024", "CaseTypeID": "Benefit", "CaseFieldID": "ignoreCallbackWarnings", "AccessProfile": "caseworker-sscs-clerk", "CRUD": "CRUD"}, {"LiveFrom": "07/08/2024", "CaseTypeID": "Benefit", "CaseFieldID": "ignoreCallbackWarnings", "AccessProfile": "caseworker-sscs-registrar", "CRUD": "CRUD"}, + {"LiveFrom": "07/08/2024", "CaseTypeID": "Benefit", "CaseFieldID": "summaryIbcaReference", "AccessProfile": "caseworker-sscs", "CRUD": "CRUD"}, + {"LiveFrom": "07/08/2024", "CaseTypeID": "Benefit", "CaseFieldID": "summaryIbcaReference", "AccessProfile": "caseworker-sscs-clerk", "CRUD": "CRUD"}, {"LiveFrom": "07/08/2024", "CaseTypeID": "Benefit", "CaseFieldID": "summaryIbcaReference", "AccessProfile": "caseworker-sscs-ibcaresponsewriter", "CRUD": "CRUD"} ] diff --git a/definitions/benefit/sheets/CaseEvent/CaseEvent-nonprod.json b/definitions/benefit/sheets/CaseEvent/CaseEvent-nonprod.json index 510a920d378..2a3da6871da 100644 --- a/definitions/benefit/sheets/CaseEvent/CaseEvent-nonprod.json +++ b/definitions/benefit/sheets/CaseEvent/CaseEvent-nonprod.json @@ -8,6 +8,7 @@ "DisplayOrder": 9990, "PreConditionState(s)": "*", "PostConditionState": "*", - "SecurityClassification": "Public" + "SecurityClassification": "Public", + "EventEnablingCondition": "appeal.benefitType.code!=\"infectedBloodAppeal\"" } ] diff --git a/definitions/benefit/sheets/CaseEventToComplexTypes/CaseEventToComplexTypes.json b/definitions/benefit/sheets/CaseEventToComplexTypes/CaseEventToComplexTypes.json index 676e87615cd..a69681fb05b 100644 --- a/definitions/benefit/sheets/CaseEventToComplexTypes/CaseEventToComplexTypes.json +++ b/definitions/benefit/sheets/CaseEventToComplexTypes/CaseEventToComplexTypes.json @@ -1430,7 +1430,6 @@ "ListElementCode": "appellant.role", "ID": "appealAppellantRole", "DisplayContext": "OPTIONAL", - "FieldShowCondition": "appeal.benefitType.code = \"childSupport\"", "LiveFrom": "19/11/2019", "FieldDisplayOrder": 67, "PageID": "1.0" @@ -1457,7 +1456,7 @@ "PageID": "1.0" }, { - "CaseEventID": "incompleteApplicationReceived", + "CaseEventID": "caseUpdated", "CaseFieldID": "appeal", "ListElementCode": "appellant.ibcRole", "DisplayContext": "OPTIONAL", diff --git a/definitions/benefit/sheets/CaseEventToFields/CaseEventToFields.json b/definitions/benefit/sheets/CaseEventToFields/CaseEventToFields.json index 5fe83b38e9a..c0f72e8173a 100644 --- a/definitions/benefit/sheets/CaseEventToFields/CaseEventToFields.json +++ b/definitions/benefit/sheets/CaseEventToFields/CaseEventToFields.json @@ -337,7 +337,8 @@ "DisplayContext": "OPTIONAL", "PageDisplayOrder": 1, "PageFieldDisplayOrder": 15, - "PageID": "1.0" + "PageID": "1.0", + "CallBackURLMidEvent": "${CCD_DEF_TRIBUNALS_API_URL}/ccdMidEvent?pageId=caseUpdated1.0" }, { "LiveFrom": "05/07/2022", @@ -349,6 +350,158 @@ "PageFieldDisplayOrder": 16, "PageID": "1.0" }, + { + "CaseEventID": "caseUpdated", + "CaseFieldID": "caseReference", + "CaseTypeID": "Benefit", + "DisplayContext": "OPTIONAL", + "LiveFrom": "01/01/2018", + "PageDisplayOrder": 1, + "PageFieldDisplayOrder": 1, + "PageID": "1.0", + "PageLabel": "Update case data" + }, + { + "CaseEventID": "caseUpdated", + "CaseFieldID": "caseCreated", + "CaseTypeID": "Benefit", + "DisplayContext": "OPTIONAL", + "LiveFrom": "01/01/2018", + "PageDisplayOrder": 1, + "PageFieldDisplayOrder": 2, + "PageID": "1.0", + "PageLabel": "Update case data" + }, + { + "CaseEventID": "caseUpdated", + "CaseFieldID": "region", + "CaseTypeID": "Benefit", + "DisplayContext": "OPTIONAL", + "LiveFrom": "01/01/2018", + "PageDisplayOrder": 1, + "PageFieldDisplayOrder": 3, + "PageID": "1.0", + "PageLabel": "Update case data" + }, + { + "CaseEventID": "caseUpdated", + "CaseFieldID": "appeal", + "CaseTypeID": "Benefit", + "DisplayContext": "COMPLEX", + "LiveFrom": "01/01/2018", + "PageDisplayOrder": 1, + "PageFieldDisplayOrder": 4, + "PageID": "1.0", + "PageLabel": "Update case data" + }, + { + "CaseEventID": "caseUpdated", + "CaseFieldID": "regionalProcessingCenter", + "CaseTypeID": "Benefit", + "DisplayContext": "OPTIONAL", + "LiveFrom": "01/01/2018", + "PageDisplayOrder": 1, + "PageFieldDisplayOrder": 5, + "PageID": "1.0", + "PageLabel": "Update case data" + }, + { + "CaseEventID": "caseUpdated", + "CaseFieldID": "benefitCode", + "CaseTypeID": "Benefit", + "DisplayContext": "MANDATORY", + "LiveFrom": "01/01/2018", + "PageDisplayOrder": 1, + "PageFieldDisplayOrder": 6, + "FieldShowCondition": "appeal =\"DO_NOT_SHOW\"", + "PageID": "1.0" + }, + { + "CaseEventID": "caseUpdated", + "CaseFieldID": "issueCode", + "CaseTypeID": "Benefit", + "DisplayContext": "MANDATORY", + "LiveFrom": "01/01/2018", + "PageDisplayOrder": 1, + "PageFieldDisplayOrder": 7, + "PageID": "1.0" + }, + { + "CaseEventID": "caseUpdated", + "CaseFieldID": "childMaintenanceNumber", + "CaseTypeID": "Benefit", + "DisplayContext": "MANDATORY", + "FieldShowCondition": "appeal.benefitType.code = \"childSupport\"", + "LiveFrom": "01/01/2018", + "PageDisplayOrder": 1, + "PageFieldDisplayOrder": 8, + "PageID": "1.0" + }, + { + "CaseEventID": "caseUpdated", + "CaseFieldID": "jointParty", + "CaseTypeID": "Benefit", + "DisplayContext": "OPTIONAL", + "LiveFrom": "01/01/2018", + "PageDisplayOrder": 1, + "PageFieldDisplayOrder": 9, + "PageID": "1.0" + }, + { + "CaseEventID": "caseUpdated", + "CaseFieldID": "jointPartyName", + "CaseTypeID": "Benefit", + "DisplayContext": "OPTIONAL", + "FieldShowCondition": "jointParty=\"Yes\"", + "LiveFrom": "01/01/2018", + "PageDisplayOrder": 1, + "PageFieldDisplayOrder": 10, + "PageID": "1.0" + }, + { + "CaseEventID": "caseUpdated", + "CaseFieldID": "jointPartyAddressSameAsAppellant", + "CaseTypeID": "Benefit", + "DisplayContext": "OPTIONAL", + "FieldShowCondition": "jointParty=\"Yes\"", + "LiveFrom": "01/01/2018", + "PageDisplayOrder": 1, + "PageFieldDisplayOrder": 11, + "PageID": "1.0" + }, + { + "CaseEventID": "caseUpdated", + "CaseFieldID": "jointPartyAddress", + "CaseTypeID": "Benefit", + "DisplayContext": "COMPLEX", + "FieldShowCondition": "jointParty=\"Yes\"", + "LiveFrom": "01/01/2018", + "PageDisplayOrder": 1, + "PageFieldDisplayOrder": 12, + "PageID": "1.0" + }, + { + "CaseEventID": "caseUpdated", + "CaseFieldID": "jointPartyIdentity", + "CaseTypeID": "Benefit", + "DisplayContext": "OPTIONAL", + "FieldShowCondition": "jointParty=\"Yes\"", + "LiveFrom": "01/01/2018", + "PageDisplayOrder": 1, + "PageFieldDisplayOrder": 13, + "PageID": "1.0" + }, + { + "CaseEventID": "caseUpdated", + "CaseFieldID": "jointPartyContact", + "CaseTypeID": "Benefit", + "DisplayContext": "COMPLEX", + "FieldShowCondition": "jointParty=\"Yes\"", + "LiveFrom": "01/01/2018", + "PageDisplayOrder": 1, + "PageFieldDisplayOrder": 14, + "PageID": "1.0" + }, { "CaseEventID": "adjournCase", "CaseFieldID": "hearingRoute", @@ -576,159 +729,6 @@ "PageID": "1.0", "PageLabel": "Correspondence" }, - { - "CaseEventID": "caseUpdated", - "CaseFieldID": "caseReference", - "CaseTypeID": "Benefit", - "DisplayContext": "OPTIONAL", - "FieldShowCondition": "appeal.benefitType.descriptionSelection!=\"093\"", - "LiveFrom": "01/01/2018", - "PageDisplayOrder": 1, - "PageFieldDisplayOrder": 1, - "PageID": "1.0", - "PageLabel": "Update case data" - }, - { - "CaseEventID": "caseUpdated", - "CaseFieldID": "caseCreated", - "CaseTypeID": "Benefit", - "DisplayContext": "OPTIONAL", - "LiveFrom": "01/01/2018", - "PageDisplayOrder": 1, - "PageFieldDisplayOrder": 2, - "PageID": "1.0", - "PageLabel": "Update case data" - }, - { - "CaseEventID": "caseUpdated", - "CaseFieldID": "region", - "CaseTypeID": "Benefit", - "DisplayContext": "OPTIONAL", - "LiveFrom": "01/01/2018", - "PageDisplayOrder": 1, - "PageFieldDisplayOrder": 3, - "PageID": "1.0", - "PageLabel": "Update case data" - }, - { - "CaseEventID": "caseUpdated", - "CaseFieldID": "appeal", - "CaseTypeID": "Benefit", - "DisplayContext": "COMPLEX", - "LiveFrom": "01/01/2018", - "PageDisplayOrder": 1, - "PageFieldDisplayOrder": 4, - "PageID": "1.0", - "PageLabel": "Update case data" - }, - { - "CaseEventID": "caseUpdated", - "CaseFieldID": "regionalProcessingCenter", - "CaseTypeID": "Benefit", - "DisplayContext": "OPTIONAL", - "LiveFrom": "01/01/2018", - "PageDisplayOrder": 1, - "PageFieldDisplayOrder": 5, - "PageID": "1.0", - "PageLabel": "Update case data" - }, - { - "CaseEventID": "caseUpdated", - "CaseFieldID": "benefitCode", - "CaseTypeID": "Benefit", - "DisplayContext": "MANDATORY", - "LiveFrom": "01/01/2018", - "PageDisplayOrder": 1, - "PageFieldDisplayOrder": 6, - "FieldShowCondition": "appeal =\"DO_NOT_SHOW\"", - "PageID": "1.0" - }, - { - "CaseEventID": "caseUpdated", - "CaseFieldID": "issueCode", - "CaseTypeID": "Benefit", - "DisplayContext": "MANDATORY", - "LiveFrom": "01/01/2018", - "PageDisplayOrder": 1, - "PageFieldDisplayOrder": 7, - "PageID": "1.0" - }, - { - "CaseEventID": "caseUpdated", - "CaseFieldID": "childMaintenanceNumber", - "CaseTypeID": "Benefit", - "DisplayContext": "MANDATORY", - "FieldShowCondition": "appeal.benefitType.code = \"childSupport\"", - "LiveFrom": "01/01/2018", - "PageDisplayOrder": 1, - "PageFieldDisplayOrder": 8, - "PageID": "1.0" - }, - { - "CaseEventID": "caseUpdated", - "CaseFieldID": "jointParty", - "CaseTypeID": "Benefit", - "DisplayContext": "OPTIONAL", - "LiveFrom": "01/01/2018", - "PageDisplayOrder": 1, - "PageFieldDisplayOrder": 9, - "PageID": "1.0" - }, - { - "CaseEventID": "caseUpdated", - "CaseFieldID": "jointPartyName", - "CaseTypeID": "Benefit", - "DisplayContext": "OPTIONAL", - "FieldShowCondition": "jointParty=\"Yes\"", - "LiveFrom": "01/01/2018", - "PageDisplayOrder": 1, - "PageFieldDisplayOrder": 10, - "PageID": "1.0" - }, - { - "CaseEventID": "caseUpdated", - "CaseFieldID": "jointPartyAddressSameAsAppellant", - "CaseTypeID": "Benefit", - "DisplayContext": "OPTIONAL", - "FieldShowCondition": "jointParty=\"Yes\"", - "LiveFrom": "01/01/2018", - "PageDisplayOrder": 1, - "PageFieldDisplayOrder": 11, - "PageID": "1.0" - }, - { - "CaseEventID": "caseUpdated", - "CaseFieldID": "jointPartyAddress", - "CaseTypeID": "Benefit", - "DisplayContext": "COMPLEX", - "FieldShowCondition": "jointParty=\"Yes\"", - "LiveFrom": "01/01/2018", - "PageDisplayOrder": 1, - "PageFieldDisplayOrder": 12, - "PageID": "1.0" - }, - { - "CaseEventID": "caseUpdated", - "CaseFieldID": "jointPartyIdentity", - "CaseTypeID": "Benefit", - "DisplayContext": "OPTIONAL", - "FieldShowCondition": "jointParty=\"Yes\"", - "LiveFrom": "01/01/2018", - "PageDisplayOrder": 1, - "PageFieldDisplayOrder": 13, - "PageID": "1.0" - }, - { - "CaseEventID": "caseUpdated", - "CaseFieldID": "jointPartyContact", - "CaseTypeID": "Benefit", - "DisplayContext": "COMPLEX", - "FieldShowCondition": "jointParty=\"Yes\"", - "LiveFrom": "01/01/2018", - "PageDisplayOrder": 1, - "PageFieldDisplayOrder": 14, - "PageID": "1.0" - }, { "CaseEventID": "corDecision", "CaseFieldID": "decisionNotes", diff --git a/definitions/benefit/sheets/CaseField/CaseField.json b/definitions/benefit/sheets/CaseField/CaseField.json index a5809d686b6..7c73010464f 100644 --- a/definitions/benefit/sheets/CaseField/CaseField.json +++ b/definitions/benefit/sheets/CaseField/CaseField.json @@ -130,6 +130,7 @@ {"LiveFrom": "20/08/2019", "CaseTypeID": "Benefit", "ID": "summaryRoleDescription", "Label": "**Role Description** \r\n${appeal.appellant.role.description}", "FieldType": "Label", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "20/08/2019", "CaseTypeID": "Benefit", "ID": "summaryDOB", "Label": "**Date of birth** \r\n${appeal.appellant.identity.dob}", "FieldType": "Label", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "20/08/2019", "CaseTypeID": "Benefit", "ID": "summaryBenefitType", "Label": "**Benefit type** \r\n${appeal.benefitType.description}", "FieldType": "Label", "SecurityClassification": "PUBLIC"}, + {"LiveFrom": "20/08/2019", "CaseTypeID": "Benefit", "ID": "summaryAppealType", "Label": "**Appeal type** \r\n${appeal.benefitType.description}", "FieldType": "Label", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "20/08/2019", "CaseTypeID": "Benefit", "ID": "summaryCaseReference", "Label": "**SC number** \r\n${caseReference}", "FieldType": "Label", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "20/08/2019", "CaseTypeID": "Benefit", "ID": "summaryState", "Label": "**Appeal status** \r\n${[STATE]}", "FieldType": "Label", "SecurityClassification": "PUBLIC"}, {"LiveFrom": "20/08/2019", "CaseTypeID": "Benefit", "ID": "summaryHearingType", "Label": "**Hearing type** \r\n${appeal.hearingType}", "FieldType": "Label", "SecurityClassification": "PUBLIC"}, diff --git a/definitions/benefit/sheets/CaseTypeTab/CaseTypeTab.json b/definitions/benefit/sheets/CaseTypeTab/CaseTypeTab.json index 6174aec19c1..10b7ec8508b 100644 --- a/definitions/benefit/sheets/CaseTypeTab/CaseTypeTab.json +++ b/definitions/benefit/sheets/CaseTypeTab/CaseTypeTab.json @@ -15,7 +15,8 @@ {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "urgentCase", "TabFieldDisplayOrder": 9}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryName", "TabFieldDisplayOrder": 10}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryAddress", "TabFieldDisplayOrder": 11}, - {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryNino", "FieldShowCondition": "appeal.benefitType.code!=\"infectedBloodAppeal\"", "TabFieldDisplayOrder": 12}, + {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryNino", "TabFieldDisplayOrder": 12, "FieldShowCondition": "appeal.benefitType.code!=\"infectedBloodAppeal\""}, + {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryIbcaReference", "TabFieldDisplayOrder": 12, "FieldShowCondition": "appeal.benefitType.code=\"infectedBloodAppeal\""}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryDOB", "TabFieldDisplayOrder": 13}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryRole", "FieldShowCondition": "appeal.appellant.role.name!=\"\"", "TabFieldDisplayOrder": 14}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryRoleDescription", "FieldShowCondition": "appeal.appellant.role.description!=\"\"", "TabFieldDisplayOrder": 15}, @@ -32,14 +33,14 @@ {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "jointPartyIdentity", "TabFieldDisplayOrder": 25, "FieldShowCondition": "summaryName=\"Do Not Show\""}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "confidentialityRequestOutcomeJointParty", "TabFieldDisplayOrder": 26}, - {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryBenefitType", "TabFieldDisplayOrder": 27}, - {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryCaseReference", "FieldShowCondition": "appeal.benefitType.code!=\"infectedBloodAppeal\"", "TabFieldDisplayOrder": 28}, - {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryIbcaReference", "FieldShowCondition": "appeal.benefitType.code=\"infectedBloodAppeal\"", "TabFieldDisplayOrder": 28}, + {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryBenefitType", "TabFieldDisplayOrder": 27, "FieldShowCondition": "appeal.benefitType.code!=\"infectedBloodAppeal\""}, + {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryAppealType", "TabFieldDisplayOrder": 27, "FieldShowCondition": "appeal.benefitType.code=\"infectedBloodAppeal\""}, + {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryCaseReference", "TabFieldDisplayOrder": 28, "FieldShowCondition": "appeal.benefitType.code!=\"infectedBloodAppeal\""}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryState", "TabFieldDisplayOrder": 29}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryHearingType", "TabFieldDisplayOrder": 30}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryConfidentialityRequired", "FieldShowCondition": "appeal.appellant.confidentialityRequired!=\"\"", "TabFieldDisplayOrder": 31}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryAreAppointee", "TabFieldDisplayOrder": 32, "FieldShowCondition": "appeal.appellant.isAppointee!=\"\""}, - {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryRepresentativeName", "TabFieldDisplayOrder": 33}, + {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryRepresentativeName", "TabFieldDisplayOrder": 33, "FieldShowCondition": "appeal.rep.name.firstName!=\"\" OR appeal.rep.name.lastName!=\"\""}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryMyaAppellantLink", "TabFieldDisplayOrder": 34, "FieldShowCondition": "subscriptions.appellantSubscription.subscribeEmail=\"Yes\""}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryMyaRepresentativeLink", "TabFieldDisplayOrder": 35, "FieldShowCondition": "subscriptions.representativeSubscription.subscribeEmail=\"Yes\""}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "summary_sscs", "TabLabel": "Summary", "TabDisplayOrder": 1, "CaseFieldID": "summaryMyaAppointeeLink", "TabFieldDisplayOrder": 36, "FieldShowCondition": "subscriptions.appointeeSubscription.subscribeEmail=\"Yes\""}, @@ -75,6 +76,7 @@ {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "caseInfo_sscs", "TabLabel": "Appeal Details", "TabDisplayOrder": 4, "CaseFieldID": "isConfidentialityRequestUnderReviewLabel", "TabFieldDisplayOrder": 4, "FieldShowCondition": "confidentialityRequestOutcomeAppellant.requestOutcome =\"inProgress\" OR confidentialityRequestOutcomeJointParty.requestOutcome =\"inProgress\""}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "caseInfo_sscs", "TabLabel": "Appeal Details", "TabDisplayOrder": 4, "CaseFieldID": "appellantDeceasedLabel", "TabFieldDisplayOrder": 5, "FieldShowCondition": "isAppellantDeceased =\"Yes\""}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "caseInfo_sscs", "TabLabel": "Appeal Details", "TabDisplayOrder": 4, "CaseFieldID": "caseReference", "TabFieldDisplayOrder": 6}, + {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "caseInfo_sscs", "TabLabel": "Appeal Details", "TabDisplayOrder": 4, "CaseFieldID": "summaryIbcaReference", "TabFieldDisplayOrder": 6}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "caseInfo_sscs", "TabLabel": "Appeal Details", "TabDisplayOrder": 4, "CaseFieldID": "caseCreated", "TabFieldDisplayOrder": 7}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "caseInfo_sscs", "TabLabel": "Appeal Details", "TabDisplayOrder": 4, "CaseFieldID": "dateOfAppellantDeath", "TabFieldDisplayOrder": 8}, {"LiveFrom": "", "CaseTypeID": "Benefit", "TabID": "caseInfo_sscs", "TabLabel": "Appeal Details", "TabDisplayOrder": 4, "CaseFieldID": "appeal", "TabFieldDisplayOrder": 9}, diff --git a/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseMidEventHandler.java b/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseMidEventHandler.java index 5d5050bc7a5..057d9fdb81c 100644 --- a/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseMidEventHandler.java +++ b/src/main/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseMidEventHandler.java @@ -1,10 +1,10 @@ package uk.gov.hmcts.reform.sscs.ccd.presubmit.createcase; -import static java.util.Objects.isNull; +import static org.apache.commons.lang3.ObjectUtils.isEmpty; import static org.apache.commons.lang3.ObjectUtils.isNotEmpty; import static org.apache.commons.lang3.StringUtils.isBlank; import static uk.gov.hmcts.reform.sscs.ccd.domain.YesNo.NO; -import static uk.gov.hmcts.reform.sscs.ccd.domain.YesNo.YES; +import static uk.gov.hmcts.reform.sscs.ccd.domain.YesNo.isYes; import static uk.gov.hmcts.reform.sscs.model.AppConstants.IBCA_BENEFIT_CODE; import java.util.Collection; @@ -31,9 +31,10 @@ public class CreateCaseMidEventHandler implements PreSubmitCallbackHandler callback) { return callbackType.equals(CallbackType.MID_EVENT) - && ((callback.getEvent() == EventType.VALID_APPEAL_CREATED + && (callback.getEvent() == EventType.VALID_APPEAL_CREATED || callback.getEvent() == EventType.NON_COMPLIANT - || callback.getEvent() == EventType.INCOMPLETE_APPLICATION_RECEIVED)) + || callback.getEvent() == EventType.INCOMPLETE_APPLICATION_RECEIVED + || callback.getEvent() == EventType.CASE_UPDATED) && Objects.nonNull(callback.getCaseDetails()) && Objects.nonNull(callback.getCaseDetails().getCaseData()); } @@ -51,9 +52,9 @@ public PreSubmitCallbackResponse handle(CallbackType callbackType, errorResponse.addErrors(validateAddress(caseData.getAppeal().getAppellant())); - if (YES.equals(caseData.getHasRepresentative()) + if (isYes(caseData.getAppeal().getRep().getHasRepresentative()) && isNotEmpty(caseData.getAppeal().getRep().getAddress()) - && isNull(caseData.getAppeal().getRep().getAddress().getInMainlandUk())) { + && isEmpty(caseData.getAppeal().getRep().getAddress().getInMainlandUk())) { errorResponse.addError("You must enter Living in the UK for the representative"); } } diff --git a/src/main/java/uk/gov/hmcts/reform/sscs/jms/listener/HmcHearingsEventTopicListener.java b/src/main/java/uk/gov/hmcts/reform/sscs/jms/listener/HmcHearingsEventTopicListener.java index afa8abf72e4..a82236e783c 100644 --- a/src/main/java/uk/gov/hmcts/reform/sscs/jms/listener/HmcHearingsEventTopicListener.java +++ b/src/main/java/uk/gov/hmcts/reform/sscs/jms/listener/HmcHearingsEventTopicListener.java @@ -60,8 +60,6 @@ public void onMessage(JmsBytesMessage message) throws JMSException, HmcEventProc return; } - log.info("Handling request by tribunal hearing api merge code"); - byte[] messageBytes = new byte[(int) message.getBodyLength()]; message.readBytes(messageBytes); String convertedMessage = new String(messageBytes, StandardCharsets.UTF_8); diff --git a/src/main/java/uk/gov/hmcts/reform/sscs/jms/listener/TribunalsHearingsEventQueueListener.java b/src/main/java/uk/gov/hmcts/reform/sscs/jms/listener/TribunalsHearingsEventQueueListener.java index 00b28def5f7..372dd41c413 100644 --- a/src/main/java/uk/gov/hmcts/reform/sscs/jms/listener/TribunalsHearingsEventQueueListener.java +++ b/src/main/java/uk/gov/hmcts/reform/sscs/jms/listener/TribunalsHearingsEventQueueListener.java @@ -45,8 +45,6 @@ public void handleIncomingMessage(HearingRequest message) throws TribunalsEventP return; } - log.info("Handling request by tribunal hearing api merge code"); - if (isNull(message)) { throw new TribunalsEventProcessingException("An exception occurred as message did not match format"); } diff --git a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseMidEventHandlerTest.java b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseMidEventHandlerTest.java index 00d93a03530..eb13ae9f4af 100644 --- a/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseMidEventHandlerTest.java +++ b/src/test/java/uk/gov/hmcts/reform/sscs/ccd/presubmit/createcase/CreateCaseMidEventHandlerTest.java @@ -46,7 +46,8 @@ public class CreateCaseMidEventHandlerTest { @CsvSource({ "VALID_APPEAL_CREATED", "NON_COMPLIANT", - "INCOMPLETE_APPLICATION_RECEIVED" + "INCOMPLETE_APPLICATION_RECEIVED", + "CASE_UPDATED" }) void canHandleTest(EventType eventType) { SscsCaseData caseData = SscsCaseData.builder().build(); @@ -70,12 +71,12 @@ void shouldReturnErrorsOnMidEventErrorsForUkIbcaCase() { .build() ) .rep(Representative.builder() + .hasRepresentative("Yes") .address(Address.builder().build()) .build() ) .build() ) - .hasRepresentative(YES) .benefitCode(IBCA_BENEFIT_CODE) .build(); @@ -106,12 +107,12 @@ void shouldReturnErrorsOnMidEventErrorsForOverseasIbcaCase() { .build()) .build()) .rep(Representative.builder() + .hasRepresentative("Yes") .address(Address.builder().build()) .build() ) .build() ) - .hasRepresentative(YES) .benefitCode(IBCA_BENEFIT_CODE) .build(); @@ -142,8 +143,11 @@ void shouldNotReturnErrorsOnMidEventForIbcaCase() { ) ) .inMainlandUk(NO) - .build()) - .build()) + .build() + ) + .build() + ) + .rep(Representative.builder().build()) .build() ) .benefitCode(IBCA_BENEFIT_CODE)