Skip to content

Commit e77b8c1

Browse files
committed
Updated ProductoController
1 parent 22bcdd2 commit e77b8c1

File tree

8 files changed

+763
-349
lines changed

8 files changed

+763
-349
lines changed

src/main/java/com/api/rest/v1/controllers/ProductoController.java

Lines changed: 414 additions & 154 deletions
Large diffs are not rendered by default.

src/main/java/com/api/rest/v1/entities/ProductoEntity.java

Lines changed: 26 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,12 @@
22

33

44

5+
import javax.validation.constraints.Max;
6+
import javax.validation.constraints.Min;
7+
import javax.validation.constraints.NotBlank;
58
import javax.validation.constraints.NotEmpty;
69
import javax.validation.constraints.NotNull;
7-
10+
import javax.validation.constraints.Size;
811

912
import org.springframework.data.annotation.Id;
1013
import org.springframework.data.mongodb.core.index.Indexed;
@@ -35,57 +38,77 @@ public class ProductoEntity {
3538
@Indexed(unique = true)
3639
@NotNull(message="El Código no puede ser null")
3740
@NotEmpty(message="El Código no puede ser vacío")
41+
@NotBlank(message="El Código no puede estar en blanco")
42+
@Size(min = 6, max = 255, message = "El Código debe ser mayor o igual a 6 caracteres y menor o igual a 255 caracteres")
3843
private String codigo;
3944

4045
@Field("nombre")
4146
@Indexed(unique = true)
4247
@NotNull(message="El Nombre no puede ser null")
4348
@NotEmpty(message="El Nombre no puede ser vacío")
49+
@NotBlank(message="El Nombre no puede estar en blanco")
50+
@Size(min = 4, max = 30, message = "El Nombre debe ser mayor o igual a 4 caracteres y menor o igual a 30 caracteres")
4451
private String nombre;
4552

4653
@Field("descripcion")
4754
@NotNull(message="La Descripción no puede ser null")
4855
@NotEmpty(message="La Descripción no puede ser vacío")
56+
@NotBlank(message="La Descripción no puede estar en blanco")
57+
@Size(min = 4, max = 200, message = "La Descripción debe ser mayor o igual a 4 caracteres y menor o igual a 200 caracteres")
4958
private String descripcion;
5059

5160
@Field("categoria")
5261
@NotNull(message="La Categoría no puede ser null")
5362
@NotEmpty(message="La Categoría no puede ser vacía")
63+
@NotBlank(message="La Categoría no puede estar en blanco")
64+
@Size(min = 4, max = 100, message = "La Categoría debe ser mayor o igual a 4 caracteres y menor o igual a 100 caracteres")
5465
private String categoria;
5566

5667
@Field("marca")
5768
@NotNull(message="La Marca no puede ser null")
5869
@NotEmpty(message="La Marca no puede ser vacía")
70+
@NotBlank(message="La Marca no puede estar en blanco")
71+
@Size(min = 4, max = 100, message = "La Marca debe ser mayor o igual a 4 caracteres y menor o igual a 100 caracteres")
5972
private String marca;
6073

6174
@Field("imagen")
6275
@NotNull(message="La Imagen no puede ser null")
63-
//@NotEmpty(message="La Imagen no puede ser vacía")
76+
@NotBlank(message="La imagen no puede estar en blanco")
77+
@Size(min = 20, max = 600, message = "La Imagen debe ser mayor o igual a 20 caracteres y menor o igual a 600 caracteres")
6478
private String imagen;
6579

6680
@Field("hoja_datos")
6781
@NotNull(message="La Hoja De Datos no puede ser null")
68-
//@NotEmpty(message="La Hoja de Datos no puede ser vacía")
82+
@NotBlank(message="La Hoja De Datos no puede estar en blanco")
83+
@Size(min = 20, max = 600, message = "La Hoja De Datos debe ser mayor o igual a 20 caracteres y menor o igual a 600 caracteres")
6984
private String hojaDatos;
7085

7186
@Field("stock")
7287
@NotNull(message="El Stock no puede ser null")
88+
@Min(value = 10, message = "El Stock debe ser mayor o igual a 10 Unidades")
89+
@Max(value = 10000, message = "El Stock debe ser menor o igual a 10000 Unidades")
7390
//No podemos validar con mas opciones los enteros
7491
private int stock;
7592

7693
@Field("precio")
7794
@NotNull(message="El Precio no puede ser null")
95+
@Min(value = 200, message = "El Precio debe ser mayor o igual a $200")
96+
@Max(value = 10000, message = "El Precio debe ser menor o igual a $100000")
7897
//No podemos validar con mas opciones los enteros
7998
private int precio;
8099

81100
@Field("fecha")
82101
@NotNull(message="La Fecha no puede ser null")
83102
@NotEmpty(message="La Fecha no puede ser vacía")
103+
@NotBlank(message="La Fecha no puede estar en blanco")
104+
@Size(min = 7, max = 20, message = "La Fecha debe ser mayor o igual a 7 caracteres y menor o igual a 20 caracteres")
84105
private String fecha;
85106

86107
@Field("hora")
87108
@NotNull(message="La Hora no puede ser null")
88109
@NotEmpty(message="La Hora no puede ser vacía")
110+
@NotBlank(message="La Fecha no puede estar en blanco")
111+
@Size(min = 5, max = 10, message = "La Hora debe ser mayor o igual a 5 caracteres y menor o igual a 10 caracteres")
89112
private String hora;
90113

91114
}

src/main/java/com/api/rest/v1/security/controllers/AuthController.java

Lines changed: 33 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -65,8 +65,17 @@ public class AuthController {
6565
@ApiResponse(code = 401, message = "No está autorizado para Registrar el Usuario. Verificar credenciales"),
6666
@ApiResponse(code = 403, message = "No se ha podido registrar el usuario correctamente. El servidor ha denegado esta operación"),
6767
@ApiResponse(code = 404, message = "La Inserción del Usuario no está Disponible ya que el recurso pedido no existe. Comprobar solicitud"),
68-
@ApiResponse(code = 500, message = "Se ha producido un error interno en el Servidor")
69-
})
68+
@ApiResponse(code = 405, message = "El recurso ha sido deshabilitado."),
69+
@ApiResponse(code = 407, message = "La autenticación debe estar hecha a partir de un proxy."),
70+
@ApiResponse(code = 408, message = "Se ha superado el tiempo de espera entre la solicitud y el servidor. Intentar nuevamente"),
71+
@ApiResponse(code = 409, message = "Se ha generado un conflicto en el servidor. Intentar nuevamente"),
72+
@ApiResponse(code = 410, message = "El Contenido solicitado se ha Eliminado del Servidor."),
73+
@ApiResponse(code = 422, message = "Se ha producido un error ya que los valores pasados no son correctos. Verificar campos"),
74+
@ApiResponse(code = 500, message = "Se ha producido un error interno en el Servidor"),
75+
@ApiResponse(code = 503, message = "Se ha producido un error de sobrecarga o mantenimiento en el Servidor. Intentar luego."),
76+
@ApiResponse(code = 505, message = "Versión HTTP no es soportada por el Servidor."),
77+
@ApiResponse(code = 507, message = "Almacenamiento Insuficiente por parte del Servidor.")
78+
})
7079
@PostMapping("/signin")
7180
public ResponseEntity<?> signin(@Valid @RequestBody SigninUsuarioDTO signinUsuario, BindingResult bindingResult) {
7281

@@ -123,8 +132,17 @@ public ResponseEntity<?> signin(@Valid @RequestBody SigninUsuarioDTO signinUsuar
123132
@ApiResponse(code = 401, message = "No está autorizado para acceder al sistema. Verificar credenciales"),
124133
@ApiResponse(code = 403, message = "No se ha podido acceder al sistema correctamente. El servidor ha denegado esta operación"),
125134
@ApiResponse(code = 404, message = "El acceso al sistema no está Disponible ya que el recurso pedido no existe. Comprobar solicitud"),
126-
@ApiResponse(code = 500, message = "Se ha producido un error interno en el Servidor")
127-
})
135+
@ApiResponse(code = 405, message = "El recurso ha sido deshabilitado."),
136+
@ApiResponse(code = 407, message = "La autenticación debe estar hecha a partir de un proxy."),
137+
@ApiResponse(code = 408, message = "Se ha superado el tiempo de espera entre la solicitud y el servidor. Intentar nuevamente"),
138+
@ApiResponse(code = 409, message = "Se ha generado un conflicto en el servidor. Intentar nuevamente"),
139+
@ApiResponse(code = 410, message = "El Contenido solicitado se ha Eliminado del Servidor."),
140+
@ApiResponse(code = 422, message = "Se ha producido un error ya que los valores pasados no son correctos. Verificar campos"),
141+
@ApiResponse(code = 500, message = "Se ha producido un error interno en el Servidor"),
142+
@ApiResponse(code = 503, message = "Se ha producido un error de sobrecarga o mantenimiento en el Servidor. Intentar luego."),
143+
@ApiResponse(code = 505, message = "Versión HTTP no es soportada por el Servidor."),
144+
@ApiResponse(code = 507, message = "Almacenamiento Insuficiente por parte del Servidor.")
145+
})
128146
@PostMapping("/login")
129147
public ResponseEntity<?> login(@Valid @RequestBody LoginUsuarioDTO loginUsuario, BindingResult bindingResult) {
130148

@@ -164,8 +182,17 @@ public ResponseEntity<?> login(@Valid @RequestBody LoginUsuarioDTO loginUsuario,
164182
@ApiResponse(code = 401, message = "No está autorizado para Registrar el Actualizado el Token. Verificar credenciales"),
165183
@ApiResponse(code = 403, message = "No se ha podido Actualizar el Token correctamente. El servidor ha denegado esta operación"),
166184
@ApiResponse(code = 404, message = "La Actualización del Token no está Disponible ya que el recurso pedido no existe. Comprobar solicitud"),
167-
@ApiResponse(code = 500, message = "Se ha producido un error interno en el Servidor")
168-
})
185+
@ApiResponse(code = 405, message = "El recurso ha sido deshabilitado."),
186+
@ApiResponse(code = 407, message = "La autenticación debe estar hecha a partir de un proxy."),
187+
@ApiResponse(code = 408, message = "Se ha superado el tiempo de espera entre la solicitud y el servidor. Intentar nuevamente"),
188+
@ApiResponse(code = 409, message = "Se ha generado un conflicto en el servidor. Intentar nuevamente"),
189+
@ApiResponse(code = 410, message = "El Contenido solicitado se ha Eliminado del Servidor."),
190+
@ApiResponse(code = 422, message = "Se ha producido un error ya que los valores pasados no son correctos. Verificar campos"),
191+
@ApiResponse(code = 500, message = "Se ha producido un error interno en el Servidor"),
192+
@ApiResponse(code = 503, message = "Se ha producido un error de sobrecarga o mantenimiento en el Servidor. Intentar luego."),
193+
@ApiResponse(code = 505, message = "Versión HTTP no es soportada por el Servidor."),
194+
@ApiResponse(code = 507, message = "Almacenamiento Insuficiente por parte del Servidor.")
195+
})
169196
@PostMapping("/refresh-token")
170197
public ResponseEntity<?> refreshToken(@RequestBody JwtDTO jwtDto) throws ParseException {
171198

src/main/java/com/api/rest/v1/security/controllers/UsuarioController.java

Lines changed: 44 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,17 @@ public class UsuarioController {
4848
@ApiResponse(code = 401, message = "No está autorizado para insertar un Usuario. Verificar credenciales"),
4949
@ApiResponse(code = 403, message = "No se ha podido insertar el Usuario. El servidor ha denegado esta operación"),
5050
@ApiResponse(code = 404, message = "La Inserción del Usuario no está Disponible ya que el recurso pedido no existe. Comprobar solicitud"),
51-
@ApiResponse(code = 500, message = "Se ha producido un error interno en el Servidor")
52-
})
51+
@ApiResponse(code = 405, message = "El recurso ha sido deshabilitado."),
52+
@ApiResponse(code = 407, message = "La autenticación debe estar hecha a partir de un proxy."),
53+
@ApiResponse(code = 408, message = "Se ha superado el tiempo de espera entre la solicitud y el servidor. Intentar nuevamente"),
54+
@ApiResponse(code = 409, message = "Se ha generado un conflicto en el servidor. Intentar nuevamente"),
55+
@ApiResponse(code = 410, message = "El Contenido solicitado se ha Eliminado del Servidor."),
56+
@ApiResponse(code = 422, message = "Se ha producido un error ya que los valores pasados no son correctos. Verificar campos"),
57+
@ApiResponse(code = 500, message = "Se ha producido un error interno en el Servidor"),
58+
@ApiResponse(code = 503, message = "Se ha producido un error de sobrecarga o mantenimiento en el Servidor. Intentar luego."),
59+
@ApiResponse(code = 505, message = "Versión HTTP no es soportada por el Servidor."),
60+
@ApiResponse(code = 507, message = "Almacenamiento Insuficiente por parte del Servidor.")
61+
})
5362
@PostMapping("/")
5463
@PreAuthorize("hasRole('ROLE_ADMIN')")
5564
public ResponseEntity<?> addUsuario(@RequestBody SigninUsuarioDTO usuarioDTO) {
@@ -76,8 +85,17 @@ public ResponseEntity<?> addUsuario(@RequestBody SigninUsuarioDTO usuarioDTO) {
7685
@ApiResponse(code = 401, message = "No está autorizado para actualizar el Usuario. Verificar credenciales"),
7786
@ApiResponse(code = 403, message = "No se ha podido Actualizar el Usuario. El servidor ha denegado esta operación"),
7887
@ApiResponse(code = 404, message = "La Actualización del Usuario no está Disponible ya que el recurso pedido no existe. Comprobar solicitud"),
79-
@ApiResponse(code = 500, message = "Se ha producido un error interno en el Servidor")
80-
})
88+
@ApiResponse(code = 405, message = "El recurso ha sido deshabilitado."),
89+
@ApiResponse(code = 407, message = "La autenticación debe estar hecha a partir de un proxy."),
90+
@ApiResponse(code = 408, message = "Se ha superado el tiempo de espera entre la solicitud y el servidor. Intentar nuevamente"),
91+
@ApiResponse(code = 409, message = "Se ha generado un conflicto en el servidor. Intentar nuevamente"),
92+
@ApiResponse(code = 410, message = "El Contenido solicitado se ha Eliminado del Servidor."),
93+
@ApiResponse(code = 422, message = "Se ha producido un error ya que los valores pasados no son correctos. Verificar campos"),
94+
@ApiResponse(code = 500, message = "Se ha producido un error interno en el Servidor"),
95+
@ApiResponse(code = 503, message = "Se ha producido un error de sobrecarga o mantenimiento en el Servidor. Intentar luego."),
96+
@ApiResponse(code = 505, message = "Versión HTTP no es soportada por el Servidor."),
97+
@ApiResponse(code = 507, message = "Almacenamiento Insuficiente por parte del Servidor.")
98+
})
8199
@PutMapping("/{id}")
82100
@PreAuthorize("hasRole('ROLE_ADMIN')")
83101
public ResponseEntity<?> updateUsuario(@PathVariable("id") String id,@RequestBody SigninUsuarioDTO usuarioDTO) {
@@ -105,8 +123,17 @@ public ResponseEntity<?> updateUsuario(@PathVariable("id") String id,@RequestBod
105123
@ApiResponse(code = 401, message = "No está autorizado para Eliminar el Usuario. Verificar credenciales"),
106124
@ApiResponse(code = 403, message = "No se ha podido Eliminar el Usuario. El servidor ha denegado esta operación"),
107125
@ApiResponse(code = 404, message = "La Eliminacion del Usuario no está Disponible ya que el recurso pedido no existe. Comprobar solicitud"),
108-
@ApiResponse(code = 500, message = "Se ha producido un error interno en el Servidor")
109-
})
126+
@ApiResponse(code = 405, message = "El recurso ha sido deshabilitado."),
127+
@ApiResponse(code = 407, message = "La autenticación debe estar hecha a partir de un proxy."),
128+
@ApiResponse(code = 408, message = "Se ha superado el tiempo de espera entre la solicitud y el servidor. Intentar nuevamente"),
129+
@ApiResponse(code = 409, message = "Se ha generado un conflicto en el servidor. Intentar nuevamente"),
130+
@ApiResponse(code = 410, message = "El Contenido solicitado se ha Eliminado del Servidor."),
131+
@ApiResponse(code = 422, message = "Se ha producido un error ya que los valores pasados no son correctos. Verificar campos"),
132+
@ApiResponse(code = 500, message = "Se ha producido un error interno en el Servidor"),
133+
@ApiResponse(code = 503, message = "Se ha producido un error de sobrecarga o mantenimiento en el Servidor. Intentar luego."),
134+
@ApiResponse(code = 505, message = "Versión HTTP no es soportada por el Servidor."),
135+
@ApiResponse(code = 507, message = "Almacenamiento Insuficiente por parte del Servidor.")
136+
})
110137
@DeleteMapping("/{id}")
111138
@PreAuthorize("hasRole('ROLE_ADMIN')")
112139
public ResponseEntity<?> deleteUsuario(@PathVariable("id") String id) {
@@ -133,8 +160,17 @@ public ResponseEntity<?> deleteUsuario(@PathVariable("id") String id) {
133160
@ApiResponse(code = 401, message = "No está autorizado para Listar los Usuarios. Verificar credenciales"),
134161
@ApiResponse(code = 403, message = "No se ha podido Listar los Usuarios. El servidor ha denegado esta operación"),
135162
@ApiResponse(code = 404, message = "El Listado de Usuarios no está Disponible ya que el recurso pedido no existe. Comprobar solicitud"),
136-
@ApiResponse(code = 500, message = "Se ha producido un error interno en el Servidor")
137-
})
163+
@ApiResponse(code = 405, message = "El recurso ha sido deshabilitado."),
164+
@ApiResponse(code = 407, message = "La autenticación debe estar hecha a partir de un proxy."),
165+
@ApiResponse(code = 408, message = "Se ha superado el tiempo de espera entre la solicitud y el servidor. Intentar nuevamente"),
166+
@ApiResponse(code = 409, message = "Se ha generado un conflicto en el servidor. Intentar nuevamente"),
167+
@ApiResponse(code = 410, message = "El Contenido solicitado se ha Eliminado del Servidor."),
168+
@ApiResponse(code = 422, message = "Se ha producido un error ya que los valores pasados no son correctos. Verificar campos"),
169+
@ApiResponse(code = 500, message = "Se ha producido un error interno en el Servidor"),
170+
@ApiResponse(code = 503, message = "Se ha producido un error de sobrecarga o mantenimiento en el Servidor. Intentar luego."),
171+
@ApiResponse(code = 505, message = "Versión HTTP no es soportada por el Servidor."),
172+
@ApiResponse(code = 507, message = "Almacenamiento Insuficiente por parte del Servidor.")
173+
})
138174
@GetMapping("/listado")
139175
@PreAuthorize("hasRole('ROLE_ADMIN')")
140176
public Page<Usuario> getAllUsuario(Pageable pageable) {

0 commit comments

Comments
 (0)