//
        public ActionResult detalhe(int id, string returnUrl)
        {
            var ViewModel = new AtendimentoForm();

            ViewModel.Atendimento = this.OAtendimentoConsultaBL.carregar(id);

            var idUnidade = User.idUnidade() == 0 ? null : (int?)User.idUnidade();

            if (ViewModel.Atendimento == null)
            {
                this.Flash(UtilMessage.TYPE_MESSAGE_ERROR, UtilMessage.error("Erro!", "O atendimento informado não foi encontrado."));

                return(RedirectToAction(returnUrl));
            }

            if (!idUnidade.isEmpty() && ViewModel.Atendimento.Associado?.idUnidade != idUnidade)
            {
                this.Flash(UtilMessage.TYPE_MESSAGE_ERROR, UtilMessage.error("Erro!", "O atendimento informado pertence a outra unidade."));
                return(RedirectToAction("index", "home", new { area = "" }));
            }

            if (ViewModel.Atendimento.idAssociado > 0)
            {
                var idAssociado = ViewModel.Atendimento.idAssociado.toInt();

                ViewModel.AssociadoVinculado = this.OAssociadoRelatorioVWBL.listar(0, "", "", "").Where(x => x.id == idAssociado)
                                               .Select(x => new ItemListaAssociado {
                    id = x.id, nroAssociado = x.nroAssociado,
                    descricaoTipoAssociado = x.descricaoTipoAssociado,
                    flagTipoPessoa         = x.flagTipoPessoa, nome = x.nome,
                    razaoSocial            = x.razaoSocial, nroDocumento = x.nroDocumento,
                    dtCadastro             = x.dtCadastro, ativo = x.ativo
                                                                   //flagSituacaoContribuicao = x.flagSituacaoContribuicao
                }).FirstOrDefault();
            }

            if (ViewModel.Atendimento.idNaoAssociado > 0)
            {
                var idNaoAssociado = ViewModel.Atendimento.idNaoAssociado.toInt();

                ViewModel.AssociadoVinculado = this.ONaoAssociadoRelatorioVWBL.listar(0, "", "", "").Where(x => x.id == idNaoAssociado)
                                               .Select(x => new ItemListaAssociado {
                    id = x.id, nroAssociado = x.nroAssociado,
                    descricaoTipoAssociado = x.descricaoTipoAssociado,
                    flagTipoPessoa         = x.flagTipoPessoa, nome = x.nome,
                    razaoSocial            = x.razaoSocial, nroDocumento = x.nroDocumento,
                    dtCadastro             = x.dtCadastro, ativo = x.ativo
                }).FirstOrDefault();
            }

            return(View(ViewModel));
        }
        public ActionResult salvar(AtendimentoForm ViewModel)
        {
//		    if (!ModelState.IsValid) {
//			    return View("index", ViewModel);
//		    }

            var flagTipoPessoa = UtilRequest.getString("flagTipoPessoa");

            if (flagTipoPessoa == "F")
            {
                ViewModel.Atendimento.nroDocumento = UtilRequest.getString("cpf");
            }

            if (flagTipoPessoa == "J")
            {
                ViewModel.Atendimento.nroDocumento = UtilRequest.getString("cnpj");
            }

            var flagSucesso = OAtendimentoCadastroBL.salvar(ViewModel.Atendimento);

            if (flagSucesso)
            {
                ArquivoUpload OArquivoUpload = new ArquivoUpload();

                OArquivoUpload.idReferenciaEntidade = ViewModel.Atendimento.id;
                OArquivoUpload.legenda   = "Arquivo do Atendimento #" + ViewModel.Atendimento.id + " - " + ViewModel.Atendimento.titulo;
                OArquivoUpload.categoria = ArquivoUploadTypes.DOCUMENTO;
                OArquivoUpload.entidade  = EntityTypes.ATENDIMENTO;

                foreach (var OArquivo in ViewModel.listaArquivo)
                {
                    OArquivoUploadBL.salvar(OArquivoUpload, OArquivo);
                }

                return(RedirectToAction("detalhe", "Atendimento", new { id = ViewModel.Atendimento.id }));
            }

            return(View("index", ViewModel));
        }
        public ActionResult index()
        {
            var ViewModel = new AtendimentoForm();

            return(View(ViewModel));
        }