71 lines
1.5 KiB
Java
71 lines
1.5 KiB
Java
package de.ph87.data.series;
|
|
|
|
import de.ph87.data.value.Unit;
|
|
import de.ph87.data.web.IWebSocketMessage;
|
|
import jakarta.annotation.Nullable;
|
|
import lombok.Getter;
|
|
import lombok.NonNull;
|
|
import lombok.ToString;
|
|
|
|
import java.time.ZonedDateTime;
|
|
import java.util.List;
|
|
|
|
@Getter
|
|
@ToString
|
|
public class SeriesDto implements IWebSocketMessage {
|
|
|
|
public final List<Object> websocketTopic = List.of("Series");
|
|
|
|
public final long id;
|
|
|
|
public final String name;
|
|
|
|
public final String title;
|
|
|
|
public final Unit unit;
|
|
|
|
public final int decimals;
|
|
|
|
public final SeriesType type;
|
|
|
|
@Nullable
|
|
public final Double yMin;
|
|
|
|
@Nullable
|
|
public final Double yMax;
|
|
|
|
public final boolean autoscale;
|
|
|
|
public final double min;
|
|
|
|
public final double max;
|
|
|
|
public final double avg;
|
|
|
|
public final int count;
|
|
|
|
public final double lastValue;
|
|
|
|
@NonNull
|
|
public final ZonedDateTime lastDate;
|
|
|
|
public SeriesDto(@NonNull final Series series) {
|
|
this.id = series.getId();
|
|
this.name = series.getName();
|
|
this.title = series.getTitle();
|
|
this.unit = series.getUnit();
|
|
this.decimals = series.getDecimals();
|
|
this.type = series.getType();
|
|
this.yMin = series.getYMin();
|
|
this.yMax = series.getYMax();
|
|
this.autoscale = series.isAutoscale();
|
|
this.min = series.getMin();
|
|
this.max = series.getMax();
|
|
this.avg = series.getAvg();
|
|
this.count = series.getCount();
|
|
this.lastDate = series.getLastDate();
|
|
this.lastValue = series.getLastValue();
|
|
}
|
|
|
|
}
|