/// <summary>
        /// Establece la información Inicial en la Vista
        /// </summary>
        private void EstablecerInformacionInicial()
        {
            //Se establecen los tipos de archivos permitidos para adjuntar al contrato
            List <TipoArchivoBO> lstTiposArchivo = new TipoArchivoBR().Consultar(this.dctx, new TipoArchivoBO());

            this.presentadorDocumentos.EstablecerTiposArchivo(lstTiposArchivo);
            this.presentadorDocumentos.RequiereObservaciones(false);

            #region Configuraciones de Unidad Operativa
            //Obtener las configuraciones de la unidad operativa
            List <ConfiguracionUnidadOperativaBO> lstConfigUO = new ModuloBR().ConsultarConfiguracionUnidadOperativa(this.dctx, new ConfiguracionUnidadOperativaBO()
            {
                UnidadOperativa = new UnidadOperativaBO()
                {
                    Id = this.vista.UnidadOperativaID
                }
            }, this.vista.ModuloID);
            if (lstConfigUO.Count <= 0)
            {
                throw new Exception("No se encontraron las configuraciones del sistema para la unidad operativa en la que trabaja.");
            }

            //Establecer las configuraciones de la unidad operativa
            this.vista.RepresentanteEmpresa = lstConfigUO[0].Representante;
            #endregion
        }
Ejemplo n.º 2
0
        private void EstablecerInformacionInicial()
        {
            try
            {
                #region Configuraciones de Unidad Operativa
                //Obtener las configuraciones de la unidad operativa
                List <ConfiguracionUnidadOperativaBO> lstConfigUO = new ModuloBR().ConsultarConfiguracionUnidadOperativa(this.dctx, new ConfiguracionUnidadOperativaBO()
                {
                    UnidadOperativa = new UnidadOperativaBO()
                    {
                        Id = this.vista.UnidadOperativaID
                    }
                }, this.vista.ModuloID);
                if (lstConfigUO.Count <= 0)
                {
                    throw new Exception("No se encontraron las configuraciones del sistema para la unidad operativa en la que trabaja.");
                }

                //Establecer las configuraciones de la unidad operativa
                this.vista.TiempoUsoActivos = lstConfigUO[0].TiempoUsoActivos;
                #endregion
            }
            catch (Exception ex)
            {
                throw new Exception(this.nombreClase + ".EstablecerInformacionInicial: " + ex.Message);
            }
        }
Ejemplo n.º 3
0
        private void EstablecerConfiguracionInicial()
        {
            try {
                this.vista.FUA = DateTime.Now;
                this.vista.UUA = this.vista.UsuarioID;
                this.vista.FechaIntercambio = this.vista.FUA;

                //Se obtienen las configuraciones de la unidad operativa
                if (this.vista.UnidadOperativaID == null)
                {
                    throw new Exception("No se identificó en qué unidad operativa trabaja.");
                }
                List <ConfiguracionUnidadOperativaBO> lst = new ModuloBR().ConsultarConfiguracionUnidadOperativa(dctx, new ConfiguracionUnidadOperativaBO()
                {
                    UnidadOperativa = new UnidadOperativaBO()
                    {
                        Id = this.vista.UnidadOperativaID
                    }
                }, this.vista.ModuloID);
                //Por si se necesita configurar algo de la unidad operativa

                //Se establecen los tipos de archivos permitidos para adjuntar al contrato
                List <TipoArchivoBO> lstTiposArchivo = new TipoArchivoBR().Consultar(this.dctx, new TipoArchivoBO());
                this.presentadorDocumentos.EstablecerTiposArchivo(lstTiposArchivo);
                this.presentadorDocumentos.RequiereObservaciones(false);
            } catch (Exception ex) {
                throw new Exception(this.nombreClase + ".EstablecerConfiguracionInicial: " + ex.Message);
            }
        }
Ejemplo n.º 4
0
        private void EstablecerConfiguracionInicial()
        {
            try
            {
                this.vista.FUA         = DateTime.Now;
                this.vista.UUA         = this.vista.UsuarioID;
                this.vista.FechaCierre = this.vista.FUA;

                //Se obtienen las configuraciones de la unidad operativa
                if (this.vista.UnidadOperativaID == null)
                {
                    throw new Exception("No se identificó en qué unidad operativa trabaja.");
                }
                List <ConfiguracionUnidadOperativaBO> lst = new ModuloBR().ConsultarConfiguracionUnidadOperativa(dctx, new ConfiguracionUnidadOperativaBO()
                {
                    UnidadOperativa = new UnidadOperativaBO()
                    {
                        Id = this.vista.UnidadOperativaID
                    }
                }, this.vista.ModuloID);
                if (lst.Count > 0)
                {
                    this.vista.ImporteUnidadCombustible = lst[0].PrecioUnidadCombustible;
                }
                else
                {
                    this.vista.ImporteUnidadCombustible = null;
                }
            }
            catch (Exception ex)
            {
                throw new Exception(this.nombreClase + ".EstablecerConfiguracionInicial: " + ex.Message);
            }
        }
Ejemplo n.º 5
0
        /// <summary>
        /// Consulta la URL de la página maestra de Facturación
        /// </summary>
        public void ConsultarUrl()
        {
            try
            {
                var moduloBr = new ModuloBR();
                var configuracionUnidadOperativa = new ConfiguracionUnidadOperativaBO {
                    UnidadOperativa = new UnidadOperativaBO {
                        Id = Vista.UnidadOperativaID
                    }
                };
                string moduloId = string.Empty;
                if (this.Vista.ModuloID == null)
                {
                    throw new Exception("Es necesario definir el ModuloID");
                }
                else
                {
                    moduloId = this.Vista.ModuloID.ToString();
                }
                var listaConfiguracion = moduloBr.ConsultarConfiguracionUnidadOperativa(dataContext, configuracionUnidadOperativa, Int32.Parse(moduloId));

                if (listaConfiguracion.Any())
                {
                    if (listaConfiguracion[0].ConfiguracionModulo != null)
                    {
                        var url = listaConfiguracion[0].ConfiguracionModulo.UrlMasterFacturacion;
                        if (!String.IsNullOrEmpty(url))
                        {
                            var SucId = ConsultarSucursalUnica();


                            Vista.RedirigirMaster(url, Vista.UnidadOperativaID.ToString(),
                                                  SucId != null ? SucId.ToString() : string.Empty,
                                                  Vista.UsuarioID.ToString(), Vista.Ambiente.ToString());
                        }
                        else
                        {
                            throw new Exception("No se encuentra configurada la dirección de la Master de Facturación");
                        }
                    }
                    else
                    {
                        throw new Exception("No se encontraron configuraciones para la Unidad Operativa");
                    }
                }
                else
                {
                    throw new Exception("No se encontraron configuraciones para la Unidad Operativa");
                }
            }
            catch (Exception ex)
            {
                var strMetodo = new StackFrame().GetMethod().Name;
                var strMsg    = string.Format("{0}.{1}: {2}", nombreClase, strMetodo, ex.Message);
                Vista.MostrarMensaje("Inconsistencias al Redirigir a la Master de Facturación", ETipoMensajeIU.ERROR, strMsg);
            }
        }
        private void EstablecerConfiguracionModulo(AdscripcionBO adscripcion)
        {
            try
            {
                ConfiguracionModuloBO configuracion = null;
                int?ModuloIDEmpresas = this.vista.ModuloID;

                //RQM 14078, se añade el modulo en cero para que en la consulta pueda recuperar la información del identificador del modulo.
                if (lstAdscripciones != null)
                {
                    if (lstAdscripciones.Any())
                    {
                        ModuloIDEmpresas = 0;
                    }
                }


                if (this.vista.ModuloID == null)
                {
                    throw new Exception("No se encontró el identificador del módulo en la configuración del sistema");
                }

                if (adscripcion != null && adscripcion.UnidadOperativa != null && adscripcion.UnidadOperativa.Id != null)
                {
                    List <ModuloBO> lst = new ModuloBR().ConsultarCompleto(dataContext, new ModuloBO()
                    {
                        ModuloID = ModuloIDEmpresas
                    }, adscripcion.UnidadOperativa.Id.Value);
                    if (lst != null && lst.Count > 0)
                    {
                        configuracion       = lst[0].ObtenerConfiguracion(adscripcion.UnidadOperativa.Id.Value);
                        this.vista.ModuloID = lst[0].ModuloID;
                    }
                }

                this.vista.EstablecerConfiguracionModulo(configuracion);
            }
            catch (Exception ex)
            {
                throw new Exception("ConfiguracionAccesoPRE.EstablecerConfiguracionModulo: " + ex.Message);
            }
        }
        /// <summary>
        /// Establece la información Inicial en la Vista.
        /// </summary>
        private void EstablecerInformacionInicial()
        {
            try {
                #region Configuraciones de Unidad Operativa
                //Obtener las configuraciones de la unidad operativa
                List <ConfiguracionUnidadOperativaBO> lstConfigUO = new ModuloBR().ConsultarConfiguracionUnidadOperativa(
                    this.dataContext, getConfiguracionUnidadOperativa(), this.vista.ModuloId
                    );
                if (lstConfigUO.Count <= 0)
                {
                    throw new Exception("No se encontraron las configuraciones del sistema para la unidad operativa en la que trabaja.");
                }

                //Establecer las configuraciones de la unidad operativa
                this.vista.LibroActivos = lstConfigUO[0].Libro;
                #endregion
            } catch (Exception ex) {
                throw new Exception(nombreClase + ".EstablecerInformacionInicial: " + ex.Message);
            }
        }
        private decimal?ObtenerPrecioCombustible()
        {
            try {
                if (this.vista.UnidadOperativaID == null)
                {
                    throw new Exception("El indentificador de la unidad operativa no debe ser nulo");
                }
                AppSettingsReader n = new AppSettingsReader();
                ConfiguracionUnidadOperativaBO configUO = null;
                int moduloID = (int)this.vista.ModuloID;

                ModuloBO modulo = new ModuloBO()
                {
                    ModuloID = moduloID
                };
                ModuloBR        moduloBR = new ModuloBR();
                List <ModuloBO> modulos  = moduloBR.ConsultarCompleto(dctx, modulo);

                if (modulos.Count > 0)
                {
                    modulo = modulos[0];

                    List <ConfiguracionUnidadOperativaBO> lstConfigUO = new ModuloBR().ConsultarConfiguracionUnidadOperativa(this.dctx, new ConfiguracionUnidadOperativaBO()
                    {
                        UnidadOperativa = new UnidadOperativaBO()
                        {
                            Id = this.vista.UnidadOperativaID
                        }
                    }, this.vista.ModuloID);
                    configUO = lstConfigUO.FirstOrDefault();
                }
                if (configUO != null)
                {
                    return(configUO.PrecioUnidadCombustible);
                }
                return(null);
            } catch (Exception ex) {
                throw new Exception(nombreClase + ".ObtenerPrecioCombustible: Error al consultar el precio del combustible. " + ex.Message);
            }
        }
        private decimal?ObtenerPrecioCombustible()
        {
            try
            {
                if (this.vista.UnidadOperativaID == null)
                {
                    throw new Exception("El indentificador de la unidad operativa no debe ser nulo");
                }
                AppSettingsReader n = new AppSettingsReader();
                ConfiguracionUnidadOperativaBO configUO = null;
                int moduloID = Convert.ToInt32(n.GetValue("ModuloID", System.Type.GetType("System.Int32")));

                ModuloBO modulo = new ModuloBO()
                {
                    ModuloID = moduloID
                };
                ModuloBR        moduloBR = new ModuloBR();
                List <ModuloBO> modulos  = moduloBR.ConsultarCompleto(dctx, modulo);

                if (modulos.Count > 0)
                {
                    modulo = modulos[0];

                    configUO = modulo.ObtenerConfiguracionUO(new UnidadOperativaBO {
                        Id = this.vista.UnidadOperativaID
                    });
                }
                if (configUO != null)
                {
                    return(configUO.PrecioUnidadCombustible);
                }
                return(null);
            }
            catch (Exception ex)
            {
                throw new Exception(nombreClase + ".ObtenerPrecioCombustible: Error al consultar el precio del combustible. " + ex.Message);
            }
        }
        /// <summary>
        /// Obtiene el porcentaje de seguro de acuerrdo a la unidad operativa
        /// </summary>
        public decimal?ObtenerPorcentajeSeguro(int?unidadOperativaID, int?ModuloID)
        {
            try {
                decimal? porcentajeSeguro = 0;
                ModuloBR configBR         = new ModuloBR();
                ConfiguracionUnidadOperativaBO configBO = new ConfiguracionUnidadOperativaBO()
                {
                    UnidadOperativa = new UnidadOperativaBO()
                    {
                        Id = unidadOperativaID
                    }
                };
                List <ConfiguracionUnidadOperativaBO> listConfigUO = new List <ConfiguracionUnidadOperativaBO>();
                listConfigUO = configBR.ConsultarConfiguracionUnidadOperativa(dataContext, configBO, this.vista.ModuloID);
                if (listConfigUO != null && listConfigUO.Count > 0)
                {
                    porcentajeSeguro = listConfigUO[0].PorcentajeSeguro != null ? listConfigUO[0].PorcentajeSeguro : 0;
                }

                return(porcentajeSeguro);
            } catch {
                throw new Exception(this.nombreClase + ".CalcularSeguro: Error al obtener el Seguro");
            }
        }
Ejemplo n.º 11
0
        public void EstablecerConfiguracionInicial()
        {
            //Se obtienen las configuraciones de la unidad operativa
            if (this.vista.UnidadOperativaID == null)
            {
                throw new Exception("No se identificó en qué unidad operativa trabaja.");
            }
            List <ConfiguracionUnidadOperativaBO> lst = new ModuloBR().ConsultarConfiguracionUnidadOperativa(dataContext, new ConfiguracionUnidadOperativaBO()
            {
                UnidadOperativa = new UnidadOperativaBO()
                {
                    Id = this.vista.UnidadOperativaID
                }
            }, this.vista.ModuloID);

            if (lst.Count > 0)
            {
                this.vista.ImporteUnidadCombustible = lst[0].PrecioUnidadCombustible;
            }
            else
            {
                this.vista.ImporteUnidadCombustible = null;
            }
        }
        /// <summary>
        /// Prepara la edición del contrato
        /// </summary>
        public void PrepararEdicion()
        {
            try
            {
                //Obtenemos el paquete correspondiente al contrato a editar
                var contratoAnterior = this.vista.ObtenerPaqueteNavegacion("ContratoManttoBO");
                var contratoBase     = this.vista.ObtenerPaqueteNavegacion("ContratoManttoBO");

                if (object.ReferenceEquals(contratoBase, null))
                {
                    throw new Exception("Se esperaba un objeto en la navegación. No fue posible identificar el contrato que se desea editar.");
                }
                if (!(contratoBase is ContratoManttoBO))
                {
                    throw new Exception("Se esperaba un contrato de mantenimiento para poder continuar con la edición.");
                }

                //Habilitamos el modo editable para el catálogo de documentos
                this.presentadorDocumentos.ModoEditable(true);
                //Le pedimos al usercontrol que se prepare para la edición
                this.presentadorDatos.PrepararEdicion();
                //Cargamos los tipos de archivo validos para adjuntar al contrato
                List <TipoArchivoBO> lstTiposArchivo = new TipoArchivoBR().Consultar(this.dctx, new TipoArchivoBO());
                this.presentadorDocumentos.EstablecerTiposArchivo(lstTiposArchivo);

                //Eliminamos el paquete de navegación
                this.vista.LimpiarPaqueteNavegacion("ContratoManttoBO");

                //Asignamos como último objeto el contrato a editar
                this.vista.UltimoObjeto = this.ObtenerContrato(contratoAnterior);
                //Obtenemos el contrato a desplegar
                var contrato = this.ObtenerContrato(contratoBase);
                //Desplegmaos el contrato obtenido
                this.DatoAInterfazUsuario(contrato);

                #region Configuraciones de Unidad Operativa
                //Obtener las configuraciones de la unidad operativa
                List <ConfiguracionUnidadOperativaBO> lstConfigUO = new ModuloBR().ConsultarConfiguracionUnidadOperativa(this.dctx, new ConfiguracionUnidadOperativaBO()
                {
                    UnidadOperativa = new UnidadOperativaBO()
                    {
                        Id = this.vista.UnidadOperativaID
                    }
                }, this.vista.ModuloID);
                if (lstConfigUO.Count <= 0)
                {
                    throw new Exception("No se encontraron las configuraciones del sistema para la unidad operativa en la que trabaja.");
                }

                this.vista.RepresentanteEmpresa = lstConfigUO[0].Representante;
                #endregion

                //Pedimos se configure las opciones habilitadas para la cuenta del cliente
                this.presentadorDatos.ConfigurarOpcionesPersonas();

                //Habilitamos los botones de guardado
                this.vista.HabilitarModoBorrador(true);
                this.vista.HabilitarModoTerminado(true);

                //Habilitar opciones barra de herramientas
                this.presentadorHerramientas.vista.HabilitarOpcionesEdicion();
                this.presentadorHerramientas.DeshabilitarMenuBorrar();
                this.presentadorHerramientas.DeshabilitarMenuCerrar();
                this.presentadorHerramientas.DeshabilitarMenuImprimir();
                this.presentadorHerramientas.DeshabilitarMenuDocumentos();
                this.presentadorHerramientas.vista.MarcarOpcionEditarContrato();
            }
            catch (Exception ex)
            {
                this.vista.HabilitarModoBorrador(false);
                this.vista.HabilitarModoTerminado(false);
                throw new Exception(string.Format("{0}.RealizarPrimeraCarga:{1}{2}", nombreClase, Environment.NewLine, ex.Message));
            }
        }
        /// <summary>
        /// Obtiene los datos de la Vista
        /// </summary>
        /// <returns></returns>
        private object InterfazUsuarioADato()
        {
            UnidadOperativaBO unidadOperativa = new UnidadOperativaBO();

            unidadOperativa.Empresa = new EmpresaBO();

            if (this.vista.UnidadOperativaID != null)
            {
                unidadOperativa.Id = this.vista.UnidadOperativaID;
            }

            if (this.vista.UnidadOperativaNombre != null)
            {
                unidadOperativa.Nombre = vista.UnidadOperativaNombre;
            }

            if (this.presentadorDatosContrato.Vista.NombreEmpresa != null)
            {
                unidadOperativa.Empresa.Nombre = this.presentadorDatosContrato.Vista.NombreEmpresa;
            }

            ContratoPSLBO bo = new ContratoPSLBO();

            bo.Cliente = new CuentaClienteIdealeaseBO();
            bo.Cliente.UnidadOperativa = new UnidadOperativaBO();
            bo.Divisa = new DivisaBO();
            bo.Divisa.MonedaDestino         = new MonedaBO();
            bo.Sucursal                     = new SucursalBO();
            bo.Sucursal.UnidadOperativa     = new UnidadOperativaBO();
            bo.LineasContrato               = new List <ILineaContrato>();
            bo.Operador                     = new OperadorBO();
            bo.Operador.Direccion           = new DireccionPersonaBO();
            bo.Operador.Direccion.Ubicacion = new UbicacionBO()
            {
                Ciudad = new CiudadBO(), Estado = new EstadoBO(), Municipio = new MunicipioBO(), Pais = new PaisBO()
            };
            bo.Operador.Licencia = new LicenciaBO();
            bo.TasaInteres       = this.presentadorDatosContrato.Vista.TasaInteres;

            //Configuración de días a cobrar
            bo.IncluyeSD = this.vista.IncluyeSD;

            bo.Tipo = ETipoContrato.ROC;//Se establece el tipo como ROC.

            if (this.vista.SucursalSeleccionada != null)
            {
                bo.Sucursal.Id     = this.vista.SucursalSeleccionada.Id;
                bo.Sucursal.Nombre = this.vista.SucursalSeleccionada.Nombre;
            }

            bo.Sucursal.UnidadOperativa = unidadOperativa;
            bo.Cliente.UnidadOperativa  = unidadOperativa;

            if (this.vista.CuentaClienteID != null)
            {
                bo.Cliente.Id = this.vista.CuentaClienteID;
            }
            if (vista.CuentaClienteNombre != null)
            {
                bo.Cliente.Nombre = vista.CuentaClienteNombre;
            }
            if (this.vista.CodigoMoneda != null)
            {
                bo.Divisa.MonedaDestino.Codigo = this.vista.CodigoMoneda;
            }
            if (this.vista.RepresentantesLegales != null)
            {
                bo.RepresentantesLegales = this.vista.RepresentantesLegales.ConvertAll(s => (PersonaBO)s);
            }
            bo.SoloRepresentantes = vista.SoloRepresentantes;
            bo.Avales             = vista.Avales;
            #region Dirección del Cliente
            DireccionClienteBO direccion = new DireccionClienteBO
            {
                Ubicacion =
                    new UbicacionBO
                {
                    Pais = new PaisBO {
                        Codigo = this.vista.ClienteDireccionPais
                    },
                    Municipio = new MunicipioBO {
                        Codigo = this.vista.ClienteDireccionMunicipio
                    },
                    Estado = new EstadoBO {
                        Codigo = this.vista.ClienteDireccionEstado
                    },
                    Ciudad = new CiudadBO {
                        Codigo = this.vista.ClienteDireccionCiudad
                    }
                },
                CodigoPostal = this.vista.ClienteDireccionCodigoPostal,
                Calle        = this.vista.ClienteDireccionCalle,
                Colonia      = this.vista.ClienteDireccionColonia,
                Id           = this.vista.ClienteDireccionId
            };

            bo.Cliente.RemoverDirecciones();
            bo.Cliente.Agregar(direccion);
            #endregion


            if (this.vista.FechaContrato != null)
            {
                bo.FechaContrato = this.vista.FechaContrato;
            }

            if (this.vista.FechaInicioActual != null)
            {
                bo.FechaInicioActual        = this.vista.FechaInicioActual;
                bo.FechaInicioArrendamiento = this.vista.FechaInicioActual;
            }

            if (this.vista.FechaPromesaActual != null)
            {
                bo.FechaPromesaActual     = this.vista.FechaPromesaActual;
                bo.FechaPromesaDevolucion = this.vista.FechaPromesaActual;
            }

            if (this.vista.FormaPagoID != null)
            {
                bo.FormaPago = (EFormaPago)Enum.Parse(typeof(EFormaPago), this.vista.FormaPagoID.ToString());
            }
            if (this.vista.FrecuenciaFacturacionID != null)
            {
                bo.FrecuenciaFacturacion = (EFrecuencia)Enum.Parse(typeof(EFrecuencia), this.vista.FrecuenciaFacturacionID.ToString());
            }
            if (this.vista.AutorizadorTipoConfirmacion != null)
            {
                bo.AutorizadorTipoConfirmacion = this.vista.AutorizadorTipoConfirmacion;
            }
            if (this.vista.AutorizadorOrdenCompra != null)
            {
                bo.AutorizadorOrdenCompra = this.vista.AutorizadorOrdenCompra;
            }
            if (this.vista.DestinoAreaOperacion != null)
            {
                bo.DestinoAreaOperacion = this.vista.DestinoAreaOperacion;
            }
            if (this.vista.MercanciaTransportar != null)
            {
                bo.MercanciaTransportar = this.vista.MercanciaTransportar;
            }
            if (this.vista.TipoConfirmacionID != null)
            {
                bo.TipoConfirmacion = (ETipoConfirmacion)Enum.Parse(typeof(ETipoConfirmacion), this.vista.TipoConfirmacionID.ToString());
            }

            if (this.vista.Observaciones != null)
            {
                bo.Observaciones = this.vista.Observaciones;
            }

            if (this.vista.DiasFacturar != null)
            {
                bo.DiasFacturar = this.vista.DiasFacturar;
            }

            if (this.vista.EstatusID != null)
            {
                bo.Estatus = (EEstatusContrato)Enum.Parse(typeof(EEstatusContrato), this.vista.EstatusID.ToString());
            }
            if (this.vista.FC != null)
            {
                bo.FC = this.vista.FC;
            }
            if (this.vista.UC != null)
            {
                bo.UC = this.vista.UC;
            }
            if (this.vista.FUA != null)
            {
                bo.FUA = this.vista.FUA;
            }
            if (this.vista.UUA != null)
            {
                bo.UUA = this.vista.UUA;
            }

            if (!string.IsNullOrWhiteSpace(this.vista.ClaveProductoServicio))
            {
                if (bo.ProductoServicio == null)
                {
                    bo.ProductoServicio = new ProductoServicioBO();
                }
                bo.ProductoServicio.Id          = this.vista.ProductoServicioId;
                bo.ProductoServicio.NombreCorto = this.vista.ClaveProductoServicio;
                bo.ProductoServicio.Nombre      = this.vista.DescripcionProductoServicio;
            }

            #region ConfiguracionUO.PorcentajeSeguro
            decimal? porcentajeSeguro = 0;
            ModuloBR configBR         = new ModuloBR();
            ConfiguracionUnidadOperativaBO configBO = new ConfiguracionUnidadOperativaBO()
            {
                UnidadOperativa = new UnidadOperativaBO()
                {
                    Id = this.vista.UnidadOperativaID
                }
            };
            List <ConfiguracionUnidadOperativaBO> listConfigUO = new List <ConfiguracionUnidadOperativaBO>();
            listConfigUO = configBR.ConsultarConfiguracionUnidadOperativa(dctx, configBO, this.vista.ModuloID);
            if (listConfigUO != null && listConfigUO.Count > 0)
            {
                porcentajeSeguro = listConfigUO[0].PorcentajeSeguro != null ? listConfigUO[0].PorcentajeSeguro : 0;
            }
            #endregion

            #region Campos de ROC
            bo.MontoTotalArrendamiento = this.vista.MontoTotalArrendamiento;
            bo.FechaPagoRenta          = this.vista.FechaPagoRenta;
            bo.Plazo            = this.vista.Plazo;
            bo.InversionInicial = this.vista.InversionInicial;
            #endregion

            #region Linea de Contrato
            LineaContratoPSLBO lineaBO = null;
            foreach (LineaContratoPSLBO linea in this.vista.LineasContrato)
            {
                lineaBO = new LineaContratoPSLBO();

                lineaBO.Equipo = (UnidadBO)linea.Equipo;

                lineaBO.TipoTarifa = linea.TipoTarifa;

                lineaBO.Cobrable = new TarifaContratoPSLBO
                {
                    PeriodoTarifa             = ((TarifaContratoPSLBO)linea.Cobrable).PeriodoTarifa,
                    Tarifa                    = ((TarifaContratoPSLBO)linea.Cobrable).Tarifa,
                    TarifaHrAdicional         = ((TarifaContratoPSLBO)linea.Cobrable).TarifaHrAdicional,
                    TarifaTurno               = ((TarifaContratoPSLBO)linea.Cobrable).TarifaTurno,
                    Maniobra                  = ((TarifaContratoPSLBO)linea.Cobrable).Maniobra,
                    TarifaPSLID               = ((TarifaContratoPSLBO)linea.Cobrable).TarifaPSLID,
                    DuracionDiasPeriodo       = ((TarifaContratoPSLBO)linea.Cobrable).DuracionDiasPeriodo,
                    MaximoHrsTurno            = ((TarifaContratoPSLBO)linea.Cobrable).MaximoHrsTurno,
                    Activo                    = true,
                    PorcentajeDescuento       = ((TarifaContratoPSLBO)linea.Cobrable).PorcentajeDescuento,
                    PorcentajeDescuentoMaximo = ((TarifaContratoPSLBO)linea.Cobrable).PorcentajeDescuentoMaximo,
                    EtiquetaDescuento         = ((TarifaContratoPSLBO)linea.Cobrable).EtiquetaDescuento,
                    TarifaConDescuento        = ((TarifaContratoPSLBO)linea.Cobrable).TarifaConDescuento,
                    PorcentajeSeguro          = porcentajeSeguro
                };
                lineaBO.Activo   = linea.Activo;
                lineaBO.Devuelta = linea.Devuelta;
                lineaBO.LineaOrigenIntercambioID = linea.LineaOrigenIntercambioID;
                bo.LineasContrato.Add(lineaBO);
            }

            //bo.LineasContrato = this.vista.LineasContrato.ConvertAll(s => (ILineaContrato)s);
            #endregion

            #region Archivos Adjuntos
            List <ArchivoBO> adjuntos = presentadorDocumentos.Vista.ObtenerArchivos() ?? new List <ArchivoBO>();
            foreach (ArchivoBO adjunto in adjuntos)
            {
                adjunto.TipoAdjunto = ETipoAdjunto.ContratoROC;
                adjunto.Auditoria   = new AuditoriaBO
                {
                    FC  = this.vista.FC,
                    UC  = this.vista.UC,
                    FUA = this.vista.FUA,
                    UUA = this.vista.UUA
                };
            }
            bo.DocumentosAdjuntos = adjuntos;
            #endregion

            return(bo);
        }
        /// <summary>
        /// Calcula y despliega las configuraciones de la unidad operativa en la vista
        /// </summary>
        public void DesplegarConfiguracionUnidadOperativa()
        {
            try
            {
                var moduloBR = new ModuloBR();

                var configuracion = new ConfiguracionUnidadOperativaBO
                {
                    UnidadOperativa = vista.UnidadOperativa
                };

                int?ModuloID = vista.ModuloID;

                if (vista.ModuloID != null)
                {
                    List <ConfiguracionUnidadOperativaBO> configuraciones =
                        moduloBR.ConsultarConfiguracionUnidadOperativa(dataContext, configuracion, ModuloID);

                    if (configuraciones != null && configuraciones.Count > 0)
                    {
                        configuracion =
                            configuraciones.Find(conf => configuracion.UnidadOperativa.Id == vista.UnidadOperativa.Id);
                        if (configuracion != null)
                        {
                            if (!string.IsNullOrEmpty(configuracion.Representante))
                            {
                                vista.Representante = configuracion.Representante.Trim();
                            }
                            else
                            {
                                vista.MostrarMensaje("No se ha configurado el representante de la unidad operativa.", ETipoMensajeIU.ADVERTENCIA);
                                vista.Representante = string.Empty;
                            }

                            if (configuracion.PorcentajePenalizacion != null)
                            {
                                vista.PorcentajePenalizacion = configuracion.PorcentajePenalizacion;
                            }
                            else
                            {
                                vista.MostrarMensaje("No se ha configurado el porcentaje de penalización en la unidad operativa.", ETipoMensajeIU.ADVERTENCIA);
                                vista.PorcentajePenalizacion = null;
                            }
                        }
                        else
                        {
                            vista.MostrarMensaje("No se ha configurado la unidad operativa.", ETipoMensajeIU.ADVERTENCIA);
                            vista.Representante = string.Empty;
                        }
                    }
                    else
                    {
                        vista.MostrarMensaje("No se ha configurado la unidad operativa.", ETipoMensajeIU.ADVERTENCIA);
                        vista.Representante = string.Empty;
                    }
                }
                else
                {
                    vista.MostrarMensaje("No se ha configurado el identificador del Modulo.", ETipoMensajeIU.ADVERTENCIA);
                    vista.Representante = string.Empty;
                }
            }
            catch (Exception ex)
            {
                vista.Representante = string.Empty;
                throw new Exception(NombreClase + ".MostrarRepresentante: " + ex.Message);
            }
        }