private BSDataCoaseguroPorPeriodo formatearObjecto(BEDataCoasegPorPeriodo entity, IGrouping <String, BEDataCoasegPorPeriodo> listAgrupadas) { DateTime fechaActual = DateTime.Today; var listTemp = listAgrupadas.Where(x => x.Anio != entity.Anio).ToList(); String montoPen = "0.0", montoUsd = "0.0", montoPenAnt = "0.0", montoUsdAnt = "0.0"; if (fechaActual.Year != Int32.Parse(entity.Anio) && fechaActual.Year - Int32.Parse(entity.Anio) == 0) { montoPen = (listTemp.Count == 0 ? "0" : listTemp.First().MontoPEN); montoUsd = (listTemp.Count == 0 ? "0" : listTemp.First().MontoUSD); } else if (fechaActual.Year - Int32.Parse(entity.Anio) == 0) { montoPen = entity.MontoPEN; montoUsd = entity.MontoUSD; montoPenAnt = (listTemp.Count == 0 || fechaActual.Year - Int32.Parse(listTemp.First().Anio) != 1 ? "0" : listTemp.First().MontoPEN); montoUsdAnt = (listTemp.Count == 0 || fechaActual.Year - Int32.Parse(listTemp.First().Anio) != 1 ? "0" : listTemp.First().MontoUSD); } else if (fechaActual.Year - Int32.Parse(entity.Anio) == 1) { montoPenAnt = entity.MontoPEN; montoUsdAnt = entity.MontoUSD; } return(new BSDataCoaseguroPorPeriodo() { CodigoMes = entity.MesCodigo, NombreMes = entity.NombreMes, MontoPEN = montoPen, MontoUSD = montoUsd, MontoAnteriorPEN = montoPenAnt, MontoAnteriorUSD = montoUsdAnt }); }
private List <BEDataCoasegPorPeriodo> formatearListaCoaseguroPeriodo(OracleDataReader dr) { List <BEDataCoasegPorPeriodo> listDataPorPeriodo = new List <BEDataCoasegPorPeriodo>(); while (dr.Read()) { var productionBE = new BEDataCoasegPorPeriodo() { Anio = dr["ANIO"].ToString(), MesCodigo = dr["MES_CODIGO"].ToString(), MontoUSD = dr["MONTO_USD"].ToString(), MontoPEN = dr["MONTO_PEN"].ToString(), NombreMes = dr["MES"].ToString(), FechaActualizacion = dr["FEC_ACTUALIZACION"].ToString(), }; listDataPorPeriodo.Add(productionBE); } return(listDataPorPeriodo); }