Commit 3696f1fa by Antonio Rueda

Añadidas restricciones @NotNull adicionales en algunos atributos

parent 34ee0a7c
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package es.ujaen.dae.ujacoin.entidades; package es.ujaen.dae.ujacoin.entidades;
import es.ujaen.dae.ujacoin.util.ExprReg; import es.ujaen.dae.ujacoin.util.ExprReg;
...@@ -21,6 +16,7 @@ import javax.persistence.JoinColumn; ...@@ -21,6 +16,7 @@ import javax.persistence.JoinColumn;
import javax.persistence.OneToMany; import javax.persistence.OneToMany;
import javax.validation.constraints.Email; import javax.validation.constraints.Email;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Past; import javax.validation.constraints.Past;
import javax.validation.constraints.Pattern; import javax.validation.constraints.Pattern;
import javax.validation.constraints.Size; import javax.validation.constraints.Size;
...@@ -33,6 +29,7 @@ import javax.validation.constraints.Size; ...@@ -33,6 +29,7 @@ import javax.validation.constraints.Size;
public class Cliente implements Serializable { public class Cliente implements Serializable {
/** DNI del cliente*/ /** DNI del cliente*/
@Id @Id
@NotNull
@Size(min=9, max=9) @Size(min=9, max=9)
@Pattern(regexp=ExprReg.DNI) @Pattern(regexp=ExprReg.DNI)
String dni; String dni;
...@@ -41,20 +38,24 @@ public class Cliente implements Serializable { ...@@ -41,20 +38,24 @@ public class Cliente implements Serializable {
String nombre; String nombre;
/** Fecha de nacimiento */ /** Fecha de nacimiento */
@NotNull
@Past @Past
LocalDate fNacimiento; LocalDate fNacimiento;
/** Dirección del domicilio */ /** Dirección del domicilio */
@NotBlank @NotBlank
String direccion; String direccion;
/** Teléfono */ /** Teléfono */
@NotNull
@Size(min=9, max=13) @Size(min=9, max=13)
@Pattern(regexp=ExprReg.TLF) @Pattern(regexp=ExprReg.TLF)
String tlf; String tlf;
/** Email */ /** Email */
@NotNull
@Email @Email
String email; String email;
/** Clave de acceso al sistema */ /** Clave de acceso al sistema */
@NotNull
String clave; String clave;
/** Tarjetas asociadas al cliente (no tiene por qué ser el titular */ /** Tarjetas asociadas al cliente (no tiene por qué ser el titular */
...@@ -79,7 +80,7 @@ public class Cliente implements Serializable { ...@@ -79,7 +80,7 @@ public class Cliente implements Serializable {
this.tlf = tlf; this.tlf = tlf;
this.email = email; this.email = email;
this.clave = CodificadorMd5.codificar(clave); this.clave = (clave != null ? CodificadorMd5.codificar(clave) : null);
tarjetas = new ArrayList<>(); tarjetas = new ArrayList<>();
cuentas = new ArrayList<>(); cuentas = new ArrayList<>();
......
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package es.ujaen.dae.ujacoin.entidades; package es.ujaen.dae.ujacoin.entidades;
import es.ujaen.dae.ujacoin.excepciones.SaldoInsuficienteParaOperacion; import es.ujaen.dae.ujacoin.excepciones.SaldoInsuficienteParaOperacion;
...@@ -18,7 +13,6 @@ import javax.persistence.Id; ...@@ -18,7 +13,6 @@ import javax.persistence.Id;
import javax.persistence.JoinColumn; import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne; import javax.persistence.ManyToOne;
import javax.persistence.OneToMany; import javax.persistence.OneToMany;
import javax.persistence.Version;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern; import javax.validation.constraints.Pattern;
import javax.validation.constraints.PositiveOrZero; import javax.validation.constraints.PositiveOrZero;
...@@ -33,6 +27,7 @@ public class Cuenta { ...@@ -33,6 +27,7 @@ public class Cuenta {
/** Número de cuenta */ /** Número de cuenta */
@Id @Id
@NotNull
@Size(min=10, max=10) @Size(min=10, max=10)
@Pattern(regexp=ExprReg.NUM_CUENTA) @Pattern(regexp=ExprReg.NUM_CUENTA)
String num; String num;
......
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package es.ujaen.dae.ujacoin.entidades; package es.ujaen.dae.ujacoin.entidades;
import es.ujaen.dae.ujacoin.util.ExprReg; import es.ujaen.dae.ujacoin.util.ExprReg;
...@@ -12,6 +7,7 @@ import javax.persistence.Entity; ...@@ -12,6 +7,7 @@ import javax.persistence.Entity;
import javax.persistence.Id; import javax.persistence.Id;
import javax.validation.constraints.Future; import javax.validation.constraints.Future;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern; import javax.validation.constraints.Pattern;
import javax.validation.constraints.Size; import javax.validation.constraints.Size;
...@@ -23,6 +19,7 @@ import javax.validation.constraints.Size; ...@@ -23,6 +19,7 @@ import javax.validation.constraints.Size;
public class Tarjeta implements Serializable { public class Tarjeta implements Serializable {
/** Número de tarjeta */ /** Número de tarjeta */
@Id @Id
@NotNull
@Size(min=16, max=16) @Size(min=16, max=16)
@Pattern(regexp=ExprReg.NUM_TARJETA) @Pattern(regexp=ExprReg.NUM_TARJETA)
String num; String num;
...@@ -30,9 +27,11 @@ public class Tarjeta implements Serializable { ...@@ -30,9 +27,11 @@ public class Tarjeta implements Serializable {
@NotBlank @NotBlank
String titular; String titular;
/** Fecha de caducidad */ /** Fecha de caducidad */
@NotNull
@Future @Future
LocalDate fechaCaducidad; LocalDate fechaCaducidad;
/** Código de seguridad (CVC) */ /** Código de seguridad (CVC) */
@NotNull
@Size(min=3, max=3) @Size(min=3, max=3)
@Pattern(regexp=ExprReg.CVC) @Pattern(regexp=ExprReg.CVC)
String cvc; String cvc;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment