advances search on case lpa and appeal

This commit is contained in:
2021-09-22 15:59:34 +01:00
parent 18030111b0
commit 5fa1c4a03f
16 changed files with 824 additions and 988 deletions
+58
View File
@@ -102,6 +102,38 @@ const Breadcrumbs = (props) => {
) : (
""
)}
{router.pathname == "/advancedsearch" ? (
<>
<li className="govuk-breadcrumbs__list-item">
{t("common:breadcrumb-advanced-search")}
</li>
</>
) : (
""
)}
{router.pathname == "/advancedsearchresults" ? (
<>
{" "}
<li className="govuk-breadcrumbs__list-item">
<Link
href={
router.locale != "en"
? router.locale + "/advancedsearch"
: "/advancedsearch"
}
>
<a className="govuk-breadcrumbs__link">
{t("common:breadcrumb-advanced-search")}
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
{t("common:breadcrumb-advanced-search-results")}
</li>
</>
) : (
""
)}
{router.pathname == "/newappeal" ? (
<>
<li className="govuk-breadcrumbs__list-item">
@@ -381,6 +413,32 @@ const Breadcrumbs = (props) => {
) : (
""
)}
{router.pathname == "/dnsdetails" ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link
href={
router.locale != "en"
? router.locale + "/dnsapplications"
: "/dnsapplications"
}
>
<a className="govuk-breadcrumbs__link">
{t("dnsCommon:service-name")}
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
{t("common:breadcrumb-case-reference")}:{" "}
{
props.props.currentView.caseReference
.currentReference
}
</li>
</>
) : (
""
)}
{router.pathname == "/dns/application-process" ? (
<>
<li className="govuk-breadcrumbs__list-item">
+2 -1
View File
@@ -20,7 +20,8 @@ const Header = (props) => {
"/dns/application-view",
"/searchresults",
"/case",
"advancedsearch",
"/advancedsearch",
"/advancedsearchresults",
"/dnsapplications",
"/dnsdetails",
];
+10 -1
View File
@@ -118,7 +118,16 @@ let CaseSearch = (props) => {
const mapStateToProps = (state) => {
return {
...state,
currentView: state.currentView,
search: state.search,
searchResultsObj: state.searchResultsObj,
formData: state.formData,
appealType: state.appealType,
//form: state.form,
myCases: state.myCases,
watchedCases: state.watchedCases,
myRepresentations: state.myRepresentations,
awaitingSubmission: state.awaitingSubmission,
};
};
File diff suppressed because it is too large Load Diff
+42 -19
View File
@@ -19,28 +19,18 @@ const DNSSearchResults = (props) => {
const router = useRouter();
const { locale } = router;
var resultsArr = searchResultsObj.value || [{}];
_.isEmpty(searchResultsObj);
return (
<>
<div className="govuk-grid-row">
<div className="govuk-grid-column-two-thirds">
<h1 className="govuk-heading-l">
{t("dnsCommon:service-name")}{" "}
{t("dnsApplications:page-title")}
</h1>
<p className="govuk-body">
{t("dnsApplications:page-intro-paragraph-1")}
</p>
<ul className="govuk-list govuk-list--bullet">
<li> {t("dnsApplications:page-intro-list-item-1")}</li>
let newSearchResultsObj = _.isEmpty(searchResultsObj)
? [{}]
: _.isEmpty(searchResultsObj.value)
? [{}]
: searchResultsObj.value;
<li> {t("dnsApplications:page-intro-list-item-2")}</li>
var resultsArr = newSearchResultsObj || [];
<li> {t("dnsApplications:page-intro-list-item-3")}</li>
</ul>
</div>
</div>
const ResultsView = (resultsArr) => {
return (
<div className="govuk-grid-row govuk-!-margin-top-9">
<div className="govuk-grid-column-full">
<dl className="govuk-summary-list govuk-!-margin-bottom-9 results">
@@ -62,6 +52,7 @@ const DNSSearchResults = (props) => {
{t("search:searchresults-status-label")}
</dd>
</div>
{console.log(newSearchResultsObj.length > 0)}
{resultsArr.map((item, key) => {
let detailsObj = jsonpath.query(
@@ -207,6 +198,38 @@ const DNSSearchResults = (props) => {
</dl>
</div>
</div>
);
};
return (
<>
<div className="govuk-grid-row">
<div className="govuk-grid-column-two-thirds">
<h1 className="govuk-heading-l">
{t("dnsCommon:service-name")}{" "}
{t("dnsApplications:page-title")}
</h1>
<p className="govuk-body">
{t("dnsApplications:page-intro-paragraph-1")}
</p>
<ul className="govuk-list govuk-list--bullet">
<li> {t("dnsApplications:page-intro-list-item-1")}</li>
<li> {t("dnsApplications:page-intro-list-item-2")}</li>
<li> {t("dnsApplications:page-intro-list-item-3")}</li>
</ul>
</div>
</div>
{resultsArr.length > 0 ? (
ResultsView(resultsArr)
) : (
<div className="govuk-grid-row">
<div className="govuk-grid-column-two-thirds">
<h3>There are no records</h3>
</div>
</div>
)}
</>
);
};
+178 -180
View File
@@ -19,8 +19,163 @@ const SearchResults = (props) => {
const router = useRouter();
const { locale } = router;
var resultsArr = searchResultsObj.value || [{}];
var resultsArr = searchResultsObj.value || [];
const ResultsView = (resultsArr) => {
return (
<dl className="govuk-summary-list govuk-!-margin-bottom-9 results">
<div className="govuk-summary-list__row results-headings">
<dd className="govuk-summary-list__key govuk-!-font-size-14 results_wider ">
{t("search:searchresults-case-reference-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
{t("search:searchresults-site-address-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
{t("search:searchresults-applicant-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
{t("search:searchresults-authority-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
{t("search:searchresults-case-type-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
{t("search:searchresults-status-label")}
</dd>
</div>
{resultsArr.map((item, key) => {
let detailsObj = jsonpath.query(
searchDetailsObj,
"$..value[?(@.pinswg_name=='" + item.title + "')]"
);
detailsObj = detailsObj[0];
return (
<div className="govuk-summary-list__row" key={key}>
<dd className="govuk-summary-list__value govuk-!-font-size-14 ">
<Link href="/case">
<a
onClick={() => {
setCurrentReference({
"currentReference": item.title,
"currentType":
"searchResultsObj",
});
}}
>
<span className="results-visually-hidden">
{t(
"search:searchresults-case-reference-label"
)}
:
</span>
{item.title}
</a>
</Link>
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<span className="results-visually-hidden">
{t(
"search:searchresults-site-address-label"
)}
:
</span>
{_.has(detailsObj, "pinswg_siteaddressline1")
? detailsObj.pinswg_siteaddressline1
: ""}
<br />
{_.has(detailsObj, "pinswg_siteaddressline1")
? detailsObj.pinswg_siteaddressline2
: ""}
<br />
{_.has(detailsObj, "pinswg_siteaddressline1")
? detailsObj.pinswg_siteaddresstown
: ""}
<br />
{_.has(detailsObj, "pinswg_siteaddressline1")
? detailsObj.pinswg_siteaddresscounty
: ""}
<br />
{_.has(detailsObj, "pinswg_siteaddressline1")
? detailsObj.pinswg_siteaddresspostcode
: ""}
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<span className="results-visually-hidden">
{t("search:searchresults-applicant-label")}:
</span>
{_.has(detailsObj, [
"_pinswg_appellant_value@OData.Community.Display.V1.FormattedValue",
])
? detailsObj[
"_pinswg_appellant_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<span className="results-visually-hidden">
{t("search:searchresults-authority-label")}:
</span>
{_.has(item, [
"_customerid_value@OData.Community.Display.V1.FormattedValue",
])
? router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
item[
"_customerid_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: item[
"_customerid_value@OData.Community.Display.V1.FormattedValue"
] || "N/A"
: ""}
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<span className="results-visually-hidden">
{t("search:searchresults-case-type-label")}:
</span>
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
item[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: item[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] || "N/A"}
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<span className="results-visually-hidden">
{t("search:searchresults-status-label")}:
</span>
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
item[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: item[
"statuscode@OData.Community.Display.V1.FormattedValue"
] || "N/A"}
</dd>
</div>
);
})}
</dl>
);
};
return (
<div className="govuk-grid-row">
<div className="govuk-grid-column-full">
@@ -29,188 +184,31 @@ const SearchResults = (props) => {
</h1>
<p className="govuk-body">
{t("search:searchresults-count-label", {
count: searchResultsObj["@odata.count"].toString(),
count: resultsArr.length,
})}
. {t("search:searchresults-case-count-label")}{" "}
<em>&quot;{searchString}&quot;</em>
.
{typeof searchString != "undefined" ? (
<>
<span>
{t("search:searchresults-case-count-label")}{" "}
{" "}
<em>&quot;{searchString}&quot;</em>
</span>
</>
) : (
""
)}
</p>
<dl className="govuk-summary-list govuk-!-margin-bottom-9 results">
<div className="govuk-summary-list__row results-headings">
<dd className="govuk-summary-list__key govuk-!-font-size-14 results_wider ">
{t("search:searchresults-case-reference-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
{t("search:searchresults-site-address-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
{t("search:searchresults-applicant-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
{t("search:searchresults-authority-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
{t("search:searchresults-case-type-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
{t("search:searchresults-status-label")}
</dd>
{resultsArr.length > 0 ? (
ResultsView(resultsArr)
) : (
<div className="govuk-grid-row">
<div className="govuk-grid-column-two-thirds">
<h3>There are no records</h3>
</div>
</div>
{resultsArr.map((item, key) => {
let detailsObj = jsonpath.query(
searchDetailsObj,
"$..value[?(@.pinswg_name=='" + item.title + "')]"
);
detailsObj = detailsObj[0];
return (
<div className="govuk-summary-list__row" key={key}>
<dd className="govuk-summary-list__value govuk-!-font-size-14 ">
<Link href="/case">
<a
onClick={() => {
setCurrentReference({
"currentReference":
item.title,
"currentType":
"searchResultsObj",
});
}}
>
<span className="results-visually-hidden">
{t(
"search:searchresults-case-reference-label"
)}
:
</span>
{item.title}
</a>
</Link>
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<span className="results-visually-hidden">
{t(
"search:searchresults-site-address-label"
)}
:
</span>
{_.has(
detailsObj,
"pinswg_siteaddressline1"
)
? detailsObj.pinswg_siteaddressline1
: ""}
<br />
{_.has(
detailsObj,
"pinswg_siteaddressline1"
)
? detailsObj.pinswg_siteaddressline2
: ""}
<br />
{_.has(
detailsObj,
"pinswg_siteaddressline1"
)
? detailsObj.pinswg_siteaddresstown
: ""}
<br />
{_.has(
detailsObj,
"pinswg_siteaddressline1"
)
? detailsObj.pinswg_siteaddresscounty
: ""}
<br />
{_.has(
detailsObj,
"pinswg_siteaddressline1"
)
? detailsObj.pinswg_siteaddresspostcode
: ""}
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<span className="results-visually-hidden">
{t(
"search:searchresults-applicant-label"
)}
:
</span>
{_.has(detailsObj, [
"_pinswg_appellant_value@OData.Community.Display.V1.FormattedValue",
])
? detailsObj[
"_pinswg_appellant_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<span className="results-visually-hidden">
{t(
"search:searchresults-authority-label"
)}
:
</span>
{_.has(detailsObj, [
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue",
])
? router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || "N/A"
: ""}
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<span className="results-visually-hidden">
{t(
"search:searchresults-case-type-label"
)}
:
</span>
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
item[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: item[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] || "N/A"}
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<span className="results-visually-hidden">
{t("search:searchresults-status-label")}
:
</span>
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
item[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: item[
"statuscode@OData.Community.Display.V1.FormattedValue"
] || "N/A"}
</dd>
</div>
);
})}
</dl>
)}
</div>
</div>
);
+2 -2
View File
@@ -35,12 +35,12 @@ export default function Search(props) {
{t("search:searchresults-search-button-label")}
</a>
</Link>
<a
{/* <a
onClick={() => router.back()}
className="govuk-button govuk-button--secondary"
>
{t("search:searchresults-new-search-button-label")}
</a>
</a> */}
</div>
</div>
</div>