|
|
@ -1,5 +1,7 @@ |
|
|
|
package mx.gob.jumapacelaya.services; |
|
|
|
|
|
|
|
import com.vaadin.flow.component.notification.Notification; |
|
|
|
import com.vaadin.flow.component.notification.NotificationVariant; |
|
|
|
import com.vaadin.flow.server.VaadinService; |
|
|
|
import mx.gob.jumapacelaya.api.RedmineClient; |
|
|
|
import mx.gob.jumapacelaya.api.SecurityService; |
|
|
@ -39,8 +41,8 @@ public class UserService { |
|
|
|
CustomUserDetails userDetails = ldapService.getUserDetails(username); |
|
|
|
if (userDetails != null) { |
|
|
|
if (userDetails.getEmail() == null || userDetails.getEmail().isEmpty()) { |
|
|
|
logger.error("El usuario: " + username + " no tiene correo electronico."); |
|
|
|
return null; |
|
|
|
logger.warn("El usuario {} no tiene correo electrónico. Asignando uno por defecto.", username); |
|
|
|
userDetails.setEmail(username + "@jumapacelaya.gob.mx"); // Asigna un correo por defecto |
|
|
|
} |
|
|
|
RedmineUser newUser = RedmineClient.createRedmineUser( |
|
|
|
username, |
|
|
@ -48,6 +50,7 @@ public class UserService { |
|
|
|
userDetails.getLastName(), |
|
|
|
userDetails.getEmail() |
|
|
|
); |
|
|
|
|
|
|
|
if (newUser != null) { |
|
|
|
logger.info("Usuario creado en Redmine: " + newUser); |
|
|
|
return newUser; |
|
|
@ -89,8 +92,9 @@ public class UserService { |
|
|
|
} |
|
|
|
} |
|
|
|
}else{ |
|
|
|
logger.error("No se pudo obtener al usuario autenticado en Redmine"); |
|
|
|
securityService.logout(); |
|
|
|
logger.error("No se pudo obtener al usuario autenticado en Redmine. Permitiendo acceso limitado"); |
|
|
|
Notification.show("No se pudo obtener al usuario autenticado en Redmine. Permitiendo acceso limitado") |
|
|
|
.addThemeVariants(NotificationVariant.LUMO_WARNING); |
|
|
|
} |
|
|
|
} |
|
|
|
return userclient; |
|
|
|