use of com.tomasio.projects.trainning.dto.NetworkGroupDTO in project trainning by fernandotomasio.
the class UsuariosController method saveUsuario.
@RequestMapping("/save")
public String saveUsuario(Model model, @ModelAttribute("userOrganization") OrganizacaoDTO userOrganization, @Valid UsuarioForm usuarioForm, BindingResult bindingResult, WebRequest request) {
String[] permissions = request.getParameterValues("permissions");
if (permissions != null) {
for (String permission : permissions) {
System.out.println("permission: " + permission);
}
}
if (usuarioForm.getSourceButton() != null && usuarioForm.getSourceButton().equals("resetPassword")) {
userService.updateUserPassword(generatePassword(), usuarioForm.getLogin());
NetworkGroupDTO[] groups = userService.findAllRoleGroups();
// jogo no ArrayList para trabalhar
List<NetworkGroupDTO> roles = new ArrayList();
roles.addAll(Arrays.asList(groups));
// ordenar a lista de roles
Collections.sort(roles, new Comparator<NetworkGroupDTO>() {
@Override
public int compare(NetworkGroupDTO o1, NetworkGroupDTO o2) {
return o1.getDescricao().compareTo(o2.getDescricao());
}
});
model.addAttribute("roles", roles);
// buscar as roles do marcadas
if (permissions != null) {
List<String> rolesAssigned = new ArrayList<>();
for (NetworkGroupDTO group : groups) {
for (String permission : permissions) {
if (permission.equals(group.getNome())) {
rolesAssigned.add(group.getNome());
}
}
}
model.addAttribute("rolesAssigned", rolesAssigned);
}
model.addAttribute("organizacoes", organizationalService.findAllOrganizacoes());
model.addAttribute("successMessage", "Senha reinicializada com sucesso!<br/> Um email automático foi enviado para o usuário");
return "usuarios/form";
}
if (bindingResult.hasErrors()) {
model.addAttribute("organizacoes", initializeSelectableOrganizacoes(request, userOrganization));
NetworkGroupDTO[] groups = userService.findAllRoleGroups();
// jogo no ArrayList para trabalhar
List<NetworkGroupDTO> roles = new ArrayList();
roles.addAll(Arrays.asList(groups));
// ordenar a lista de roles
Collections.sort(roles, new Comparator<NetworkGroupDTO>() {
@Override
public int compare(NetworkGroupDTO o1, NetworkGroupDTO o2) {
return o1.getDescricao().compareTo(o2.getDescricao());
}
});
model.addAttribute("roles", roles);
// buscar as roles do marcadas
if (permissions != null) {
List<String> rolesAssigned = new ArrayList<>();
for (NetworkGroupDTO group : groups) {
for (String permission : permissions) {
if (permission.equals(group.getNome())) {
rolesAssigned.add(group.getNome());
}
}
}
model.addAttribute("rolesAssigned", rolesAssigned);
}
return "usuarios/form";
}
NetworkUserDTO dto;
if (usuarioForm.getOp().equals("NEW")) {
dto = new NetworkUserDTO();
dto.setPassword(generatePassword());
} else {
dto = userService.findUser(usuarioForm.getLogin());
}
if (usuarioForm.getOrganizacaoId() > 0) {
OrganizacaoDTO organizacao = organizationalService.findOrganizacao(usuarioForm.getOrganizacaoId());
dto.setOrganizacao(organizacao.getSigla());
}
// Inserção do campo SENHA como solução do problema do PROXY
if (usuarioForm.getPassword() != null && !usuarioForm.getPassword().equals("")) {
dto.setPassword(usuarioForm.getPassword());
}
dto.setLogin(usuarioForm.getLogin());
dto.setNome(usuarioForm.getNome());
dto.setNomeGuerra(usuarioForm.getNomeGuerra());
dto.setPosto(usuarioForm.getPosto());
dto.setTarjeta(usuarioForm.getPosto() + " " + usuarioForm.getNomeGuerra());
dto.setTelefone(usuarioForm.getTelefone());
dto.setEmail(usuarioForm.getEmail());
if (usuarioForm.getOp().equals("NEW")) {
try {
userService.createUser(dto, permissions);
// Inserção do campo SENHA como solução do problema do PROXY
if (usuarioForm.getPassword() != null && !usuarioForm.getPassword().equals("")) {
model.addAttribute("successMessage", "Usuário criado com sucesso!");
model.addAttribute("errorMessage", "Faz-se necessário contato com o usuário para informar a senha definida!");
} else {
model.addAttribute("successMessage", "Usuário criado com sucesso!<br/> Um email automático foi enviado para o usuário");
}
} catch (CoreException e) {
model.addAttribute("errorMessage", e.getMessage());
model.addAttribute("usuarios", userService.findAllUsers());
return "usuarios";
}
} else {
userService.updateUser(dto, permissions);
if (usuarioForm.getPassword() != null && !usuarioForm.getPassword().equals("")) {
model.addAttribute("successMessage", "Usuário atualizado com sucesso!");
model.addAttribute("errorMessage", "Faz-se necessário contato com o usuário para informar a nova senha definida!");
} else {
model.addAttribute("successMessage", "Usuário atualizado com sucesso!");
}
}
// buscar usuário pelo login
dto = userService.findUser(usuarioForm.getLogin());
// buscar as roles do usuário
NetworkGroupDTO[] groups = userService.findAllRoleGroups();
List<String> rolesAssigned = new ArrayList<>();
for (NetworkGroupDTO group : groups) {
if (group.getMembers().contains(dto.getId())) {
rolesAssigned.add(group.getNome());
}
}
// jogo no ArrayList para trabalhar
List<NetworkGroupDTO> roles = new ArrayList();
roles.addAll(Arrays.asList(groups));
// ordenar a lista de roles
Collections.sort(roles, new Comparator<NetworkGroupDTO>() {
@Override
public int compare(NetworkGroupDTO o1, NetworkGroupDTO o2) {
return o1.getDescricao().compareTo(o2.getDescricao());
}
});
model.addAttribute("roles", roles);
model.addAttribute("rolesAssigned", rolesAssigned);
model.addAttribute("usuario", dto);
return "usuarios/detail";
}
use of com.tomasio.projects.trainning.dto.NetworkGroupDTO in project trainning by fernandotomasio.
the class UsuariosController method newUsuário.
@RequestMapping("/new")
public String newUsuário(Model model, @ModelAttribute("userOrganization") OrganizacaoDTO userOrganization, WebRequest request) {
NetworkGroupDTO[] groups = userService.findAllRoleGroups();
// jogo no ArrayList para trabalhar
List<NetworkGroupDTO> roles = new ArrayList();
roles.addAll(Arrays.asList(groups));
// ordenar a lista de roles
Collections.sort(roles, new Comparator<NetworkGroupDTO>() {
@Override
public int compare(NetworkGroupDTO o1, NetworkGroupDTO o2) {
return o1.getDescricao().compareTo(o2.getDescricao());
}
});
model.addAttribute("roles", roles);
UsuarioForm usuarioForm = new UsuarioForm();
usuarioForm.setOp("NEW");
model.addAttribute(usuarioForm);
model.addAttribute("organizacoes", initializeSelectableOrganizacoes(request, userOrganization));
return "usuarios/form";
}
use of com.tomasio.projects.trainning.dto.NetworkGroupDTO in project trainning by fernandotomasio.
the class GruposController method editGrupo.
@RequestMapping("/edit")
public String editGrupo(Model model, WebRequest request) {
String grupoId = request.getParameter("grupoId");
NetworkGroupDTO dto = userService.findRoleGroup(grupoId);
GrupoForm grupoForm = new GrupoForm();
grupoForm.setNome(dto.getNome());
grupoForm.setDescricao(dto.getDescricao());
grupoForm.setId(dto.getId());
model.addAttribute(grupoForm);
return "grupos/form";
}
use of com.tomasio.projects.trainning.dto.NetworkGroupDTO in project trainning by fernandotomasio.
the class LDAPNetworkGroupDAO method findRole.
@Override
public NetworkGroupDTO findRole(String uid) throws DAOException {
NetworkGroupDTO group = null;
try {
DistinguishedName dn = new DistinguishedName();
dn.add("ou", "groups");
dn.add("ou", APPLICATION_GROUP_BRANCH);
dn.add("ou", ROLES_GROUP_BRANCH);
dn.add("cn", uid);
group = (NetworkGroupDTO) ldapTemplate.lookup(dn, getGroupContextMapper());
} catch (AuthenticationException e) {
Logger.getLogger(this.getClass().getName()).log(Level.INFO, null, e);
throw new DAOException(MessageHelper.getMessage("systemUsers.find.error"));
} catch (org.springframework.ldap.NameNotFoundException e) {
Logger.getLogger(this.getClass().getName()).log(Level.INFO, null, e);
}
return group;
}
use of com.tomasio.projects.trainning.dto.NetworkGroupDTO in project trainning by fernandotomasio.
the class LDAPNetworkGroupDAO method removeRole.
@Override
public void removeRole(String id) throws DAOException {
NetworkGroupDTO group = findRole(id);
try {
Name dn = buildRolesGroupDn(group);
ldapTemplate.unbind(dn);
} catch (org.springframework.ldap.NameNotFoundException e) {
Logger.getLogger(this.getClass().getName()).log(Level.INFO, null, e);
}
}
Aggregations