public static ListaVerficacaoVM ObtemListaSimples(NumeroSNCLV numero)
        {
            ListaVerficacaoVM listaVerificacao = null;

            string qryLV = "SELECT "
                           + "lv_doc.guid AS GUID_DOC,"
                           + "lv_doc.doc_verificado AS NUMEROSNC"
                           + " FROM listaverificacao.lv_doc WHERE "
                           + "lv_doc.doc_verificado = '" + numero.NUMERO + "'";


            using (var conexaoBD = new ConexaoMySQL())
            {
                var respostaPlanilha = conexaoBD.MySqlConnection.Query <ListaVerficacaoQry>(qryLV);

                if (respostaPlanilha.Count() > 0)
                {
                    var primeiro = respostaPlanilha.First();

                    CabecalhoVM cabecalhoVM = new CabecalhoVM()
                    {
                        Funcao     = primeiro.FUNCAO,
                        Titulo     = primeiro.NOME_PLANILHA,
                        Disciplina = primeiro.NOME_CFG,
                    };



                    listaVerificacao = new ListaVerficacaoVM()
                    {
                        GUID             = primeiro.GUID_DOC,
                        NUMERODOC        = primeiro.NUMEROSNC,
                        VERFICADOR_UNICO = primeiro.VERFICADOR_UNICO,
                        CabecalhoApp     = cabecalhoVM
                    };

                    //listaVerificacao.Confirmacoes = (from conf in respostaPlanilha
                    //                                 group conf by new
                    //                                 {
                    //                                     conf.CONFIRMACAO_GUID,
                    //                                     conf.CONFIRMACAO_INDICE,
                    //                                     conf.CONFIRMACAO_DATA,
                    //                                     conf.CONFIRMACAO_ID_USER1,
                    //                                     conf.CONFIRMACAO_SIGLA_USER1,
                    //                                     conf.CONFIRMACAO_NOME_USER1,
                    //                                     conf.CONFIRMACAO_ID_USER2,
                    //                                     conf.CONFIRMACAO_SIGLA_USER2,
                    //                                     conf.CONFIRMACAO_NOME_USER2,
                    //                                     conf.CONFIRMACAO_ORDENADOR
                    //                                 } into a
                    //                                 select new ConfirmacaoVM()
                    //                                 {
                    //                                     CONFIRMACAO_GUID = a.Key.CONFIRMACAO_GUID,
                    //                                     CONFIRMACAO_INDICE = a.Key.CONFIRMACAO_INDICE,
                    //                                     CONFIRMACAO_DATA = a.Key.CONFIRMACAO_DATA,
                    //                                     CONFIRMACAO_ID_USER1 = a.Key.CONFIRMACAO_ID_USER1,
                    //                                     CONFIRMACAO_SIGLA_USER1 = a.Key.CONFIRMACAO_SIGLA_USER1,
                    //                                     CONFIRMACAO_NOME_USER1 = a.Key.CONFIRMACAO_NOME_USER1,
                    //                                     CONFIRMACAO_ID_USER2 = a.Key.CONFIRMACAO_ID_USER2,
                    //                                     CONFIRMACAO_SIGLA_USER2 = a.Key.CONFIRMACAO_SIGLA_USER2,
                    //                                     CONFIRMACAO_NOME_USER2 = a.Key.CONFIRMACAO_NOME_USER2,
                    //                                     CONFIRMACAO_ORDENADOR = a.Key.CONFIRMACAO_ORDENADOR
                    //                                 }).OrderBy(x => x.CONFIRMACAO_ORDENADOR).ToList();



                    //listaVerificacao.Colunas = (from col in respostaPlanilha
                    //                            group col by new { col.indice, col.ordenador } into a
                    //                            select new ColunaLVVM()
                    //                            {
                    //                                INDICE_REV = a.Key.indice,
                    //                                ORDENADOR = a.Key.ordenador
                    //                            }).OrderBy(x => x.ORDENADOR).ToList();

                    //foreach (var coluna in listaVerificacao.Colunas)
                    //{
                    //    coluna.LV_Grupos = (from grupo in respostaPlanilha
                    //                        where grupo.indice == coluna.INDICE_REV
                    //                        group grupo by new { grupo.GRUPO_ORDENADOR, grupo.GRUPO_NOME, grupo.GUID_GRUPO } into a
                    //                        select new LV_GrupoVM()
                    //                        {
                    //                            GUID = a.Key.GUID_GRUPO,
                    //                            ORDENADOR = a.Key.GRUPO_ORDENADOR,
                    //                            NOME = a.Key.GRUPO_NOME
                    //                        }).OrderBy(x => x.ORDENADOR).ToList();



                    //foreach (var grp in coluna.LV_Grupos)
                    //{
                    //    grp.Linhas = (from linha in respostaPlanilha
                    //                  where linha.GUID_GRUPO == grp.GUID && linha.indice == coluna.INDICE_REV
                    //                  group linha by new
                    //                  {
                    //                      linha.GUID_ITEM,
                    //                      linha.ITEM_ORDENADOR,
                    //                      linha.ITEM_DESC,
                    //                      linha.id_estado,
                    //                      linha.is_confirmado,
                    //                      linha.is_emitido,
                    //                      linha.guid_revisao
                    //                  } into a
                    //                  select new LinhaRevisaoVM()
                    //                  {
                    //                      GUID_REVISAO = a.Key.guid_revisao,
                    //                      GUID_ITEM = a.Key.GUID_ITEM,
                    //                      ORDENADOR = a.Key.ITEM_ORDENADOR,
                    //                      DESCRICAO = a.Key.ITEM_DESC,
                    //                      ID_ESTADO = a.Key.id_estado,
                    //                      EMITIDO = a.Key.is_emitido,
                    //                      CONFIRMADO = a.Key.is_confirmado
                    //                  }).OrderBy(x => x.ORDENADOR).ToList();
                    //}
                }



                //}
            }


            return(listaVerificacao);
        }
        public static ListaVerficacaoVM ObtemListaSemRevisoes(string guidDocumento)
        {
            ListaVerficacaoVM listaVerificacao = null;

            string qryLV = "SELECT "
                           + "lv_doc.guid AS guid_doc,"
                           + "lv_doc.objeto AS objeto,"
                           + "lv_doc.doc_verificado AS numerosnc,"
                           + "lv_doc.guid_projeto AS guid_projeto,"
                           + "lv_item_revisao.guid AS guid_item,"
                           + "lv_item_revisao.descricao AS item_desc,"
                           + "lv_item_revisao.ordenador AS item_ordenador,"
                           + "lv_grupo.nome AS grupo_nome,"
                           + "lv_grupo.ordenador AS grupo_ordenador,"
                           + "lv_grupo.guid AS guid_grupo,"
                           + "lv_planilha.verificador_unico AS verficador_unico,"
                           + "lv_planilha.revisao AS revisao_planilha,"
                           + "lv_planilha.funcao AS funcao,"
                           + "lv_planilha.nome AS nome_planilha,"
                           + "lv_planilha.guid AS guid_planilha,"
                           + "lv_planilha.descricao AS planilha_desc,"
                           + "lv_doc.numero AS numerodoc,"
                           + "lv_tipo.guid_config AS guid_config,"
                           + "lv_tipo.sigla AS sigla_disciplina,"
                           + "lv_tipo.nome AS nome_tipo,"
                           + "lv_configuracao.nome AS nome_cfg"
                           + " FROM lv_doc"
                           + " INNER JOIN lv_planilha ON lv_doc.objeto = lv_planilha.guid"
                           + " INNER JOIN lv_grupo ON lv_grupo.guid_planilha = lv_planilha.guid"
                           + " INNER JOIN lv_item_revisao ON lv_item_revisao.guid_grupo = lv_grupo.guid"
                           + " INNER JOIN lv_tipo ON lv_planilha.guid_tipo = lv_tipo.guid"
                           + " INNER JOIN lv_configuracao ON lv_tipo.guid_config = lv_configuracao.guid"
                           + " WHERE "
                           + "lv_doc.guid = '" + guidDocumento + "'";


            using (var conexaoBD = new ConexaoMySQL())
            {
                var respostaPlanilha = conexaoBD.MySqlConnection.Query <ListaVerficacaoQry>(qryLV);

                if (respostaPlanilha.Count() > 0)
                {
                    var primeiro = respostaPlanilha.First();

                    CabecalhoVM cabecalhoVM = new CabecalhoVM()
                    {
                        Funcao     = primeiro.FUNCAO,
                        Titulo     = primeiro.NOME_PLANILHA,
                        Disciplina = primeiro.NOME_CFG,
                    };



                    listaVerificacao = new ListaVerficacaoVM()
                    {
                        GUID             = primeiro.GUID_DOC,
                        NUMERODOC        = primeiro.NUMEROSNC,
                        VERFICADOR_UNICO = primeiro.VERFICADOR_UNICO,
                        CabecalhoApp     = cabecalhoVM
                    };

                    listaVerificacao.Confirmacoes = (from conf in respostaPlanilha
                                                     group conf by new
                    {
                        conf.CONFIRMACAO_GUID,
                        conf.CONFIRMACAO_INDICE,
                        conf.CONFIRMACAO_DATA,
                        conf.CONFIRMACAO_ID_USER1,
                        conf.CONFIRMACAO_SIGLA_USER1,
                        conf.CONFIRMACAO_NOME_USER1,
                        conf.CONFIRMACAO_ID_USER2,
                        conf.CONFIRMACAO_SIGLA_USER2,
                        conf.CONFIRMACAO_NOME_USER2,
                        conf.CONFIRMACAO_ORDENADOR
                    } into a
                                                     select new ConfirmacaoVM()
                    {
                        CONFIRMACAO_GUID = a.Key.CONFIRMACAO_GUID,
                        CONFIRMACAO_INDICE = a.Key.CONFIRMACAO_INDICE,
                        CONFIRMACAO_DATA = a.Key.CONFIRMACAO_DATA,
                        CONFIRMACAO_ID_USER1 = a.Key.CONFIRMACAO_ID_USER1,
                        CONFIRMACAO_SIGLA_USER1 = a.Key.CONFIRMACAO_SIGLA_USER1,
                        CONFIRMACAO_NOME_USER1 = a.Key.CONFIRMACAO_NOME_USER1,
                        CONFIRMACAO_ID_USER2 = a.Key.CONFIRMACAO_ID_USER2,
                        CONFIRMACAO_SIGLA_USER2 = a.Key.CONFIRMACAO_SIGLA_USER2,
                        CONFIRMACAO_NOME_USER2 = a.Key.CONFIRMACAO_NOME_USER2,
                        CONFIRMACAO_ORDENADOR = a.Key.CONFIRMACAO_ORDENADOR
                    }).OrderBy(x => x.CONFIRMACAO_ORDENADOR).ToList();



                    listaVerificacao.Colunas = (from col in respostaPlanilha
                                                group col by new { col.indice, col.ordenador } into a
                                                select new ColunaLVVM()
                    {
                        INDICE_REV = a.Key.indice,
                        ORDENADOR = a.Key.ordenador
                    }).OrderBy(x => x.ORDENADOR).ToList();

                    foreach (var coluna in listaVerificacao.Colunas)
                    {
                        coluna.LV_Grupos = (from grupo in respostaPlanilha
                                            where grupo.indice == coluna.INDICE_REV
                                            group grupo by new { grupo.GRUPO_ORDENADOR, grupo.GRUPO_NOME, grupo.GUID_GRUPO } into a
                                            select new LV_GrupoVM()
                        {
                            GUID = a.Key.GUID_GRUPO,
                            ORDENADOR = a.Key.GRUPO_ORDENADOR,
                            NOME = a.Key.GRUPO_NOME
                        }).OrderBy(x => x.ORDENADOR).ToList();



                        foreach (var grp in coluna.LV_Grupos)
                        {
                            grp.Linhas = (from linha in respostaPlanilha
                                          where linha.GUID_GRUPO == grp.GUID && linha.indice == coluna.INDICE_REV
                                          group linha by new
                            {
                                linha.GUID_ITEM,
                                linha.ITEM_ORDENADOR,
                                linha.ITEM_DESC,
                                linha.id_estado,
                                linha.is_confirmado,
                                linha.is_emitido,
                                linha.guid_revisao
                            } into a
                                          select new LinhaRevisaoVM()
                            {
                                GUID_REVISAO = a.Key.guid_revisao,
                                GUID_ITEM = a.Key.GUID_ITEM,
                                ORDENADOR = a.Key.ITEM_ORDENADOR,
                                DESCRICAO = a.Key.ITEM_DESC,
                                ID_ESTADO = a.Key.id_estado,
                                EMITIDO = a.Key.is_emitido,
                                CONFIRMADO = a.Key.is_confirmado
                            }).OrderBy(x => x.ORDENADOR).ToList();
                        }
                    }
                }
            }


            return(listaVerificacao);
        }
Esempio n. 3
0
        public static PlanilhaLVVM ObtemPlanilha(string guidPlanilha)
        {
            PlanilhaLVVM planilhaLVVM = null;

            string qryPlanilha = "SELECT "
                                 + "swp.lv_disciplina.nome AS NOME_DISICPLINA,"
                                 + "swp.lv_configuracao.nome AS CONFIGURACAO,"
                                 + "swp.lv_tipo.nome AS TIPO_DOCUMENTO,"
                                 + "swp.lv_planilha.nome AS NOME_PLANILHA,"
                                 + "swp.lv_planilha.funcao AS FUNCAO,"
                                 + "swp.lv_planilha.descricao AS DECRICAO,"
                                 + "swp.lv_planilha.guid AS GUID_PLANILHA,"
                                 + "swp.lv_disciplina.sigla AS SIGLA_DICIPLINA,"
                                 + "swp.lv_grupo.nome AS NOME_GRUPO,"
                                 + "swp.lv_grupo.ordenador AS ORDENADOR_GRUPO,"
                                 + "swp.lv_item_revisao.guid AS GUID_ITEM,"
                                 + "swp.lv_item_revisao.descricao AS DECRICAO_ITEM,"
                                 + "swp.lv_item_revisao.ordenador AS ORDENADOR_ITEM,"
                                 + "swp.lv_grupo.guid AS GUID_GRUPO"
                                 + " FROM "
                                 + "swp.lv_disciplina,"
                                 + "swp.lv_configuracao,"
                                 + "swp.lv_tipo,"
                                 + "swp.lv_planilha,"
                                 + "swp.lv_grupo,"
                                 + "swp.lv_item_revisao"
                                 + " WHERE "
                                 + "swp.lv_configuracao.id_disciplina = swp.lv_disciplina.id_disciplina"
                                 + " AND swp.lv_configuracao.guid = swp.lv_tipo.guid_config"
                                 + " AND swp.lv_planilha.guid_tipo = swp.lv_tipo.guid"
                                 + " AND swp.lv_grupo.guid_planilha = swp.lv_planilha.guid"
                                 + " AND swp.lv_item_revisao.guid_grupo = swp.lv_grupo.guid"
                                 + " AND swp.lv_planilha.guid = '"
                                 + guidPlanilha + "'";


            using (var conexaoBD = new Conexao())
            {
                var respostaPlanilha = conexaoBD.OracleConnection.Query <PlanilhaQry>(qryPlanilha);

                if (respostaPlanilha.Count() > 0)
                {
                    var primeiro = respostaPlanilha.First();

                    CabecalhoVM cabecalhoVM = new CabecalhoVM()
                    {
                        Funcao          = primeiro.FUNCAO,
                        Titulo          = primeiro.NOME_PLANILHA,
                        Disciplina      = primeiro.NOME_DISICPLINA,
                        SiglaDisciplina = primeiro.SIGLA_DICIPLINA
                    };

                    planilhaLVVM = new PlanilhaLVVM()
                    {
                        GUID         = primeiro.GUID_PLANILHA,
                        CabecalhoApp = cabecalhoVM
                    };

                    planilhaLVVM.Grupos = (from grupo in respostaPlanilha
                                           group grupo by new { grupo.ORDENADOR_GRUPO, grupo.NOME_GRUPO, grupo.GUID_GRUPO } into a
                                           select new GrupoVM()
                    {
                        GUID = a.Key.GUID_GRUPO,
                        ORDENADOR = a.Key.ORDENADOR_GRUPO,
                        NOME = a.Key.NOME_GRUPO
                    }).ToList();

                    foreach (var grp in planilhaLVVM.Grupos)
                    {
                        grp.Itens = (from item in respostaPlanilha
                                     where item.GUID_GRUPO == grp.GUID
                                     group item by new { item.GUID_ITEM, item.ORDENADOR_ITEM, item.DECRICAO_ITEM } into a
                                     select new ItemVM()
                        {
                            GUID = a.Key.GUID_ITEM,
                            ORDENADOR = a.Key.ORDENADOR_ITEM,
                            DESCRICAO = a.Key.DECRICAO_ITEM
                        }).ToList();
                    }
                }
            }

            return(planilhaLVVM);
        }