예제 #1
0
        public async Task<IEnumerable<Modalidade>> ObterModalidades(string ueCodigo, int ano)
        {
            var query = @"select distinct t.modalidade_codigo from turma t
                                inner join ue u
                                on t.ue_id = u.id
                                    where u.ue_id = @ueCodigo
                                and t.ano_letivo = @ano";

            return await contexto.QueryAsync<Modalidade>(query, new { ueCodigo, ano });
        }
예제 #2
0
        public async Task <Turma> ObterTurmaComUeEDrePorCodigo(string turmaCodigo)
        {
            var query = @"select
	                        t.id,
	                        t.turma_id,
	                        t.ue_id,
	                        t.nome,
	                        t.ano,
	                        t.ano_letivo,
	                        t.modalidade_codigo,
	                        t.semestre,
	                        t.qt_duracao_aula,
	                        t.tipo_turno,
	                        t.data_atualizacao,
	                        u.id as UeId,
	                        u.id,
	                        u.ue_id,
	                        u.nome,
	                        u.dre_id,
	                        u.tipo_escola,
	                        u.data_atualizacao,
	                        d.id as DreId,
	                        d.id,
	                        d.nome,
	                        d.dre_id,
	                        d.abreviacao,
	                        d.data_atualizacao

                        from
	                        turma t
                        inner join ue u on
	                        t.ue_id = u.id
                        inner join dre d on
	                        u.dre_id = d.id
                        where
	                        turma_id = @turmaCodigo"    ;

            contexto.AbrirConexao();

            return((await contexto.QueryAsync <Turma, Ue, Dre, Turma>(query, (turma, ue, dre) =>
            {
                ue.AdicionarDre(dre);
                turma.AdicionarUe(ue);
                return turma;
            }, new { turmaCodigo }, splitOn: "TurmaId, UeId, DreId")).FirstOrDefault());
        }
예제 #3
0
        public async Task <IEnumerable <ComunicadoGrupo> > ObterPorComunicado(long comunicadoId)
        {
            var query = "select * from comunidado_grupo where comunicado_id = @comunicadoId";

            return(await database.QueryAsync <ComunicadoGrupo>(query, new { comunicadoId }));
        }