Esempio n. 1
0
        /// <summary>
        /// Realiza la adaptación de campos para la búsqueda
        /// </summary>
        /// <param name="bienLogic">Entidad Lógica Bien</param>
        /// <returns>Clase Bien Response con los datos de búsqueda</returns>
        public static BienResponse ObtenerDescripcionCompletaBien(BienLogic bienLogic, List <BienAlquilerResponse> listaAlquiler, List <CodigoValorResponse> listaPeriodoAlquilerBien)
        {
            var bienResponse = new BienResponse();

            bienResponse.CodigoBien           = bienLogic.CodigoBien.ToString();
            bienResponse.CodigoIdentificacion = bienLogic.CodigoIdentificacion;
            bienResponse.NumeroSerie          = bienLogic.NumeroSerie;
            bienResponse.Descripcion          = bienLogic.Descripcion;
            bienResponse.Marca        = bienLogic.Marca;
            bienResponse.Modelo       = bienLogic.Modelo;
            bienResponse.CodigoMoneda = bienLogic.CodigoMoneda;
            if (bienLogic.FechaAdquisicion != null)
            {
                bienResponse.FechaAdquisicion = Convert.ToDateTime(bienLogic.FechaAdquisicion).ToString(DatosConstantes.Formato.FormatoFecha);
            }
            bienResponse.MesInicioAlquiler            = bienLogic.MesInicioAlquiler;
            bienResponse.AnioInicioAlquiler           = bienLogic.AnioInicioAlquiler;
            bienResponse.DescripcionMesInicioAlquiler = CultureInfo.CurrentCulture.TextInfo.ToTitleCase(CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(int.Parse(bienResponse.MesInicioAlquiler.ToString())));

            if (listaAlquiler != null && listaAlquiler.Count > 0)
            {
                bienResponse.ValorAlquilerString = string.Empty;
                decimal limiteInferiorActual = 0.01M;

                var alquilerSinLimite = listaAlquiler.Where(item => item.IndicadorSinLimite).FirstOrDefault();

                var periodoAlquilerBien = listaPeriodoAlquilerBien.Where(itemWhere => itemWhere.Codigo.ToString() == bienLogic.CodigoPeriodoAlquiler).FirstOrDefault().Valor;

                foreach (var item in listaAlquiler.Where(item => !item.IndicadorSinLimite).ToList())
                {
                    bienResponse.ValorAlquilerString += limiteInferiorActual + " - " + item.CantidadLimiteString + " " + periodoAlquilerBien + " " + bienLogic.CodigoMoneda + " " + item.MontoString + "<br></br>";
                    limiteInferiorActual              = Convert.ToDecimal(item.CantidadLimite) + 0.01M;
                }
            }
            else
            {
                bienResponse.ValorAlquilerString = bienLogic.ValorAlquiler.HasValue ? bienLogic.ValorAlquiler.Value.ToString(DatosConstantes.Formato.FormatoNumeroDecimal) : null;
            }
            bienResponse.DescripcionCompleta = bienLogic.CodigoIdentificacion + " - " + bienLogic.NumeroSerie + " - " + bienLogic.Descripcion + " - " + bienLogic.Marca + " - " + bienLogic.Modelo + " - " + bienResponse.FechaAdquisicion + " - " + bienResponse.DescripcionMesInicioAlquiler + " " + bienResponse.AnioInicioAlquiler;

            return(bienResponse);
        }
Esempio n. 2
0
        /// <summary>
        /// Obtiene la entidad response de una entidad Logic
        /// </summary>
        /// <param name="objLogic">objeto logic</param>
        /// <param name="lstTipoBien">lista con los tipos de bien</param>
        /// <param name="lstTipoTarifa">lista tipos de tarifa</param>
        /// <param name="lstMoneda">listas de moneda</param>
        /// <returns>Entidad Response de entidad Logic</returns>
        public static BienResponse ObtenerBienResponseDeLogic(BienLogic objLogic, List <CodigoValorResponse> lstTipoBien = null,
                                                              List <CodigoValorResponse> lstTipoTarifa = null,
                                                              List <CodigoValorResponse> lstMoneda     = null,
                                                              List <CodigoValorResponse> lstPeriodoAl  = null)
        {
            int          li_index = -1;
            BienResponse objRpta  = new BienResponse();

            objRpta.CodigoBien           = objLogic.CodigoBien.ToString();
            objRpta.CodigoTipoBien       = objLogic.CodigoTipoBien;
            objRpta.CodigoIdentificacion = objLogic.CodigoIdentificacion;
            objRpta.NumeroSerie          = objLogic.NumeroSerie;
            objRpta.Descripcion          = objLogic.Descripcion;
            objRpta.Marca                 = objLogic.Marca;
            objRpta.Modelo                = objLogic.Modelo;
            objRpta.FechaAdquisicion      = objLogic.FechaAdquisicion.Value.ToString(DatosConstantes.Formato.FormatoFecha);
            objRpta.TiempoVidaString      = objLogic.TiempoVida.ToString(DatosConstantes.Formato.FormatoNumeroDecimal);
            objRpta.ValorResidualString   = objLogic.ValorResidual.ToString(DatosConstantes.Formato.FormatoNumeroDecimal);
            objRpta.CodigoTipoTarifa      = objLogic.CodigoTipoTarifa;
            objRpta.CodigoPeriodoAlquiler = objLogic.CodigoPeriodoAlquiler;
            objRpta.ValorAlquilerString   = objLogic.ValorAlquiler.HasValue ? objLogic.ValorAlquiler.Value.ToString(DatosConstantes.Formato.FormatoNumeroDecimal) : null;
            objRpta.CodigoMoneda          = objLogic.CodigoMoneda;
            objRpta.MesInicioAlquiler     = objLogic.MesInicioAlquiler;

            if (objRpta.MesInicioAlquiler > 0)
            {
                objRpta.DescripcionMesInicioAlquiler = CultureInfo.CurrentCulture.TextInfo.ToTitleCase(CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(int.Parse(objRpta.MesInicioAlquiler.ToString())));
            }

            objRpta.AnioInicioAlquiler = objLogic.AnioInicioAlquiler;

            if (objRpta.AnioInicioAlquiler > 0)
            {
                objRpta.MesAnioInicioAlquiler = objRpta.DescripcionMesInicioAlquiler + " - " + objRpta.AnioInicioAlquiler;
            }

            if (lstTipoBien != null && lstTipoBien.Count > 0)
            {
                li_index = lstTipoBien.FindIndex(x => x.Codigo.ToString() == objLogic.CodigoTipoBien);
                if (li_index > -1)
                {
                    objRpta.NombreTipoBien = lstTipoBien[li_index].Valor.ToString();
                }
            }
            li_index = -1;
            if (lstTipoTarifa != null && lstTipoTarifa.Count > 0)
            {
                li_index = lstTipoTarifa.FindIndex(x => x.Codigo.ToString() == objLogic.CodigoTipoTarifa);
                if (li_index > -1)
                {
                    objRpta.NombreTipoTarifa = lstTipoTarifa[li_index].Valor.ToString();
                }
            }
            li_index = -1;
            if (lstMoneda != null && lstMoneda.Count > 0)
            {
                li_index = lstMoneda.FindIndex(x => x.Codigo.ToString() == objLogic.CodigoMoneda);
                if (li_index > -1)
                {
                    objRpta.NombreMoneda = lstMoneda[li_index].Valor.ToString();
                }
            }
            li_index = -1;
            if (lstPeriodoAl != null && lstPeriodoAl.Count > 0)
            {
                li_index = lstPeriodoAl.FindIndex(x => x.Codigo.ToString() == objLogic.CodigoPeriodoAlquiler);
                if (li_index > -1)
                {
                    objRpta.NombrePeriodoAlquiler = lstPeriodoAl[li_index].Valor.ToString();
                }
            }
            return(objRpta);
        }