@Override public List<ReferenceValueOutput<QuantityValue>> createReferenceValueOutputs(QuantityDatasetEntity datasetEntity, DbQuery query) { List<QuantityDatasetEntity> referenceValues = datasetEntity.getReferenceValues(); List<ReferenceValueOutput<QuantityValue>> outputs = new ArrayList<>(); for (QuantityDatasetEntity referenceSeriesEntity : referenceValues) { ReferenceValueOutput<QuantityValue> refenceValueOutput = new ReferenceValueOutput<>(); ProcedureEntity procedure = referenceSeriesEntity.getProcedure(); refenceValueOutput.setLabel(procedure.getNameI18n(query.getLocale())); refenceValueOutput.setReferenceValueId(createReferenceDatasetId(query, referenceSeriesEntity)); QuantityDataEntity lastValue = (QuantityDataEntity) referenceSeriesEntity.getLastObservation(); refenceValueOutput.setLastValue(createSeriesValueFor(lastValue, referenceSeriesEntity, query)); outputs.add(refenceValueOutput); } return outputs; }
private ReferenceValueOutput< ? > getReferenceValue(String id, DatasetOutput< ? > metadata) { for (ReferenceValueOutput< ? > referenceOutput : metadata.getReferenceValues()) { if (referenceOutput.getReferenceValueId() .equals(id)) { return referenceOutput; } } return null; }
ReferenceValueOutput< ? > referenceOutput = getReferenceValue(referenceTimeseriesId, timeseriesMetadata); String referenceChartId = createChartId(timeseriesMetadata, referenceOutput.getLabel());
private List<ReferenceValueOutput<QuantityValue>> createReferenceValueOutputs(QuantityDatasetEntity series, DbQuery query, QuantityDataRepository repository, Session session) throws DataAccessException { List<ReferenceValueOutput<QuantityValue>> outputs = new ArrayList<>(); List<QuantityDatasetEntity> referenceValues = series.getReferenceValues(); DataDao<QuantityDataEntity> dataDao = createDataDao(session); for (DatasetEntity referenceSeriesEntity : referenceValues) { if (referenceSeriesEntity.isPublished() && referenceSeriesEntity instanceof QuantityDatasetEntity) { ReferenceValueOutput<QuantityValue> refenceValueOutput = new ReferenceValueOutput<>(); ProcedureEntity procedure = referenceSeriesEntity.getProcedure(); refenceValueOutput.setLabel(procedure.getNameI18n(query.getLocale())); refenceValueOutput.setReferenceValueId(referenceSeriesEntity.getId() .toString()); QuantityDatasetEntity quantityDatasetEntity = (QuantityDatasetEntity) referenceSeriesEntity; QuantityDataEntity lastValue = dataDao.getDataValueViaTimeend(series, query); refenceValueOutput.setLastValue(repository.createSeriesValueFor(lastValue, quantityDatasetEntity, query)); outputs.add(refenceValueOutput); } } return outputs; }