public FavorecimentoBD ConverteDe(IFavorecimento favorecimento, int idVinculo, string tipoDeVinculo) { FavorecimentoBD favBD = new FavorecimentoBD(favorecimento.Tipo.Id); if (!(favorecimento is FavorecimentoPorCategoria)) { throw new System.Exception(); } FavorecimentoPorCategoria fav = favorecimento as FavorecimentoPorCategoria; var parametros = new ParametrosDeFavorecimentoPorCategoria() { idsCategorias = fav.IdCategoriasFavorecidas, versao = "1" }; favBD.ParametrosEspecificos = ConverteParametrosPorVersao(parametros); favBD.Vigencia = fav.Periodo; favBD.Id = fav.Id; favBD.IdVinculo = idVinculo; favBD.tipoVinculo = tipoDeVinculo; return(favBD); }
public ParametrosDeFavorecimento ConverteDe(FavorecimentoBD favorecimentoBD) { //Periodo periodoDeFavorecimento = favorecimentoBD.Vigencia; int[] idsFuncionarios = ConverteParametrosPorVersao(favorecimentoBD.ParametrosEspecificos).idsFuncionarios; ParametrosDeFavorecimento parametros = new ParametrosDeFavorecimento() { Id = favorecimentoBD.Id, IdsDasEntidadesFavorecidas = idsFuncionarios, idsDasEntidadesDeExcecao = null, TipoDeFavorecimento = TipoDeFavorecimento.Get(favorecimentoBD.tipo) }; return(parametros); }
public async Task InserirFavorecimentoEm(IFavorecimento favorecimento, int idVinculo, string tipoDeVinculo) { TipoDeFavorecimentoBD tipoBD = TipoDeFavorecimentoBD.Get(favorecimento.Tipo.Id); FavorecimentoBD favorecimentoBD = tipoBD.ConverteDe(favorecimento, idVinculo, tipoDeVinculo); //DbContextOptions<RemuneracaoContext> option = Helper.ObtemOpcoesDeConexao<RemuneracaoContext>(_stringDeConexao); //using (var context = new RemuneracaoContext(option)) //{ using (var context = _fabricaDeContextos.CriaContextoDe <RemuneracaoContext>(TipoDeConexao.Remuneracao)) { var contemFavorecidoNaBase = await(from fav in context.Favorecimentos where fav.IdVinculo == idVinculo && fav.tipo == tipoBD.Id && fav.tipoVinculo == tipoDeVinculo select fav).FirstOrDefaultAsync(); if (contemFavorecidoNaBase == null) { await context.Favorecimentos.AddAsync(favorecimentoBD); await context.SaveChangesAsync(); } else { var parametros = favorecimentoBD.ParametrosEspecificos; favorecimentoBD = context.Favorecimentos.First(p => p.Id == contemFavorecidoNaBase.Id); //favorecimentoBD.Id = favorecimentosBD.Id; //FavorecimentoBD fav = context.Favorecimentos.First(p => p.Id == favorecimentoBD.Id); favorecimentoBD.ParametrosEspecificos = parametros; context.Favorecimentos.Update(favorecimentoBD); await context.SaveChangesAsync(); } } }
public FavorecimentoBD ConverteDe(IFavorecimento favorecimento, int idVinculo, string tipoDeVinculo) { FavorecimentoBD favBD = new FavorecimentoBD(favorecimento.Tipo.Id); if (!(favorecimento is FavorecimentoPorLista)) { throw new System.Exception(); } FavorecimentoPorLista fav = favorecimento as FavorecimentoPorLista; var parametros = new ParametrosDeFavorecimentoPorLista() { idsFuncionarios = fav.Favorecidos.Select(fv => fv.Profissional.Id).ToArray(), versao = "1" }; favBD.ParametrosEspecificos = ConverteParametrosPorVersao(parametros); favBD.Vigencia = fav.Periodo; favBD.Id = fav.Id; favBD.IdVinculo = idVinculo; favBD.tipoVinculo = tipoDeVinculo; return(favBD); }
public virtual ParametrosDeFavorecimento ConvertePara(FavorecimentoBD favorecimento) { return(Conversor.ConverteDe(favorecimento)); }