use of org.hisp.dhis.option.Option in project dhis2-core by dhis2.
the class AbstractWebApiTest method createTestObject.
@SuppressWarnings("unchecked")
protected T createTestObject(Class<?> clazz, char uniqueName, Object... params) {
if (DataElementGroup.class.isAssignableFrom(clazz)) {
return (T) createDataElementGroup(uniqueName);
} else if (DataElementCategoryCombo.class.isAssignableFrom(clazz)) {
return (T) createCategoryCombo(uniqueName, Arrays.copyOf(params, params.length, DataElementCategory[].class));
} else if (DataElementCategoryOption.class.isAssignableFrom(clazz)) {
return (T) createCategoryOption(uniqueName);
} else if (DataElement.class.isAssignableFrom(clazz)) {
return (T) createDataElement(uniqueName);
} else if (DataElementCategory.class.isAssignableFrom(clazz)) {
return (T) createDataElementCategory(uniqueName, Arrays.copyOf(params, params.length, DataElementCategoryOption[].class));
} else if (Program.class.isAssignableFrom(clazz)) {
OrganisationUnit organisationUnitA = createOrganisationUnit(uniqueName);
manager.save(organisationUnitA);
return (T) createProgram(uniqueName, new HashSet<>(), organisationUnitA);
} else if (DataElementOperand.class.isAssignableFrom(clazz)) {
DataElement deA = createDataElement(uniqueName);
manager.save(deA);
DataElementCategoryCombo cc = createCategoryCombo(uniqueName);
DataElementCategoryOption co = createCategoryOption(uniqueName);
manager.save(cc);
manager.save(co);
DataElementCategoryOptionCombo coc = createCategoryOptionCombo(cc, co);
manager.save(coc);
return (T) new DataElementOperand(deA, coc);
} else if (DataElementGroupSet.class.isAssignableFrom(clazz)) {
return (T) createDataElementGroupSet(uniqueName);
} else if (DataElementCategoryOptionCombo.class.isAssignableFrom(clazz)) {
DataElementCategoryCombo cc = createCategoryCombo(uniqueName);
DataElementCategoryOption co = createCategoryOption(uniqueName);
manager.save(cc);
manager.save(co);
return (T) createCategoryOptionCombo(cc, co);
} else if (CategoryOptionGroup.class.isAssignableFrom(clazz)) {
DataElementCategoryOption co = createCategoryOption(uniqueName);
manager.save(co);
return (T) createCategoryOptionGroup(uniqueName, co);
} else if (CategoryOptionGroupSet.class.isAssignableFrom(clazz)) {
return (T) createCategoryOptionGroupSet(uniqueName);
} else if (EventChart.class.isAssignableFrom(clazz)) {
Program prA = createProgram(uniqueName);
manager.save(prA);
EventChart ecA = new EventChart("evc" + uniqueName);
ecA.setProgram(prA);
ecA.setType(ChartType.COLUMN);
return (T) ecA;
} else if (EventReport.class.isAssignableFrom(clazz)) {
Program prA = createProgram(uniqueName);
manager.save(prA);
EventReport erA = new EventReport("er" + uniqueName);
erA.setProgram(prA);
return (T) erA;
} else if (ProgramDataElementDimensionItem.class.isAssignableFrom(clazz)) {
Program prA = createProgram(uniqueName);
manager.save(prA);
DataElement deA = createDataElement(uniqueName);
manager.save(deA);
return (T) new ProgramDataElementDimensionItem(prA, deA);
} else if (ProgramIndicator.class.isAssignableFrom(clazz)) {
Program program = (Program) createTestObject(Program.class, uniqueName);
manager.save(program);
Constant constantA = createConstant(uniqueName, 7.0);
manager.save(constantA);
String expressionA = "( " + KEY_PROGRAM_VARIABLE + "{" + ProgramIndicator.VAR_ENROLLMENT_DATE + "} - " + KEY_PROGRAM_VARIABLE + "{" + ProgramIndicator.VAR_INCIDENT_DATE + "} ) / " + ProgramIndicator.KEY_CONSTANT + "{" + constantA.getUid() + "}";
return (T) createProgramIndicator(uniqueName, program, expressionA, null);
} else if (Indicator.class.isAssignableFrom(clazz)) {
IndicatorType indicatorType = createIndicatorType(uniqueName);
manager.save(indicatorType);
return (T) createIndicator(uniqueName, indicatorType);
} else if (IndicatorGroup.class.isAssignableFrom(clazz)) {
return (T) createIndicatorGroup(uniqueName);
} else if (IndicatorGroupSet.class.isAssignableFrom(clazz)) {
return (T) createIndicatorGroupSet(uniqueName);
} else if (IndicatorType.class.isAssignableFrom(clazz)) {
return (T) createIndicatorType(uniqueName);
} else if (Legend.class.isAssignableFrom(clazz)) {
return (T) createLegend(uniqueName, 0d, 10d);
} else if (LegendSet.class.isAssignableFrom(clazz)) {
return (T) createLegendSet(uniqueName);
} else if (OrganisationUnit.class.isAssignableFrom(clazz)) {
return (T) createOrganisationUnit(uniqueName);
} else if (OrganisationUnitGroup.class.isAssignableFrom(clazz)) {
return (T) createOrganisationUnitGroup(uniqueName);
} else if (OrganisationUnitGroupSet.class.isAssignableFrom(clazz)) {
return (T) createOrganisationUnitGroupSet(uniqueName);
} else if (OrganisationUnitLevel.class.isAssignableFrom(clazz)) {
return (T) new OrganisationUnitLevel(uniqueName, "OrgLevel" + uniqueName);
} else if (Color.class.isAssignableFrom(clazz)) {
Color color = new Color("#ff3200");
color.setName("Color" + uniqueName);
return (T) color;
} else if (ColorSet.class.isAssignableFrom(clazz)) {
ColorSet colorSet = new ColorSet();
colorSet.setName("ColorSet" + uniqueName);
return (T) colorSet;
} else if (org.hisp.dhis.mapping.Map.class.isAssignableFrom(clazz)) {
org.hisp.dhis.mapping.Map map = new org.hisp.dhis.mapping.Map();
map.setName("Map" + uniqueName);
map.setDisplayName("DisplayName" + uniqueName);
map.setLatitude(952175.62553525);
map.setLongitude(-1378543.6774686);
return (T) map;
} else if (ExternalMapLayer.class.isAssignableFrom(clazz)) {
ExternalMapLayer externalMapLayer = new ExternalMapLayer("ExternalMapLayer" + uniqueName);
externalMapLayer.setMapService(MapService.WMS);
externalMapLayer.setUrl("testUrl");
externalMapLayer.setImageFormat(ImageFormat.JPG);
externalMapLayer.setMapLayerPosition(MapLayerPosition.BASEMAP);
return (T) externalMapLayer;
} else if (OptionGroup.class.isAssignableFrom(clazz)) {
OptionGroup optionGroup = new OptionGroup("OptionGroup" + uniqueName);
optionGroup.setShortName("Group" + uniqueName);
return (T) optionGroup;
} else if (OptionGroupSet.class.isAssignableFrom(clazz)) {
return (T) new OptionGroupSet("OptionGroupSet" + uniqueName);
} else if (Option.class.isAssignableFrom(clazz)) {
return (T) new Option("Option" + uniqueName, "code" + uniqueName);
} else if (OptionSet.class.isAssignableFrom(clazz)) {
return (T) new OptionSet("OptionSet" + uniqueName, ValueType.TEXT);
} else if (ProgramTrackedEntityAttributeGroup.class.isAssignableFrom(clazz)) {
ProgramTrackedEntityAttributeGroup group = createProgramTrackedEntityAttributeGroup(uniqueName);
ProgramTrackedEntityAttribute attr = createProgramTrackedEntityAttribute(uniqueName);
group.addAttribute(attr);
return (T) group;
} else if (ProgramTrackedEntityAttribute.class.isAssignableFrom(clazz)) {
return (T) createProgramTrackedEntityAttribute(uniqueName);
} else if (ProgramDataElementDimensionItem.class.isAssignableFrom(clazz)) {
return (T) createProgramDataElement(uniqueName);
}
return null;
}
use of org.hisp.dhis.option.Option in project dhis2-core by dhis2.
the class DefaultProgramDataEntryService method populateCustomDataEntryForOptionSet.
// -------------------------------------------------------------------------
// Supportive methods
// -------------------------------------------------------------------------
private String populateCustomDataEntryForOptionSet(DataElement dataElement, String id, TrackedEntityDataValue entityInstanceDataValue, I18n i18n) {
String inputHTML = "";
if (dataElement != null) {
String metaData = "<input class='optionset' id=\'" + id + "\' name=\'" + id + "\' options=\'no\' type=\'radio\' optionset='" + dataElement.getOptionSet().getUid() + "'";
metaData += " data=\"{compulsory:$COMPULSORY, deName:\'$DATAELEMENTNAME\', deType:\'" + dataElement.getValueType() + "\' }\" ";
inputHTML = "<table style=\'width:100%\'>";
inputHTML += "<tr>";
inputHTML += "<td>";
inputHTML += metaData;
if (entityInstanceDataValue == null) {
inputHTML += " checked ";
}
inputHTML += " value='' onclick=\"saveRadio( \'" + dataElement.getUid() + "\', \'$option\' )\" />" + i18n.getString("non_value");
inputHTML += " </td>";
int index = 1;
for (Option option : dataElement.getOptionSet().getOptions()) {
String optionValue = option.getName();
String optionCode = option.getCode();
if (index == 4) {
inputHTML += "</tr><tr>";
index = 0;
}
inputHTML += "<td>" + metaData;
if (entityInstanceDataValue != null && entityInstanceDataValue.getValue().equals(optionCode)) {
inputHTML += " checked ";
}
inputHTML += " onclick=\"saveRadio( \'" + dataElement.getUid() + "\', \'" + optionCode + "\' )\" />" + optionValue;
inputHTML += "</td>";
index++;
}
inputHTML += " </tr>";
inputHTML += " </table>";
} else {
inputHTML = inputHTML.contains(EMPTY_VALUE_TAG) ? " value=\"[" + DATA_ELEMENT_DOES_NOT_EXIST + "]\" " : " value=\"[ " + DATA_ELEMENT_DOES_NOT_EXIST + " ]\"";
}
return inputHTML;
}
use of org.hisp.dhis.option.Option in project dhis2-core by dhis2.
the class VersionedObjectObjectBundleHook method postTypeImport.
@Override
public <T extends IdentifiableObject> void postTypeImport(Class<? extends IdentifiableObject> klass, List<T> objects, ObjectBundle bundle) {
if (Section.class.isAssignableFrom(klass)) {
Set<DataSet> dataSets = new HashSet<>();
objects.forEach(o -> {
DataSet dataSet = ((Section) o).getDataSet();
if (dataSet.getId() > 0) {
dataSets.add(dataSet);
}
});
dataSets.forEach(ds -> {
ds.increaseVersion();
sessionFactory.getCurrentSession().save(ds);
});
} else if (Option.class.isAssignableFrom(klass)) {
Set<OptionSet> optionSets = new HashSet<>();
objects.forEach(o -> {
Option option = (Option) o;
if (option.getOptionSet() != null && option.getId() > 0) {
optionSets.add(option.getOptionSet());
}
});
optionSets.forEach(os -> {
os.increaseVersion();
sessionFactory.getCurrentSession().save(os);
});
}
}
use of org.hisp.dhis.option.Option in project dhis2-core by dhis2.
the class JdbcEnrollmentAnalyticsManager method getCollapsedDataItemValue.
/**
* Returns an item value for the given query, query item and value. Assumes that
* data dimensions are collapsed for the given query. Returns the short name
* of the given query item followed by the item value. If the given query item
* has a legend set, the item value is treated as an id and substituted with
* the matching legend name. If the given query item has an option set, the
* item value is treated as a code and substituted with the matching option
* name.
*/
private String getCollapsedDataItemValue(EventQueryParams params, QueryItem item, String itemValue) {
String value = item.getItem().getDisplayShortName() + ITEM_NAME_SEP;
Legend legend = null;
Option option = null;
if (item.hasLegendSet() && (legend = item.getLegendSet().getLegendByUid(itemValue)) != null) {
return value + legend.getDisplayName();
} else if (item.hasOptionSet() && (option = item.getOptionSet().getOptionByCode(itemValue)) != null) {
return value + option.getDisplayName();
} else {
itemValue = StringUtils.defaultString(itemValue, NA);
return value + itemValue;
}
}
use of org.hisp.dhis.option.Option in project dhis2-core by dhis2.
the class TranslationServiceTest method testFormNameTranslationForOption.
@Test
void testFormNameTranslationForOption() {
OptionSet optionSet = createOptionSet('A');
optionSet.setValueType(ValueType.TEXT);
manager.save(optionSet);
Option option = createOption('A');
option.setOptionSet(optionSet);
manager.save(option);
Set<Translation> translations = new HashSet<>(option.getTranslations());
String translatedValue = "Option FormName Translated";
translations.add(new Translation(locale.getLanguage(), "FORM_NAME", translatedValue));
manager.updateTranslations(option, translations);
assertEquals(translatedValue, option.getDisplayFormName());
}
Aggregations