Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package br.ueg.posse.speed.system.controller;
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Controller;
- import org.springframework.validation.Errors;
- import org.springframework.validation.annotation.Validated;
- import org.springframework.web.bind.annotation.ModelAttribute;
- import org.springframework.web.bind.annotation.PathVariable;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RequestMethod;
- import org.springframework.web.bind.annotation.RequestParam;
- import org.springframework.web.bind.annotation.ResponseBody;
- import org.springframework.web.servlet.ModelAndView;
- import org.springframework.web.servlet.mvc.support.RedirectAttributes;
- import br.ueg.posse.speed.system.model.Departamento;
- import br.ueg.posse.speed.system.model.Usuario;
- import br.ueg.posse.speed.system.repository.Usuarios;
- import br.ueg.posse.speed.system.repository.filter.DepartamentoFilter;
- import br.ueg.posse.speed.system.service.CadastroDepartamentoService;
- @Controller
- @RequestMapping("/departamentos")
- public class DepartamentoController {
- @Autowired
- private CadastroDepartamentoService cadastroDepartamentoService;
- @Autowired
- private Usuarios usuarios;
- @RequestMapping("/novo")
- public ModelAndView novo() {
- ModelAndView mv = new ModelAndView("/departamento/CadastroDepartamento");
- mv.addObject(new Departamento());
- mv.addObject("usuarios", usuarios.findAll());
- return mv;
- }
- // Salvar
- @RequestMapping(method = RequestMethod.POST)
- public String salvar(@Validated Departamento departamento, Errors errors, RedirectAttributes attributes) {
- if (errors.hasErrors()) {
- return "/departamento/CadastroDepartamento";
- }
- try {
- cadastroDepartamentoService.salvar(departamento);
- attributes.addFlashAttribute("mensagem", "Departamento Salvo com sucesso!!");
- return "redirect:/departamentos/novo";
- } catch (IllegalArgumentException e) {
- errors.rejectValue("dataVencimento", null, e.getMessage());
- return "/departamento/CadastroDepartamento";
- }
- }
- // Pesquisar
- @RequestMapping("/pesquisar")
- public ModelAndView pesquisar(@ModelAttribute("filtro") DepartamentoFilter filtro) {
- List<Departamento> todosDepartamentos = cadastroDepartamentoService.filtrar(filtro);
- ModelAndView mv = new ModelAndView("/departamento/PesquisaDepartamentos");
- mv.addObject("departamentos", todosDepartamentos);
- return mv;
- }
- // Editar
- @RequestMapping("{id}")
- public ModelAndView edicao(@PathVariable("id") Departamento departamento) {
- ModelAndView mv = new ModelAndView("/departamento/CadastroDepartamento");
- mv.addObject(departamento);
- return mv;
- }
- // Excluir
- @RequestMapping(value = "{id}", method = RequestMethod.DELETE)
- public String excluir(@PathVariable Long id, RedirectAttributes attributes) {
- cadastroDepartamentoService.excluir(id);
- attributes.addFlashAttribute("mensagem", "Departamento excluĂdo com sucesso!");
- return "redirect:/departamentos/pesquisar/";
- }
- @RequestMapping(value = "/get_usuario_list", method = RequestMethod.GET)
- public @ResponseBody
- List<Usuario> getUsuarios(@RequestParam String name) {
- return simulateSearchResult(name);
- }
- private List<Usuario> simulateSearchResult(String name) {
- List<Usuario> result = new ArrayList<Usuario>();
- List<Usuario> usuarios = this.usuarios.findByNomeContaining(name);
- // iterate a list and filter by tagName
- for (Usuario usuario : usuarios) {
- if (usuario.getNome().contains(name)) {
- result.add(usuario);
- }
- }
- return result;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment