/// <summary> /// Presenta la información de un objeto de negocio en la vista /// </summary> /// <param name="obj">objeto que se desea desplegar en la pantalla</param> public void DatoAInterfazUsuario(object obj) { ElementoFlotaBO elemento = obj as ElementoFlotaBO; if (ReferenceEquals(elemento.Unidad, null)) { elemento.Unidad = new UnidadBO(); } UnidadBO unidad = elemento.Unidad; if (ReferenceEquals(unidad.EquiposAliados, null)) { unidad.EquiposAliados = new List <EquipoAliadoBO>(); } this.vistaEA.EquipoID = unidad.EquipoID.HasValue ? unidad.EquipoID.Value.ToString(CultureInfo.InvariantCulture).Trim().ToUpper() : string.Empty; this.vistaEA.LiderID = unidad.IDLider.HasValue ? unidad.IDLider.Value.ToString(CultureInfo.InvariantCulture).Trim().ToUpper() : string.Empty; this.vistaEA.NumeroEconomico = !string.IsNullOrEmpty(unidad.NumeroEconomico) && !string.IsNullOrWhiteSpace(unidad.NumeroEconomico) ? unidad.NumeroEconomico.Trim().ToUpper() : string.Empty; this.vistaEA.NumeroSerie = !string.IsNullOrEmpty(unidad.NumeroSerie) && !string.IsNullOrWhiteSpace(unidad.NumeroSerie) ? unidad.NumeroSerie.Trim().ToUpper() : string.Empty; this.vistaEA.OracleID = !string.IsNullOrEmpty(unidad.ClaveActivoOracle) && !string.IsNullOrWhiteSpace(unidad.ClaveActivoOracle) ? unidad.ClaveActivoOracle.Trim().ToUpper() : string.Empty; this.vistaEA.UnidadID = unidad.UnidadID.HasValue ? unidad.UnidadID.Value.ToString(CultureInfo.InvariantCulture).Trim().ToUpper() : string.Empty; this.vistaEA.EquiposAliados = unidad.EquiposAliados; }
public void EstablecerPaqueteNavegacion(string Nombre, int?UnidadID) { FlotaRDBOF elementoBO = this.UnidadesRD.Find(p => p.Unidad.UnidadID.HasValue && p.Unidad.UnidadID.Value == UnidadID); if (elementoBO != null) { switch (Nombre) { case "RegistrarReservacionUI": Session[Nombre] = elementoBO.Unidad; break; case "DetalleFlotaUI": Session[Nombre] = new ElementoFlotaBO { Unidad = elementoBO.Unidad }; break; case "ContratoRDBO": Session[Nombre] = new ContratoRDBOF { ContratoID = elementoBO.ContratoID }; break; } } else { throw new Exception(this.ToString() + ".EstablecerPaqueteNavegacion: La unidad seleccionada no se encuentra dentro del listado de unidades encintradas."); } }
/// <summary> /// Despliega en pantalla la información del elemento de flota seleccionado /// </summary> /// <param name="elementoFlotaBO">Elemento de la flota seleccionado</param> private void DatoAInterfazUsuario(object elementoFlotaBO) { ElementoFlotaBO elemento = elementoFlotaBO as ElementoFlotaBO; if (ReferenceEquals(elemento.Unidad, null)) { elemento.Unidad = new UnidadBO(); } this.vista.EquipoID = elemento.Unidad.EquipoID.HasValue ? elemento.Unidad.EquipoID.Value : (int?)null; this.vista.NumeroEconomico = !string.IsNullOrEmpty(elemento.Unidad.NumeroEconomico) && !string.IsNullOrWhiteSpace(elemento.Unidad.NumeroEconomico) ? elemento.Unidad.NumeroEconomico.Trim().ToUpper() : string.Empty; this.vista.NumeroSerie = !string.IsNullOrEmpty(elemento.Unidad.NumeroSerie) && !string.IsNullOrWhiteSpace(elemento.Unidad.NumeroSerie) ? elemento.Unidad.NumeroSerie.Trim().ToUpper() : string.Empty; this.vista.UnidadID = elemento.Unidad.UnidadID.HasValue ? elemento.Unidad.UnidadID.Value : (int?)null; this.presentadorDG.Inicializar(); this.presentadorDG.DatoAInterfazUsuario(elemento as object); this.presentadorEA.Inicializar(); this.presentadorEA.DatoAInterfazUsuario(elemento as object); this.presentadorEA.CargarEquiposAliados(); }
private void ConsultarCompleto() { try { //Se consulta la información del contrato ContratoRDBO bo = (ContratoRDBO)this.InterfazUsuarioADato(); List <ContratoRDBO> lst = this.controlador.ConsultarCompleto(this.dctx, bo, true); if (lst.Count < 1) { throw new Exception("No se encontró ningún registro que corresponda a la información proporcionada."); } if (lst.Count > 1) { throw new Exception("La consulta devolvió más de un registro."); } this.DatoAInterfazUsuario(lst[0]); this.vista.UltimoObjeto = lst[0]; //Se consulta la información de la flota if (lst[0].ObtenerLineaContrato() != null && lst[0].ObtenerLineaContrato().Equipo != null && lst[0].ObtenerLineaContrato().Equipo is UnidadBO && ((UnidadBO)lst[0].ObtenerLineaContrato().Equipo).UnidadID != null) { ElementoFlotaBO elemento = new ElementoFlotaBO() { Unidad = (UnidadBO)lst[0].ObtenerLineaContrato().Equipo }; elemento.Tramites = new TramiteBR().ConsultarCompleto(this.dctx, new TramiteProxyBO() { Activo = true, Tramitable = elemento.Unidad }, false); if (elemento != null && elemento.Unidad != null && elemento.Unidad.Sucursal == null) { elemento.Unidad.Sucursal = new SucursalBO(); } this.presentadorDG.DatoAInterfazUsuario(elemento as object); this.presentadorEA.DatoAInterfazUsuario(elemento as object); this.presentadorEA.CargarEquiposAliados(); } else { this.presentadorDG.Inicializar(); this.presentadorEA.Inicializar(); } } catch (Exception ex) { this.DatoAInterfazUsuario(new ContratoRDBO()); throw new Exception(this.nombreClase + ".ConsultarCompleto:" + ex.Message); } }
/// <summary> /// Obtiene un elemento de la flota en base a su identificador /// </summary> /// <param name="unidadID">Identificador de la unidad que se desea consultar</param> /// <returns>Elemento de flota que cumple con lso filtros proporcionados</returns> public object ObtenerElementoFlota(int unidadID) { try { ElementoFlotaBO elemento = new ElementoFlotaBO(); elemento.Unidad = new UnidadBO(); elemento.Unidad.UnidadID = unidadID; return(elemento); } catch (Exception ex) { throw new Exception(nombreClase + ".ObtenerElementoFlota: " + ex.Message); } }
/// <summary> /// Establece la información del paquete de navegación para el detalle de la flota /// </summary> /// <param name="Clave">Clave del paquete</param> /// <param name="UnidadID">Identificador de la undia que se desea ver a detalle</param> public void EstablecerPaqueteNavegacion(string Clave, int?UnidadID) { ElementoFlotaBO elementoBO = this.Resultado.Find(p => p.Unidad.UnidadID.HasValue && p.Unidad.UnidadID.Value == UnidadID); if (elementoBO != null) { Session[Clave] = elementoBO; #region SC0019 Dictionary <string, object> paqueteNavegacion = new Dictionary <string, object>(); paqueteNavegacion.Add("ObjetoFiltro", this.presentador.InterfazUsuarioADatoNavegacion()); paqueteNavegacion.Add("PagActGrid", this.IndicePaginaResultado); paqueteNavegacion.Add("Bandera", true); Session["FiltrosFlota"] = paqueteNavegacion; #endregion } else { throw new Exception(this.ToString() + ".EstablecerPaqueteNavegacion: La unidad seleccionada no se encuentra dentro del listado de unidades encintradas."); } }
/// <summary> /// Establece un objeto en session que se desea visualizar en la pantalla /// </summary> /// <param name="paquete">Objeto que se desea desplegar en la interfaz de usuario</param> private void EstablecerDatosNavegacion(object paquete) { try { if (ReferenceEquals(paquete, null)) { throw new Exception("Se esperaba un objeto en la navegación. No se puede identificar el elemento de la flota que se desea consultar a detalle."); } if (!(paquete is ElementoFlotaBO)) { throw new Exception("Se esperaba una Unidad de Idealease."); } if (!(((ElementoFlotaBO)paquete).Unidad != null && ((ElementoFlotaBO)paquete).Unidad.UnidadID != null)) { throw new Exception("No se pudo identificar la unidad."); } //Se consulta el elemento enviado en la navegación ElementoFlotaBO elemento = (ElementoFlotaBO)paquete; FlotaBO flota = this.controlador.ConsultarFlotaRentaDiaria(this.dctx, new FlotaBOF() { Unidad = elemento.Unidad }); if (!(flota.ElementosFlota != null && flota.ElementosFlota.Count > 0)) { throw new Exception("No se encontró la unidad en la flota de renta diaria."); } elemento = flota.ElementosFlota[0]; //Desplegamos los resultados en pantalla this.DatoAInterfazUsuario(elemento); } catch (Exception ex) { this.presentadorDG.Inicializar(); throw new Exception(nombreClase + ".EstablecerDatosNavegacion: " + ex.Message); } }
/// <summary> /// Asocia los datos del objeto Contrato a la interfaz /// </summary> /// <param name="bo">Origen de los datos</param> private void DatoAInterfazUsuario(ContratoRDBO bo) { try{ if (bo == null) { bo = new ContratoRDBO(); if (bo.Sucursal == null) { bo.Sucursal = new SucursalBO(); } if (bo.Sucursal.UnidadOperativa == null) { bo.Sucursal.UnidadOperativa = new UnidadOperativaBO(); } return; } this.vista.ContratoID = bo.ContratoID; if (bo.Estatus != null) { this.vista.EstatusID = (int)bo.Estatus; } else { this.vista.EstatusID = null; } this.presentadorHerramientas.DatosAInterfazUsuario(bo); if (bo != null && bo.DocumentosAdjuntos != null && bo.DocumentosAdjuntos.Count > 0) { bo.DocumentosAdjuntos = bo.DocumentosAdjuntos.Where(archivo => archivo.Activo == true).ToList(); } #region Lineas if (bo.ObtenerLineaContrato() != null && bo.ObtenerLineaContrato().Equipo != null && bo.ObtenerLineaContrato().Equipo is UnidadBO && ((UnidadBO)bo.ObtenerLineaContrato().Equipo).UnidadID != null) { ElementoFlotaBO elemento = new ElementoFlotaBO() { Unidad = (UnidadBO)bo.ObtenerLineaContrato().Equipo }; elemento.Tramites = new TramiteBR().ConsultarCompleto(this.dctx, new TramiteProxyBO() { Activo = true, Tramitable = elemento.Unidad }, false); if (elemento != null && elemento.Unidad != null && elemento.Unidad.Sucursal == null) { elemento.Unidad.Sucursal = new SucursalBO(); } this.presentadorDG.DatoAInterfazUsuario(elemento as object); this.presentadorDG.ProductoServicioAInterfazUsuario(bo.ObtenerLineaContrato().ProductoServicio); this.presentadorDG.MostrarProductoServicio(true); this.presentadorEA.DatoAInterfazUsuario(elemento as object); this.presentadorEA.CargarEquiposAliados(); } else { this.presentadorDG.Inicializar(); this.presentadorEA.Inicializar(); } int?kmRecorridos = null; if (bo.ObtenerLineaContrato() != null) { kmRecorridos = bo.ObtenerLineaContrato().CalcularKilometrajeRecorrido(); } #endregion //En cualquiera de estos casos, es Cancelación bool casoPermitido1 = bo.Estatus != null && bo.Estatus == EEstatusContrato.EnPausa; bool casoPermitido2 = bo.Estatus != null && bo.Estatus == EEstatusContrato.PendientePorCerrar && kmRecorridos != null && kmRecorridos == 0; //En este caso, es Cierre bool casoPermitido3 = bo.Estatus != null && bo.Estatus == EEstatusContrato.PendientePorCerrar && kmRecorridos != null && kmRecorridos > 0; this.vista.Cancelable = casoPermitido1 || casoPermitido2; this.vista.Cerrable = casoPermitido3; this.vista.PermitirCerrar(casoPermitido1 || casoPermitido2 || casoPermitido3); this.presentadorDocumentosContrato.Vista.EstablecerListasArchivos(bo.DocumentosAdjuntos, new List <TipoArchivoBO>()); LineaContratoRDBO linea = bo.ObtenerLineaContrato(); if (linea != null) { ListadoVerificacionBO chkEntrega = new ListadoVerificacionBO(); ListadoVerificacionBO chkRecepcion = new ListadoVerificacionBO(); chkEntrega = linea.ObtenerListadoVerificacionPorTipo(ETipoListadoVerificacion.ENTREGA); if (chkEntrega != null) { this.presentadorDocumentosEntrega.Vista.EstablecerListasArchivos(chkEntrega.Adjuntos, new List <TipoArchivoBO>()); } chkRecepcion = linea.ObtenerListadoVerificacionPorTipo(ETipoListadoVerificacion.RECEPCION); if (chkRecepcion != null) { this.presentadorDocumentosRecepcion.Vista.EstablecerListasArchivos(chkRecepcion.Adjuntos, new List <TipoArchivoBO>()); } } this.presentadorResumen.DatosAInterfazUsuario(bo); this.vista.UltimoObjeto = bo; } catch (Exception ex) { throw new Exception(this.nombreClase + ".DatoAInterfazUsuario: " + ex.Message); } }
/// <summary> /// Despliega un objeto de negocio en la vista /// </summary> /// <param name="obj">Objeto que se desea desplegar en la vista</param> public void DatoAInterfazUsuario(object obj) { ElementoFlotaBO elemento = obj as ElementoFlotaBO; UnidadBO unidad = elemento.Unidad; if (ReferenceEquals(unidad.CaracteristicasUnidad, null)) { unidad.CaracteristicasUnidad = new CaracteristicasUnidadBO(); } if (ReferenceEquals(unidad.Modelo, null)) { unidad.Modelo = new ModeloBO(); } if (ReferenceEquals(unidad.Modelo.Marca, null)) { unidad.Modelo.Marca = new MarcaBO(); } if (ReferenceEquals(elemento.Tramites, null)) { elemento.Tramites = new List <TramiteBO>(); } this.vistaDG.Anio = unidad.Anio.HasValue ? unidad.Anio.Value.ToString().Trim().ToUpper() : string.Empty; this.vistaDG.CapacidadCarga = unidad.CaracteristicasUnidad.PBCMaximoRecomendado.HasValue ? unidad.CaracteristicasUnidad.PBCMaximoRecomendado.Value.ToString(CultureInfo.InvariantCulture).Trim().ToUpper() : string.Empty; this.vistaDG.CapacidadTanque = unidad.CaracteristicasUnidad.CapacidadTanque.HasValue ? unidad.CaracteristicasUnidad.CapacidadTanque.Value.ToString(CultureInfo.InvariantCulture).Trim().ToUpper() : string.Empty; this.vistaDG.EquipoID = unidad.EquipoID.HasValue ? unidad.EquipoID.Value.ToString().Trim().ToUpper() : string.Empty; this.vistaDG.LiderID = unidad.IDLider.HasValue ? unidad.IDLider.Value.ToString().Trim().ToUpper() : string.Empty; this.vistaDG.Marca = !string.IsNullOrEmpty(unidad.Modelo.Marca.Nombre) && !string.IsNullOrWhiteSpace(unidad.Modelo.Marca.Nombre) ? unidad.Modelo.Marca.Nombre.Trim().ToUpper() : string.Empty; this.vistaDG.Modelo = !string.IsNullOrEmpty(unidad.Modelo.Nombre) && !string.IsNullOrWhiteSpace(unidad.Modelo.Nombre) ? unidad.Modelo.Nombre.Trim().ToUpper() : string.Empty; this.vistaDG.NumeroEconomico = !string.IsNullOrEmpty(unidad.NumeroEconomico) && !string.IsNullOrWhiteSpace(unidad.NumeroEconomico) ? unidad.NumeroEconomico.Trim().ToUpper() : string.Empty; this.vistaDG.Numeroserie = !string.IsNullOrEmpty(unidad.NumeroSerie) && !string.IsNullOrWhiteSpace(unidad.NumeroSerie) ? unidad.NumeroSerie.Trim().ToUpper() : string.Empty; this.vistaDG.OracleID = !string.IsNullOrEmpty(unidad.ClaveActivoOracle) && !string.IsNullOrWhiteSpace(unidad.ClaveActivoOracle) ? unidad.ClaveActivoOracle.Trim().ToUpper() : string.Empty; TramiteBO placarEstatal = elemento.ObtenerTramitePorTipo(ETipoTramite.PLACA_ESTATAL); if (ReferenceEquals(placarEstatal, null)) { this.vistaDG.PlacasEstatales = string.Empty; } else { this.vistaDG.PlacasEstatales = !string.IsNullOrEmpty(placarEstatal.Resultado) && !string.IsNullOrWhiteSpace(placarEstatal.Resultado) ? placarEstatal.Resultado.Trim().ToUpper() : string.Empty; } TramiteBO placaFederal = elemento.ObtenerTramitePorTipo(ETipoTramite.PLACA_FEDERAL); if (ReferenceEquals(placaFederal, null)) { this.vistaDG.PlacasFederales = string.Empty; } else { this.vistaDG.PlacasFederales = !string.IsNullOrEmpty(placaFederal.Resultado) && !string.IsNullOrWhiteSpace(placaFederal.Resultado) ? placaFederal.Resultado.Trim().ToUpper() : string.Empty; } this.vistaDG.RendimientoTanque = unidad.CaracteristicasUnidad.RendimientoTanque.HasValue ? unidad.CaracteristicasUnidad.RendimientoTanque.Value.ToString().Trim().ToUpper() : string.Empty; this.vistaDG.Sucursal = !string.IsNullOrEmpty(unidad.Sucursal.Nombre) && !string.IsNullOrWhiteSpace(unidad.Sucursal.Nombre) ? unidad.Sucursal.Nombre.Trim().ToUpper() : string.Empty; this.vistaDG.UnidadID = unidad.UnidadID.HasValue ? unidad.UnidadID.Value.ToString().Trim().ToUpper() : string.Empty; }
private void DatoAInterfazUsuario(object obj) { ContratoRDBO bo = (ContratoRDBO)obj; if (bo == null) { bo = new ContratoRDBO(); } if (bo.Cliente == null) { bo.Cliente = new CuentaClienteIdealeaseBO(); } if (bo.Divisa == null) { bo.Divisa = new DivisaBO(); } if (bo.Divisa.MonedaDestino == null) { bo.Divisa.MonedaDestino = new MonedaBO(); } if (bo.Operador == null) { bo.Operador = new OperadorBO(); } if (bo.Operador.Direccion == null) { bo.Operador.Direccion = new DireccionPersonaBO(); } if (bo.Operador.Direccion.Ubicacion == null) { bo.Operador.Direccion.Ubicacion = new UbicacionBO(); } if (bo.Operador.Direccion.Ubicacion.Ciudad == null) { bo.Operador.Direccion.Ubicacion.Ciudad = new CiudadBO(); } if (bo.Operador.Direccion.Ubicacion.Estado == null) { bo.Operador.Direccion.Ubicacion.Estado = new EstadoBO(); } if (bo.Operador.Direccion.Ubicacion.Pais == null) { bo.Operador.Direccion.Ubicacion.Pais = new PaisBO(); } if (bo.Operador.Licencia == null) { bo.Operador.Licencia = new LicenciaBO(); } if (bo.Sucursal == null) { bo.Sucursal = new SucursalBO(); } if (bo.Sucursal.UnidadOperativa == null) { bo.Sucursal.UnidadOperativa = new UnidadOperativaBO(); } if (bo.CierreContrato == null) { bo.CierreContrato = new CancelacionContratoRDBO(); } if (bo.CierreContrato.Usuario == null) { bo.CierreContrato.Usuario = new UsuarioBO(); } LineaContratoRDBO linea = bo.ObtenerLineaContrato(); if (linea == null) { linea = new LineaContratoRDBO(); if (linea.Equipo == null) { linea.Equipo = new UnidadBO(); } if (linea.Cobrable == null) { linea.Cobrable = new TarifaContratoRDBO(); } } else { this.vista.KmRecorrido = linea.CalcularKilometrajeRecorrido(); if (linea.Equipo != null) { this.vista.EquipoID = linea.Equipo.EquipoID; //Se consulta la información de la flota if (linea.Equipo is UnidadBO) { this.vista.UnidadID = ((UnidadBO)linea.Equipo).UnidadID; ElementoFlotaBO elemento = new ElementoFlotaBO() { Unidad = (UnidadBO)linea.Equipo }; elemento.Tramites = new TramiteBR().ConsultarCompleto(this.dctx, new TramiteProxyBO() { Activo = true, Tramitable = elemento.Unidad }, false); if (elemento != null && elemento.Unidad != null && elemento.Unidad.Sucursal == null) { elemento.Unidad.Sucursal = new SucursalBO(); } this.presentadorDG.DatoAInterfazUsuario(elemento as object); this.presentadorEA.DatoAInterfazUsuario(elemento as object); this.presentadorEA.CargarEquiposAliados(); } else { this.presentadorDG.Inicializar(); this.presentadorEA.Inicializar(); } } } this.vista.ContratoID = bo.ContratoID; if (bo.Estatus != null) { this.vista.EstatusID = (int)bo.Estatus; } else { this.vista.EstatusID = null; } this.vista.FechaCancelacion = bo.CierreContrato.Fecha; this.vista.ObservacionesCancelacion = bo.CierreContrato.Observaciones; if (bo.CierreContrato is CancelacionContratoRDBO) { this.vista.MotivoCancelacion = ((CancelacionContratoRDBO)bo.CierreContrato).Motivo; } else { this.vista.MotivoCancelacion = null; } vista.FechaContrato = bo.FechaContrato; this.presentadorHerramientas.DatosAInterfazUsuario(bo); this.presentadorResumen.DatosAInterfazUsuario(bo); }
/// <summary> /// Enlaza los datos a la interfaz de usuario /// </summary> /// <param name="bo"> objeto con los datos necesarios</param> private void DatoAInterfazUsuario(ContratoRDBO bo) { this.vista.ContratoID = bo.ContratoID; this.vista.FechaContrato = bo.FechaContrato; if (bo.Estatus != null) { this.vista.EstatusID = (int)bo.Estatus; } else { this.vista.EstatusID = null; } if (bo.CierreContrato == null) { bo.CierreContrato = new CancelacionContratoRDBO(); } if (bo.CierreContrato.Usuario == null) { bo.CierreContrato.Usuario = new UsuarioBO(); } LineaContratoRDBO linea = bo.ObtenerLineaContrato(); if (linea != null) { if (linea.Equipo != null) { this.vista.EquipoID = linea.Equipo.EquipoID; if (linea.Equipo is UnidadBO) { this.vista.UnidadID = ((UnidadBO)linea.Equipo).UnidadID; ElementoFlotaBO elemento = new ElementoFlotaBO() { Unidad = (UnidadBO)linea.Equipo }; elemento.Tramites = new TramiteBR().ConsultarCompleto(this.dctx, new TramiteProxyBO() { Activo = true, Tramitable = elemento.Unidad }, false); if (elemento != null) { if (elemento.Unidad != null && elemento.Unidad.Sucursal == null) { elemento.Unidad.Sucursal = linea.Equipo.Sucursal; } this.presentadorDG.DatoAInterfazUsuario(elemento as object); this.presentadorEA.DatoAInterfazUsuario(elemento as object); this.presentadorEA.CargarEquiposAliados(); } } else { this.vista.UnidadID = null; } } if (linea.Equipo.ActivoFijo != null && linea.Equipo.ActivoFijo.CostoSinIva != null) { Decimal?montoDeducibleCalcuado = 0; montoDeducibleCalcuado = linea.Equipo.ActivoFijo.CostoSinIva; var unidad = (UnidadBO)linea.Equipo; if (unidad.EquiposAliados.Count > 0) { montoDeducibleCalcuado = unidad.EquiposAliados.Aggregate(montoDeducibleCalcuado, (monto, equipoAliado) => equipoAliado.ActivoFijo != null ? equipoAliado.ActivoFijo.CostoSinIva != null ? monto + equipoAliado.ActivoFijo.CostoSinIva : monto : monto); } this.vista.ImporteDeposito = bo.CalcularMontoDeposito(montoDeducibleCalcuado.Value); } else { this.vista.ImporteDeposito = null; } //Tarifas if (linea.Cobrable == null) { var tarifaTemporal = ((TarifaContratoRDBO)linea.Cobrable); this.vista.TarifaKmLibres = tarifaTemporal.KmsLibres; this.vista.TarifaKmExcedido = tarifaTemporal.RangoTarifas != null && tarifaTemporal.RangoTarifas.Any() ? tarifaTemporal.RangoTarifas.First().CargoKm ?? 0 : 0; this.vista.TarifaHrsLibres = tarifaTemporal.HrsLibres; this.vista.TarifaHrsExcedidas = tarifaTemporal.RangoTarifas != null && tarifaTemporal.RangoTarifas.Any() ? tarifaTemporal.RangoTarifas.First().CargoHr ?? 0 : 0; } //Listados de Verificación ListadoVerificacionBO entrega = linea.ObtenerListadoVerificacionPorTipo(ETipoListadoVerificacion.ENTREGA); if (entrega == null) { entrega = new ListadoVerificacionBO(); } ListadoVerificacionBO recepcion = linea.ObtenerListadoVerificacionPorTipo(ETipoListadoVerificacion.RECEPCION); if (recepcion == null) { recepcion = new ListadoVerificacionBO(); } this.vista.FechaRecepcion = recepcion.Fecha; this.vista.KmRecorrido = linea.CalcularKilometrajeRecorrido(); this.vista.KmRecorrido = linea.CalcularKilometrajeRecorrido(); this.vista.KmExcedido = linea.CalcularKilometrosExcedidos(); this.vista.MontoKmExcedido = linea.CalcularMontoPorKilometrosExcedidos(); this.vista.HrsExcedidas = linea.CalcularHorasExcedidas(); this.vista.HrsConsumidas = linea.CalcularHorasConsumidas(); this.vista.MontoHrsExcedidas = linea.CalcularMontoPorHorasExcedidas(); this.vista.KmEntrega = entrega.Kilometraje; this.vista.HrsEntrega = entrega.Horometro; this.vista.KmRecepcion = recepcion.Kilometraje; this.vista.HrsRecepcion = recepcion.Horometro; this.vista.DiferenciaCombustible = linea.CalcularDiferenciaCombustible(); if (this.vista.ImporteUnidadCombustible != null) { this.vista.ImporteTotalCombustible = linea.CalcularMontoCombustible(this.vista.ImporteUnidadCombustible.Value); } else { this.vista.ImporteUnidadCombustible = null; } //Cierre del Contrato this.vista.ObservacionesCierre = bo.CierreContrato.Observaciones; if (bo.CierreContrato is CierreContratoRDBO) { this.vista.ImporteReembolso = ((CierreContratoRDBO)bo.CierreContrato).ImporteReembolso; this.vista.CargoAbusoOperacion = ((CierreContratoRDBO)bo.CierreContrato).CargoAbusoOperacion; this.vista.CargoDisposicionBasura = ((CierreContratoRDBO)bo.CierreContrato).CargoDisposicionBasura; this.vista.PersonaRecibeReembolso = ((CierreContratoRDBO)bo.CierreContrato).PersonaRecibeReembolso; } else { this.vista.ImporteReembolso = null; this.vista.CargoAbusoOperacion = null; this.vista.CargoDisposicionBasura = null; this.vista.PersonaRecibeReembolso = null; } //Cálculos de Días de Renta this.vista.DiasRentaProgramada = bo.CalcularDiasPrometidosRenta(); this.vista.DiasEnTaller = 0; this.vista.DiasRealesRenta = bo.CalcularDiasTranscurridosRenta(); if (this.vista.DiasRentaProgramada != null && this.vista.DiasRealesRenta != null) { this.vista.DiasAdicionales = this.vista.DiasRealesRenta.Value - this.vista.DiasRentaProgramada.Value; } else { this.vista.DiasAdicionales = null; } if (this.vista.DiasAdicionales != null && ((TarifaContratoRDBO)linea.Cobrable).TarifaDiaria != null) { this.vista.MontoTotalDiasAdicionales = this.vista.DiasAdicionales * ((TarifaContratoRDBO)linea.Cobrable).TarifaDiaria; } else { this.vista.MontoTotalDiasAdicionales = null; } } this.presentadorHerramientas.DatosAInterfazUsuario(bo); this.presentadorResumen.DatosAInterfazUsuario(bo); }