public ActionResult Novo(int?id)
        {
            if (!id.HasValue)
            {
                return(RedirectToAction("index", "cliente"));
            }

            var StatusServico  = new StatusServico();
            var TipoServico    = new TipoServico();
            var ClienteServico = new ClienteServico();
            var UsuarioServico = new UsuarioServico();


            var cliente = ClienteServico.ObterPorId(id.Value);

            if (cliente == null)
            {
                return(RedirectToAction("index", "cliente"));
            }

            var model = new Visita();

            if (ModelState.IsValid)
            {
                try
                {
                    if (!_servico.PermissaoIncluir(UsuarioId))
                    {
                        return(new HttpStatusCodeResult(HttpStatusCode.BadRequest, "Usuário sem Permissão!"));
                        //return RedirectToAction("Index", "Login");
                    }

                    if (!UsuarioServico.HorarioUsoSistema("", "", UsuarioId))
                    {
                        return(new HttpStatusCodeResult(HttpStatusCode.BadRequest, Mensagem.MensagemHorarioAcessoSistema));
                    }

                    model.Data       = DateTime.Now.Date;
                    model.ClienteId  = id.Value;
                    model.Cliente    = cliente;
                    model.StatusId   = 1;
                    model.TipoId     = 1;
                    model.UsuarioId  = UsuarioId;
                    model.Anexo      = "";
                    model.Contato    = "";
                    model.Dcto       = "";
                    model.Descricao  = "";
                    model.FormaPagto = "";
                    model.HoraFim    = TimeSpan.Zero;
                    model.HoraInicio = TimeSpan.Zero;
                    model.Id         = 0;
                    model.TotalHoras = 0;
                    model.Valor      = 0;
                    model.Versao     = cliente.Versao;

                    var listaTipos = TipoServico.ListarVisitas("");
                    var tipo       = new Tipo();
                    listaTipos.Insert(0, tipo);

                    model.ListaTipos    = listaTipos;
                    model.ListaStatus   = StatusServico.ListarVisitas("");
                    model.ListaUsuarios = UsuarioServico.Listar("");
                }
                catch (Exception ex)
                {
                    ModelState.AddModelError("", ex.Message);
                    return(new HttpStatusCodeResult(HttpStatusCode.BadRequest, ex.Message));
                }
            }
            return(View("alterar", model));
        }