Advertisement
Guest User

ProtocoloController.java

a guest
Sep 26th, 2016
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 7.77 KB | None | 0 0
  1. package br.ueg.posse.speed.controller;
  2.  
  3. import java.text.SimpleDateFormat;
  4. import java.util.Date;
  5. import java.util.List;
  6.  
  7. import javax.servlet.http.HttpServletRequest;
  8. import javax.servlet.http.HttpSession;
  9.  
  10. import org.springframework.beans.factory.annotation.Autowired;
  11. import org.springframework.stereotype.Controller;
  12. import org.springframework.validation.Errors;
  13. import org.springframework.validation.annotation.Validated;
  14. import org.springframework.web.bind.annotation.GetMapping;
  15. import org.springframework.web.bind.annotation.ModelAttribute;
  16. import org.springframework.web.bind.annotation.PathVariable;
  17. import org.springframework.web.bind.annotation.RequestMapping;
  18. import org.springframework.web.bind.annotation.RequestMethod;
  19. import org.springframework.web.bind.annotation.ResponseBody;
  20. import org.springframework.web.servlet.ModelAndView;
  21. import org.springframework.web.servlet.mvc.support.RedirectAttributes;
  22.  
  23. import br.ueg.posse.speed.model.Protocolo;
  24. import br.ueg.posse.speed.model.StatusProtocolo;
  25. import br.ueg.posse.speed.model.TramiteProtocolo;
  26. import br.ueg.posse.speed.repository.Cursos;
  27. import br.ueg.posse.speed.repository.Departamentos;
  28. import br.ueg.posse.speed.repository.Documentos;
  29. import br.ueg.posse.speed.repository.Protocolos;
  30. import br.ueg.posse.speed.repository.Tramites;
  31. import br.ueg.posse.speed.repository.Usuarios;
  32. import br.ueg.posse.speed.repository.filter.ProtocoloFilter;
  33. import br.ueg.posse.speed.service.CadastroProtocoloService;
  34. import br.ueg.posse.speed.service.CadastroTramiteProtocolo;
  35.  
  36. @Controller
  37. @RequestMapping("/protocolos")
  38. public class ProtocoloController {
  39.  
  40.     @Autowired
  41.     private CadastroProtocoloService cadastroProtocoloService;
  42.    
  43.     @Autowired
  44.     private CadastroTramiteProtocolo tramiteProtocoloService;
  45.    
  46.     @Autowired
  47.     private Documentos documentos;
  48.  
  49.     @Autowired
  50.     private Usuarios usuarios;
  51.  
  52.     @Autowired
  53.     private Protocolos protocolos;
  54.  
  55.     @Autowired
  56.     private Cursos cursos;
  57.  
  58.     @Autowired
  59.     private Departamentos departamentos;
  60.  
  61.     @Autowired
  62.     private Tramites tramites;
  63.  
  64.     // Novo
  65.     @RequestMapping("/novo")
  66.     public ModelAndView novo(HttpSession session) {
  67.         ModelAndView mv = new ModelAndView("/protocolo/novoProtocolo");
  68.         mv.addObject(new Protocolo());
  69.         mv.addObject("documentos", documentos.findAll());
  70.         mv.addObject("cursos", cursos.findAll());
  71.  
  72.         mv.addObject("departamentos", departamentos.findOneByNome());
  73.  
  74.         String nome = (String) session.getAttribute("username");
  75.         mv.addObject("usuarios", usuarios.findOneByNome(nome));
  76.  
  77.         return mv;
  78.     }
  79.  
  80.     // Salvar
  81.     @RequestMapping(method = RequestMethod.POST)
  82.     public String salvar(@Validated Protocolo protocolo, Errors errors, RedirectAttributes attributes,
  83.             HttpSession session, HttpServletRequest request) {
  84.         if (errors.hasErrors()) {
  85.             return "/protocolo/novoProtocolo";
  86.         }
  87.  
  88.         try {
  89.  
  90.             // data
  91.             Date data = new Date();
  92.             SimpleDateFormat df = new SimpleDateFormat("yyyy.MM.dd");
  93.             String prot = df.format(data);
  94.  
  95.             // numero de protocolo
  96.             prot = prot.replace(".", "");
  97.             List<Protocolo> CountProtocolos = protocolos.findById();
  98.             System.out.println(CountProtocolos);
  99.             String numero = CountProtocolos.toString();
  100.             numero = numero.replace("[", "");
  101.             numero = numero.replace("]", "");
  102.  
  103.             protocolo.setProtocolo(prot + "000" + numero);
  104.             protocolo.setData(data);
  105.             protocolo.setStatus(StatusProtocolo.PENDENTE);
  106.  
  107.             String status = "" + protocolo.getStatus();
  108.  
  109.             cadastroProtocoloService.salvar(protocolo);
  110.  
  111.             TramiteProtocolo tramiteProtocolo = new TramiteProtocolo();
  112.             tramiteProtocolo.setData(data);
  113.             tramiteProtocolo.setProtocolo(protocolo);
  114.             tramiteProtocolo.setStatus(status);
  115.            
  116.             tramiteProtocoloService.salvar(tramiteProtocolo);
  117.            
  118.  
  119.             session.setAttribute("protocolo", protocolo.getProtocolo());
  120.  
  121.             attributes.addFlashAttribute("mensagem", "Protocolo Salvo com sucesso!!");
  122.             return "redirect:/protocolos/numeroProtocolo";
  123.         } catch (IllegalArgumentException e) {
  124.             return "/protocolo/novoProtocolo";
  125.         }
  126.     }
  127.  
  128.     // Encaminhar
  129.     @RequestMapping("/encaminhar-finalizar")
  130.     public ModelAndView pesquisar(@ModelAttribute("filtro") ProtocoloFilter filtro, HttpSession session,
  131.             HttpServletRequest request) {
  132.  
  133.         if (session.getAttribute("dpt").equals("Secretaria") && (session.getAttribute("grupo") != null)) {
  134.  
  135.             List<Protocolo> todosProtocolosEncaminhados = cadastroProtocoloService.filtrarRecebidos(filtro);
  136.            
  137.             System.out.println("todos >>>>>>>>>>>>>>>>");
  138.  
  139.             ModelAndView mv = new ModelAndView("/protocolo/Encaminhar-FinalizarProtocolo");
  140.  
  141.             mv.addObject("protocolos", todosProtocolosEncaminhados);
  142.  
  143.             return mv;
  144.         } else {
  145.  
  146.             List<Protocolo> todosProtocolosEncaminhados = cadastroProtocoloService.filtrarAndamentos(filtro);
  147.             System.out.println(todosProtocolosEncaminhados);
  148.             ModelAndView mv = new ModelAndView("/protocolo/Encaminhar-FinalizarProtocolo");
  149.             mv.addObject("protocolos", todosProtocolosEncaminhados);
  150.             return mv;
  151.         }
  152.  
  153.     }
  154.  
  155.     // Receber
  156.     @RequestMapping(value = "/{id}/receber", method = RequestMethod.PUT)
  157.     public @ResponseBody String receber(@PathVariable Long id) {
  158.         return cadastroProtocoloService.receber(id);
  159.     }
  160.  
  161.     @RequestMapping("/receber")
  162.     public ModelAndView pesquisa(@ModelAttribute("filtro") ProtocoloFilter filtro) {
  163.         List<Protocolo> todosProtocolos = cadastroProtocoloService.filtrarPendentes(filtro);
  164.  
  165.         ModelAndView mv = new ModelAndView("/protocolo/receberProtocolo");
  166.         mv.addObject("protocolos", todosProtocolos);
  167.         return mv;
  168.     }
  169.  
  170.     // Rastrear
  171.     @RequestMapping("/rastrear")
  172.     public ModelAndView rastrear(@ModelAttribute("filtro") ProtocoloFilter filtro) {
  173.         List<Protocolo> todosProtocolos = cadastroProtocoloService.filtrar(filtro);
  174.         ModelAndView mv = new ModelAndView("/protocolo/rastrearProtocolo");
  175.         mv.addObject("protocolos", todosProtocolos);
  176.         return mv;
  177.     }
  178.  
  179.     // Novo
  180.     @RequestMapping("/numeroProtocolo")
  181.     public ModelAndView numeroProtocolo(HttpSession session) {
  182.         ModelAndView mv = new ModelAndView("/protocolo/numeroProtocolo");
  183.         mv.addObject(new Protocolo());
  184.         String nome = (String) session.getAttribute("username");
  185.         mv.addObject("usuarios", usuarios.findOneByNome(nome));
  186.  
  187.         return mv;
  188.     }
  189.  
  190.    
  191.     // Editar
  192.     @GetMapping("{id}")
  193.     public ModelAndView edicao(@PathVariable("id") Protocolo protocolo) {
  194.         ModelAndView mv = new ModelAndView("/protocolo/EncaminharParaDepartamento");
  195.        
  196.         System.out.println("chegou>>>>>>>>>>>>>>>>");
  197.         mv.addObject(protocolo);
  198.         mv.addObject("cursos", cursos.findAll());
  199.         mv.addObject("departamentos", departamentos.findAll());
  200.         mv.addObject("usuarios", usuarios.findAll());
  201.         mv.addObject("documentos", documentos.findAll());
  202.  
  203.         return mv;
  204.     }
  205.  
  206.     @RequestMapping(value = "/enviar", method = RequestMethod.POST)
  207.     public String enviar(@Validated Protocolo protocolo, Errors errors, RedirectAttributes attributes,
  208.             HttpSession session, HttpServletRequest request) {
  209.  
  210.         String id = request.getParameter("id");
  211.         String pt = request.getParameter("protocolo");
  212.         String dt = request.getParameter("data");
  213.  
  214.         protocolo.setStatus(StatusProtocolo.ANDAMENTO);
  215.  
  216.         String protocoloNome = request.getParameter("protocolo");
  217.         protocolo.setProtocolo(protocoloNome);
  218.  
  219.         System.out.println("<<<<<<<<<<<<<<<<<" + id);
  220.         System.out.println("<<<<<<<<<<<<<<<<<" + pt);
  221.  
  222.         System.out.println("<<<<<<<<<<<<<<<<<" + dt);
  223.  
  224.         cadastroProtocoloService.salvar(protocolo);
  225.  
  226.         Date data = new Date();
  227.         String status = "" + protocolo.getStatus();
  228.  
  229.         TramiteProtocolo tramiteProtocolo = new TramiteProtocolo();
  230.         tramiteProtocolo.setData(data);
  231.         tramiteProtocolo.setProtocolo(protocolo);
  232.         tramiteProtocolo.setStatus(status);
  233.  
  234.         tramiteProtocoloService.salvar(tramiteProtocolo);
  235.         session.setAttribute("protocolo", protocolo.getProtocolo());
  236.  
  237.         return "redirect:/protocolos//encaminhar-finalizar";
  238.  
  239.     }
  240.  
  241. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement