Skip to content

Commit

Permalink
Merge pull request #216 from CLOSER-Cohorts/issue-215-add-no-instance…
Browse files Browse the repository at this point in the history
…s-of-this-issue-found-message-on-tabs-on-free-text-fields-dashboard

Issue 215 add no instances of this issue found message on tabs on free text fields dashboard
  • Loading branch information
ollylucl authored Feb 14, 2025
2 parents a4461b8 + c711ecf commit f2311d1
Show file tree
Hide file tree
Showing 5 changed files with 33 additions and 27 deletions.
2 changes: 1 addition & 1 deletion components/DataTable.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ export default function DataTable(props) {
function tableRows() {
return (props.itemCounts[props.headers[0]]?.length!=0) ? !!props.itemCounts[props.headers[0]] && props.itemCounts[props.headers[0]].map((tableRow, index) => {
return <tr key={index}>{tableCells(tableRow)}</tr>
}) : <tr><td>No instances of this issue found.</td></tr>
}) : <tr><td>No instances found.</td></tr>

}

Expand Down
2 changes: 1 addition & 1 deletion package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

30 changes: 18 additions & 12 deletions pages/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ const tabNames = ["Lifestage",
"Publisher",
"Analysis Unit",
"Kind Of Data",
"Country",
"CountryCode",
"Mode Of Collection",
"Type Of Mode Of Collection"
];
Expand Down Expand Up @@ -96,6 +96,10 @@ function getFreeTextElementValues(allStudyUnits, token) {

const freeTextElementValues = {};

userAttributeTitles.forEach(userAttributeTitle =>
freeTextElementValues[userAttributeTitle] = []
)

!!allStudyUnits && allStudyUnits.map(studyUnit => {
let studyUnitXML = parser.parse(studyUnit.Item)

Expand Down Expand Up @@ -139,12 +143,12 @@ function getFreeTextElementValues(allStudyUnits, token) {

let kindsOfData = studyUnitXML.Fragment.StudyUnit?.['r:KindOfData']

let countries = studyUnitXML.Fragment.StudyUnit['r:Coverage']['r:SpatialCoverage']?.['r:Country']
let countryCodes = studyUnitXML.Fragment.StudyUnit['r:Coverage']['r:SpatialCoverage']?.['r:CountryCode']

!!countries && convertToArray(countries).forEach(country => {
!!countryCodes && convertToArray(countryCodes).forEach(countryCode => {

populateFreeTextElementValue('Country',
!!country ? country : "EMPTY VALUE",
populateFreeTextElementValue('CountryCode',
!!countryCode ? countryCode : "EMPTY VALUE",
freeTextElementValues,
studyUnit.AgencyId,
studyUnit.Identifier)
Expand Down Expand Up @@ -328,16 +332,18 @@ function displayDashboard(
panelContents,
fieldValueCounts) {

const dashboardPanels = !!colecticaQueryResults.errorMessage ? colecticaQueryResults.errorMessage : <GenericDashboard
data={colecticaQueryResults}
colecticaRepositoryHostname={colecticaRepositoryHostname}
tabNames={tabNames}
panelContents={panelContents}
itemCounts={fieldValueCounts}
/>

return Object.keys(colecticaQueryResults).length > 0 ? <div><Navbar selectedDashboard={0}/>
The purpose of this dashboard is to identify incorrectly entered free text field values in specific item types
before deploying to production.
<GenericDashboard
data={colecticaQueryResults}
colecticaRepositoryHostname={colecticaRepositoryHostname}
tabNames={tabNames}
panelContents={panelContents}
itemCounts={fieldValueCounts}
/></div> : ""
{dashboardPanels} </div>: ""

}

Expand Down
16 changes: 8 additions & 8 deletions pages/missingIncorrectRelationships.js
Original file line number Diff line number Diff line change
Expand Up @@ -101,14 +101,14 @@ export async function getServerSideProps(context) {
}

var dashboardData = {
"orphanPhysicalInstances": !!orphanPhysicalInstances && orphanPhysicalInstances.trim().split('\n').map(x => Array(x)),
"physicalInstancesWithNoFileUri": !!physicalInstancesWithNoFileUri && physicalInstancesWithNoFileUri.trim().split('\n').map(x => Array(x)),
"orphanVariables": !!orphanVariables && orphanVariables.trim().split('\n').map(x => Array(x)),
"orphanQuestionnaires": !!orphanQuestionnaires && orphanQuestionnaires.trim().split('\n').map(x => Array(x)),
"questionnairesWithoutExternalInstruments": !!questionnairesWithoutExternalInstruments && questionnairesWithoutExternalInstruments.trim().split('\n').map(x => Array(x)),
"orphanQuestions": !!orphanQuestions && orphanQuestions.trim().split('\n').map(x => Array(x)),
"invalidAgencies": !!invalidAgencies && invalidAgencies.trim().split('\n').map(x => Array(x)),
"dataCollectionsWithoutOrganisation": !!dataCollectionsWithoutOrganisation && dataCollectionsWithoutOrganisation.trim().split('\n').map(x => Array(x))
"orphanPhysicalInstances": !!orphanPhysicalInstances ? orphanPhysicalInstances.trim().split('\n').map(x => Array(x)) : [],
"physicalInstancesWithNoFileUri": !!physicalInstancesWithNoFileUri ? physicalInstancesWithNoFileUri.trim().split('\n').map(x => Array(x)) : [],
"orphanVariables": !!orphanVariables ? orphanVariables.trim().split('\n').map(x => Array(x)) : [],
"orphanQuestionnaires": !!orphanQuestionnaires ? orphanQuestionnaires.trim().split('\n').map(x => Array(x)) : [],
"questionnairesWithoutExternalInstruments": !!questionnairesWithoutExternalInstruments ? questionnairesWithoutExternalInstruments.trim().split('\n').map(x => Array(x)) : [],
"orphanQuestions": !!orphanQuestions ? orphanQuestions.trim().split('\n').map(x => Array(x)) : [],
"invalidAgencies": !!invalidAgencies ? invalidAgencies.trim().split('\n').map(x => Array(x)) : [],
"dataCollectionsWithoutOrganisation": !!dataCollectionsWithoutOrganisation ? dataCollectionsWithoutOrganisation.trim().split('\n').map(x => Array(x)) : []
}

return {
Expand Down
10 changes: 5 additions & 5 deletions pages/topicIssues.js
Original file line number Diff line number Diff line change
Expand Up @@ -71,16 +71,16 @@ export async function getServerSideProps(context) {
console.error(err);
}

const questionsMappedToMultipleGroupsJSON = !!questionsMappedToMultipleGroups && JSON.parse(questionsMappedToMultipleGroups)
const questionsMappedToMultipleGroupsJSON = !!questionsMappedToMultipleGroups ? JSON.parse(questionsMappedToMultipleGroups) : []

const variablesMappedToMultipleGroupsJSON = !!variablesMappedToMultipleGroups && JSON.parse(variablesMappedToMultipleGroups)
const variablesMappedToMultipleGroupsJSON = !!variablesMappedToMultipleGroups ? JSON.parse(variablesMappedToMultipleGroups) : []

const questionsMappedToNoGroupsJSON = !!questionsMappedToNoGroups && JSON.parse(questionsMappedToNoGroups)
const questionsMappedToNoGroupsJSON = !!questionsMappedToNoGroups ? JSON.parse(questionsMappedToNoGroups) : []

const variablesMappedToNoGroupsJSON = !!variablesMappedToNoGroups && JSON.parse(variablesMappedToNoGroups)
const variablesMappedToNoGroupsJSON = !!variablesMappedToNoGroups ? JSON.parse(variablesMappedToNoGroups) : []

var dashboardData = {
"topicMismatches": !!topicMismatches && JSON.parse(topicMismatches),
"topicMismatches": !!topicMismatches && JSON.parse(topicMismatches) ? JSON.parse(topicMismatches) : [],
"questionsMappedToMultipleGroups": questionsMappedToMultipleGroupsJSON,
"variablesMappedToMultipleGroups": variablesMappedToMultipleGroupsJSON,
"questionsMappedToNoGroups": questionsMappedToNoGroupsJSON,
Expand Down

0 comments on commit f2311d1

Please sign in to comment.