public static IEnumerable <Domain.Premio> ToEventoAjustePremio(this IParcelaAjustada premioAjustado) { var evento = new EventoAjustePremio(premioAjustado); premioAjustado.Parcelas.SafeForEach(premio => evento.AdicionarPremio(premio.ToPremio <Domain.Premio>())); return(evento.Premios); }
public async Task <EventoPremio> Com(IParcelaAjustada message) { var evento = new EventoAjustePremio(message.Identificador, message.IdentificadorCorrelacao, message.IdentificadorNegocio, message.DataExecucaoEvento); foreach (var parcela in message.Parcelas) { evento.AdicionarPremio(await _premios.CriarPremio(_mapear.ToPremio(parcela), evento)); } return(evento); }
public Domain.EventoPremio ToEvento(dynamic evento, DateTime DataExecucaoEvento) { EventoPremio eventopremio; switch ((TipoEventoEnum)evento.TipoEventoId) { case TipoEventoEnum.EmissaoPremio: eventopremio = new EventoEmissaoPremio(evento.Identificador, evento.IdentificadorCorrelacao, evento.IdentificadorNegocio, DataExecucaoEvento); eventopremio.Id = evento.IDEvento; break; case TipoEventoEnum.ApropriacaoPremio: eventopremio = new EventoApropriacaoPremio(evento.Identificador, evento.IdentificadorCorrelacao, evento.IdentificadorNegocio, DataExecucaoEvento); eventopremio.Id = evento.IDEvento; break; case TipoEventoEnum.DesapropriacaoPremio: eventopremio = new EventoDesapropriacaoPremio(evento.Identificador, evento.IdentificadorCorrelacao, evento.IdentificadorNegocio, DataExecucaoEvento); eventopremio.Id = evento.IDEvento; break; case TipoEventoEnum.AjustePremio: eventopremio = new EventoAjustePremio(evento.Identificador, evento.IdentificadorCorrelacao, evento.IdentificadorNegocio, DataExecucaoEvento); eventopremio.Id = evento.IDEvento; break; case TipoEventoEnum.PortabilidadePremio: eventopremio = new EventoPortabilidadePremio(evento.Identificador, evento.IdentificadorCorrelacao, evento.IdentificadorNegocio, DataExecucaoEvento); eventopremio.Id = evento.IDEvento; break; default: eventopremio = null; break; } return(eventopremio); }