use of org.hisp.dhis.dxf2.events.event.Coordinate in project dhis2-core by dhis2.
the class AbstractEnrollmentService method getEnrollment.
@Override
public Enrollment getEnrollment(ProgramInstance programInstance, TrackedEntityInstanceParams params) {
Enrollment enrollment = new Enrollment();
enrollment.setEnrollment(programInstance.getUid());
if (programInstance.getEntityInstance() != null) {
enrollment.setTrackedEntity(programInstance.getEntityInstance().getTrackedEntity().getUid());
enrollment.setTrackedEntityInstance(programInstance.getEntityInstance().getUid());
}
if (programInstance.getOrganisationUnit() != null) {
enrollment.setOrgUnit(programInstance.getOrganisationUnit().getUid());
enrollment.setOrgUnitName(programInstance.getOrganisationUnit().getName());
}
if (programInstance.getProgram().getCaptureCoordinates()) {
Coordinate coordinate = null;
if (programInstance.getLongitude() != null && programInstance.getLatitude() != null) {
coordinate = new Coordinate(programInstance.getLongitude(), programInstance.getLatitude());
try {
List<Double> list = OBJECT_MAPPER.readValue(coordinate.getCoordinateString(), new TypeReference<List<Double>>() {
});
coordinate.setLongitude(list.get(0));
coordinate.setLatitude(list.get(1));
} catch (IOException ignored) {
}
}
if (coordinate != null && coordinate.isValid()) {
enrollment.setCoordinate(coordinate);
}
}
enrollment.setCreated(DateUtils.getIso8601NoTz(programInstance.getCreated()));
enrollment.setCreatedAtClient(DateUtils.getIso8601NoTz(programInstance.getCreatedAtClient()));
enrollment.setLastUpdated(DateUtils.getIso8601NoTz(programInstance.getLastUpdated()));
enrollment.setLastUpdatedAtClient(DateUtils.getIso8601NoTz(programInstance.getLastUpdatedAtClient()));
enrollment.setProgram(programInstance.getProgram().getUid());
enrollment.setStatus(EnrollmentStatus.fromProgramStatus(programInstance.getStatus()));
enrollment.setEnrollmentDate(programInstance.getEnrollmentDate());
enrollment.setIncidentDate(programInstance.getIncidentDate());
enrollment.setFollowup(programInstance.getFollowup());
enrollment.setCompletedDate(programInstance.getEndDate());
enrollment.setCompletedBy(programInstance.getCompletedBy());
List<TrackedEntityComment> comments = programInstance.getComments();
for (TrackedEntityComment comment : comments) {
Note note = new Note();
note.setValue(comment.getCommentText());
note.setStoredBy(comment.getCreator());
if (comment.getCreatedDate() != null) {
note.setStoredDate(comment.getCreatedDate().toString());
}
enrollment.getNotes().add(note);
}
if (params.isIncludeEvents()) {
for (ProgramStageInstance programStageInstance : programInstance.getProgramStageInstances()) {
enrollment.getEvents().add(eventService.getEvent(programStageInstance));
}
}
return enrollment;
}
use of org.hisp.dhis.dxf2.events.event.Coordinate in project dhis2-core by dhis2.
the class GmlImportServiceTest method setUpTest.
@Override
public void setUpTest() throws IOException {
inputStream = new ClassPathResource("gml/testGmlPayload.gml").getInputStream();
/*
* Create orgunits present in testGmlPayload.gml and set ID properties.
* Name - FeatureType - ID property Bo - Poly - Name Bonthe - Multi -
* Code Ole Johan Dahls Hus - Point - Uid Blindern - Point (pos) - Name
* Forskningsparken - Poly (list) - Name
*
* Note: some of these are included to cover different coordinate
* element schemes such as <posList>, <coordinates> and <pos>.
*/
userService = _userService;
boOrgUnit = createOrganisationUnit('A');
boOrgUnit.setName("Bo");
organisationUnitService.addOrganisationUnit(boOrgUnit);
bontheOrgUnit = createOrganisationUnit('B');
// Match on Code, therefore wrong
bontheOrgUnit.setName("AA Bonthe");
// name
bontheOrgUnit.setCode("CODE_BONTHE");
organisationUnitService.addOrganisationUnit(bontheOrgUnit);
ojdOrgUnit = createOrganisationUnit('C');
ojdOrgUnit.setUid("ImspTQPwCqd");
// Match on UID,
ojdOrgUnit.setName("AA Ole Johan Dahls Hus");
// therefore wrong name
organisationUnitService.addOrganisationUnit(ojdOrgUnit);
bliOrgUnit = createOrganisationUnit('D');
bliOrgUnit.setName("Blindern");
organisationUnitService.addOrganisationUnit(bliOrgUnit);
forskOrgUnit = createOrganisationUnit('E');
forskOrgUnit.setName("Forskningsparken");
organisationUnitService.addOrganisationUnit(forskOrgUnit);
user = createAndInjectAdminUser();
id = new JobConfiguration("gmlImportTest", JobType.METADATA_IMPORT, user.getUid(), true);
importOptions = new ImportOptions().setImportStrategy(ImportStrategy.UPDATE);
importOptions.setDryRun(false);
importOptions.setPreheatCache(true);
}
Aggregations