last healthScore
This commit is contained in:
parent
89bd50dda7
commit
bd0db888ae
2 changed files with 18 additions and 4 deletions
|
@ -61,14 +61,18 @@ public class Device {
|
|||
|
||||
@JsonIgnore
|
||||
public void changeHealthScore(int delta) {
|
||||
int oldScore = healthScore;
|
||||
if (healthScore >= 1) {
|
||||
healthScore += delta;
|
||||
if (healthScore > 150)
|
||||
healthScore /= 10;
|
||||
} else {
|
||||
healthScore = 0;
|
||||
}
|
||||
messages.add(new DeviceEvent(id, owner, color, born, healthScore, Instant.now()));
|
||||
|
||||
if (healthScore < 1) {
|
||||
healthScore = 0;
|
||||
messages.add(new DeviceEvent(id, owner, color, born, healthScore, oldScore, Instant.now()));
|
||||
} else
|
||||
messages.add(new DeviceEvent(id, owner, color, born, healthScore, null, Instant.now()));
|
||||
}
|
||||
|
||||
@JsonIgnore
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package com.sap.tamagotchi.model;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.fasterxml.jackson.annotation.JsonInclude;
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
|
||||
import java.time.Instant;
|
||||
|
@ -18,15 +19,18 @@ public class DeviceEvent implements IoTMessage {
|
|||
private final Instant born;
|
||||
@JsonProperty("healthScore")
|
||||
private final Integer healthScore;
|
||||
@JsonProperty("lastHealthScore")
|
||||
private final Integer lastHealthScore;
|
||||
@JsonProperty("eventTime")
|
||||
private final Instant eventTime;
|
||||
|
||||
public DeviceEvent(String id, String owner, Color color, Instant born, Integer healthScore, Instant eventTime) {
|
||||
public DeviceEvent(String id, String owner, Color color, Instant born, Integer healthScore, Integer lastHealthScore, Instant eventTime) {
|
||||
this.id = id;
|
||||
this.owner = owner;
|
||||
this.color = color;
|
||||
this.born = born;
|
||||
this.healthScore = healthScore;
|
||||
this.lastHealthScore = lastHealthScore;
|
||||
this.eventTime = eventTime;
|
||||
}
|
||||
|
||||
|
@ -55,6 +59,12 @@ public class DeviceEvent implements IoTMessage {
|
|||
return healthScore;
|
||||
}
|
||||
|
||||
@JsonInclude(JsonInclude.Include.NON_NULL)
|
||||
@JsonProperty("lastHealthScore")
|
||||
public Integer getLastHealthScore() {
|
||||
return lastHealthScore;
|
||||
}
|
||||
|
||||
@JsonProperty("eventTime")
|
||||
public String getEventTime() {
|
||||
return eventTime.toString();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue