Esempio n. 1
0
        /// <summary>
        /// Lista dos Tipos de OAE
        /// </summary>
        /// <returns>JsonResult Lista de TipoOAE</returns>
        public JsonResult Integracao_TiposOAE_ListAll()
        {
            IntegracaoDAO  saida           = new IntegracaoDAO();
            List <TipoOAE> listaDeTiposOAE = saida.get_TiposOAE();

            return(Json(new { data = listaDeTiposOAE }, JsonRequestBehavior.AllowGet));
        }
Esempio n. 2
0
        /// <summary>
        /// Lista das Regionais
        /// </summary>
        /// <returns>JsonResult Lista de OAEs</returns>
        public JsonResult Integracao_Regionais_ListAll()
        {
            IntegracaoDAO   saida            = new IntegracaoDAO();
            List <Regional> listaDeRegionais = saida.get_Regionais_API();

            return(Json(new { data = listaDeRegionais }, JsonRequestBehavior.AllowGet));
        }
Esempio n. 3
0
        /// <summary>
        /// Lista dos Sentidos das Rodovias
        /// </summary>
        /// <returns>JsonResult Lista de Rodovias</returns>
        public JsonResult Integracao_SentidoRodovias_ListAll()
        {
            IntegracaoDAO         saida = new IntegracaoDAO();
            List <SentidoRodovia> listaDeSentidoRodovias = saida.get_SentidoRodovias();

            return(Json(new { data = listaDeSentidoRodovias }, JsonRequestBehavior.AllowGet));
        }
Esempio n. 4
0
        /// <summary>
        /// Lista das Rodovias
        /// </summary>
        /// <param name="rod_Codigo">Filtro por Codigo da Rodovia</param>
        /// <returns>JsonResult Lista de Rodovias</returns>
        public JsonResult Integracao_Rodovias_ListAll(string rod_Codigo = "")
        {
            IntegracaoDAO  saida           = new IntegracaoDAO();
            List <Rodovia> listaDeRodovias = saida.get_Rodovias_API(rod_Codigo);

            return(Json(new { data = listaDeRodovias }, JsonRequestBehavior.AllowGet));
        }
Esempio n. 5
0
        /// <summary>
        /// Lista das OAEs
        /// </summary>
        /// <param name="rod_id">Filtro por Id da Rodovia</param>
        /// <returns>JsonResult Lista de Rodovias</returns>
        public JsonResult Integracao_OAEs_ListAll(string rod_id = "")
        {
            IntegracaoDAO saida       = new IntegracaoDAO();
            List <OAE>    listaDeOAEs = saida.get_OAEs_API(rod_id);

            return(Json(new { data = listaDeOAEs }, JsonRequestBehavior.AllowGet));
        }
Esempio n. 6
0
        /// <summary>
        /// Lista das Rodovias
        /// </summary>
        /// <param name="rod_codigo">Filtro por Código da Rodovia</param>
        /// <param name="kminicial">Km Inicial</param>
        /// <param name="kmfinal">km Final</param>
        /// <returns>JsonResult</returns>
        public JsonResult Integracao_VDMs_ListAll(string rod_codigo = "", decimal kminicial = 0, decimal kmfinal = 0)
        {
            IntegracaoDAO saida = new IntegracaoDAO();
            //List<vdm> retorno = saida.get_VDMs(rod_codigo.ToUpper().Trim(), kminicial, kmfinal);
            List <vdm> retorno = saida.get_VDMs_API(rod_codigo.ToUpper().Trim(), kminicial, kmfinal);

            return(Json(new { data = retorno }, JsonRequestBehavior.AllowGet));
        }
Esempio n. 7
0
        /// <summary>
        ///     Lista das TPUs a serem adicionadas
        /// </summary>
        /// <param name="orc_id">Id do orçamento</param>
        /// <param name="obj_id">Id do objeto do orcamento</param>
        /// <param name="ose_fase">Fase da TPU</param>
        /// <param name="mes">Mês</param>
        /// <param name="ano">Ano</param>
        /// <param name="desonerado">Desonerado</param>
        /// <returns>Lista de Detalhes do Orcamento</returns>
        public List <ServicosAdicionados> OrcamentoServicosAdicionadosTPUs_ListAll(int orc_id, int obj_id, int ose_fase, int mes, int ano, string desonerado)
        {
            // checa se a tabela DER.TPUs esta sincronizada
            List <tpu> listaTPU = new IntegracaoDAO().DER_SincronizarTPUs(0, ano.ToString(), ose_fase.ToString(), mes.ToString(), "", "");

            // if ((listaTPU.Count == 1) && (listaTPU[0].CodSubItem != "-1"))
            // {
            return(new OrcamentoDAO().OrcamentoServicosAdicionadosTPUs_ListAll(orc_id, obj_id, ose_fase));
            //}
        }
Esempio n. 8
0
        public JsonResult Sincronizar(int forcar_atualizacao = 1)
        {
            //List <Rodovia> lst = new IntegracaoDAO().Sirgeo_SincronizarRodovias(forcar_atualizacao);
            //string retorno = lst[0].rod_descricao;

            //List <Regional> lst = new IntegracaoDAO().Sirgeo_SincronizarRegionais(forcar_atualizacao);
            //string retorno = lst[0].reg_descricao;

            List <OAE> lst     = new IntegracaoDAO().Sirgeo_SincronizarOAE(forcar_atualizacao);
            string     retorno = lst[0].oae_km_inicial;
            bool       valid   = lst.Count > 1;

            return(Json(new { status = valid, erroId = retorno }, JsonRequestBehavior.AllowGet));
        }
Esempio n. 9
0
        /// <summary>
        /// Lista das TPUs
        /// </summary>
        /// <param name="ano">Ano</param>
        /// <param name="fase">fase = 23</param>
        /// <param name="mes">Mês</param>
        /// <param name="onerado">Onerado: SIM,NÃO, vazio para todos</param>
        /// <returns>JsonResult Lista tpu</returns>
        public JsonResult Integracao_TPUs_ListAll(string ano = "", string fase = "", string mes = "01", string onerado = "")
        {
            IntegracaoDAO saida = new IntegracaoDAO();
            //  List<tpu> retorno = saida.get_TPUs(ano == "" ? DateTime.Now.Year.ToString() : ano, fase,  mes.Trim() == "" ? "01" : mes, onerado.Trim() == "" ? "" : onerado);
            List <tpu> retorno = saida.get_TPUs_API(ano == "" ? DateTime.Now.Year.ToString() : ano, fase, mes.Trim() == "" ? "01" : mes, onerado.Trim() == "" ? "" : onerado);

            // inverte o campo "Onerado" porque na tela é Desonerado. email nelson 30/03/2021
            if ((retorno.Count > 0) && (retorno[0].DataTpu != "-1"))
            {
                for (int i = 0; i < retorno.Count; i++)
                {
                    retorno[i].Onerado = retorno[i].Onerado.ToUpper() == "SIM" ? "não" : "sim";
                }
            }

            return(Json(new { data = retorno }, JsonRequestBehavior.AllowGet));
        }
Esempio n. 10
0
        /// <summary>
        /// Lista das TPUs
        /// </summary>
        /// <param name="ano">Ano</param>
        /// <param name="codItem"></param>
        /// <returns>Lista tpu</returns>
        public List <tpu> IntegracaoTPU(string ano = "", string codItem = "")
        {
            Decimal       price   = 0;
            DateTime      data    = Convert.ToDateTime(ano);
            string        onerado = "";
            string        fase    = "";
            string        x_ano   = data.Year.ToString();
            string        x_mes   = data.Month.ToString();
            IntegracaoDAO saida   = new IntegracaoDAO();
            List <tpu>    retorno = saida.get_TPUs(x_ano, fase, x_mes, onerado.Trim() == "" ? "" : onerado, codItem);
            var           list    = retorno.FirstOrDefault(x => x.CodSubItem == codItem);

            if (list != null)
            {
                price = retorno.FirstOrDefault().PrecoUnitario;
            }

            return(retorno);
        }
Esempio n. 11
0
        /// <summary>
        ///  Altera os dados da Ordem de Servico no Banco
        /// </summary>
        /// <param name="ord">Ordem de Servico</param>
        /// <returns>string</returns>
        public string OrdemServico_Salvar(OrdemServico ord)
        {
            int sos_id_anterior = new OrdemServicoDAO().StatusOS(ord.ord_id);

            Usuario paramUsuario = (Usuario)System.Web.HttpContext.Current.Session["Usuario"];
            int     retorno      = new OrdemServicoDAO().OrdemServico_Salvar(ord, paramUsuario.usu_id, paramUsuario.usu_ip);

            string         sretorno            = "";
            List <OSEmail> email               = null;
            int            email_Enviar_Emails = Convert.ToInt16(new ParametroDAO().Parametro_GetValor("email_Enviar_Emails"));

            if (sos_id_anterior != ord.sos_id)
            {
                // se O.S. Orcamento for de "Em Revisao" para "Encerrada", o sistema informa que a OAE com dados em revisão será excluída da OS de Orçamento através de mensagem na tela e no e-mail
                if ((sos_id_anterior == 18) && (ord.sos_id == 14) && (ord.tos_id == 11))
                {
                    // busca a mensagem de tela para retornar
                    email    = new OrdemServicoDAO().OSEmail_ID(ord.ord_id, 24); // id da mensagem
                    sretorno = email[0].mensagem;

                    // enviar email
                    if (retorno > 0)
                    {
                        if (email_Enviar_Emails != 0)
                        {
                            ParamsEmail pEmail       = new ParametroBLL().Parametro_ListAllParamsEmail()[0];
                            string      retornoEmail = "";
                            email = new OrdemServicoDAO().OSEmail_ID(ord.ord_id, 25); // id da mensagem

                            // envia o email
                            pEmail.Para    = email[0].destinatarios;
                            pEmail.Assunto = email[0].assunto;
                            pEmail.Texto   = email[0].mensagem;

                            AlternateView av2 = null;
                            if (pEmail.IsBodyHtml)
                            {
                                av2 = AlternateView.CreateAlternateViewFromString(pEmail.Texto, null, "text/html");
                            }

                            if (pEmail.Para.Trim() != "")
                            {
                                retornoEmail = new Gerais().MandaEmail(av2, pEmail);
                            }
                        }
                    }
                }
                else
                {
                    // se retorno > 0 entao verifica se tem que mandar email
                    if (email_Enviar_Emails != 0)
                    {
                        if (retorno > 0) // salvou com sucesso
                        {
                            // checa sincronizacao OAEs e Regionais por conta dos emails das Regionais
                            List <OAE>      oaes      = new IntegracaoDAO().get_OAEs();
                            List <Regional> regionais = new IntegracaoDAO().get_Regionais();

                            ParamsEmail   pEmail       = new ParametroBLL().Parametro_ListAllParamsEmail()[0];
                            AlternateView av1          = null;
                            string        retornoEmail = "";

                            // "E" = 14 = encerrada
                            if ((ord.sos_codigo == "E") || (ord.sos_id == 14))
                            {
                                // cadastral(7), rotineira(8) : email para Regional id mensagem #1
                                if ((ord.tos_id == 7) || (ord.tos_id == 8))
                                {
                                    // verifica se tem apontamentos de serviços e quantitativos na OS
                                    int qt = new OrdemServicoDAO().OrdemServico_ChecaApontamentoServicos(ord.ord_id);

                                    // se tem, entao manda o email
                                    if (qt > 0)
                                    {
                                        email = new OrdemServicoDAO().OSEmail_ID(ord.ord_id, 1); // id da mensagem = 1

                                        // envia o email
                                        pEmail.Para    = email[0].destinatarios;
                                        pEmail.Assunto = email[0].assunto;
                                        pEmail.Texto   = email[0].mensagem;

                                        AlternateView av2 = null;
                                        if (pEmail.IsBodyHtml)
                                        {
                                            av2 = AlternateView.CreateAlternateViewFromString(pEmail.Texto, null, "text/html");
                                        }

                                        if (pEmail.Para.Trim() != "")
                                        {
                                            retornoEmail = new Gerais().MandaEmail(av2, pEmail);
                                        }
                                    }
                                }

                                // cadastral(7), rotineira(8)
                                if ((ord.tos_id == 7) || (ord.tos_id == 8))
                                {
                                    // Sistema notifica a Seção de OAE da Sede  o encerramento da OS
                                    email = new OrdemServicoDAO().OSEmail_ID(ord.ord_id, 2); // id mensagem #2
                                }
                                else
                                if (ord.tos_id == 9) // O.S. especial(9)
                                {
                                    // Sistema notifica a Seção de OAE da Sede  o encerramento da OS
                                    email = new OrdemServicoDAO().OSEmail_ID(ord.ord_id, 8); // id mensagem #8
                                }
                                else
                                if (ord.tos_id == 11)// Orçamento (11)
                                {
                                    // Sistema notifica a Seção de OAE da Sede o encerramento da OS
                                    email = new OrdemServicoDAO().OSEmail_ID(ord.ord_id, 13); // id da mensagem = 13
                                }
                                else
                                if ((ord.tos_id == 5) || (ord.tos_id == 10) ||  //  Inspeção Extraordinária, Monitoramento, Ensaios, Levantamento Cadastral, Conserva,Projeto de OAE
                                    (ord.tos_id == 16) || (ord.tos_id == 17) || (ord.tos_id == 22) || (ord.tos_id == 24))
                                {
                                    // Sistema notifica a Seção de OAE da Sede o encerramento da OS
                                    email = new OrdemServicoDAO().OSEmail_ID(ord.ord_id, 3); // id da mensagem = 3
                                }
                                else
                                if (ord.tos_id == 18)          // ocorrencia (18)
                                {
                                    // enviar e-mail para a seção de OAE e para a Regional
                                    email = new OrdemServicoDAO().OSEmail_ID(ord.ord_id, 5); // id da mensagem = 5
                                }
                                else
                                {
                                    int mudouNotas = new OrdemServicoDAO().MudouNotas(ord.ord_id);
                                    if ((mudouNotas == 0) && ((ord.tos_id == 14) || (ord.tos_id == 23)))
                                    {
                                        if (ord.tos_id == 14) //  Recuperação/Reparo(14)
                                        {
                                            // enviar e-mail para a seção de OAEl
                                            email = new OrdemServicoDAO().OSEmail_ID(ord.ord_id, 17);
                                        }
                                        else
                                        if (ord.tos_id == 23)    // Execucao de Obra Nova
                                        {
                                            // enviar e-mail para a seção de OAE
                                            email = new OrdemServicoDAO().OSEmail_ID(ord.ord_id, 18);
                                        }
                                    }
                                    else
                                    {
                                        if ((ord.tos_id == 14) || (ord.tos_id == 13))  //  Recuperação/Reparo(14) //  Projeto de Reforço(13)
                                        {
                                            // enviar e-mail para a seção de OAE e para a Regional
                                            email = new OrdemServicoDAO().OSEmail_ID(ord.ord_id, 15); // id da mensagem = 15
                                        }
                                        else
                                        if (ord.tos_id == 23)     // Execucao de Obra Nova
                                        {
                                            // enviar e-mail para a seção de OAE e para a Regional
                                            email = new OrdemServicoDAO().OSEmail_ID(ord.ord_id, 16); // id da mensagem = 16
                                        }
                                    }
                                }
                                // envia o email
                                if (email != null)
                                {
                                    pEmail.Para    = email[0].destinatarios;
                                    pEmail.Assunto = email[0].assunto;
                                    pEmail.Texto   = email[0].mensagem;

                                    if (pEmail.IsBodyHtml)
                                    {
                                        av1 = AlternateView.CreateAlternateViewFromString(pEmail.Texto, null, "text/html");
                                    }

                                    retornoEmail = new Gerais().MandaEmail(av1, pEmail);
                                }
                            }
                            else
                            {
                                // "EXEC = 11 = executada
                                if ((ord.sos_codigo == "EXEC") || (ord.sos_id == 11))
                                {
                                    //Recuperação / Reparo(14), Execução de Obras(23)
                                    if ((ord.tos_id == 13) || (ord.tos_id == 14) || (ord.tos_id == 23))
                                    {
                                        //Enviar e-mail para a seção de OAE
                                        if ((ord.tos_id == 14) || (ord.tos_id == 13))  //  Recuperação/Reparo(14) //  Projeto de Reforço(13)
                                        {
                                            email = new OrdemServicoDAO().OSEmail_ID(ord.ord_id, 6);
                                        }
                                        else
                                        {
                                            email = new OrdemServicoDAO().OSEmail_ID(ord.ord_id, 14);
                                        }

                                        pEmail.Para    = email[0].destinatarios;
                                        pEmail.Assunto = email[0].assunto;
                                        pEmail.Texto   = email[0].mensagem;

                                        // envia o email
                                        if (pEmail.IsBodyHtml)
                                        {
                                            av1 = AlternateView.CreateAlternateViewFromString(pEmail.Texto, null, "text/html");
                                        }

                                        retornoEmail = new Gerais().MandaEmail(av1, pEmail);
                                    }
                                }
                                else
                                {
                                    if ((ord.sos_codigo == "CORR") || (ord.sos_id == 13))  // Reaberta para Correção
                                    {
                                        // cadastral(7), rotineira(8), Especial(9)
                                        if ((ord.tos_id == 9) || (ord.tos_id == 7) || (ord.tos_id == 8))
                                        {
                                            int msgid = 7;
                                            if (ord.tos_id == 9) // Especial(9)
                                            {
                                                msgid = 9;
                                            }

                                            //Enviar e-mail para a seção de OAE
                                            email = new OrdemServicoDAO().OSEmail_ID(ord.ord_id, msgid); // mensagem id #7 para cadastral/rotineira; #9 para especial

                                            pEmail.Para    = email[0].destinatarios;
                                            pEmail.Assunto = email[0].assunto;
                                            pEmail.Texto   = email[0].mensagem;

                                            // envia o email
                                            if (pEmail.IsBodyHtml)
                                            {
                                                av1 = AlternateView.CreateAlternateViewFromString(pEmail.Texto, null, "text/html");
                                            }

                                            retornoEmail = new Gerais().MandaEmail(av1, pEmail);
                                        }
                                    }
                                }
                            }
                        }
                    }

                    if ((ord.tos_id == 9) && (ord.sos_id == 13)) // Especial(9) Reaberta para Correção
                    {
                        if (retorno < 0)
                        {
                            // busca a mensagem de tela para retornar
                            email = new OrdemServicoDAO().OSEmail_ID(ord.ord_id, -retorno); // id da mensagem

                            sretorno = email[0].mensagem;
                        }
                    }
                }
            }

            return(sretorno);
        }
Esempio n. 12
0
        /// <summary>
        /// Inicio
        /// </summary>
        /// <param name="sender">Pagina</param>
        /// <param name="e">Argumentos</param>
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                //Verifica se o usuário esta logado
                if (Session["Usuario"] == null)
                {
                    int retorno = new LogSistemaBLL().LogSistema_Salvar(540);
                    Response.Redirect("~/AcessoNegado/AcessoNegado");
                }

                Usuario gUsuario = (Usuario)Session["Usuario"];
                List <UsuarioPermissoes> lstPermissoes         = gUsuario.lstUsuarioPermissoes;
                UsuarioPermissoes        permissoesDesteModulo = lstPermissoes.Find(x => x.mod_id.Equals(540)); // id DO MODULO "O.S."
                if (permissoesDesteModulo == null)
                {
                    int retorno = new LogSistemaBLL().LogSistema_Salvar(540);
                    Response.Redirect("~/AcessoNegado/AcessoNegado");
                }


                // abre o relatorio
                string relatorio         = Request["relatorio"];
                System.Data.DataSet ds   = new System.Data.DataSet();
                ReportDataSource    rds1 = new ReportDataSource();

                if (relatorio.StartsWith("rptRelatorio"))
                {
                    // cria lista de Regionais
                    string strRegionais = new IntegracaoDAO().str_Regionais();

                    switch (relatorio)
                    {
                    case "rptRelatorio_OS":
                        ds = new RelatoriosDAO().OSs_Ds(Request["FiltroRodovias"],
                                                        Request["FiltroRegionais"],
                                                        Request["FiltroTiposOS"],
                                                        Request["FiltroStatusOS"],
                                                        Request["Filtro_tipo_data"],
                                                        Request["Filtro_data_De"],
                                                        Request["Filtro_data_Ate"],
                                                        strRegionais,
                                                        gUsuario.usu_id);

                        ReportViewer1.LocalReport.DataSources.Clear();
                        rds1 = new ReportDataSource("dtOS", ds.Tables[0]);
                        ReportViewer1.LocalReport.DataSources.Add(rds1);
                        ReportViewer1.LocalReport.ReportPath = Server.MapPath("~/Reports/rptRelatorio_OS.rdlc");
                        break;

                    case "rptRelatorio_PerformanceOAEs":
                        ds = new RelatoriosDAO().PerformanceOAEs_Ds(Request["FiltroRodovias"],
                                                                    Request["FiltroRegionais"],
                                                                    Request["FiltroObj_codigo"],
                                                                    Request["Filtro_data_De"],
                                                                    Request["Filtro_data_Ate"],
                                                                    strRegionais,
                                                                    gUsuario.usu_id);

                        ReportViewer1.LocalReport.DataSources.Clear();
                        rds1 = new ReportDataSource("dtOAEs", ds.Tables[0]);
                        ReportViewer1.LocalReport.DataSources.Add(rds1);
                        ReportViewer1.LocalReport.ReportPath = Server.MapPath("~/Reports/rptRelatorio_PerformanceOAEs.rdlc");
                        break;

                    case "rptRelatorio_Priorizacao":
                        ds = new RelatoriosDAO().ObjPriorizacao_Ds("", Request["FiltroRodovias"], Request["FiltroRegionais"], "", "", "", 0, strRegionais, gUsuario.usu_id);

                        ReportViewer1.LocalReport.DataSources.Clear();
                        rds1 = new ReportDataSource("dtPriorizacao", ds.Tables[0]);
                        ReportViewer1.LocalReport.DataSources.Add(rds1);
                        ReportViewer1.LocalReport.ReportPath = Server.MapPath("~/Reports/rptRelatorio_Priorizacao.rdlc");
                        break;

                    case "rptRelatorio_Acoes":
                        ds = new RelatoriosDAO().Objetos_Relatorio_Acoes_Ds("",
                                                                            Request["FiltroRodovias"],
                                                                            Request["FiltroRegionais"],
                                                                            Request["FiltroObj_codigo"],
                                                                            Request["Filtro_data_De"],
                                                                            Request["Filtro_data_Ate"],
                                                                            0,
                                                                            strRegionais,
                                                                            gUsuario.usu_id);

                        // ***** manda para o relatorio *************************************************
                        ReportViewer1.LocalReport.DataSources.Clear();
                        rds1 = new ReportDataSource("dtAcoes", ds.Tables[0]);
                        ReportViewer1.LocalReport.DataSources.Add(rds1);
                        ReportViewer1.LocalReport.ReportPath = Server.MapPath("~/Reports/rptRelatorio_Acoes.rdlc");
                        break;
                    }
                }
                else
                {
                    string sObj_id = Request["id"];
                    int    obj_id  = 0;
                    if (Int32.Parse(sObj_id) > 0)
                    {
                        obj_id = Convert.ToInt32(sObj_id);
                    }

                    string sord_id = Request["ord_id"];
                    int    ord_id  = -10;

                    if ((sord_id != null) && (sord_id.Trim() != ""))
                    {
                        if (Int32.Parse(sord_id) > 0)
                        {
                            ord_id = Convert.ToInt32(sord_id);
                        }
                    }


                    if (obj_id > 0)
                    {
                        //  System.Data.DataSet ds = new System.Data.DataSet();
                        if ((relatorio.Trim() != "rptFichaNotificacaoOcorrencia") && (relatorio.Trim() != "rptFichaInspecaoEspecial_Providencias"))
                        {
                            ds = new RelatoriosDAO().FICHA_INSPECAO_CADASTRAL(obj_id, ord_id);
                        }
                        ReportViewer1.LocalReport.DataSources.Clear();

                        if (relatorio.Trim() == "rptFichaInspecaoCadastral_1")
                        {
                            string tos_id = Request["tos_id"];  // 1 = cadastral; 2 = rotineira

                            ReportDataSource rds = new ReportDataSource("dtFicha", ds.Tables[0]);
                            ReportViewer1.LocalReport.DataSources.Add(rds);
                            ReportViewer1.LocalReport.ReportPath = Server.MapPath("~/Reports/rptFichaInspecaoCadastral_1.rdlc");

                            List <ReportParameter> listReportParameter = new List <ReportParameter>();
                            listReportParameter.Add(new ReportParameter("tos_id", tos_id));
                            ReportViewer1.LocalReport.SetParameters(listReportParameter);
                        }
                        else
                        if (relatorio.Trim() == "rptFichaInspecaoRotineira")
                        {
                            string tos_id = Request["tos_id"];  // 1 = cadastral; 2 = rotineira

                            ReportDataSource rds = new ReportDataSource("dtFicha2", ds.Tables[0]);
                            ReportViewer1.LocalReport.DataSources.Add(rds);
                            ReportViewer1.LocalReport.ReportPath           = Server.MapPath("~/Reports/rptFichaInspecaoRotineira.rdlc");
                            ReportViewer1.LocalReport.SubreportProcessing += new Microsoft.Reporting.WebForms.SubreportProcessingEventHandler(LocalReport_SubreportProcessing);

                            List <ReportParameter> listReportParameter = new List <ReportParameter>();
                            listReportParameter.Add(new ReportParameter("tos_id", tos_id));
                            ReportViewer1.LocalReport.SetParameters(listReportParameter);
                        }
                        if (relatorio.Trim() == "rptFichaInspecaoRotineira_Providencias")
                        {
                            string tos_id = Request["tos_id"];  // 1 = cadastral; 2 = rotineira

                            ds = new RelatoriosDAO().GruposVariaveisValores_ListAll(-1, ord_id, 1, Convert.ToInt32(Request["prt_id"]));

                            ReportDataSource rds = new ReportDataSource("dtRotineiraProvidencias", ds.Tables[0]);
                            ReportViewer1.LocalReport.DataSources.Add(rds);
                            ReportViewer1.LocalReport.ReportPath = Server.MapPath("~/Reports/rptFichaInspecaoRotineira_Providencias.rdlc");

                            List <ReportParameter> listReportParameter = new List <ReportParameter>();
                            listReportParameter.Add(new ReportParameter("tos_id", tos_id));
                            ReportViewer1.LocalReport.SetParameters(listReportParameter);
                        }
                        else
                        if (relatorio.Trim() == "rptFichaInspecaoEspecial")
                        {
                            ReportDataSource rds = new ReportDataSource("dtFicha", ds.Tables[0]);
                            ReportViewer1.LocalReport.DataSources.Add(rds);
                            ReportViewer1.LocalReport.ReportPath = Server.MapPath("~/Reports/rptFichaInspecaoEspecial.rdlc");

                            //string imgBase64 = ds.Tables[0].Rows[0]["txt_atr_id_159"].ToString().Trim();

                            //// se nao houver imagem, coloca uma imagem branca
                            //if (imgBase64 == "")
                            //    imgBase64 = "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQECWAJYAAD/2wBDAAUDBAQEAwUEBAQFBQUGBwwIBwcHBw8LCwkMEQ8SEhEPERETFhwXExQaFRERGCEYGh0dHx8fExciJCIeJBweHx7/2wBDAQUFBQcGBw4ICA4eFBEUHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh7/wAARCAAZABkDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD7LooooAKKKKACiiigAooooA//2Q==";

                            //ReportParameter par_img_esquema_estrutural = new ReportParameter("par_img_esquema_estrutural", (imgBase64.Replace("data:image/jpg;base64,", "").Replace("data:image/png;base64,", "")));
                            //ReportViewer1.LocalReport.SetParameters(new ReportParameter[] { par_img_esquema_estrutural });
                        }
                        else
                        if (relatorio.Trim() == "rptFichaInspecaoEspecial_campo")
                        {
                            ReportDataSource rds = new ReportDataSource("dtFicha2", ds.Tables[0]);
                            ReportViewer1.LocalReport.DataSources.Add(rds);
                            ReportViewer1.LocalReport.ReportPath = Server.MapPath("~/Reports/rptFichaInspecaoEspecial_campo.rdlc");
                        }
                        else
                        if (relatorio.Trim() == "rptFichaNotificacaoOcorrencia")
                        {
                            System.Data.DataTable dtt = new RelatoriosDAO().FICHA_NotificacaoOcorrencia(ord_id);
                            ReportDataSource      rds = new ReportDataSource("DataSet1", dtt);
                            ReportViewer1.LocalReport.DataSources.Add(rds);
                            ReportViewer1.LocalReport.ReportPath = Server.MapPath("~/Reports/rptFichaNotificacaoOcorrencia.rdlc");
                        }
                        else
                        if (relatorio.Trim() == "rptFichaInspecaoEspecial_Providencias")
                        {
                            string sapt_id = Request["apt_id"];
                            int    apt_id  = -1;
                            if ((sapt_id != null) && (sapt_id.Trim() != ""))
                            {
                                if (Int32.Parse(sapt_id) > 0)
                                {
                                    apt_id = Convert.ToInt32(sapt_id);
                                }
                            }


                            System.Data.DataTable dtt = new RelatoriosDAO().FICHA_ESPECIAL_PROVIDENCIAS(ord_id, apt_id).Tables[0];

                            ReportDataSource rds = new ReportDataSource("dtProvidencias", dtt);
                            ReportViewer1.LocalReport.DataSources.Clear();
                            ReportViewer1.LocalReport.DataSources.Add(rds);
                            ReportViewer1.LocalReport.ReportPath = Server.MapPath("~/Reports/rptFichaInspecaoEspecial_Providencias.rdlc");
                        }
                    }
                }

                ReportViewer1.ShowPrintButton = true;
                ReportViewer1.LocalReport.Refresh();
            }
        }