Implement PlatformUser superclass
This commit is contained in:
parent
00d2078a30
commit
fd9b742026
@ -8,12 +8,7 @@ import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
|
||||
@Entity
|
||||
public class Driver implements IDriver {
|
||||
@Id @GeneratedValue private Long id;
|
||||
private String name;
|
||||
@NotNull private String tel;
|
||||
private Double avgRating;
|
||||
|
||||
public class Driver extends PlatformUser implements IDriver {
|
||||
@OneToMany(targetEntity = Match.class)
|
||||
private Collection<IMatch> matches = new ArrayList<>();
|
||||
|
||||
|
||||
@ -0,0 +1,62 @@
|
||||
package dst.ass1.jpa.model.impl;
|
||||
|
||||
import dst.ass1.jpa.model.IPlatformUser;
|
||||
|
||||
import javax.persistence.GeneratedValue;
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.MappedSuperclass;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.io.Serializable;
|
||||
|
||||
@MappedSuperclass
|
||||
public class PlatformUser implements IPlatformUser, Serializable {
|
||||
@Id @GeneratedValue
|
||||
protected Long id;
|
||||
|
||||
protected String name;
|
||||
|
||||
@NotNull
|
||||
protected String tel;
|
||||
|
||||
protected Double avgRating;
|
||||
|
||||
@Override
|
||||
public Long getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setId(Long id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getTel() {
|
||||
return tel;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setTel(String tel) {
|
||||
this.tel = tel;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Double getAvgRating() {
|
||||
return avgRating;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setAvgRating(Double avgRating) {
|
||||
this.avgRating = avgRating;
|
||||
}
|
||||
}
|
||||
@ -4,20 +4,36 @@ import dst.ass1.jpa.model.IPreferences;
|
||||
import dst.ass1.jpa.model.IRider;
|
||||
import dst.ass1.jpa.model.ITrip;
|
||||
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.*;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Collection;
|
||||
|
||||
import static dst.ass1.jpa.util.Constants.M_RIDER_ACCOUNT;
|
||||
import static dst.ass1.jpa.util.Constants.M_RIDER_BANK_CODE;
|
||||
|
||||
@Table(
|
||||
uniqueConstraints = @UniqueConstraint(columnNames = {M_RIDER_ACCOUNT, M_RIDER_BANK_CODE})
|
||||
)
|
||||
|
||||
@Entity
|
||||
public class Rider implements IRider {
|
||||
@Id
|
||||
private Long id;
|
||||
private String name;
|
||||
@NotNull
|
||||
private String tel;
|
||||
private Double avgRating;
|
||||
private Collection<ITrip> trips;
|
||||
public class Rider extends PlatformUser implements IRider {
|
||||
@Column(unique = true) @NotNull
|
||||
private String email;
|
||||
|
||||
@Column(columnDefinition = "VARBINARY(20)", length = 20)
|
||||
private byte[] password;
|
||||
|
||||
@Column(name = M_RIDER_ACCOUNT)
|
||||
private String accountNo;
|
||||
|
||||
@Column(name = M_RIDER_BANK_CODE)
|
||||
private String bankCode;
|
||||
|
||||
@OneToOne(targetEntity = Preferences.class, optional = false)
|
||||
private IPreferences preferences;
|
||||
|
||||
@ManyToOne(targetEntity = Trip.class)
|
||||
private Collection<ITrip> trips = new ArrayList<>();
|
||||
|
||||
@Override
|
||||
public Long getId() {
|
||||
@ -41,7 +57,7 @@ public class Rider implements IRider {
|
||||
|
||||
@Override
|
||||
public String getTel() {
|
||||
return null;
|
||||
return tel;
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -61,52 +77,52 @@ public class Rider implements IRider {
|
||||
|
||||
@Override
|
||||
public String getEmail() {
|
||||
return null;
|
||||
return email;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setEmail(String email) {
|
||||
|
||||
this.email = email;
|
||||
}
|
||||
|
||||
@Override
|
||||
public byte[] getPassword() {
|
||||
return new byte[0];
|
||||
return password;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setPassword(byte[] password) {
|
||||
|
||||
this.password = password;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getAccountNo() {
|
||||
return null;
|
||||
return accountNo;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setAccountNo(String accountNo) {
|
||||
|
||||
this.accountNo = accountNo;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getBankCode() {
|
||||
return null;
|
||||
return bankCode;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setBankCode(String bankCode) {
|
||||
|
||||
this.bankCode = bankCode;
|
||||
}
|
||||
|
||||
@Override
|
||||
public IPreferences getPreferences() {
|
||||
return null;
|
||||
return preferences;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setPreferences(IPreferences preferences) {
|
||||
|
||||
this.preferences = preferences;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user