package models;
import java.util.Date;
import javax.persistence.Entity;
import javax.persistence.ManyToOne;
import play.data.validation.Required;
import play.db.jpa.Model;
@Entity
public class Notification extends Model {
@ManyToOne
public User receiver;
@ManyToOne
public User reporter;
@Required
public int isConfirmed;
@Required
public Date reportDate;
@Required
public double latitude;
@Required
public double longitude;
@Required
public String type;
// 0: not answered; 1: confirmed; 2: denied
public static int NOT_ACKED = 0;
public static int CONFIRMED = 1;
public static int DENIED = 2;
public Notification(User recv, User reporter, Date date, double latitude, double longitude, String type) {
super();
this.receiver = recv;
this.reporter = reporter;
this.isConfirmed = NOT_ACKED;
this.reportDate = date;
this.latitude = latitude;
this.longitude = longitude;
this.type = type;
}
public void confirm() {
this.isConfirmed = CONFIRMED;
this.reporter.score += User.POINTS_FOR_CONFIRM;
this.receiver.save();
this.save();
}
public void deny() {
this.isConfirmed = DENIED;
this.reporter.score += User.POINTS_FOR_DENY;
this.receiver.save();
this.save();
}
}