diff --git a/src/main/java/org/springframework/cheapy/model/Authorities.java b/src/main/java/org/springframework/cheapy/model/Authorities.java index a39220455..f12de11e0 100644 --- a/src/main/java/org/springframework/cheapy/model/Authorities.java +++ b/src/main/java/org/springframework/cheapy/model/Authorities.java @@ -3,7 +3,6 @@ package org.springframework.cheapy.model; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.Table; -import javax.validation.constraints.NotNull; @Entity @Table(name = "authorities") diff --git a/src/main/java/org/springframework/cheapy/model/Code.java b/src/main/java/org/springframework/cheapy/model/Code.java index a151abf8d..e441d4e31 100644 --- a/src/main/java/org/springframework/cheapy/model/Code.java +++ b/src/main/java/org/springframework/cheapy/model/Code.java @@ -1,7 +1,6 @@ package org.springframework.cheapy.model; import javax.persistence.Entity; -import javax.persistence.Id; import javax.persistence.Table; import javax.validation.constraints.NotNull; diff --git a/src/main/java/org/springframework/cheapy/model/User.java b/src/main/java/org/springframework/cheapy/model/User.java index 275ec7968..7891d4c8e 100644 --- a/src/main/java/org/springframework/cheapy/model/User.java +++ b/src/main/java/org/springframework/cheapy/model/User.java @@ -5,10 +5,6 @@ import javax.persistence.Id; import javax.persistence.Table; import javax.validation.constraints.NotBlank; -import org.springframework.boot.context.properties.bind.DefaultValue; - -import net.bytebuddy.implementation.bind.annotation.Default; - @Entity @Table(name = "users") public class User { diff --git a/src/main/java/org/springframework/cheapy/model/Usuario.java b/src/main/java/org/springframework/cheapy/model/Usuario.java index 660faa88a..9adf0a9ec 100644 --- a/src/main/java/org/springframework/cheapy/model/Usuario.java +++ b/src/main/java/org/springframework/cheapy/model/Usuario.java @@ -9,7 +9,6 @@ import javax.persistence.OneToOne; import javax.persistence.Table; import javax.validation.constraints.Email; import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; @Entity @Table(name = "usuarios") diff --git a/src/main/java/org/springframework/cheapy/system/SingUpController.java b/src/main/java/org/springframework/cheapy/system/SingUpController.java index d07f727f6..6459ec357 100644 --- a/src/main/java/org/springframework/cheapy/system/SingUpController.java +++ b/src/main/java/org/springframework/cheapy/system/SingUpController.java @@ -1,6 +1,5 @@ package org.springframework.cheapy.system; -import java.util.Collection; import java.util.Map; import javax.servlet.http.HttpServletRequest; @@ -18,15 +17,12 @@ import org.springframework.cheapy.service.ClientService; import org.springframework.cheapy.service.UserService; import org.springframework.cheapy.service.UsuarioService; import org.springframework.stereotype.Controller; -import org.springframework.ui.Model; import org.springframework.ui.ModelMap; import org.springframework.validation.BindingResult; import org.springframework.web.bind.WebDataBinder; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.InitBinder; -import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.servlet.ModelAndView; @Controller public class SingUpController { diff --git a/src/main/java/org/springframework/cheapy/web/ClientController.java b/src/main/java/org/springframework/cheapy/web/ClientController.java index 9fa128732..fab77c2e5 100644 --- a/src/main/java/org/springframework/cheapy/web/ClientController.java +++ b/src/main/java/org/springframework/cheapy/web/ClientController.java @@ -12,6 +12,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.cheapy.model.Client; import org.springframework.cheapy.model.FoodOffer; +import org.springframework.cheapy.model.Municipio; import org.springframework.cheapy.model.NuOffer; import org.springframework.cheapy.model.SpeedOffer; import org.springframework.cheapy.model.StatusOffer; @@ -85,7 +86,7 @@ public class ClientController { Client client = this.clientService.getCurrentClient(); - + model.put("municipio", Municipio.values()); model.addAttribute("client", client); return ClientController.VIEWS_CREATE_OR_UPDATE_CLIENT; @@ -97,8 +98,6 @@ public class ClientController { Client clienteSesion = this.clientService.getCurrentClient(); - clientEdit.setCode(clienteSesion.getCode()); - clientEdit.setMunicipio(clienteSesion.getMunicipio()); if(!this.checkTimes(clientEdit)) { result.rejectValue("finish","" ,"La hora de cierre debe ser posterior a la hora de apertura"); @@ -107,6 +106,7 @@ public class ClientController { if (result.hasErrors()) { model.addAttribute("client", clientEdit); + model.put("municipio", Municipio.values()); return ClientController.VIEWS_CREATE_OR_UPDATE_CLIENT; } diff --git a/src/main/java/org/springframework/cheapy/web/UsuarioController.java b/src/main/java/org/springframework/cheapy/web/UsuarioController.java index 8e6d965cc..593443a76 100644 --- a/src/main/java/org/springframework/cheapy/web/UsuarioController.java +++ b/src/main/java/org/springframework/cheapy/web/UsuarioController.java @@ -7,6 +7,7 @@ import javax.servlet.http.HttpServletRequest; import javax.validation.Valid; import org.springframework.beans.BeanUtils; +import org.springframework.cheapy.model.Municipio; import org.springframework.cheapy.model.Usuario; import org.springframework.cheapy.service.UsuarioService; import org.springframework.stereotype.Controller; @@ -37,15 +38,21 @@ public class UsuarioController { public String updateUsuario(final ModelMap model, HttpServletRequest request) { Usuario usuario = this.usuarioService.getCurrentUsuario(); model.addAttribute("usuario", usuario); + model.put("municipio", Municipio.values()); return UsuarioController.VIEWS_USUARIO_CREATE_OR_UPDATE_FORM; } @PostMapping(value = "/usuarios/edit") public String updateUsuario(@Valid final Usuario usuarioEdit, final BindingResult result, final ModelMap model, HttpServletRequest request) { - + + if (result.hasErrors()) { + model.addAttribute("usuario", usuarioEdit); + model.put("municipio", Municipio.values()); + return UsuarioController.VIEWS_USUARIO_CREATE_OR_UPDATE_FORM; + } Usuario usuario = this.usuarioService.getCurrentUsuario(); - BeanUtils.copyProperties(usuario, usuarioEdit, "nombre", "apellidos", "dni", "direccion", "telefono", "usuar"); + BeanUtils.copyProperties(usuario, usuarioEdit, "nombre", "apellidos", "municipio", "direccion","email", "usuar"); usuarioEdit.getUsuar().setUsername(usuario.getNombre()); usuarioEdit.getUsuar().setEnabled(true); this.usuarioService.saveUsuario(usuarioEdit); diff --git a/src/main/resources/db/mysql/data.sql b/src/main/resources/db/mysql/data.sql index 97230b156..39ba10cab 100644 --- a/src/main/resources/db/mysql/data.sql +++ b/src/main/resources/db/mysql/data.sql @@ -25,7 +25,7 @@ INSERT INTO codes (id,code,activo) VALUES (3,'code3',TRUE); INSERT INTO codes (id,code,activo) VALUES (4,'code4',TRUE); INSERT INTO clients (id, name, email, address, municipio, init, finish, telephone, description, food, username, code) VALUES (1,'bar manoli','manoli@gmail.com','C/Betis', 'sevilla','10:00','22:00','608726190', 'description 1', 'ESPAÑOLA','manoli', 'code1'); -INSERT INTO clients (id, name, email, address, municipio, init, finish, telephone, description, food, username, code) VALUES (2,'bar david','david@gmail.com','C/Sevilla', 'dosHermanas','09:30','22:00','608726190', 'description 2', 'americana','david', 'code2'); +INSERT INTO clients (id, name, email, address, municipio, init, finish, telephone, description, food, username, code) VALUES (2,'bar david','david@gmail.com','C/Sevilla', 'dos_hermanas','09:30','22:00','608726190', 'description 2', 'americana','david', 'code2'); INSERT INTO food_offers(start, end, code, status, client_id, food, discount) VALUES ('2021-08-14 12:00:00', '2021-08-15 12:00:00', 'FO-1', 'inactive', 1, 'macarrones', 15); diff --git a/src/main/webapp/WEB-INF/jsp/clients/clientShow.jsp b/src/main/webapp/WEB-INF/jsp/clients/clientShow.jsp index 8b865dd99..b3c34f7e9 100644 --- a/src/main/webapp/WEB-INF/jsp/clients/clientShow.jsp +++ b/src/main/webapp/WEB-INF/jsp/clients/clientShow.jsp @@ -35,6 +35,10 @@