@RequestMapping(method = RequestMethod.GET, value = "/criaRespostaCotacao")
  public ModelAndView newRespostaCotacao(Cotacao cotacao) {

    RespostaCotacao resposta = new RespostaCotacao();

    if (usuarioService.ehUsuarioLogado()) {
      ModelAndView mv = new ModelAndView("/cotacao/cotacao", "cotacao", cotacao);
      mv.addObject("msg", "A abertura de negociação é sempre feita por um Fornecedor.");
      mv.setViewName("mostraCotacao");
      return mv;
    } else {
      if (!service.possuiNegociacaoAberta(
          cotacao.getId(), fornecedorService.getLoggedFornecedor().getId())) {
        cotacao = service.getCotacao(cotacao.getId());
        cotacao.setStatus(Status.TRABALHO);
        cotacao.setDataAtualizacao(new Date());
        service.atualizarCotacao(cotacao);

        resposta.setCotacao(cotacao);
        resposta.setPredio(cotacao.getPredio());
        resposta.setFornecedor(fornecedorService.getLoggedFornecedor());
        ModelAndView mv =
            new ModelAndView("/cotacao/respostaCotacao/criaResposta", "resposta", resposta);
        mv.setViewName("criaRespostaCotacao");
        return mv;
      } else {
        ModelAndView mv = new ModelAndView("/cotacao/cotacao", "cotacao", cotacao);
        mv.addObject("msg", "Fornecedor já possui negociação na Cotação.");
        mv.setViewName("mostraCotacao");
        return mv;
      }
    }
  }
  @RequestMapping(method = RequestMethod.GET, value = "/criaRespostaCotacaoResposta")
  public ModelAndView newRespostaCotacao(final Long idCotacao, Long idFornecedor) {

    List<RespostaCotacao> respostas = service.listRespostasCotacao(idCotacao, idFornecedor);
    RespostaCotacao respostaUltima =
        (respostas.size() > 0) ? respostas.get(respostas.size() - 1) : null;

    Cotacao cotacao = service.getCotacao(idCotacao);

    RespostaCotacao resposta = new RespostaCotacao();
    resposta.setCotacao(cotacao);
    resposta.setFornecedor(fornecedorService.getFornecedor(idFornecedor));
    resposta.setPredio(cotacao.getPredio());

    ModelAndView mv =
        new ModelAndView("/cotacao/respostaCotacao/criaResposta", "resposta", resposta);
    mv.addObject("respostas", respostas);
    mv.addObject("respostaUltima", respostaUltima);
    mv.setViewName("criaRespostaCotacao");
    return mv;
  }
  @RequestMapping(method = RequestMethod.POST, value = "/criaRespostaCotacao")
  public ModelAndView createRespostaCotacao(
      @ModelAttribute("resposta") final RespostaCotacao respostaCotacao) {
    respostaCotacao.setData(new Date());

    ModelAndView mv =
        new ModelAndView(
            "/cotacao/respostaCotacao/resposta",
            "resposta",
            service.criaRespostaCotacao(respostaCotacao));
    mv.setViewName("mostraRespostaCotacao");
    return mv;
  }