예제 #1
0
        public async Task <IEnumerable <CoberturaContratada> > ObterPorItensCertificadosApolices(IEnumerable <long> itensCertificadosApoliceIds)
        {
            var query = await CreateCommand.QueryAsync <CoberturaContratada>
                            (@"SELECT * FROM CoberturaContratada WHERE ItemCertificadoApoliceId in @Id",
                            new { Id = itensCertificadosApoliceIds });

            return(query);
        }
예제 #2
0
        public async Task <IEnumerable <Guid> > ObterProvisaoCobertura(Guid identificador)
        {
            var sql = @"SELECT DISTINCT M.ProvisaoCoberturaId
                          FROM Evento E
                         INNER JOIN MovimentoProvisaoPremio M ON M.EventoId = E.Id
                         WHERE E.Identificador = @Identificador";

            return(await CreateCommand.QueryAsync <Guid>(sql, new { Identificador = identificador }));
        }
예제 #3
0
        public async Task <IEnumerable <Premio> > ObterPremiosPorCertificado(long itemCertificadoApoliceId, TipoMovimentoEnum tipoMovimento)
        {
            var query = @"SELECT P.*
                            FROM Premio P
                           INNER JOIN HistoricoCoberturaContratada H ON H.Id = P.HistoricoCoberturaId
                           INNER JOIN CoberturaContratada C ON C.Id = H.CoberturaContratadaId
                           WHERE C.ItemCertificadoApoliceId = @Id                             
                             AND P.TipoMovimentoId = @Tipo";

            return(await CreateCommand.QueryAsync <Premio>(query, new { Id = itemCertificadoApoliceId, Tipo = (int)tipoMovimento }));
        }
예제 #4
0
        public async Task <CoberturaContratada> ObterProvisaoPorCobertura(long itemCertificadoApoliceId)
        {
            var cobertura = await ObterPorItemCertificado(itemCertificadoApoliceId);


            const string query = @" SELECT 
										* 
									FROM [dbo].[fn_ObterProvisaoPorCobertura] 
									(
										@CoberturaContratadaId
									)"                                    ;


            var provisoes = (await CreateCommand.QueryAsync <ProvisaoCobertura>(query, new
            {
                CoberturaContratadaId = cobertura.Id,
            }));

            cobertura.AdicionarProvisao(provisoes);

            return(cobertura);
        }