From 5b924de49df7db2d5798069bdb501c88f139a8f5 Mon Sep 17 00:00:00 2001 From: Antonio Vidal Date: Tue, 23 Mar 2021 18:46:20 +0100 Subject: [PATCH 1/2] Cambios --- .../configuration/SecurityConfiguration.java | 2 +- .../cheapy/model/Authorities.java | 28 +++++---- .../springframework/cheapy/model/Client.java | 15 ++++- .../springframework/cheapy/model/User.java | 57 +++++++++---------- src/main/resources/db/mysql/data.sql | 5 +- 5 files changed, 62 insertions(+), 45 deletions(-) diff --git a/src/main/java/org/springframework/cheapy/configuration/SecurityConfiguration.java b/src/main/java/org/springframework/cheapy/configuration/SecurityConfiguration.java index 46e1b8600..2fbdc84ad 100644 --- a/src/main/java/org/springframework/cheapy/configuration/SecurityConfiguration.java +++ b/src/main/java/org/springframework/cheapy/configuration/SecurityConfiguration.java @@ -58,7 +58,7 @@ public class SecurityConfiguration extends WebSecurityConfigurerAdapter { public void configure(final AuthenticationManagerBuilder auth) throws Exception { auth.jdbcAuthentication().dataSource(this.dataSource) //[login de admin,owner y vet] .usersByUsernameQuery("select username,password,enabled " + "from users " + "where username = ?") - .usersByUsernameQuery("select nombre_usuario,contra,enabled from usuarios where nombre_usuario=?").authoritiesByUsernameQuery("select username, authority " + "from authorities " + "where username = ?") //[login de tallerespaco] + .usersByUsernameQuery("select username, password, enabled from users where username=?").authoritiesByUsernameQuery("select username, authority " + "from authorities " + "where username = ?") //[login de tallerespaco] .passwordEncoder(this.passwordEncoder()); } diff --git a/src/main/java/org/springframework/cheapy/model/Authorities.java b/src/main/java/org/springframework/cheapy/model/Authorities.java index aaaa01f6c..a8a3a79b2 100644 --- a/src/main/java/org/springframework/cheapy/model/Authorities.java +++ b/src/main/java/org/springframework/cheapy/model/Authorities.java @@ -2,24 +2,30 @@ package org.springframework.cheapy.model; import javax.persistence.Entity; import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.ManyToOne; import javax.persistence.Table; +import javax.validation.constraints.Size; @Entity @Table(name = "authorities") -public class Authorities { +public class Authorities extends BaseEntity{ - @Id - String username; + + //@ManyToOne + //@JoinColumn(name = "username") + //private User usern; - String authority; + @Size(min = 3, max = 50) + private String authority; - public String getUsername() { - return username; - } - - public void setUser(String username) { - this.username = username; - } +// public User getUsername() { +// return usern; +// } +// +// public void setUser(User user) { +// this.usern = user; +// } public String getAuthority() { return authority; diff --git a/src/main/java/org/springframework/cheapy/model/Client.java b/src/main/java/org/springframework/cheapy/model/Client.java index 37ba216fa..b249311ff 100644 --- a/src/main/java/org/springframework/cheapy/model/Client.java +++ b/src/main/java/org/springframework/cheapy/model/Client.java @@ -11,7 +11,10 @@ import javax.validation.constraints.NotEmpty; @Entity @Table(name = "clients") public class Client extends User { - + + @NotEmpty + private String email; + @NotEmpty private String address; @@ -42,7 +45,15 @@ public class Client extends User { @OneToMany private Set timeOffers; - + + public String getEmail() { + return email; + } + + public void setEmail(String email) { + this.email = email; + } + public String getAddress() { return address; } diff --git a/src/main/java/org/springframework/cheapy/model/User.java b/src/main/java/org/springframework/cheapy/model/User.java index ef31368b3..dabd4ef10 100644 --- a/src/main/java/org/springframework/cheapy/model/User.java +++ b/src/main/java/org/springframework/cheapy/model/User.java @@ -1,30 +1,35 @@ package org.springframework.cheapy.model; +import java.util.List; +import java.util.Set; + +import javax.persistence.CascadeType; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.MappedSuperclass; +import javax.persistence.OneToMany; 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 = "users") -public class User extends BaseEntity { - - @NotBlank - String username; - - @NotBlank - String password; - - @Email - @NotBlank - String email; +//@Entity +//@Table(name = "users") +@MappedSuperclass +public class User{ - @OneToOne - Authorities authority; + @Id + private String username; + + @NotBlank + private String password; + + boolean enabled; + + //@OneToMany(cascade = CascadeType.ALL, mappedBy = "usern") + //Set authorities; public String getUsername() { return username; @@ -42,19 +47,11 @@ public class User extends BaseEntity { this.password = password; } - public String getEmail() { - return email; - } - - public void setEmail(String email) { - this.email = email; - } - - public Authorities getAuthority() { - return authority; - } - - public void setAuthority(Authorities authority) { - this.authority = authority; - } +// public Set getAuthority() { +// return authorities; +// } +// +// public void setAuthorities(Set authorities) { +// this.authorities = authorities; +// } } diff --git a/src/main/resources/db/mysql/data.sql b/src/main/resources/db/mysql/data.sql index b7c6309f9..3f6a32c07 100644 --- a/src/main/resources/db/mysql/data.sql +++ b/src/main/resources/db/mysql/data.sql @@ -12,4 +12,7 @@ INSERT INTO owners VALUES (10, 'Carlos', 'Estaban', '2335 Independence La.', 'Wa INSERT INTO food_offers(start, end, code, type, client_id, food, discount, units) VALUES ('2021-06-15 12:00:00', '2021-06-16 12:00:00', 'jkhlljk', 'active', null, 'macarrones', '15%', 10); -INSERT INTO time_offers(start, end, code, type, client_id, init, finish, discount) VALUES ('2021-06-15 12:00:00', '2021-06-16 12:00:00', 'jkhlljk', 'active', null, '12:00:00', '13:00:00', '10%'); \ No newline at end of file +INSERT INTO time_offers(start, end, code, type, client_id, init, finish, discount) VALUES ('2021-06-15 12:00:00', '2021-06-16 12:00:00', 'jkhlljk', 'active', null, '12:00:00', '13:00:00', '10%'); + + + From e67d4046690a754b01e4e3d201af7d5c537f329d Mon Sep 17 00:00:00 2001 From: Abraham Date: Tue, 23 Mar 2021 19:13:46 +0100 Subject: [PATCH 2/2] funcionaaaaa --- .../cheapy/model/Authorities.java | 35 ++++++++++++------- .../springframework/cheapy/model/User.java | 3 +- .../springframework/cheapy/model/Usuario.java | 26 ++++++++++++++ .../cheapy/repository/UserRepository.java | 11 ------ .../cheapy/repository/UsuarioRepository.java | 12 +++++++ .../cheapy/service/UserService.java | 2 +- src/main/resources/db/mysql/data.sql | 4 +++ 7 files changed, 66 insertions(+), 27 deletions(-) create mode 100644 src/main/java/org/springframework/cheapy/model/Usuario.java delete mode 100644 src/main/java/org/springframework/cheapy/repository/UserRepository.java create mode 100644 src/main/java/org/springframework/cheapy/repository/UsuarioRepository.java diff --git a/src/main/java/org/springframework/cheapy/model/Authorities.java b/src/main/java/org/springframework/cheapy/model/Authorities.java index a8a3a79b2..7ec1f6666 100644 --- a/src/main/java/org/springframework/cheapy/model/Authorities.java +++ b/src/main/java/org/springframework/cheapy/model/Authorities.java @@ -1,7 +1,6 @@ package org.springframework.cheapy.model; import javax.persistence.Entity; -import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import javax.persistence.Table; @@ -12,21 +11,26 @@ import javax.validation.constraints.Size; public class Authorities extends BaseEntity{ - //@ManyToOne - //@JoinColumn(name = "username") - //private User usern; + /** + * + */ + private static final long serialVersionUID = 1L; + + @ManyToOne + @JoinColumn(name = "username") + private Usuario user; @Size(min = 3, max = 50) private String authority; - -// public User getUsername() { -// return usern; -// } -// -// public void setUser(User user) { -// this.usern = user; -// } - + + public Usuario getUser() { + return user; + } + + public void setUser(Usuario usern) { + this.user = usern; + } + public String getAuthority() { return authority; } @@ -35,4 +39,9 @@ public class Authorities extends BaseEntity{ this.authority = authority; } + public static long getSerialversionuid() { + return serialVersionUID; + } + + } diff --git a/src/main/java/org/springframework/cheapy/model/User.java b/src/main/java/org/springframework/cheapy/model/User.java index dabd4ef10..36d495444 100644 --- a/src/main/java/org/springframework/cheapy/model/User.java +++ b/src/main/java/org/springframework/cheapy/model/User.java @@ -28,8 +28,7 @@ public class User{ boolean enabled; - //@OneToMany(cascade = CascadeType.ALL, mappedBy = "usern") - //Set authorities; + public String getUsername() { return username; diff --git a/src/main/java/org/springframework/cheapy/model/Usuario.java b/src/main/java/org/springframework/cheapy/model/Usuario.java new file mode 100644 index 000000000..3556ff16c --- /dev/null +++ b/src/main/java/org/springframework/cheapy/model/Usuario.java @@ -0,0 +1,26 @@ +package org.springframework.cheapy.model; + +import java.util.Set; + +import javax.persistence.CascadeType; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.OneToMany; +import javax.persistence.Table; + +@Entity +@Table(name = "users") +public class Usuario extends User{ + + @OneToMany(cascade = CascadeType.ALL, mappedBy = "user") + private Set authorities; + + public Set getAuthorities() { + return authorities; + } + + public void setAuthorities(Set authorities) { + this.authorities = authorities; + } + +} diff --git a/src/main/java/org/springframework/cheapy/repository/UserRepository.java b/src/main/java/org/springframework/cheapy/repository/UserRepository.java deleted file mode 100644 index a109afcb6..000000000 --- a/src/main/java/org/springframework/cheapy/repository/UserRepository.java +++ /dev/null @@ -1,11 +0,0 @@ - -package org.springframework.cheapy.repository; - -import org.springframework.data.repository.CrudRepository; -import org.springframework.cheapy.model.User; - -public interface UserRepository extends CrudRepository { - - User findByUsername(String currentPrincipalName); - -} diff --git a/src/main/java/org/springframework/cheapy/repository/UsuarioRepository.java b/src/main/java/org/springframework/cheapy/repository/UsuarioRepository.java new file mode 100644 index 000000000..3b5ffc987 --- /dev/null +++ b/src/main/java/org/springframework/cheapy/repository/UsuarioRepository.java @@ -0,0 +1,12 @@ + +package org.springframework.cheapy.repository; + +import org.springframework.data.repository.CrudRepository; +import org.springframework.cheapy.model.User; +import org.springframework.cheapy.model.Usuario; + +public interface UsuarioRepository extends CrudRepository { + + Usuario findByUsername(String currentPrincipalName); + +} diff --git a/src/main/java/org/springframework/cheapy/service/UserService.java b/src/main/java/org/springframework/cheapy/service/UserService.java index 5576184a1..d719f8b47 100644 --- a/src/main/java/org/springframework/cheapy/service/UserService.java +++ b/src/main/java/org/springframework/cheapy/service/UserService.java @@ -21,7 +21,7 @@ import java.util.Optional; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.dao.DataAccessException; import org.springframework.cheapy.model.User; -import org.springframework.cheapy.repository.UserRepository; +import org.springframework.cheapy.repository.UsuarioRepository; import org.springframework.security.core.Authentication; import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.stereotype.Service; diff --git a/src/main/resources/db/mysql/data.sql b/src/main/resources/db/mysql/data.sql index 3f6a32c07..3dd3b74c7 100644 --- a/src/main/resources/db/mysql/data.sql +++ b/src/main/resources/db/mysql/data.sql @@ -14,5 +14,9 @@ INSERT INTO food_offers(start, end, code, type, client_id, food, discount, units INSERT INTO time_offers(start, end, code, type, client_id, init, finish, discount) VALUES ('2021-06-15 12:00:00', '2021-06-16 12:00:00', 'jkhlljk', 'active', null, '12:00:00', '13:00:00', '10%'); +--insert into usuarios(username, password, enabled) values ('admin3', 'admin', true); +--insert into authorities(id ,usuario, authority) values (42,'admin3', 'admin'); +INSERT INTO users(username,password,enabled) VALUES ('admin1','4dm1n',TRUE); +INSERT INTO authorities(id,username,authority) VALUES (1,'admin1','admin');