From d8a0970f204a5709130fe2c6a8a4a324452a7585 Mon Sep 17 00:00:00 2001 From: DanielOber <145556033+DanielOber@users.noreply.github.com> Date: Wed, 28 Feb 2024 17:14:42 +0100 Subject: [PATCH 01/11] gen von geodaten eai --- .../MessstelleOptionsmenuControllerApi.java | 8 +- .../geodateneai/gen/api/MesswerteApi.java | 18 +- .../geodateneai/gen/api/PointFeatureApi.java | 8 +- .../gen/model/MeasurementValuesResponse.java | 137 ++++++++++++ .../model/TotalSumOfAllMessquerschnitte.java | 115 ++++++++++ .../gen/model/TotalSumPerMessquerschnitt.java | 199 ++++++++++++++++++ src/main/resources/api/geodateneai.json | 68 ++++-- 7 files changed, 523 insertions(+), 30 deletions(-) create mode 100644 src/main/java/de/muenchen/dave/geodateneai/gen/model/MeasurementValuesResponse.java create mode 100644 src/main/java/de/muenchen/dave/geodateneai/gen/model/TotalSumOfAllMessquerschnitte.java create mode 100644 src/main/java/de/muenchen/dave/geodateneai/gen/model/TotalSumPerMessquerschnitt.java diff --git a/src/main/java/de/muenchen/dave/geodateneai/gen/api/MessstelleOptionsmenuControllerApi.java b/src/main/java/de/muenchen/dave/geodateneai/gen/api/MessstelleOptionsmenuControllerApi.java index cccdbdb5..e982b4e2 100644 --- a/src/main/java/de/muenchen/dave/geodateneai/gen/api/MessstelleOptionsmenuControllerApi.java +++ b/src/main/java/de/muenchen/dave/geodateneai/gen/api/MessstelleOptionsmenuControllerApi.java @@ -130,8 +130,8 @@ public ResponseSpec getNichtPlausibleTageWithResponseSpec(String messstelleId) t /** * Gibt zurück, ob der im Optionsmenue ausgewählte TagesTyp valide ist * - *

500 - Bei der Erstellung oder Durchführung des Requests ist ein Fehler aufgetreten. *

200 - TagesTyp erfolgreich validiert + *

500 - Bei der Erstellung oder Durchführung des Requests ist ein Fehler aufgetreten. * @param chosenTagesTypValidRequestDto The chosenTagesTypValidRequestDto parameter * @return ChosenTagesTypValidDTO * @throws WebClientResponseException if an error occurs while attempting to invoke the API @@ -168,8 +168,8 @@ private ResponseSpec isTagesTypDataValidRequestCreation(ChosenTagesTypValidReque /** * Gibt zurück, ob der im Optionsmenue ausgewählte TagesTyp valide ist * - *

500 - Bei der Erstellung oder Durchführung des Requests ist ein Fehler aufgetreten. *

200 - TagesTyp erfolgreich validiert + *

500 - Bei der Erstellung oder Durchführung des Requests ist ein Fehler aufgetreten. * @param chosenTagesTypValidRequestDto The chosenTagesTypValidRequestDto parameter * @return ChosenTagesTypValidDTO * @throws WebClientResponseException if an error occurs while attempting to invoke the API @@ -182,8 +182,8 @@ public Mono isTagesTypDataValid(ChosenTagesTypValidReque /** * Gibt zurück, ob der im Optionsmenue ausgewählte TagesTyp valide ist * - *

500 - Bei der Erstellung oder Durchführung des Requests ist ein Fehler aufgetreten. *

200 - TagesTyp erfolgreich validiert + *

500 - Bei der Erstellung oder Durchführung des Requests ist ein Fehler aufgetreten. * @param chosenTagesTypValidRequestDto The chosenTagesTypValidRequestDto parameter * @return ResponseEntity<ChosenTagesTypValidDTO> * @throws WebClientResponseException if an error occurs while attempting to invoke the API @@ -196,8 +196,8 @@ public Mono> isTagesTypDataValidWithHttpI /** * Gibt zurück, ob der im Optionsmenue ausgewählte TagesTyp valide ist * - *

500 - Bei der Erstellung oder Durchführung des Requests ist ein Fehler aufgetreten. *

200 - TagesTyp erfolgreich validiert + *

500 - Bei der Erstellung oder Durchführung des Requests ist ein Fehler aufgetreten. * @param chosenTagesTypValidRequestDto The chosenTagesTypValidRequestDto parameter * @return ResponseSpec * @throws WebClientResponseException if an error occurs while attempting to invoke the API diff --git a/src/main/java/de/muenchen/dave/geodateneai/gen/api/MesswerteApi.java b/src/main/java/de/muenchen/dave/geodateneai/gen/api/MesswerteApi.java index ac0c2f73..4ed1c5df 100644 --- a/src/main/java/de/muenchen/dave/geodateneai/gen/api/MesswerteApi.java +++ b/src/main/java/de/muenchen/dave/geodateneai/gen/api/MesswerteApi.java @@ -2,10 +2,10 @@ import de.muenchen.dave.geodateneai.gen.geodaten.ApiClient; -import de.muenchen.dave.geodateneai.gen.model.AverageMeasurementValuesPerIntervalResponse; import de.muenchen.dave.geodateneai.gen.model.GetMeasurementValuesRequest; import de.muenchen.dave.geodateneai.gen.model.GetMesswerteTagesaggregatMessquerschnittResponse; import de.muenchen.dave.geodateneai.gen.model.InformationResponseDto; +import de.muenchen.dave.geodateneai.gen.model.MeasurementValuesResponse; import java.util.HashMap; import java.util.List; @@ -55,7 +55,7 @@ public void setApiClient(ApiClient apiClient) { *

200 - MesswerteIntervalle erfolgreich abgefragt. *

500 - Bei der Erstellung oder Durchführung des Requests ist ein Fehler aufgetreten. * @param getMeasurementValuesRequest The getMeasurementValuesRequest parameter - * @return AverageMeasurementValuesPerIntervalResponse + * @return MeasurementValuesResponse * @throws WebClientResponseException if an error occurs while attempting to invoke the API */ private ResponseSpec getAverageMeasurementValuesPerIntervalRequestCreation(GetMeasurementValuesRequest getMeasurementValuesRequest) throws WebClientResponseException { @@ -83,7 +83,7 @@ private ResponseSpec getAverageMeasurementValuesPerIntervalRequestCreation(GetMe String[] localVarAuthNames = new String[] { }; - ParameterizedTypeReference localVarReturnType = new ParameterizedTypeReference() {}; + ParameterizedTypeReference localVarReturnType = new ParameterizedTypeReference() {}; return apiClient.invokeAPI("/messwerte/average-per-interval", HttpMethod.POST, pathParams, queryParams, postBody, headerParams, cookieParams, formParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType); } @@ -93,11 +93,11 @@ private ResponseSpec getAverageMeasurementValuesPerIntervalRequestCreation(GetMe *

200 - MesswerteIntervalle erfolgreich abgefragt. *

500 - Bei der Erstellung oder Durchführung des Requests ist ein Fehler aufgetreten. * @param getMeasurementValuesRequest The getMeasurementValuesRequest parameter - * @return AverageMeasurementValuesPerIntervalResponse + * @return MeasurementValuesResponse * @throws WebClientResponseException if an error occurs while attempting to invoke the API */ - public Mono getAverageMeasurementValuesPerInterval(GetMeasurementValuesRequest getMeasurementValuesRequest) throws WebClientResponseException { - ParameterizedTypeReference localVarReturnType = new ParameterizedTypeReference() {}; + public Mono getAverageMeasurementValuesPerInterval(GetMeasurementValuesRequest getMeasurementValuesRequest) throws WebClientResponseException { + ParameterizedTypeReference localVarReturnType = new ParameterizedTypeReference() {}; return getAverageMeasurementValuesPerIntervalRequestCreation(getMeasurementValuesRequest).bodyToMono(localVarReturnType); } @@ -107,11 +107,11 @@ public Mono getAverageMeasurementVa *

200 - MesswerteIntervalle erfolgreich abgefragt. *

500 - Bei der Erstellung oder Durchführung des Requests ist ein Fehler aufgetreten. * @param getMeasurementValuesRequest The getMeasurementValuesRequest parameter - * @return ResponseEntity<AverageMeasurementValuesPerIntervalResponse> + * @return ResponseEntity<MeasurementValuesResponse> * @throws WebClientResponseException if an error occurs while attempting to invoke the API */ - public Mono> getAverageMeasurementValuesPerIntervalWithHttpInfo(GetMeasurementValuesRequest getMeasurementValuesRequest) throws WebClientResponseException { - ParameterizedTypeReference localVarReturnType = new ParameterizedTypeReference() {}; + public Mono> getAverageMeasurementValuesPerIntervalWithHttpInfo(GetMeasurementValuesRequest getMeasurementValuesRequest) throws WebClientResponseException { + ParameterizedTypeReference localVarReturnType = new ParameterizedTypeReference() {}; return getAverageMeasurementValuesPerIntervalRequestCreation(getMeasurementValuesRequest).toEntity(localVarReturnType); } diff --git a/src/main/java/de/muenchen/dave/geodateneai/gen/api/PointFeatureApi.java b/src/main/java/de/muenchen/dave/geodateneai/gen/api/PointFeatureApi.java index cf0d131e..a8d33209 100644 --- a/src/main/java/de/muenchen/dave/geodateneai/gen/api/PointFeatureApi.java +++ b/src/main/java/de/muenchen/dave/geodateneai/gen/api/PointFeatureApi.java @@ -51,8 +51,8 @@ public void setApiClient(ApiClient apiClient) { /** * Holt die Stadtbezirke die sich mit dem Punkt (im Standard EPSG:4326 (WGS84)) überschneiden. * - *

500 - Bei der Erstellung oder Durchführung des Requests ist ein Fehler aufgetreten. *

200 - Stadtbezirke erfolgreich abgefragt. + *

500 - Bei der Erstellung oder Durchführung des Requests ist ein Fehler aufgetreten. * @param pointGeometryDto The pointGeometryDto parameter * @return FeatureCollectionDtoFeatureDtoStadtbezirkDto * @throws WebClientResponseException if an error occurs while attempting to invoke the API @@ -89,8 +89,8 @@ private ResponseSpec getStadtbezirkeRequestCreation(PointGeometryDto pointGeomet /** * Holt die Stadtbezirke die sich mit dem Punkt (im Standard EPSG:4326 (WGS84)) überschneiden. * - *

500 - Bei der Erstellung oder Durchführung des Requests ist ein Fehler aufgetreten. *

200 - Stadtbezirke erfolgreich abgefragt. + *

500 - Bei der Erstellung oder Durchführung des Requests ist ein Fehler aufgetreten. * @param pointGeometryDto The pointGeometryDto parameter * @return FeatureCollectionDtoFeatureDtoStadtbezirkDto * @throws WebClientResponseException if an error occurs while attempting to invoke the API @@ -103,8 +103,8 @@ public Mono getStadtbezirke(PointG /** * Holt die Stadtbezirke die sich mit dem Punkt (im Standard EPSG:4326 (WGS84)) überschneiden. * - *

500 - Bei der Erstellung oder Durchführung des Requests ist ein Fehler aufgetreten. *

200 - Stadtbezirke erfolgreich abgefragt. + *

500 - Bei der Erstellung oder Durchführung des Requests ist ein Fehler aufgetreten. * @param pointGeometryDto The pointGeometryDto parameter * @return ResponseEntity<FeatureCollectionDtoFeatureDtoStadtbezirkDto> * @throws WebClientResponseException if an error occurs while attempting to invoke the API @@ -117,8 +117,8 @@ public Mono> getSta /** * Holt die Stadtbezirke die sich mit dem Punkt (im Standard EPSG:4326 (WGS84)) überschneiden. * - *

500 - Bei der Erstellung oder Durchführung des Requests ist ein Fehler aufgetreten. *

200 - Stadtbezirke erfolgreich abgefragt. + *

500 - Bei der Erstellung oder Durchführung des Requests ist ein Fehler aufgetreten. * @param pointGeometryDto The pointGeometryDto parameter * @return ResponseSpec * @throws WebClientResponseException if an error occurs while attempting to invoke the API diff --git a/src/main/java/de/muenchen/dave/geodateneai/gen/model/MeasurementValuesResponse.java b/src/main/java/de/muenchen/dave/geodateneai/gen/model/MeasurementValuesResponse.java new file mode 100644 index 00000000..671a78dc --- /dev/null +++ b/src/main/java/de/muenchen/dave/geodateneai/gen/model/MeasurementValuesResponse.java @@ -0,0 +1,137 @@ +/* + * DAVE GEODATA EAI + * DAVE GEODATA EAI - Service zum Abfragen von Geoinformationen + * + * The version of the OpenAPI document: 1.0.0 + * Contact: unbekannt@muenchen.de + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package de.muenchen.dave.geodateneai.gen.model; + +import java.util.Objects; +import java.util.Arrays; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import de.muenchen.dave.geodateneai.gen.model.AverageMeasurementValuesPerIntervalResponse; +import de.muenchen.dave.geodateneai.gen.model.TotalSumOfAllMessquerschnitte; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonTypeName; + +/** + * MeasurementValuesResponse + */ +@JsonPropertyOrder({ + MeasurementValuesResponse.JSON_PROPERTY_AVERAGE_MEASUREMENT_VALUES_PER_INTERVAL_RESPONSE, + MeasurementValuesResponse.JSON_PROPERTY_TOTAL_SUM_OF_ALL_MESSQUERSCHNITTE +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class MeasurementValuesResponse { + public static final String JSON_PROPERTY_AVERAGE_MEASUREMENT_VALUES_PER_INTERVAL_RESPONSE = "averageMeasurementValuesPerIntervalResponse"; + private AverageMeasurementValuesPerIntervalResponse averageMeasurementValuesPerIntervalResponse; + + public static final String JSON_PROPERTY_TOTAL_SUM_OF_ALL_MESSQUERSCHNITTE = "totalSumOfAllMessquerschnitte"; + private TotalSumOfAllMessquerschnitte totalSumOfAllMessquerschnitte; + + public MeasurementValuesResponse() { + } + + public MeasurementValuesResponse averageMeasurementValuesPerIntervalResponse(AverageMeasurementValuesPerIntervalResponse averageMeasurementValuesPerIntervalResponse) { + + this.averageMeasurementValuesPerIntervalResponse = averageMeasurementValuesPerIntervalResponse; + return this; + } + + /** + * Get averageMeasurementValuesPerIntervalResponse + * @return averageMeasurementValuesPerIntervalResponse + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_AVERAGE_MEASUREMENT_VALUES_PER_INTERVAL_RESPONSE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public AverageMeasurementValuesPerIntervalResponse getAverageMeasurementValuesPerIntervalResponse() { + return averageMeasurementValuesPerIntervalResponse; + } + + + @JsonProperty(JSON_PROPERTY_AVERAGE_MEASUREMENT_VALUES_PER_INTERVAL_RESPONSE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAverageMeasurementValuesPerIntervalResponse(AverageMeasurementValuesPerIntervalResponse averageMeasurementValuesPerIntervalResponse) { + this.averageMeasurementValuesPerIntervalResponse = averageMeasurementValuesPerIntervalResponse; + } + + + public MeasurementValuesResponse totalSumOfAllMessquerschnitte(TotalSumOfAllMessquerschnitte totalSumOfAllMessquerschnitte) { + + this.totalSumOfAllMessquerschnitte = totalSumOfAllMessquerschnitte; + return this; + } + + /** + * Get totalSumOfAllMessquerschnitte + * @return totalSumOfAllMessquerschnitte + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TOTAL_SUM_OF_ALL_MESSQUERSCHNITTE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public TotalSumOfAllMessquerschnitte getTotalSumOfAllMessquerschnitte() { + return totalSumOfAllMessquerschnitte; + } + + + @JsonProperty(JSON_PROPERTY_TOTAL_SUM_OF_ALL_MESSQUERSCHNITTE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTotalSumOfAllMessquerschnitte(TotalSumOfAllMessquerschnitte totalSumOfAllMessquerschnitte) { + this.totalSumOfAllMessquerschnitte = totalSumOfAllMessquerschnitte; + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + MeasurementValuesResponse measurementValuesResponse = (MeasurementValuesResponse) o; + return Objects.equals(this.averageMeasurementValuesPerIntervalResponse, measurementValuesResponse.averageMeasurementValuesPerIntervalResponse) && + Objects.equals(this.totalSumOfAllMessquerschnitte, measurementValuesResponse.totalSumOfAllMessquerschnitte); + } + + @Override + public int hashCode() { + return Objects.hash(averageMeasurementValuesPerIntervalResponse, totalSumOfAllMessquerschnitte); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class MeasurementValuesResponse {\n"); + sb.append(" averageMeasurementValuesPerIntervalResponse: ").append(toIndentedString(averageMeasurementValuesPerIntervalResponse)).append("\n"); + sb.append(" totalSumOfAllMessquerschnitte: ").append(toIndentedString(totalSumOfAllMessquerschnitte)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + +} + diff --git a/src/main/java/de/muenchen/dave/geodateneai/gen/model/TotalSumOfAllMessquerschnitte.java b/src/main/java/de/muenchen/dave/geodateneai/gen/model/TotalSumOfAllMessquerschnitte.java new file mode 100644 index 00000000..4c797add --- /dev/null +++ b/src/main/java/de/muenchen/dave/geodateneai/gen/model/TotalSumOfAllMessquerschnitte.java @@ -0,0 +1,115 @@ +/* + * DAVE GEODATA EAI + * DAVE GEODATA EAI - Service zum Abfragen von Geoinformationen + * + * The version of the OpenAPI document: 1.0.0 + * Contact: unbekannt@muenchen.de + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package de.muenchen.dave.geodateneai.gen.model; + +import java.util.Objects; +import java.util.Arrays; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import de.muenchen.dave.geodateneai.gen.model.TotalSumPerMessquerschnitt; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonTypeName; + +/** + * TotalSumOfAllMessquerschnitte + */ +@JsonPropertyOrder({ + TotalSumOfAllMessquerschnitte.JSON_PROPERTY_TOTAL_SUM_PER_MESSQUERSCHNITT_LIST +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class TotalSumOfAllMessquerschnitte { + public static final String JSON_PROPERTY_TOTAL_SUM_PER_MESSQUERSCHNITT_LIST = "totalSumPerMessquerschnittList"; + private List totalSumPerMessquerschnittList; + + public TotalSumOfAllMessquerschnitte() { + } + + public TotalSumOfAllMessquerschnitte totalSumPerMessquerschnittList(List totalSumPerMessquerschnittList) { + + this.totalSumPerMessquerschnittList = totalSumPerMessquerschnittList; + return this; + } + + public TotalSumOfAllMessquerschnitte addTotalSumPerMessquerschnittListItem(TotalSumPerMessquerschnitt totalSumPerMessquerschnittListItem) { + if (this.totalSumPerMessquerschnittList == null) { + this.totalSumPerMessquerschnittList = new ArrayList<>(); + } + this.totalSumPerMessquerschnittList.add(totalSumPerMessquerschnittListItem); + return this; + } + + /** + * Get totalSumPerMessquerschnittList + * @return totalSumPerMessquerschnittList + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TOTAL_SUM_PER_MESSQUERSCHNITT_LIST) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public List getTotalSumPerMessquerschnittList() { + return totalSumPerMessquerschnittList; + } + + + @JsonProperty(JSON_PROPERTY_TOTAL_SUM_PER_MESSQUERSCHNITT_LIST) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTotalSumPerMessquerschnittList(List totalSumPerMessquerschnittList) { + this.totalSumPerMessquerschnittList = totalSumPerMessquerschnittList; + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + TotalSumOfAllMessquerschnitte totalSumOfAllMessquerschnitte = (TotalSumOfAllMessquerschnitte) o; + return Objects.equals(this.totalSumPerMessquerschnittList, totalSumOfAllMessquerschnitte.totalSumPerMessquerschnittList); + } + + @Override + public int hashCode() { + return Objects.hash(totalSumPerMessquerschnittList); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class TotalSumOfAllMessquerschnitte {\n"); + sb.append(" totalSumPerMessquerschnittList: ").append(toIndentedString(totalSumPerMessquerschnittList)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + +} + diff --git a/src/main/java/de/muenchen/dave/geodateneai/gen/model/TotalSumPerMessquerschnitt.java b/src/main/java/de/muenchen/dave/geodateneai/gen/model/TotalSumPerMessquerschnitt.java new file mode 100644 index 00000000..59df8228 --- /dev/null +++ b/src/main/java/de/muenchen/dave/geodateneai/gen/model/TotalSumPerMessquerschnitt.java @@ -0,0 +1,199 @@ +/* + * DAVE GEODATA EAI + * DAVE GEODATA EAI - Service zum Abfragen von Geoinformationen + * + * The version of the OpenAPI document: 1.0.0 + * Contact: unbekannt@muenchen.de + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package de.muenchen.dave.geodateneai.gen.model; + +import java.util.Objects; +import java.util.Arrays; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonTypeName; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonTypeName; + +/** + * TotalSumPerMessquerschnitt + */ +@JsonPropertyOrder({ + TotalSumPerMessquerschnitt.JSON_PROPERTY_MQ_ID, + TotalSumPerMessquerschnitt.JSON_PROPERTY_SUM_KFZ, + TotalSumPerMessquerschnitt.JSON_PROPERTY_SUM_SV, + TotalSumPerMessquerschnitt.JSON_PROPERTY_SUM_GV +}) +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class TotalSumPerMessquerschnitt { + public static final String JSON_PROPERTY_MQ_ID = "mqId"; + private String mqId; + + public static final String JSON_PROPERTY_SUM_KFZ = "sumKfz"; + private Integer sumKfz; + + public static final String JSON_PROPERTY_SUM_SV = "sumSv"; + private Integer sumSv; + + public static final String JSON_PROPERTY_SUM_GV = "sumGv"; + private Integer sumGv; + + public TotalSumPerMessquerschnitt() { + } + + public TotalSumPerMessquerschnitt mqId(String mqId) { + + this.mqId = mqId; + return this; + } + + /** + * Get mqId + * @return mqId + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MQ_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public String getMqId() { + return mqId; + } + + + @JsonProperty(JSON_PROPERTY_MQ_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setMqId(String mqId) { + this.mqId = mqId; + } + + + public TotalSumPerMessquerschnitt sumKfz(Integer sumKfz) { + + this.sumKfz = sumKfz; + return this; + } + + /** + * Get sumKfz + * @return sumKfz + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SUM_KFZ) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getSumKfz() { + return sumKfz; + } + + + @JsonProperty(JSON_PROPERTY_SUM_KFZ) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSumKfz(Integer sumKfz) { + this.sumKfz = sumKfz; + } + + + public TotalSumPerMessquerschnitt sumSv(Integer sumSv) { + + this.sumSv = sumSv; + return this; + } + + /** + * Get sumSv + * @return sumSv + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SUM_SV) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getSumSv() { + return sumSv; + } + + + @JsonProperty(JSON_PROPERTY_SUM_SV) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSumSv(Integer sumSv) { + this.sumSv = sumSv; + } + + + public TotalSumPerMessquerschnitt sumGv(Integer sumGv) { + + this.sumGv = sumGv; + return this; + } + + /** + * Get sumGv + * @return sumGv + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SUM_GV) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getSumGv() { + return sumGv; + } + + + @JsonProperty(JSON_PROPERTY_SUM_GV) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSumGv(Integer sumGv) { + this.sumGv = sumGv; + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + TotalSumPerMessquerschnitt totalSumPerMessquerschnitt = (TotalSumPerMessquerschnitt) o; + return Objects.equals(this.mqId, totalSumPerMessquerschnitt.mqId) && + Objects.equals(this.sumKfz, totalSumPerMessquerschnitt.sumKfz) && + Objects.equals(this.sumSv, totalSumPerMessquerschnitt.sumSv) && + Objects.equals(this.sumGv, totalSumPerMessquerschnitt.sumGv); + } + + @Override + public int hashCode() { + return Objects.hash(mqId, sumKfz, sumSv, sumGv); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class TotalSumPerMessquerschnitt {\n"); + sb.append(" mqId: ").append(toIndentedString(mqId)).append("\n"); + sb.append(" sumKfz: ").append(toIndentedString(sumKfz)).append("\n"); + sb.append(" sumSv: ").append(toIndentedString(sumSv)).append("\n"); + sb.append(" sumGv: ").append(toIndentedString(sumGv)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + +} + diff --git a/src/main/resources/api/geodateneai.json b/src/main/resources/api/geodateneai.json index 65c4c125..369b6de9 100644 --- a/src/main/resources/api/geodateneai.json +++ b/src/main/resources/api/geodateneai.json @@ -52,22 +52,22 @@ "required": true }, "responses": { - "500": { - "description": "Bei der Erstellung oder Durchführung des Requests ist ein Fehler aufgetreten.", + "200": { + "description": "Stadtbezirke erfolgreich abgefragt.", "content": { "*/*": { "schema": { - "$ref": "#/components/schemas/InformationResponseDto" + "$ref": "#/components/schemas/FeatureCollectionDtoFeatureDtoStadtbezirkDto" } } } }, - "200": { - "description": "Stadtbezirke erfolgreich abgefragt.", + "500": { + "description": "Bei der Erstellung oder Durchführung des Requests ist ein Fehler aufgetreten.", "content": { "*/*": { "schema": { - "$ref": "#/components/schemas/FeatureCollectionDtoFeatureDtoStadtbezirkDto" + "$ref": "#/components/schemas/InformationResponseDto" } } } @@ -139,7 +139,7 @@ "content": { "*/*": { "schema": { - "$ref": "#/components/schemas/AverageMeasurementValuesPerIntervalResponse" + "$ref": "#/components/schemas/MeasurementValuesResponse" } } } @@ -175,22 +175,22 @@ "required": true }, "responses": { - "500": { - "description": "Bei der Erstellung oder Durchführung des Requests ist ein Fehler aufgetreten.", + "200": { + "description": "TagesTyp erfolgreich validiert", "content": { "*/*": { "schema": { - "$ref": "#/components/schemas/InformationResponseDto" + "$ref": "#/components/schemas/ChosenTagesTypValidDTO" } } } }, - "200": { - "description": "TagesTyp erfolgreich validiert", + "500": { + "description": "Bei der Erstellung oder Durchführung des Requests ist ein Fehler aufgetreten.", "content": { "*/*": { "schema": { - "$ref": "#/components/schemas/ChosenTagesTypValidDTO" + "$ref": "#/components/schemas/InformationResponseDto" } } } @@ -697,6 +697,48 @@ } } }, + "MeasurementValuesResponse": { + "type": "object", + "properties": { + "averageMeasurementValuesPerIntervalResponse": { + "$ref": "#/components/schemas/AverageMeasurementValuesPerIntervalResponse" + }, + "totalSumOfAllMessquerschnitte": { + "$ref": "#/components/schemas/TotalSumOfAllMessquerschnitte" + } + } + }, + "TotalSumOfAllMessquerschnitte": { + "type": "object", + "properties": { + "totalSumPerMessquerschnittList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TotalSumPerMessquerschnitt" + } + } + } + }, + "TotalSumPerMessquerschnitt": { + "type": "object", + "properties": { + "mqId": { + "type": "string" + }, + "sumKfz": { + "type": "integer", + "format": "int32" + }, + "sumSv": { + "type": "integer", + "format": "int32" + }, + "sumGv": { + "type": "integer", + "format": "int32" + } + } + }, "ChosenTagesTypValidRequestDto": { "type": "object", "properties": { From 082ddf4065d6783d52035725f223a0bf2282a22f Mon Sep 17 00:00:00 2001 From: DanielOber <145556033+DanielOber@users.noreply.github.com> Date: Mon, 11 Mar 2024 14:59:37 +0100 Subject: [PATCH 02/11] =?UTF-8?q?anpassungen=20f=C3=BCrs=20frontend?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...eBelastungsplanMessquerschnittDataDTO.java | 17 ++++++ .../messwerte/LadeProcessedMesswerteDTO.java | 1 + ...ListBelastungsplanMessquerschnitteDTO.java | 11 ++++ .../messstelle/BelastungsplanService.java | 52 +++++++++++++++++++ .../services/messstelle/MesswerteService.java | 32 +++++++++--- 5 files changed, 105 insertions(+), 8 deletions(-) create mode 100644 src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/LadeBelastungsplanMessquerschnittDataDTO.java create mode 100644 src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/ListBelastungsplanMessquerschnitteDTO.java create mode 100644 src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java diff --git a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/LadeBelastungsplanMessquerschnittDataDTO.java b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/LadeBelastungsplanMessquerschnittDataDTO.java new file mode 100644 index 00000000..550389a4 --- /dev/null +++ b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/LadeBelastungsplanMessquerschnittDataDTO.java @@ -0,0 +1,17 @@ +package de.muenchen.dave.domain.dtos.laden.messwerte; + +import java.math.BigDecimal; +import lombok.Data; + +@Data +public class LadeBelastungsplanMessquerschnittDataDTO { + + private String mqId; + private Integer sumKfz; + private Integer sumSv; + private Integer sumGv; + private String direction; + + private BigDecimal percentSv; + private BigDecimal percentGV; +} diff --git a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/LadeProcessedMesswerteDTO.java b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/LadeProcessedMesswerteDTO.java index 2dd22f2b..1a41841b 100644 --- a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/LadeProcessedMesswerteDTO.java +++ b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/LadeProcessedMesswerteDTO.java @@ -18,4 +18,5 @@ public class LadeProcessedMesswerteDTO implements Serializable { LadeZaehldatenHeatmapDTO zaehldatenHeatmap; + ListBelastungsplanMessquerschnitteDTO listBelastungsplanMessquerschnitteDTO; } diff --git a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/ListBelastungsplanMessquerschnitteDTO.java b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/ListBelastungsplanMessquerschnitteDTO.java new file mode 100644 index 00000000..84f96446 --- /dev/null +++ b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/ListBelastungsplanMessquerschnitteDTO.java @@ -0,0 +1,11 @@ +package de.muenchen.dave.domain.dtos.laden.messwerte; + +import java.util.ArrayList; +import java.util.List; +import lombok.Data; + +@Data +public class ListBelastungsplanMessquerschnitteDTO { + List ladeBelastungsplanMessquerschnittDataDTOList = new ArrayList<>(); + String strassenname; +} diff --git a/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java b/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java new file mode 100644 index 00000000..8f32fa5c --- /dev/null +++ b/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java @@ -0,0 +1,52 @@ +package de.muenchen.dave.services.messstelle; + +import de.muenchen.dave.domain.dtos.laden.messwerte.LadeBelastungsplanMessquerschnittDataDTO; +import de.muenchen.dave.domain.dtos.laden.messwerte.ListBelastungsplanMessquerschnitteDTO; +import de.muenchen.dave.domain.dtos.messstelle.ReadMessquerschnittDTO; +import de.muenchen.dave.domain.dtos.messstelle.ReadMessstelleInfoDTO; +import de.muenchen.dave.geodateneai.gen.model.TotalSumPerMessquerschnitt; +import java.math.BigDecimal; +import java.math.RoundingMode; +import java.util.ArrayList; +import java.util.List; +import java.util.Objects; +import java.util.stream.Collectors; +import lombok.AllArgsConstructor; +import org.springframework.stereotype.Service; + +@AllArgsConstructor +@Service +public class BelastungsplanService { + private final MessstelleService messstelleService; + public ListBelastungsplanMessquerschnitteDTO ladeBelastungsplan(List totalSumOfAllMessquerschnitte, String messstelleId) { + ListBelastungsplanMessquerschnitteDTO listBelastungsplanMessquerschnitteDTOClass = new ListBelastungsplanMessquerschnitteDTO(); + List listBelastungsplanMessquerschnitteDTO = new ArrayList<>(); + var messstelle = messstelleService.readMessstelleInfo(messstelleId); + //listBelastungsplanMessquerschnitteDTOClass.setStrassenname(messstelle.getStandort()); + listBelastungsplanMessquerschnitteDTOClass.setStrassenname("Agnes-Pockels-Bogen"); + totalSumOfAllMessquerschnitte.forEach(sumOfMessquerschnitt -> { + LadeBelastungsplanMessquerschnittDataDTO ladeBelastungsplanMessquerschnittDataDTO = new LadeBelastungsplanMessquerschnittDataDTO(); + ladeBelastungsplanMessquerschnittDataDTO.setSumKfz(sumOfMessquerschnitt.getSumKfz()); + ladeBelastungsplanMessquerschnittDataDTO.setSumGv(sumOfMessquerschnitt.getSumGv()); + ladeBelastungsplanMessquerschnittDataDTO.setSumSv(sumOfMessquerschnitt.getSumSv()); + ladeBelastungsplanMessquerschnittDataDTO.setPercentGV(calcPercentage(sumOfMessquerschnitt.getSumGv(), sumOfMessquerschnitt.getSumKfz())); + ladeBelastungsplanMessquerschnittDataDTO.setPercentSv(calcPercentage(sumOfMessquerschnitt.getSumSv(), sumOfMessquerschnitt.getSumKfz())); + ladeBelastungsplanMessquerschnittDataDTO.setMqId(sumOfMessquerschnitt.getMqId()); + ladeBelastungsplanMessquerschnittDataDTO.setDirection(getDirection(messstelle, sumOfMessquerschnitt.getMqId())); + listBelastungsplanMessquerschnitteDTO.add(ladeBelastungsplanMessquerschnittDataDTO); + }); + listBelastungsplanMessquerschnitteDTOClass.setLadeBelastungsplanMessquerschnittDataDTOList(listBelastungsplanMessquerschnitteDTO); + return listBelastungsplanMessquerschnitteDTOClass; + } + + protected String getDirection(ReadMessstelleInfoDTO messstelle, String messquerschnittId) { + ReadMessquerschnittDTO messquerschnittDto = messstelle.getMessquerschnitte().stream().filter(readMessquerschnittDTO -> Objects.equals(readMessquerschnittDTO.getMqId(), messquerschnittId)).collect(Collectors.toList()).get(0); + return messquerschnittDto.getFahrtrichtung(); + } + + protected BigDecimal calcPercentage(Integer part, Integer total) { + BigDecimal partInBigDecimal = BigDecimal.valueOf(part); + BigDecimal totalInBigDecimal = BigDecimal.valueOf(total); + return partInBigDecimal.divide(totalInBigDecimal, 3, RoundingMode.HALF_UP).scaleByPowerOfTen(2); + } +} diff --git a/src/main/java/de/muenchen/dave/services/messstelle/MesswerteService.java b/src/main/java/de/muenchen/dave/services/messstelle/MesswerteService.java index 82fa74bb..816239bc 100644 --- a/src/main/java/de/muenchen/dave/services/messstelle/MesswerteService.java +++ b/src/main/java/de/muenchen/dave/services/messstelle/MesswerteService.java @@ -1,12 +1,16 @@ package de.muenchen.dave.services.messstelle; import de.muenchen.dave.domain.dtos.laden.messwerte.LadeProcessedMesswerteDTO; +import de.muenchen.dave.domain.dtos.laden.messwerte.ListBelastungsplanMessquerschnitteDTO; import de.muenchen.dave.exceptions.ResourceNotFoundException; import de.muenchen.dave.geodateneai.gen.api.MesswerteApi; import de.muenchen.dave.geodateneai.gen.model.AverageMeasurementValuesPerIntervalResponse; import de.muenchen.dave.geodateneai.gen.model.GetMeasurementValuesRequest; import de.muenchen.dave.geodateneai.gen.model.MeasurementValuesPerInterval; +import de.muenchen.dave.geodateneai.gen.model.MeasurementValuesResponse; +import de.muenchen.dave.geodateneai.gen.model.TotalSumPerMessquerschnitt; import java.time.LocalDate; +import java.util.ArrayList; import java.util.List; import java.util.Set; import lombok.AllArgsConstructor; @@ -28,6 +32,7 @@ public class MesswerteService { private final GanglinieService ganglinieService; private final HeatmapService heatmapService; private final ListenausgabeService listenausgabeService; + private final BelastungsplanService belastungsplanService; private static final String ERROR_MESSAGE = "Beim Laden der AverageMeasurementValuesPerIntervalResponse ist ein Fehler aufgetreten"; @@ -35,37 +40,48 @@ public LadeProcessedMesswerteDTO ladeMesswerte(final String messstelleId) { log.debug("#ladeMesswerte {}", messstelleId); final Set messquerschnittNummern = messstelleService.getMessquerschnittNummern(messstelleId); - final AverageMeasurementValuesPerIntervalResponse response = this.ladeMesswerteIntervall(messquerschnittNummern); - final List intervalle = response.getIntervals(); + final MeasurementValuesResponse response = this.ladeMesswerteIntervall(messquerschnittNummern); + final List intervalle = response.getAverageMeasurementValuesPerIntervalResponse().getIntervals(); + final List totalSumPerMessquerschnittList = response.getTotalSumOfAllMessquerschnitte().getTotalSumPerMessquerschnittList(); final LadeProcessedMesswerteDTO processedZaehldaten = new LadeProcessedMesswerteDTO(); processedZaehldaten.setZaehldatenStepline(ganglinieService.ladeGanglinie(intervalle)); processedZaehldaten.setZaehldatenHeatmap(heatmapService.ladeHeatmap(intervalle)); processedZaehldaten.setZaehldatenTable(listenausgabeService.ladeListenausgabe(intervalle, messstelleService.isKfzMessstelle(messstelleId))); + processedZaehldaten.setListBelastungsplanMessquerschnitteDTO(new ListBelastungsplanMessquerschnitteDTO()); + processedZaehldaten.setListBelastungsplanMessquerschnitteDTO(belastungsplanService.ladeBelastungsplan(totalSumPerMessquerschnittList, messstelleId)); return processedZaehldaten; } - protected AverageMeasurementValuesPerIntervalResponse ladeMesswerteIntervall(final Set messquerschnittIds) { + protected MeasurementValuesResponse ladeMesswerteIntervall(final Set messquerschnittIds) { final GetMeasurementValuesRequest request = new GetMeasurementValuesRequest(); // Anhand der MesstellenId die entsprechenden MessquerschnittIds ermitteln request.setMessquerschnittIds(messquerschnittIds); request.setTagesTyp(GetMeasurementValuesRequest.TagesTypEnum.WERKTAG_DI_MI_DO); request.setZeitpunktStart(LocalDate.of(2024, 1, 1)); request.setZeitpunktEnde(LocalDate.of(2024, 1, 1)); - final Mono> response = messwerteApi + final Mono> response = messwerteApi .getAverageMeasurementValuesPerIntervalWithHttpInfo( request); - final ResponseEntity block = response.block(); + final ResponseEntity block = response.block(); if (ObjectUtils.isEmpty(block)) { log.error("ResponseEntity der Anfrage ist leer."); throw new ResourceNotFoundException(ERROR_MESSAGE); } - final AverageMeasurementValuesPerIntervalResponse body = block.getBody(); + final MeasurementValuesResponse body = block.getBody(); if (ObjectUtils.isEmpty(body)) { - log.error("Body der Anfrage ist leer."); + log.error("Body der Anfrage ist leer."); throw new ResourceNotFoundException(ERROR_MESSAGE); } - if (CollectionUtils.isEmpty(body.getIntervals())) { + if (ObjectUtils.isEmpty(body.getAverageMeasurementValuesPerIntervalResponse())) { + log.error("Body der Anfrage enthält keine AverageMeasurementValuesPerInterval."); + throw new ResourceNotFoundException(ERROR_MESSAGE); + } + if (ObjectUtils.isEmpty(body.getTotalSumOfAllMessquerschnitte())) { + log.error("Body der Anfrage enthält keine TotalSumOfAllMessquerschnitte."); + throw new ResourceNotFoundException(ERROR_MESSAGE); + } + if (CollectionUtils.isEmpty(body.getAverageMeasurementValuesPerIntervalResponse().getIntervals())) { log.error("Body der Anfrage enthält keine Messwerte."); throw new ResourceNotFoundException(ERROR_MESSAGE); } From 86679d8d0c26429fc208d9de57fce3a0e774dcfa Mon Sep 17 00:00:00 2001 From: DanielOber <145556033+DanielOber@users.noreply.github.com> Date: Tue, 19 Mar 2024 15:36:46 +0100 Subject: [PATCH 03/11] =?UTF-8?q?alle=20zahlen=20werden=20dymaisch=20ausge?= =?UTF-8?q?f=C3=BCllt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ListBelastungsplanMessquerschnitteDTO.java | 6 ++++++ .../services/messstelle/BelastungsplanService.java | 12 ++++++++++++ 2 files changed, 18 insertions(+) diff --git a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/ListBelastungsplanMessquerschnitteDTO.java b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/ListBelastungsplanMessquerschnitteDTO.java index 84f96446..aa8df53f 100644 --- a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/ListBelastungsplanMessquerschnitteDTO.java +++ b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/ListBelastungsplanMessquerschnitteDTO.java @@ -1,5 +1,6 @@ package de.muenchen.dave.domain.dtos.laden.messwerte; +import java.math.BigDecimal; import java.util.ArrayList; import java.util.List; import lombok.Data; @@ -8,4 +9,9 @@ public class ListBelastungsplanMessquerschnitteDTO { List ladeBelastungsplanMessquerschnittDataDTOList = new ArrayList<>(); String strassenname; + Integer totalKfz; + Integer totalSv; + Integer totalGv; + BigDecimal totalPercentSv; + BigDecimal totalPercentGv; } diff --git a/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java b/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java index 8f32fa5c..9a330701 100644 --- a/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java +++ b/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java @@ -22,6 +22,9 @@ public ListBelastungsplanMessquerschnitteDTO ladeBelastungsplan(List listBelastungsplanMessquerschnitteDTO = new ArrayList<>(); var messstelle = messstelleService.readMessstelleInfo(messstelleId); + Integer totalSumKfz = 0; + Integer totalSumSv = 0; + Integer totalSumGv = 0; //listBelastungsplanMessquerschnitteDTOClass.setStrassenname(messstelle.getStandort()); listBelastungsplanMessquerschnitteDTOClass.setStrassenname("Agnes-Pockels-Bogen"); totalSumOfAllMessquerschnitte.forEach(sumOfMessquerschnitt -> { @@ -35,6 +38,15 @@ public ListBelastungsplanMessquerschnitteDTO ladeBelastungsplan(List Date: Fri, 22 Mar 2024 19:15:08 +0100 Subject: [PATCH 04/11] =?UTF-8?q?rad=20Daten=20hinzugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...eBelastungsplanMessquerschnittDataDTO.java | 1 + ...ListBelastungsplanMessquerschnitteDTO.java | 4 ++ .../gen/model/TotalSumPerMessquerschnitt.java | 38 +++++++++++++++++-- .../messstelle/BelastungsplanService.java | 15 +++++--- src/main/resources/api/geodateneai.json | 16 +++++--- 5 files changed, 59 insertions(+), 15 deletions(-) diff --git a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/LadeBelastungsplanMessquerschnittDataDTO.java b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/LadeBelastungsplanMessquerschnittDataDTO.java index 550389a4..d98988a8 100644 --- a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/LadeBelastungsplanMessquerschnittDataDTO.java +++ b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/LadeBelastungsplanMessquerschnittDataDTO.java @@ -10,6 +10,7 @@ public class LadeBelastungsplanMessquerschnittDataDTO { private Integer sumKfz; private Integer sumSv; private Integer sumGv; + private Integer sumRad; private String direction; private BigDecimal percentSv; diff --git a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/ListBelastungsplanMessquerschnitteDTO.java b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/ListBelastungsplanMessquerschnitteDTO.java index aa8df53f..d5eb7020 100644 --- a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/ListBelastungsplanMessquerschnitteDTO.java +++ b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/ListBelastungsplanMessquerschnitteDTO.java @@ -1,6 +1,7 @@ package de.muenchen.dave.domain.dtos.laden.messwerte; import java.math.BigDecimal; +import java.time.LocalDate; import java.util.ArrayList; import java.util.List; import lombok.Data; @@ -9,9 +10,12 @@ public class ListBelastungsplanMessquerschnitteDTO { List ladeBelastungsplanMessquerschnittDataDTOList = new ArrayList<>(); String strassenname; + String messstelleId; + Integer stadtbezirkNummer; Integer totalKfz; Integer totalSv; Integer totalGv; + Integer totalRad; BigDecimal totalPercentSv; BigDecimal totalPercentGv; } diff --git a/src/main/java/de/muenchen/dave/geodateneai/gen/model/TotalSumPerMessquerschnitt.java b/src/main/java/de/muenchen/dave/geodateneai/gen/model/TotalSumPerMessquerschnitt.java index 59df8228..49471b1a 100644 --- a/src/main/java/de/muenchen/dave/geodateneai/gen/model/TotalSumPerMessquerschnitt.java +++ b/src/main/java/de/muenchen/dave/geodateneai/gen/model/TotalSumPerMessquerschnitt.java @@ -30,7 +30,8 @@ TotalSumPerMessquerschnitt.JSON_PROPERTY_MQ_ID, TotalSumPerMessquerschnitt.JSON_PROPERTY_SUM_KFZ, TotalSumPerMessquerschnitt.JSON_PROPERTY_SUM_SV, - TotalSumPerMessquerschnitt.JSON_PROPERTY_SUM_GV + TotalSumPerMessquerschnitt.JSON_PROPERTY_SUM_GV, + TotalSumPerMessquerschnitt.JSON_PROPERTY_SUM_RAD }) @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") public class TotalSumPerMessquerschnitt { @@ -46,6 +47,9 @@ public class TotalSumPerMessquerschnitt { public static final String JSON_PROPERTY_SUM_GV = "sumGv"; private Integer sumGv; + public static final String JSON_PROPERTY_SUM_RAD = "sumRad"; + private Integer sumRad; + public TotalSumPerMessquerschnitt() { } @@ -152,6 +156,32 @@ public void setSumGv(Integer sumGv) { this.sumGv = sumGv; } + + public TotalSumPerMessquerschnitt sumRad(Integer sumRad) { + + this.sumRad = sumRad; + return this; + } + + /** + * Get sumRad + * @return sumRad + **/ + @javax.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SUM_RAD) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public Integer getSumRad() { + return sumRad; + } + + + @JsonProperty(JSON_PROPERTY_SUM_RAD) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSumRad(Integer sumRad) { + this.sumRad = sumRad; + } + @Override public boolean equals(Object o) { if (this == o) { @@ -164,12 +194,13 @@ public boolean equals(Object o) { return Objects.equals(this.mqId, totalSumPerMessquerschnitt.mqId) && Objects.equals(this.sumKfz, totalSumPerMessquerschnitt.sumKfz) && Objects.equals(this.sumSv, totalSumPerMessquerschnitt.sumSv) && - Objects.equals(this.sumGv, totalSumPerMessquerschnitt.sumGv); + Objects.equals(this.sumGv, totalSumPerMessquerschnitt.sumGv) && + Objects.equals(this.sumRad, totalSumPerMessquerschnitt.sumRad); } @Override public int hashCode() { - return Objects.hash(mqId, sumKfz, sumSv, sumGv); + return Objects.hash(mqId, sumKfz, sumSv, sumGv, sumRad); } @Override @@ -180,6 +211,7 @@ public String toString() { sb.append(" sumKfz: ").append(toIndentedString(sumKfz)).append("\n"); sb.append(" sumSv: ").append(toIndentedString(sumSv)).append("\n"); sb.append(" sumGv: ").append(toIndentedString(sumGv)).append("\n"); + sb.append(" sumRad: ").append(toIndentedString(sumRad)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java b/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java index 9a330701..ef7c6636 100644 --- a/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java +++ b/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java @@ -22,28 +22,31 @@ public ListBelastungsplanMessquerschnitteDTO ladeBelastungsplan(List listBelastungsplanMessquerschnitteDTO = new ArrayList<>(); var messstelle = messstelleService.readMessstelleInfo(messstelleId); - Integer totalSumKfz = 0; - Integer totalSumSv = 0; - Integer totalSumGv = 0; + listBelastungsplanMessquerschnitteDTOClass.setMessstelleId(messstelleId); + listBelastungsplanMessquerschnitteDTOClass.setStadtbezirkNummer(messstelle.getStadtbezirkNummer()); //listBelastungsplanMessquerschnitteDTOClass.setStrassenname(messstelle.getStandort()); + //listBelastungsplanMessquerschnitteDTOClass.setZeitraum(messstelle.); listBelastungsplanMessquerschnitteDTOClass.setStrassenname("Agnes-Pockels-Bogen"); totalSumOfAllMessquerschnitte.forEach(sumOfMessquerschnitt -> { LadeBelastungsplanMessquerschnittDataDTO ladeBelastungsplanMessquerschnittDataDTO = new LadeBelastungsplanMessquerschnittDataDTO(); ladeBelastungsplanMessquerschnittDataDTO.setSumKfz(sumOfMessquerschnitt.getSumKfz()); ladeBelastungsplanMessquerschnittDataDTO.setSumGv(sumOfMessquerschnitt.getSumGv()); ladeBelastungsplanMessquerschnittDataDTO.setSumSv(sumOfMessquerschnitt.getSumSv()); + ladeBelastungsplanMessquerschnittDataDTO.setSumRad(sumOfMessquerschnitt.getSumRad()); ladeBelastungsplanMessquerschnittDataDTO.setPercentGV(calcPercentage(sumOfMessquerschnitt.getSumGv(), sumOfMessquerschnitt.getSumKfz())); ladeBelastungsplanMessquerschnittDataDTO.setPercentSv(calcPercentage(sumOfMessquerschnitt.getSumSv(), sumOfMessquerschnitt.getSumKfz())); ladeBelastungsplanMessquerschnittDataDTO.setMqId(sumOfMessquerschnitt.getMqId()); ladeBelastungsplanMessquerschnittDataDTO.setDirection(getDirection(messstelle, sumOfMessquerschnitt.getMqId())); listBelastungsplanMessquerschnitteDTO.add(ladeBelastungsplanMessquerschnittDataDTO); }); - totalSumKfz = totalSumOfAllMessquerschnitte.stream().mapToInt(TotalSumPerMessquerschnitt::getSumKfz).sum(); - totalSumSv = totalSumOfAllMessquerschnitte.stream().mapToInt(TotalSumPerMessquerschnitt::getSumSv).sum(); - totalSumGv = totalSumOfAllMessquerschnitte.stream().mapToInt(TotalSumPerMessquerschnitt::getSumGv).sum(); + Integer totalSumKfz = totalSumOfAllMessquerschnitte.stream().mapToInt(TotalSumPerMessquerschnitt::getSumKfz).sum(); + Integer totalSumSv = totalSumOfAllMessquerschnitte.stream().mapToInt(TotalSumPerMessquerschnitt::getSumSv).sum(); + Integer totalSumGv = totalSumOfAllMessquerschnitte.stream().mapToInt(TotalSumPerMessquerschnitt::getSumGv).sum(); + Integer totalSumRad = totalSumOfAllMessquerschnitte.stream().mapToInt(TotalSumPerMessquerschnitt::getSumRad).sum(); listBelastungsplanMessquerschnitteDTOClass.setTotalKfz(totalSumKfz); listBelastungsplanMessquerschnitteDTOClass.setTotalSv(totalSumSv); listBelastungsplanMessquerschnitteDTOClass.setTotalGv(totalSumGv); + listBelastungsplanMessquerschnitteDTOClass.setTotalRad(totalSumRad); Integer totalSum = totalSumGv + totalSumKfz + totalSumSv; listBelastungsplanMessquerschnitteDTOClass.setTotalPercentGv(calcPercentage(totalSumGv, totalSum)); listBelastungsplanMessquerschnitteDTOClass.setTotalPercentSv(calcPercentage(totalSumSv, totalSum)); diff --git a/src/main/resources/api/geodateneai.json b/src/main/resources/api/geodateneai.json index 901be928..472b9fd3 100644 --- a/src/main/resources/api/geodateneai.json +++ b/src/main/resources/api/geodateneai.json @@ -404,10 +404,10 @@ "flaecheQm": { "type": "number" }, - "ycoordinate": { + "xcoordinate": { "type": "number" }, - "xcoordinate": { + "ycoordinate": { "type": "number" } } @@ -754,6 +754,10 @@ "sumGv": { "type": "integer", "format": "int32" + }, + "sumRad": { + "type": "integer", + "format": "int32" } } }, @@ -813,11 +817,11 @@ "type": "integer", "format": "int32" }, - "ycoordinate": { + "xcoordinate": { "type": "number", "format": "double" }, - "xcoordinate": { + "ycoordinate": { "type": "number", "format": "double" } @@ -876,11 +880,11 @@ "$ref": "#/components/schemas/MessquerschnittDto" } }, - "ycoordinate": { + "xcoordinate": { "type": "number", "format": "double" }, - "xcoordinate": { + "ycoordinate": { "type": "number", "format": "double" } From ac71398022c8ecdf5e8cde8b23344d398c7ea975 Mon Sep 17 00:00:00 2001 From: DanielOber <145556033+DanielOber@users.noreply.github.com> Date: Mon, 25 Mar 2024 11:23:32 +0100 Subject: [PATCH 05/11] umbennenung files --- ...=> BelastungsplanMessquerschnitteDTO.java} | 3 +- .../messwerte/LadeProcessedMesswerteDTO.java | 2 +- .../messstelle/BelastungsplanService.java | 39 ++++++++++--------- .../services/messstelle/MesswerteService.java | 7 +--- 4 files changed, 24 insertions(+), 27 deletions(-) rename src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/{ListBelastungsplanMessquerschnitteDTO.java => BelastungsplanMessquerschnitteDTO.java} (86%) diff --git a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/ListBelastungsplanMessquerschnitteDTO.java b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/BelastungsplanMessquerschnitteDTO.java similarity index 86% rename from src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/ListBelastungsplanMessquerschnitteDTO.java rename to src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/BelastungsplanMessquerschnitteDTO.java index d5eb7020..0c94e569 100644 --- a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/ListBelastungsplanMessquerschnitteDTO.java +++ b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/BelastungsplanMessquerschnitteDTO.java @@ -1,13 +1,12 @@ package de.muenchen.dave.domain.dtos.laden.messwerte; import java.math.BigDecimal; -import java.time.LocalDate; import java.util.ArrayList; import java.util.List; import lombok.Data; @Data -public class ListBelastungsplanMessquerschnitteDTO { +public class BelastungsplanMessquerschnitteDTO { List ladeBelastungsplanMessquerschnittDataDTOList = new ArrayList<>(); String strassenname; String messstelleId; diff --git a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/LadeProcessedMesswerteDTO.java b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/LadeProcessedMesswerteDTO.java index 1a41841b..ee05663f 100644 --- a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/LadeProcessedMesswerteDTO.java +++ b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/LadeProcessedMesswerteDTO.java @@ -18,5 +18,5 @@ public class LadeProcessedMesswerteDTO implements Serializable { LadeZaehldatenHeatmapDTO zaehldatenHeatmap; - ListBelastungsplanMessquerschnitteDTO listBelastungsplanMessquerschnitteDTO; + BelastungsplanMessquerschnitteDTO listBelastungsplanMessquerschnitteDTO; } diff --git a/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java b/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java index ef7c6636..b7c5fb4d 100644 --- a/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java +++ b/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java @@ -1,7 +1,7 @@ package de.muenchen.dave.services.messstelle; +import de.muenchen.dave.domain.dtos.laden.messwerte.BelastungsplanMessquerschnitteDTO; import de.muenchen.dave.domain.dtos.laden.messwerte.LadeBelastungsplanMessquerschnittDataDTO; -import de.muenchen.dave.domain.dtos.laden.messwerte.ListBelastungsplanMessquerschnitteDTO; import de.muenchen.dave.domain.dtos.messstelle.ReadMessquerschnittDTO; import de.muenchen.dave.domain.dtos.messstelle.ReadMessstelleInfoDTO; import de.muenchen.dave.geodateneai.gen.model.TotalSumPerMessquerschnitt; @@ -18,15 +18,15 @@ @Service public class BelastungsplanService { private final MessstelleService messstelleService; - public ListBelastungsplanMessquerschnitteDTO ladeBelastungsplan(List totalSumOfAllMessquerschnitte, String messstelleId) { - ListBelastungsplanMessquerschnitteDTO listBelastungsplanMessquerschnitteDTOClass = new ListBelastungsplanMessquerschnitteDTO(); - List listBelastungsplanMessquerschnitteDTO = new ArrayList<>(); + + public BelastungsplanMessquerschnitteDTO ladeBelastungsplan(List totalSumOfAllMessquerschnitte, String messstelleId) { + BelastungsplanMessquerschnitteDTO belastungsplanMessquerschnitteDTO = new BelastungsplanMessquerschnitteDTO(); + List listBelastungsplanMessquerschnitteDTO = new ArrayList<>(); var messstelle = messstelleService.readMessstelleInfo(messstelleId); - listBelastungsplanMessquerschnitteDTOClass.setMessstelleId(messstelleId); - listBelastungsplanMessquerschnitteDTOClass.setStadtbezirkNummer(messstelle.getStadtbezirkNummer()); - //listBelastungsplanMessquerschnitteDTOClass.setStrassenname(messstelle.getStandort()); - //listBelastungsplanMessquerschnitteDTOClass.setZeitraum(messstelle.); - listBelastungsplanMessquerschnitteDTOClass.setStrassenname("Agnes-Pockels-Bogen"); + belastungsplanMessquerschnitteDTO.setMessstelleId(messstelleId); + belastungsplanMessquerschnitteDTO.setStadtbezirkNummer(messstelle.getStadtbezirkNummer()); + belastungsplanMessquerschnitteDTO.setStrassenname(messstelle.getStandort()); + belastungsplanMessquerschnitteDTO.setStrassenname("Agnes-Pockels-Bogen"); totalSumOfAllMessquerschnitte.forEach(sumOfMessquerschnitt -> { LadeBelastungsplanMessquerschnittDataDTO ladeBelastungsplanMessquerschnittDataDTO = new LadeBelastungsplanMessquerschnittDataDTO(); ladeBelastungsplanMessquerschnittDataDTO.setSumKfz(sumOfMessquerschnitt.getSumKfz()); @@ -43,20 +43,21 @@ public ListBelastungsplanMessquerschnitteDTO ladeBelastungsplan(List Objects.equals(readMessquerschnittDTO.getMqId(), messquerschnittId)).collect(Collectors.toList()).get(0); - return messquerschnittDto.getFahrtrichtung(); + ReadMessquerschnittDTO messquerschnittDto = messstelle.getMessquerschnitte().stream() + .filter(readMessquerschnittDTO -> Objects.equals(readMessquerschnittDTO.getMqId(), messquerschnittId)).collect(Collectors.toList()).get(0); + return messquerschnittDto.getFahrtrichtung(); } protected BigDecimal calcPercentage(Integer part, Integer total) { diff --git a/src/main/java/de/muenchen/dave/services/messstelle/MesswerteService.java b/src/main/java/de/muenchen/dave/services/messstelle/MesswerteService.java index 126b0056..5982c910 100644 --- a/src/main/java/de/muenchen/dave/services/messstelle/MesswerteService.java +++ b/src/main/java/de/muenchen/dave/services/messstelle/MesswerteService.java @@ -1,18 +1,15 @@ package de.muenchen.dave.services.messstelle; +import de.muenchen.dave.domain.dtos.laden.messwerte.BelastungsplanMessquerschnitteDTO; import de.muenchen.dave.domain.dtos.laden.messwerte.LadeProcessedMesswerteDTO; -import de.muenchen.dave.domain.dtos.laden.messwerte.ListBelastungsplanMessquerschnitteDTO; import de.muenchen.dave.domain.dtos.messstelle.MessstelleOptionsDTO; import de.muenchen.dave.exceptions.BadRequestException; import de.muenchen.dave.exceptions.ResourceNotFoundException; import de.muenchen.dave.geodateneai.gen.api.MesswerteApi; -import de.muenchen.dave.geodateneai.gen.model.AverageMeasurementValuesPerIntervalResponse; import de.muenchen.dave.geodateneai.gen.model.GetMeasurementValuesRequest; import de.muenchen.dave.geodateneai.gen.model.MeasurementValuesPerInterval; import de.muenchen.dave.geodateneai.gen.model.MeasurementValuesResponse; import de.muenchen.dave.geodateneai.gen.model.TotalSumPerMessquerschnitt; -import java.time.LocalDate; -import java.util.ArrayList; import de.muenchen.dave.util.OptionsUtil; import java.util.List; import lombok.AllArgsConstructor; @@ -57,7 +54,7 @@ public LadeProcessedMesswerteDTO ladeMesswerte(final String messstelleId, final processedZaehldaten.setZaehldatenStepline(ganglinieService.ladeGanglinie(intervals, options)); processedZaehldaten.setZaehldatenHeatmap(heatmapService.ladeHeatmap(intervals, options)); processedZaehldaten.setZaehldatenTable(listenausgabeService.ladeListenausgabe(intervals, messstelleService.isKfzMessstelle(messstelleId), options)); - processedZaehldaten.setListBelastungsplanMessquerschnitteDTO(new ListBelastungsplanMessquerschnitteDTO()); + processedZaehldaten.setListBelastungsplanMessquerschnitteDTO(new BelastungsplanMessquerschnitteDTO()); processedZaehldaten.setListBelastungsplanMessquerschnitteDTO(belastungsplanService.ladeBelastungsplan(totalSumPerMessquerschnittList, messstelleId)); return processedZaehldaten; } From 8e5d7d73d9858583a04ca0ec703824e48128fdde Mon Sep 17 00:00:00 2001 From: DanielOber <145556033+DanielOber@users.noreply.github.com> Date: Mon, 25 Mar 2024 16:28:58 +0100 Subject: [PATCH 06/11] =?UTF-8?q?unn=C3=B6tige=20variable=20entfernt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../muenchen/dave/services/messstelle/BelastungsplanService.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java b/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java index b7c5fb4d..56dfe887 100644 --- a/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java +++ b/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java @@ -26,7 +26,6 @@ public BelastungsplanMessquerschnitteDTO ladeBelastungsplan(List { LadeBelastungsplanMessquerschnittDataDTO ladeBelastungsplanMessquerschnittDataDTO = new LadeBelastungsplanMessquerschnittDataDTO(); ladeBelastungsplanMessquerschnittDataDTO.setSumKfz(sumOfMessquerschnitt.getSumKfz()); From 9a65f5eb8efbf7f999c0b44abad6c9621d25e810 Mon Sep 17 00:00:00 2001 From: DanielOber <145556033+DanielOber@users.noreply.github.com> Date: Mon, 25 Mar 2024 19:42:06 +0100 Subject: [PATCH 07/11] =?UTF-8?q?test=20f=C3=BCr=20belastungsplan=20hinzug?= =?UTF-8?q?ef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../messstelle/BelastungsplanServiceTest.java | 170 ++++++++++++++++++ 1 file changed, 170 insertions(+) create mode 100644 src/test/java/de/muenchen/dave/services/messstelle/BelastungsplanServiceTest.java diff --git a/src/test/java/de/muenchen/dave/services/messstelle/BelastungsplanServiceTest.java b/src/test/java/de/muenchen/dave/services/messstelle/BelastungsplanServiceTest.java new file mode 100644 index 00000000..dd081357 --- /dev/null +++ b/src/test/java/de/muenchen/dave/services/messstelle/BelastungsplanServiceTest.java @@ -0,0 +1,170 @@ +package de.muenchen.dave.services.messstelle; + +import de.muenchen.dave.domain.dtos.laden.BelastungsplanDataDTO; +import de.muenchen.dave.domain.dtos.laden.messwerte.BelastungsplanMessquerschnitteDTO; +import de.muenchen.dave.domain.dtos.laden.messwerte.LadeBelastungsplanMessquerschnittDataDTO; +import de.muenchen.dave.domain.dtos.messstelle.ReadMessquerschnittDTO; +import de.muenchen.dave.domain.dtos.messstelle.ReadMessstelleInfoDTO; +import de.muenchen.dave.geodateneai.gen.model.TotalSumPerMessquerschnitt; +import java.math.BigDecimal; +import java.time.LocalDate; +import java.util.ArrayList; +import java.util.List; +import org.assertj.core.api.Assertions; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.Mock; +import org.mockito.junit.jupiter.MockitoExtension; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.mockito.Mockito.doReturn; +import static org.mockito.Mockito.when; + +import static org.mockito.ArgumentMatchers.anyString; + + + +@ExtendWith(MockitoExtension.class) +class BelastungsplanServiceTest { + @Mock + MessstelleService messstelleService; + private BelastungsplanService belastungsplanService; + + @BeforeEach + void setup() { + belastungsplanService = new BelastungsplanService(messstelleService); + } + + @Test + void ladeBelastungsplan() { + // setup + List totalSumOfAllMessquerschnitte = new ArrayList<>(); + TotalSumPerMessquerschnitt totalSumPerMessquerschnitt1 = new TotalSumPerMessquerschnitt(); + totalSumPerMessquerschnitt1.setSumGv(50); + totalSumPerMessquerschnitt1.setSumKfz(200); + totalSumPerMessquerschnitt1.setSumRad(20); + totalSumPerMessquerschnitt1.setSumSv(30); + totalSumPerMessquerschnitt1.setMqId("1"); + + TotalSumPerMessquerschnitt totalSumPerMessquerschnitt2 = new TotalSumPerMessquerschnitt(); + totalSumPerMessquerschnitt2.setSumGv(30); + totalSumPerMessquerschnitt2.setSumKfz(100); + totalSumPerMessquerschnitt2.setSumRad(10); + totalSumPerMessquerschnitt2.setSumSv(50); + totalSumPerMessquerschnitt2.setMqId("2"); + totalSumOfAllMessquerschnitte.add(totalSumPerMessquerschnitt1); + totalSumOfAllMessquerschnitte.add(totalSumPerMessquerschnitt2); + + + // expected + LadeBelastungsplanMessquerschnittDataDTO ladeBelastungsplanMessquerschnittDataDTO1 = new LadeBelastungsplanMessquerschnittDataDTO(); + ladeBelastungsplanMessquerschnittDataDTO1.setSumGv(50); + ladeBelastungsplanMessquerschnittDataDTO1.setSumKfz(200); + ladeBelastungsplanMessquerschnittDataDTO1.setSumRad(20); + ladeBelastungsplanMessquerschnittDataDTO1.setSumSv(30); + ladeBelastungsplanMessquerschnittDataDTO1.setMqId("1"); + ladeBelastungsplanMessquerschnittDataDTO1.setPercentSv(new BigDecimal("15.0")); + ladeBelastungsplanMessquerschnittDataDTO1.setPercentGV(new BigDecimal("25.0")); + ladeBelastungsplanMessquerschnittDataDTO1.setDirection("O"); + + LadeBelastungsplanMessquerschnittDataDTO ladeBelastungsplanMessquerschnittDataDTO2 = new LadeBelastungsplanMessquerschnittDataDTO(); + ladeBelastungsplanMessquerschnittDataDTO2.setSumGv(30); + ladeBelastungsplanMessquerschnittDataDTO2.setSumKfz(100); + ladeBelastungsplanMessquerschnittDataDTO2.setSumRad(10); + ladeBelastungsplanMessquerschnittDataDTO2.setSumSv(50); + ladeBelastungsplanMessquerschnittDataDTO2.setMqId("2"); + ladeBelastungsplanMessquerschnittDataDTO2.setPercentSv(new BigDecimal("50.0")); + ladeBelastungsplanMessquerschnittDataDTO2.setPercentGV(new BigDecimal("30.0")); + ladeBelastungsplanMessquerschnittDataDTO2.setDirection("W"); + + List ladeBelastungsplanMessquerschnittDataDTOS = new ArrayList<>(); + ladeBelastungsplanMessquerschnittDataDTOS.add(ladeBelastungsplanMessquerschnittDataDTO1); + ladeBelastungsplanMessquerschnittDataDTOS.add(ladeBelastungsplanMessquerschnittDataDTO2); + + BelastungsplanMessquerschnitteDTO expected = new BelastungsplanMessquerschnitteDTO(); + expected.setLadeBelastungsplanMessquerschnittDataDTOList(ladeBelastungsplanMessquerschnittDataDTOS); + expected.setTotalGv(80); + expected.setTotalKfz(300); + expected.setTotalSv(80); + expected.setTotalRad(30); + expected.setTotalPercentSv(new BigDecimal("17.4")); + expected.setTotalPercentGv(new BigDecimal("17.4")); + expected.setStrassenname("Hauptstraße 1"); + expected.setStadtbezirkNummer(1); + expected.setMstId("13"); + + doReturn(getMessstelle()).when(messstelleService).readMessstelleInfo(anyString()); + //result + var result = belastungsplanService.ladeBelastungsplan(totalSumOfAllMessquerschnitte, "123"); + + Assertions.assertThat(result) + .isNotNull() + .usingRecursiveComparison() + .isEqualTo(expected); + } + + @Test + void calcPercentage() { + var result = belastungsplanService.calcPercentage(25, 100); + var expected = new BigDecimal("25.0"); + Assertions.assertThat(result).isEqualTo(expected); + } + + @Test + void getDirection() { + var result = belastungsplanService.getDirection(getMessstelle(), "1"); + var expected = "O"; + Assertions.assertThat(result).isEqualTo(expected); + } + + ReadMessstelleInfoDTO getMessstelle() { + ReadMessstelleInfoDTO readMessstelleInfoDTO = new ReadMessstelleInfoDTO(); + readMessstelleInfoDTO.setId("123"); + readMessstelleInfoDTO.setMstId("13"); + readMessstelleInfoDTO.setStandort("Hauptstraße 1"); + readMessstelleInfoDTO.setStadtbezirk("Mitte"); + readMessstelleInfoDTO.setStadtbezirkNummer(1); + readMessstelleInfoDTO.setFahrzeugKlassen("PKW, LKW"); + readMessstelleInfoDTO.setDetektierteVerkehrsarten("PKW, LKW, Motorrad"); + readMessstelleInfoDTO.setHersteller("Messung GmbH"); + readMessstelleInfoDTO.setLongitude(10.12345); + readMessstelleInfoDTO.setLatitude(50.67890); + readMessstelleInfoDTO.setDatumLetztePlausibleMessung(LocalDate.now()); + readMessstelleInfoDTO.setRealisierungsdatum(LocalDate.of(2022, 1, 1)); + readMessstelleInfoDTO.setAbbaudatum(LocalDate.of(2023, 12, 31)); + readMessstelleInfoDTO.setKommentar("Messstelle an belebter Hauptstraße"); + + ReadMessquerschnittDTO readMessquerschnittDTO1 = new ReadMessquerschnittDTO(); + readMessquerschnittDTO1.setId("1001"); + readMessquerschnittDTO1.setMqId("1"); + readMessquerschnittDTO1.setLongitude(9.1234); + readMessquerschnittDTO1.setLatitude(48.5678); + readMessquerschnittDTO1.setStrassenname("Musterstraße"); + readMessquerschnittDTO1.setLageMessquerschnitt("außerorts"); + readMessquerschnittDTO1.setFahrtrichtung("O"); + readMessquerschnittDTO1.setAnzahlFahrspuren(3); + readMessquerschnittDTO1.setAnzahlDetektoren(6); + readMessquerschnittDTO1.setStandort("Autobahnauffahrt"); + + ReadMessquerschnittDTO readMessquerschnittDTO2 = new ReadMessquerschnittDTO(); + readMessquerschnittDTO2.setId("112312"); + readMessquerschnittDTO2.setMqId("2"); + readMessquerschnittDTO2.setLongitude(10.5678); + readMessquerschnittDTO2.setLatitude(49.8765); + readMessquerschnittDTO2.setStrassenname("Teststraße"); + readMessquerschnittDTO2.setLageMessquerschnitt("innerorts"); + readMessquerschnittDTO2.setFahrtrichtung("W"); + readMessquerschnittDTO2.setAnzahlFahrspuren(2); + readMessquerschnittDTO2.setAnzahlDetektoren(4); + readMessquerschnittDTO2.setStandort("Kreuzung"); + + + List listMessquerschnitte = new ArrayList<>(); + listMessquerschnitte.add(readMessquerschnittDTO1); + listMessquerschnitte.add(readMessquerschnittDTO2); + readMessstelleInfoDTO.setMessquerschnitte(listMessquerschnitte); + + return readMessstelleInfoDTO; + } +} From 27f8180e5f59541923a991f72bc513e263808c9c Mon Sep 17 00:00:00 2001 From: DanielOber <145556033+DanielOber@users.noreply.github.com> Date: Mon, 25 Mar 2024 19:42:29 +0100 Subject: [PATCH 08/11] =?UTF-8?q?review=20eingef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BelastungsplanMessquerschnitteDTO.java | 2 +- .../messstelle/BelastungsplanService.java | 24 +++++++++---------- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/BelastungsplanMessquerschnitteDTO.java b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/BelastungsplanMessquerschnitteDTO.java index 0c94e569..1d20571c 100644 --- a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/BelastungsplanMessquerschnitteDTO.java +++ b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/BelastungsplanMessquerschnitteDTO.java @@ -9,7 +9,7 @@ public class BelastungsplanMessquerschnitteDTO { List ladeBelastungsplanMessquerschnittDataDTOList = new ArrayList<>(); String strassenname; - String messstelleId; + String mstId; Integer stadtbezirkNummer; Integer totalKfz; Integer totalSv; diff --git a/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java b/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java index 56dfe887..ff3ebfd0 100644 --- a/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java +++ b/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java @@ -19,11 +19,11 @@ public class BelastungsplanService { private final MessstelleService messstelleService; - public BelastungsplanMessquerschnitteDTO ladeBelastungsplan(List totalSumOfAllMessquerschnitte, String messstelleId) { - BelastungsplanMessquerschnitteDTO belastungsplanMessquerschnitteDTO = new BelastungsplanMessquerschnitteDTO(); - List listBelastungsplanMessquerschnitteDTO = new ArrayList<>(); - var messstelle = messstelleService.readMessstelleInfo(messstelleId); - belastungsplanMessquerschnitteDTO.setMessstelleId(messstelleId); + public BelastungsplanMessquerschnitteDTO ladeBelastungsplan(final List totalSumOfAllMessquerschnitte, final String messstelleId) { + final BelastungsplanMessquerschnitteDTO belastungsplanMessquerschnitteDTO = new BelastungsplanMessquerschnitteDTO(); + final List listBelastungsplanMessquerschnitteDTO = new ArrayList<>(); + final ReadMessstelleInfoDTO messstelle = messstelleService.readMessstelleInfo(messstelleId); + belastungsplanMessquerschnitteDTO.setMstId(messstelle.getMstId()); belastungsplanMessquerschnitteDTO.setStadtbezirkNummer(messstelle.getStadtbezirkNummer()); belastungsplanMessquerschnitteDTO.setStrassenname(messstelle.getStandort()); totalSumOfAllMessquerschnitte.forEach(sumOfMessquerschnitt -> { @@ -38,28 +38,28 @@ public BelastungsplanMessquerschnitteDTO ladeBelastungsplan(List Objects.equals(readMessquerschnittDTO.getMqId(), messquerschnittId)).collect(Collectors.toList()).get(0); return messquerschnittDto.getFahrtrichtung(); } - protected BigDecimal calcPercentage(Integer part, Integer total) { + protected BigDecimal calcPercentage(final Integer part, final Integer total) { BigDecimal partInBigDecimal = BigDecimal.valueOf(part); BigDecimal totalInBigDecimal = BigDecimal.valueOf(total); return partInBigDecimal.divide(totalInBigDecimal, 3, RoundingMode.HALF_UP).scaleByPowerOfTen(2); From 4de86c2a136685a9c879856e5313931fae7d6c35 Mon Sep 17 00:00:00 2001 From: DanielOber <145556033+DanielOber@users.noreply.github.com> Date: Mon, 25 Mar 2024 19:47:08 +0100 Subject: [PATCH 09/11] =?UTF-8?q?Serializable=20hinzugef=C3=BCgt=20und=20p?= =?UTF-8?q?rivate=20gemacht?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BelastungsplanMessquerschnitteDTO.java | 23 ++++++++++--------- ...eBelastungsplanMessquerschnittDataDTO.java | 3 ++- 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/BelastungsplanMessquerschnitteDTO.java b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/BelastungsplanMessquerschnitteDTO.java index 1d20571c..fe16ccc0 100644 --- a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/BelastungsplanMessquerschnitteDTO.java +++ b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/BelastungsplanMessquerschnitteDTO.java @@ -1,20 +1,21 @@ package de.muenchen.dave.domain.dtos.laden.messwerte; +import java.io.Serializable; import java.math.BigDecimal; import java.util.ArrayList; import java.util.List; import lombok.Data; @Data -public class BelastungsplanMessquerschnitteDTO { - List ladeBelastungsplanMessquerschnittDataDTOList = new ArrayList<>(); - String strassenname; - String mstId; - Integer stadtbezirkNummer; - Integer totalKfz; - Integer totalSv; - Integer totalGv; - Integer totalRad; - BigDecimal totalPercentSv; - BigDecimal totalPercentGv; +public class BelastungsplanMessquerschnitteDTO implements Serializable { + private List ladeBelastungsplanMessquerschnittDataDTOList; + private String strassenname; + private String mstId; + private Integer stadtbezirkNummer; + private Integer totalKfz; + private Integer totalSv; + private Integer totalGv; + private Integer totalRad; + private BigDecimal totalPercentSv; + private BigDecimal totalPercentGv; } diff --git a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/LadeBelastungsplanMessquerschnittDataDTO.java b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/LadeBelastungsplanMessquerschnittDataDTO.java index d98988a8..bc862abc 100644 --- a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/LadeBelastungsplanMessquerschnittDataDTO.java +++ b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/LadeBelastungsplanMessquerschnittDataDTO.java @@ -1,10 +1,11 @@ package de.muenchen.dave.domain.dtos.laden.messwerte; +import java.io.Serializable; import java.math.BigDecimal; import lombok.Data; @Data -public class LadeBelastungsplanMessquerschnittDataDTO { +public class LadeBelastungsplanMessquerschnittDataDTO implements Serializable { private String mqId; private Integer sumKfz; From 30a939c8a0277c3868fab5d65f7b84460684b0a4 Mon Sep 17 00:00:00 2001 From: DanielOber <145556033+DanielOber@users.noreply.github.com> Date: Mon, 25 Mar 2024 19:49:07 +0100 Subject: [PATCH 10/11] spotless --- .../BelastungsplanMessquerschnitteDTO.java | 1 - .../services/messstelle/BelastungsplanService.java | 3 ++- .../messstelle/BelastungsplanServiceTest.java | 14 +++----------- 3 files changed, 5 insertions(+), 13 deletions(-) diff --git a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/BelastungsplanMessquerschnitteDTO.java b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/BelastungsplanMessquerschnitteDTO.java index fe16ccc0..4c4cf74a 100644 --- a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/BelastungsplanMessquerschnitteDTO.java +++ b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/BelastungsplanMessquerschnitteDTO.java @@ -2,7 +2,6 @@ import java.io.Serializable; import java.math.BigDecimal; -import java.util.ArrayList; import java.util.List; import lombok.Data; diff --git a/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java b/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java index ff3ebfd0..5f9045d0 100644 --- a/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java +++ b/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java @@ -19,7 +19,8 @@ public class BelastungsplanService { private final MessstelleService messstelleService; - public BelastungsplanMessquerschnitteDTO ladeBelastungsplan(final List totalSumOfAllMessquerschnitte, final String messstelleId) { + public BelastungsplanMessquerschnitteDTO ladeBelastungsplan(final List totalSumOfAllMessquerschnitte, + final String messstelleId) { final BelastungsplanMessquerschnitteDTO belastungsplanMessquerschnitteDTO = new BelastungsplanMessquerschnitteDTO(); final List listBelastungsplanMessquerschnitteDTO = new ArrayList<>(); final ReadMessstelleInfoDTO messstelle = messstelleService.readMessstelleInfo(messstelleId); diff --git a/src/test/java/de/muenchen/dave/services/messstelle/BelastungsplanServiceTest.java b/src/test/java/de/muenchen/dave/services/messstelle/BelastungsplanServiceTest.java index dd081357..83de4b57 100644 --- a/src/test/java/de/muenchen/dave/services/messstelle/BelastungsplanServiceTest.java +++ b/src/test/java/de/muenchen/dave/services/messstelle/BelastungsplanServiceTest.java @@ -1,6 +1,8 @@ package de.muenchen.dave.services.messstelle; -import de.muenchen.dave.domain.dtos.laden.BelastungsplanDataDTO; +import static org.mockito.ArgumentMatchers.anyString; +import static org.mockito.Mockito.doReturn; + import de.muenchen.dave.domain.dtos.laden.messwerte.BelastungsplanMessquerschnitteDTO; import de.muenchen.dave.domain.dtos.laden.messwerte.LadeBelastungsplanMessquerschnittDataDTO; import de.muenchen.dave.domain.dtos.messstelle.ReadMessquerschnittDTO; @@ -16,14 +18,6 @@ import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertTrue; -import static org.mockito.Mockito.doReturn; -import static org.mockito.Mockito.when; - -import static org.mockito.ArgumentMatchers.anyString; - - @ExtendWith(MockitoExtension.class) class BelastungsplanServiceTest { @@ -56,7 +50,6 @@ void ladeBelastungsplan() { totalSumOfAllMessquerschnitte.add(totalSumPerMessquerschnitt1); totalSumOfAllMessquerschnitte.add(totalSumPerMessquerschnitt2); - // expected LadeBelastungsplanMessquerschnittDataDTO ladeBelastungsplanMessquerschnittDataDTO1 = new LadeBelastungsplanMessquerschnittDataDTO(); ladeBelastungsplanMessquerschnittDataDTO1.setSumGv(50); @@ -159,7 +152,6 @@ ReadMessstelleInfoDTO getMessstelle() { readMessquerschnittDTO2.setAnzahlDetektoren(4); readMessquerschnittDTO2.setStandort("Kreuzung"); - List listMessquerschnitte = new ArrayList<>(); listMessquerschnitte.add(readMessquerschnittDTO1); listMessquerschnitte.add(readMessquerschnittDTO2); From 804998a64f7886d4cb1a846c935ae611f4bab930 Mon Sep 17 00:00:00 2001 From: DanielOber <145556033+DanielOber@users.noreply.github.com> Date: Tue, 26 Mar 2024 10:22:17 +0100 Subject: [PATCH 11/11] =?UTF-8?q?header=20hinzugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../laden/messwerte/BelastungsplanMessquerschnitteDTO.java | 4 ++++ .../messwerte/LadeBelastungsplanMessquerschnittDataDTO.java | 4 ++++ .../dave/services/messstelle/BelastungsplanService.java | 4 ++++ .../dave/services/messstelle/BelastungsplanServiceTest.java | 4 ++++ 4 files changed, 16 insertions(+) diff --git a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/BelastungsplanMessquerschnitteDTO.java b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/BelastungsplanMessquerschnitteDTO.java index 4c4cf74a..40349f93 100644 --- a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/BelastungsplanMessquerschnitteDTO.java +++ b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/BelastungsplanMessquerschnitteDTO.java @@ -1,3 +1,7 @@ +/* + * Copyright (c): it@M - Dienstleister für Informations- und Telekommunikationstechnik + * der Landeshauptstadt München, 2020 + */ package de.muenchen.dave.domain.dtos.laden.messwerte; import java.io.Serializable; diff --git a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/LadeBelastungsplanMessquerschnittDataDTO.java b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/LadeBelastungsplanMessquerschnittDataDTO.java index bc862abc..2d58f278 100644 --- a/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/LadeBelastungsplanMessquerschnittDataDTO.java +++ b/src/main/java/de/muenchen/dave/domain/dtos/laden/messwerte/LadeBelastungsplanMessquerschnittDataDTO.java @@ -1,3 +1,7 @@ +/* + * Copyright (c): it@M - Dienstleister für Informations- und Telekommunikationstechnik + * der Landeshauptstadt München, 2020 + */ package de.muenchen.dave.domain.dtos.laden.messwerte; import java.io.Serializable; diff --git a/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java b/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java index 5f9045d0..a69a3070 100644 --- a/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java +++ b/src/main/java/de/muenchen/dave/services/messstelle/BelastungsplanService.java @@ -1,3 +1,7 @@ +/* + * Copyright (c): it@M - Dienstleister für Informations- und Telekommunikationstechnik + * der Landeshauptstadt München, 2020 + */ package de.muenchen.dave.services.messstelle; import de.muenchen.dave.domain.dtos.laden.messwerte.BelastungsplanMessquerschnitteDTO; diff --git a/src/test/java/de/muenchen/dave/services/messstelle/BelastungsplanServiceTest.java b/src/test/java/de/muenchen/dave/services/messstelle/BelastungsplanServiceTest.java index 83de4b57..14c1ee81 100644 --- a/src/test/java/de/muenchen/dave/services/messstelle/BelastungsplanServiceTest.java +++ b/src/test/java/de/muenchen/dave/services/messstelle/BelastungsplanServiceTest.java @@ -1,3 +1,7 @@ +/* + * Copyright (c): it@M - Dienstleister für Informations- und Telekommunikationstechnik + * der Landeshauptstadt München, 2020 + */ package de.muenchen.dave.services.messstelle; import static org.mockito.ArgumentMatchers.anyString;