/// <summary> /// Inicializa la Vista /// </summary> /// <param name="unidad">Unidad a Cargar en la Vista</param> /// <param name="díasRenta">Duración en días del contrato</param> /// <param name="codigoMoneda">Código de la moneda</param> public void Inicializar(UnidadBO unidad, int?díasRenta, string codigoMoneda) { vista.UnidadOperativaID = unidad.Sucursal.UnidadOperativa.Id; vista.CodigoMoneda = codigoMoneda; Inicializar(); DatosAInterfazUsuario(unidad); }
private void EstablecerDatosNavegacion(object paqueteNavegacion) { Hashtable parameters = new Hashtable(); try { if (paqueteNavegacion == null) { throw new Exception("Se esperaba un objeto en la navegación. No se puede identificar qué acta de nacimiento se desea consultar."); } if (!(paqueteNavegacion is BO.UnidadBO)) { throw new Exception("Se esperaba una Unidad de Idealease."); } UnidadBO bo = (BO.UnidadBO)paqueteNavegacion; #region SC0006 - Adición de datos de siniestro parameters["UnidadBO"] = bo; parameters["SiniestroUnidadBO"] = this.RecuperarHistorialSiniestro(bo); this.DatoAInterfazUsuario(parameters); #endregion } catch (Exception ex) { #region SC0006 - Adición de datos de siniestro parameters["UnidadBO"] = new BO.UnidadBO(); this.DatoAInterfazUsuario(parameters); #endregion throw new Exception(this.nombreClase + ".EstablecerDatosNavegacion: " + ex.Message); } }
/// <summary> /// Devuelve un objeto de negocio a partir de la información de la vista /// </summary> /// <returns>BO con la información a editar</returns> private UnidadBO InterfazUsuarioADato() { var bo = new UnidadBO((UnidadBO)this.vista.ObjetoEdicion); bo.Sucursal.Id = this.vista.SucursalDestinoID.HasValue ? (int?)this.vista.SucursalDestinoID.Value : null; bo.Sucursal.Nombre = !string.IsNullOrEmpty(this.vista.NombreSucursalDestino) && !string.IsNullOrWhiteSpace(this.vista.NombreSucursalDestino) ? this.vista.NombreSucursalDestino : string.Empty; if (bo.EquiposAliados != null) { if (bo.EquiposAliados.Count > 0) { foreach (var aliado in bo.EquiposAliados) { if (aliado.Sucursal == null) { aliado.Sucursal = new SucursalBO(); } aliado.Sucursal.Id = this.vista.SucursalDestinoID; aliado.UUA = this.vista.UsuarioID; aliado.FUA = DateTime.Now; } } } bo.UUA = this.vista.UsuarioID; bo.FUA = DateTime.Now; return(bo); }
/// <summary> /// Inicializa la Vista /// </summary> /// <param name="unidad">Unidad a Cargar en la Vista</param> /// <param name="PlazoAnios">Plazo del Contrato en Años</param> public void Inicializar(UnidadBO unidad, int?PlazoAnios) { Inicializar(); vista.PlazoAnio = PlazoAnios; vista.OpcionCompra = false; vista.UnidadOperativaID = unidad.Sucursal.UnidadOperativa.Id; vista.ImporteCompra = null; DatosAInterfazUsuario(unidad); }
/// <summary> /// Convierte el Mantenimiento Unidad Idealease en un diccionario de datos. /// </summary> /// <param name="seleccionado">El Mantenimiento Unidad Idealease seleccionado.</param> /// <returns>Un nuevo diccionario de datos.</returns> private Dictionary <string, string> getMantenimientoUnidadToHash(MantenimientoUnidadBO seleccionado) { Dictionary <string, string> datos = new Dictionary <string, string>(); BPMO.SDNI.Equipos.BO.UnidadBO unidad = seleccionado.IngresoUnidad.Unidad; datos.Add("id", seleccionado.MantenimientoUnidadId.ToString()); datos.Add("numeroSerie", unidad.NumeroSerie); datos.Add("numeroEconomico", unidad.NumeroEconomico); datos.Add("modelo", unidad.Modelo.Nombre); datos.Add("cliente", unidad.Cliente.NombreCompleto); datos.Add("kilometraje", seleccionado.KilometrajeEntrada.ToString()); datos.Add("horometro", seleccionado.HorasEntrada.ToString()); datos.Add("totalCombustible", seleccionado.CombustibleTotal.ToString()); datos.Add("sucursal", unidad.Sucursal.Nombre); datos.Add("taller", seleccionado.Taller.Nombre); datos.Add("combustibleEntrada", seleccionado.CombustibleEntrada.ToString()); datos.Add("combustibleSalida", seleccionado.CombustibleSalida.ToString()); if (seleccionado.TipoServicio != null && seleccionado.TipoServicio.Id != null && seleccionado.TipoServicio.Id > 0) { switch (seleccionado.TipoServicio.Id) { case (int)ETipoMantenimientoIdealease.CORRECTIVO: datos.Add("tipoServicio", "Correctivo"); datos.Add("tipoMantenimiento", "CORRECTIVO"); break; case (int)ETipoMantenimientoIdealease.PREVENTIVO: datos.Add("tipoServicio", "Preventivo"); datos.Add("tipoMantenimiento", seleccionado.TipoMantenimiento.ToString()); break; } } else { datos.Add("tipoServicio", ""); datos.Add("tipoMantenimiento", seleccionado.TipoMantenimiento.ToString()); } datos.Add("controlista", seleccionado.IngresoUnidad.Controlista.Nombre); datos.Add("operador", seleccionado.IngresoUnidad.Operador); datos.Add("inventario", seleccionado.Inventario); datos.Add("falla", seleccionado.DescripcionFalla); datos.Add("codigosFalla", seleccionado.CodigosFalla); datos.Add("observaciones", seleccionado.IngresoUnidad.ObservacionesOperador); datos.Add("fechaApertura", seleccionado.FechaArranque.ToString()); datos.Add("fechaCierre", seleccionado.FechaSalida.ToString()); return(datos); }
/// <summary> /// Establece una nueva instancia de la Unidad E-Lider seleccionada, el tipo de Unidad E-Lider y la lista de Mantenimientos Unidad Idealease encontradas. /// </summary> private void IniciarVariablesSession() { if (Session["esUnidad"] == null) { Session["esUnidad"] = true; } if (Session["unidadEdicionEncontrada"] == null) { Session["unidadEdicionEncontrada"] = new BPMO.SDNI.Equipos.BO.UnidadBO(); } if (Session["listaEdicionOrdenesServicio"] == null) { Session["listaEdicionOrdenesServicio"] = new List <MantenimientoUnidadBO>(); } }
/// <summary> /// Obtiene la Unidad con sus datos completos /// </summary> /// <param name="unidad"></param> /// <returns></returns> private UnidadBO ObtenerUnidad(UnidadBO unidad) { if (unidad != null && (unidad.UnidadID != null)) { var unidadBR = new UnidadBR(); return(unidadBR .ConsultarCompleto(dataContext, new UnidadBO() { UnidadID = unidad.UnidadID }, true) .FirstOrDefault()); } throw new Exception("Se requiere proporcionar una Unidad para desplegar su información."); }
private object InterfazUsuarioADato() { UnidadBO bo = new UnidadBO(); if (this.vista.UltimoObjeto != null) { bo = new UnidadBO((UnidadBO)this.vista.UltimoObjeto); } bo.EstatusActual = EEstatusUnidad.Disponible; bo.UUA = this.vista.UsuarioID; bo.FUA = DateTime.Now; return(bo); }
/// <summary> /// Obtiene la Unidad con sus datos completos /// </summary> /// <param name="unidad"></param> /// <returns></returns> private UnidadBO ObtenerUnidad(UnidadBO unidad) { if (unidad != null && (unidad.UnidadID != null || unidad.EquipoID != null)) { var unidadBR = new UnidadBR(); List <UnidadBO> listado = unidadBR.ConsultarCompleto(dataContext, unidad, true); UnidadBO resultado = listado.Find( unid => unidad.UnidadID == unid.UnidadID && unid.EquipoID == unidad.EquipoID); return(resultado); } throw new Exception("Se requiere proporcionar una Unidad para desplegar su información."); }
/// <summary> /// Despliega los datos de la unidad a la interfaz /// </summary> /// <param name="unidad"></param> private void DatosAInterfazUsuario(UnidadBO unidad) { UnidadBO consultada = ObtenerUnidad(unidad); if (consultada == null) { throw new Exception("No se ha proporcionado una unidad a agregar"); } vista.UnidadID = consultada.UnidadID; vista.EquipoID = consultada.EquipoID; vista.VIN = !string.IsNullOrEmpty(consultada.NumeroSerie) ? consultada.NumeroSerie : string.Empty; vista.NumeroEconocimico = !string.IsNullOrEmpty(consultada.NumeroEconomico) ? consultada.NumeroEconomico : string.Empty; vista.Anio = consultada.Anio; if (consultada.Modelo == null) { consultada.Modelo = new ModeloBO(); } vista.Modelo = consultada.Modelo.Nombre; if (consultada.CaracteristicasUnidad != null) { vista.PBC = consultada.CaracteristicasUnidad.PBCMaximoRecomendado; vista.PBV = consultada.CaracteristicasUnidad.PBVMaximoRecomendado; } if (consultada.Mediciones != null && consultada.Mediciones.Odometros != null) { int?primerOdometroID = consultada.Mediciones.Odometros.Min(o => o.OdometroID); if (primerOdometroID != null) { OdometroBO odometro = consultada.Mediciones.Odometros.Find(odo => odo.OdometroID == primerOdometroID); if (odometro != null) { vista.KmInicial = odometro.KilometrajeInicio; } } } vista.ListadoEquiposAliados = consultada.EquiposAliados; }
/// <summary> /// Crea y obtiene el Filtro del Mantenimiento Unidad Idealease por medio de la Unidad seleccionada, para realizar la búsqueda de los /// Mantenimientos Unidad Idealease. /// </summary> /// <param name="unidadEncontrada">La Unidad seleccionada.</param> /// <returns>El filtro del Mantenimiento Unidad Idealease.</returns> private MantenimientoUnidadBO getFiltroMatenimientoUnidadBO(BPMO.SDNI.Equipos.BO.UnidadBO unidadEncontrada) { MantenimientoUnidadBO filtroMantenimiento = new MantenimientoUnidadBO() { Activo = true, IngresoUnidad = new IngresoUnidadBO() { Unidad = new BPMO.SDNI.Equipos.BO.UnidadBO() { UnidadID = unidadEncontrada.UnidadID } } }; return(filtroMantenimiento); }
/// <summary> /// Crea y obtiene un nuevo Filtro de la Unidad E-Lider por medio del Modelo seleccionado, el Número de Serie y el Número Económico, para /// realizar la búsqueda de las Unidades E-Lider. /// </summary> /// <returns>El filtro de la Unidad E-Lider.</returns> private BPMO.SDNI.Equipos.BO.UnidadBO getFiltroUnidadPorModelo() { BPMO.SDNI.Equipos.BO.UnidadBO unidad = new BPMO.SDNI.Equipos.BO.UnidadBO(); if (vista.ModeloSeleccionado.Id != null) { unidad.Modelo = vista.ModeloSeleccionado; } if (vista.NumeroVIN != null && vista.NumeroVIN.Trim() != null && !vista.NumeroVIN.Equals("")) { unidad.NumeroSerie = vista.NumeroVIN; } if (vista.NumeroEconomico != null && vista.NumeroEconomico != null && !vista.NumeroEconomico.Equals("")) { unidad.NumeroEconomico = vista.NumeroEconomico; } return(unidad); }
/// <summary> /// Devuelve un objeto de negocio a partir de la información de la vista /// </summary> /// <returns>BO con la información a editar</returns> private UnidadBO InterfazUsuarioADato() { var bo = new UnidadBO((UnidadBO)this.vista.ObjetoEdicion); if ((EArea)bo.Area == EArea.Seminuevos) { bo.EstatusActual = EEstatusUnidad.Seminuevo; } else { bo.EstatusActual = EEstatusUnidad.Disponible; } bo.UUA = this.vista.UsuarioID; bo.FUA = DateTime.Now; return(bo); }
/// <summary> /// Realiza la búsqueda de Mantenimientos Unidades Idealease por el Modelo seleccionado. /// </summary> /// <returns>Retorna True si encontro resultados, en caso contrario retorna False.</returns> private bool BuscarPorUnidad() { bool mantenimientoEncontrado = true; BPMO.SDNI.Equipos.BR.UnidadBR ctrlUnidad = new BPMO.SDNI.Equipos.BR.UnidadBR(); BPMO.SDNI.Equipos.BO.UnidadBO unidad = new BPMO.SDNI.Equipos.BO.UnidadBO(); List <BPMO.SDNI.Equipos.BO.UnidadBO> unidadesEncontradas = ctrlUnidad.ConsultarUnidadBOPorModelo(dataContext, getFiltroUnidadPorModelo()); if (unidadesEncontradas.Count > 0) { List <MantenimientoUnidadBO> nuevaLista = new List <MantenimientoUnidadBO>(); foreach (BPMO.SDNI.Equipos.BO.UnidadBO unidadEncontrada in unidadesEncontradas) { List <MantenimientoUnidadBO> resultMantenimientos = ctrlMantenimientoUnidadIdealease.Consultar(dataContext, getFiltroMatenimientoUnidadBO(unidadEncontrada)); if (resultMantenimientos != null && resultMantenimientos.Count > 0) { foreach (MantenimientoUnidadBO mantenimiento in resultMantenimientos) { try { if (mantenimiento.OrdenServicio.Id != null) { OrdenServicioBO ordenServicio = FacadeBR.ConsultarOrdenServicio(dataContext, mantenimiento.OrdenServicio).FirstOrDefault(); if (ordenServicio != null) { mantenimiento.OrdenServicio = ordenServicio; mantenimiento.IngresoUnidad.Unidad = unidadEncontrada; nuevaLista.Add(mantenimiento); } } } catch (Exception e) { } } } } mantenimientoEncontrado = nuevaLista.Count > 0; this.vista.MantenimientosUnidad = nuevaLista; this.vista.CargarListaMantenimientos(); } else { mantenimientoEncontrado = false; } return(mantenimientoEncontrado); }
/// <summary> /// Construye el diccionario de datos de los Mantenimientos Idealease encontrados. /// </summary> public void CargarListaMantenimientos() { DataSet list = new DataSet(); DataTable table = new DataTable(); table.Columns.Add("NumeroSerie"); table.Columns.Add("NumeroEconomico"); table.Columns.Add("Modelo"); table.Columns.Add("OrdenServicio"); string numeroSerie = "", numeroEconomico = "", modelo = "", ordenServicio = ""; if (this.EsUnidad) { foreach (MantenimientoUnidadBO mantenimiento in this.MantenimientosUnidad) { BPMO.SDNI.Equipos.BO.UnidadBO unidad = mantenimiento.IngresoUnidad.Unidad; numeroSerie = unidad.NumeroSerie != null ? unidad.NumeroSerie : ""; numeroEconomico = unidad.NumeroEconomico != null ? unidad.NumeroEconomico : ""; modelo = unidad.Modelo != null && unidad.Modelo.Nombre != null ? unidad.Modelo.Nombre : ""; ordenServicio = mantenimiento.OrdenServicio.Id != null ? ((int)mantenimiento.OrdenServicio.Id).ToString() : ""; DataRow row = table.NewRow(); row.ItemArray = new object[] { numeroSerie, numeroEconomico, modelo, ordenServicio }; table.Rows.Add(row); } } else { foreach (MantenimientoEquipoAliadoBO mantenimiento in this.MantenimientosEquipoAliado) { EquipoAliadoBO equipoAliado = mantenimiento.IngresoEquipoAliado.EquipoAliado; numeroSerie = equipoAliado.NumeroSerie != null ? equipoAliado.NumeroSerie : ""; numeroEconomico = ""; modelo = equipoAliado.Modelo != null && equipoAliado.Modelo.Nombre != null ? equipoAliado.Modelo.Nombre : ""; ordenServicio = mantenimiento.OrdenServicio.Id != null ? ((int)mantenimiento.OrdenServicio.Id).ToString() : ""; DataRow row = table.NewRow(); row.ItemArray = new object[] { numeroSerie, numeroEconomico, modelo, ordenServicio }; table.Rows.Add(row); } } list.Tables.Add(table); this.DataSource = list; this.LoadDataSource(); }
/// <summary> /// Devuelve un objeto de negocio a partir de la información de la vista /// </summary> /// <returns>BO con la información a editar</returns> private UnidadBO InterfazUsuarioADato() { var bo = new UnidadBO((UnidadBO)this.vista.ObjetoEdicion); #region SC0006 - Adición de estatus de siniestro cuando se marca que es una baja por siniestro bo.EstatusActual = this.vista.Siniestro ? EEstatusUnidad.Siniestro : EEstatusUnidad.Baja; #endregion bo.Sucursal.Id = this.vista.SucursalActualID; #region Agregar los documentos adjuntos bo.Adjuntos = this.presentadorDocumentos.Vista.NuevosArchivos; #endregion //bo.UUA = this.vista.UsuarioID; bo.FUA = DateTime.Now; return(bo); }
private List <SiniestroUnidadBO> RecuperarHistorialSiniestro(UnidadBO bo) { if (bo.UnidadID.HasValue) { SiniestroUnidadBR SiniestroUnidadBR = new SiniestroUnidadBR(); HistorialBR historialBR = new HistorialBR(); HistorialBOF filter = new HistorialBOF { Unidad = new UnidadBO { UnidadID = bo.UnidadID }, Movimiento = EMovimiento.BAJA_DE_LA_FLOTA_POR_SINIESTRO }; List <HistorialBOF> historial = historialBR.ConsultarCompleto(this.dctx, filter); return(SiniestroUnidadBR.ConsultarCompleto(this.dctx, historial.Cast <HistorialBO>().ToList())); } return(null); }
/// <summary> /// Edita la unidad /// </summary> private void Editar() { //Se obtiene la información del contrato a partir de la vista var bo = (UnidadBO)this.InterfazUsuarioADato(); //Se crea el objeto de seguridad UsuarioBO usuario = new UsuarioBO() { Id = this.vista.UsuarioID }; AdscripcionBO adscripcion = new AdscripcionBO() { UnidadOperativa = new UnidadOperativaBO() { Id = this.vista.UnidadOperativaID } }; SeguridadBO seguridadBO = new SeguridadBO(Guid.Empty, usuario, adscripcion); //Se actualiza en la base de datos var mnj = new StringBuilder(string.Format("sucursal {0}, Empresa {1}. {2}", this.vista.SucursalActualNombre, this.vista.EmpresaActualNombre, Environment.NewLine)); mnj.Append(this.vista.Observaciones); UnidadBO unidadBO = (UnidadBO)this.vista.UltimoObjeto; #region SC0006 - Adición de flujo cuando se activa una unidad que estaba en estatus de siniestro IDictionary parameters = new Hashtable(); parameters["Observaciones"] = mnj.ToString(); if (unidadBO.EstatusActual == EEstatusUnidad.Siniestro) { this.controlador.RealizarReactivacionSiniestroUnidadFlota(dctx, bo, unidadBO, parameters, seguridadBO); } else { this.controlador.RealizarReactivacionUnidadFlota(dctx, bo, unidadBO, parameters, seguridadBO); } #endregion }
/// <summary> /// Consulta el elemento en la flota correspondiente a la unidad /// </summary> /// <param name="unidad">Unidad de la que se desea obtener la inforamción</param> /// <returns>Elemento de la flota que corresponde a la unidad</returns> private ElementoFlotaBOF ObtenerElemento(UnidadBO unidad) { //Se consulta la información del contrato FlotaBOF bo = new FlotaBOF { Unidad = unidad }; SeguimientoFlotaBR seguimientoBR = new SeguimientoFlotaBR(); List <ElementoFlotaBOF> lst = seguimientoBR.ConsultarSeguimientoFlotaCompleto(this.dctx, bo); 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."); } return(lst[0]); }
/// <summary> /// Realiza la búsqueda del Mantenimiento Unidad Idealease por la Orden de Servicio E-Lider. Obtiene los Mantenimientos Equipos Aliados Idealease /// del Mantenimiento Unidad Idealease. /// </summary> /// <param name="ordenServicioElider">La Orden de Servicio E-Lider</param> /// <returns>Retorna True si encontró resultados, en caso contrario retorna False.</returns> private bool BuscarUnidadPorOrdenElider(OrdenServicioBO ordenServicioElider) { Boolean encontrado = false; MantenimientoUnidadBO filtroMantenimientoUnidadIdealease = new MantenimientoUnidadBO() { OrdenServicio = ordenServicioElider }; MantenimientoUnidadBO mantenimientoUnidadIdealease = ctrlMantenimientoUnidad.Consultar(dataContext, filtroMantenimientoUnidadIdealease).FirstOrDefault(); if (mantenimientoUnidadIdealease != null && mantenimientoUnidadIdealease.MantenimientoUnidadId != null) { BPMO.SDNI.Equipos.BO.UnidadBO filtroUnidadIdealease = new BPMO.SDNI.Equipos.BO.UnidadBO() { UnidadID = mantenimientoUnidadIdealease.IngresoUnidad.Unidad.UnidadID }; BPMO.SDNI.Equipos.BR.UnidadBR ctrlUnidadIdealease = new BPMO.SDNI.Equipos.BR.UnidadBR(); BPMO.SDNI.Equipos.BO.UnidadBO unidadIdealease = ctrlUnidadIdealease.Consultar(dataContext, filtroUnidadIdealease).FirstOrDefault(); if (unidadIdealease != null && unidadIdealease.UnidadID != null) { if (unidadIdealease.Modelo == null || unidadIdealease.Modelo.Id == null) { BPMO.SDNI.Equipos.BO.UnidadBO unidadCompleta = new BPMO.SDNI.Equipos.BO.UnidadBO(unidadIdealease.ActaNacimiento); unidadIdealease.Modelo = unidadCompleta.Modelo; } mantenimientoUnidadIdealease.IngresoUnidad.Unidad = unidadIdealease; mantenimientoUnidadIdealease.OrdenServicio = ordenServicioElider; vista.MantenimientosUnidad = new List <MantenimientoUnidadBO>(); vista.MantenimientosUnidad.Add(mantenimientoUnidadIdealease); encontrado = true; } } return(encontrado); }
/// <summary> /// Obtiene la unidad que deseas editar /// </summary> /// <param name="unidadAnterior">Unidad que se desea editar</param> /// <returns>Unidad Completa para su edicion</returns> private UnidadBO ObtenerUnidad(UnidadBO unidadAnterior) { var obj = unidadAnterior; UnidadBR unidadBR = new UnidadBR(); //Consultamos el objeto var unidades = unidadBR.ConsultarCompleto(dctx, obj, true); //Limpiamso la instancia del objeto obj = null; //Validamos que realmente hay una unidad para su edición if (!ReferenceEquals(unidades, null)) { if (unidades.Count > 0) { obj = unidades[0]; } } //Retornamos el objeto return(obj); }
private UnidadBO ObtenerUnidad(UnidadBO boAnterior) { UnidadBO unidadBO = boAnterior; UnidadBR unidadBR = new UnidadBR(); //Se consulta la unidad en base al ultimo objeto List <UnidadBO> unidades = unidadBR.ConsultarCompleto(dctx, unidadBO, true); //Limpiamos la instancia del objeto unidadBO = null; //Validamos que realmente hay una unidad para su edición if (!ReferenceEquals(unidades, null)) { if (unidades.Count > 0) { unidadBO = unidades[0]; } } //Retornamos el objeto return(unidadBO); }
/// <summary> /// Devuelve un objeto de negocio a partir de la información de la vista /// </summary> /// <returns>BO con la información a editar</returns> private UnidadBO InterfazUsuarioADato() { var bo = new UnidadBO((UnidadBO)this.vista.ObjetoEdicion); if (this.vista.EquiposAliados != null) { var equipos = this.vista.EquiposAliados.ConvertAll(x => (EquipoAliadoBO)x); if (this.vista.EquiposAliados.Count > 0) { foreach (var aliado in equipos) { aliado.UUA = this.vista.UsuarioID; aliado.FUA = DateTime.Now; } } bo.EquiposAliados = null; bo.EquiposAliados = equipos; } bo.UUA = this.vista.UsuarioID; bo.FUA = DateTime.Now; return(bo); }
/// <summary> /// Prepara la vista para la reasignacion de la unidad /// </summary> public void PrepararEdicion() { try { //Obtenemos el paquete correspondiente al contrato a editar var unidad = this.vista.ObtenerPaqueteNavegacion("UnidadExpedienteBO"); //Validaciones iniciales if (ReferenceEquals(unidad, null)) { throw new Exception("Se esperaba un objeto en la navegación. No fue posible identificar la unidad que se desea mover."); } if (!(unidad is UnidadBO)) { throw new Exception("El paquete recuperado no corresponde a una unidad, verifique su información."); } var unidadAnterior = new UnidadBO((UnidadBO)unidad); var unidadBase = new ElementoFlotaBOF { Unidad = new UnidadBO() }; //Eliminamos el paquete de navegación this.vista.LimpiarPaqueteNavegacion("UnidadExpedienteBO"); //Consultamos la unidad para el último objeto unidadAnterior = this.ObtenerUnidad(unidadAnterior); this.vista.UltimoObjeto = unidadAnterior; //Consultamos la unidad para el elemento a editar unidadBase.Unidad.UnidadID = unidadAnterior.UnidadID; unidadBase = this.ObtenerElemento(unidadBase.Unidad); if (unidadBase == null) { unidadBase = new ElementoFlotaBOF(); } if (unidadBase != null && unidadBase.Unidad == null) { unidadBase.Unidad = new UnidadBO(); } //Cargamos el objeto a edición this.vista.ObjetoEdicion = unidadBase.Unidad; if (!unidadBase.Unidad.EstatusActual.HasValue) { throw new Exception("El estatus de la unidad no fue recuperado, para continuar con la reactivación es necesario especificar el estatus actual de la unidad."); } //Validar estatus de acuerdo a regla if (!unidadAnterior.ValidarCambioEstatus(unidadBase.Unidad.EstatusActual)) { string mnj = "No se puede cambiar el estatus de la unidad de " + (unidadAnterior.EstatusActual != null ? unidadAnterior.EstatusActual.ToString() : "") + " a " + (unidadBase.Unidad.EstatusActual != null ? unidadBase.Unidad.EstatusActual.ToString() : ""); this.vista.PermitirRegistrar(false); this.vista.MostrarMensaje(mnj, ETipoMensajeIU.ADVERTENCIA, null); } #region SC0009 - Adición de validación para estatus de siniestro if (unidadBase.Unidad.EstatusActual.Value != EEstatusUnidad.Baja && unidadBase.Unidad.EstatusActual.Value != EEstatusUnidad.Siniestro) { this.vista.PermitirRegistrar(false); this.vista.MostrarMensaje("No se puede reactivar la unidad, porque esta se encuentra en uso, verifique su información", ETipoMensajeIU.ADVERTENCIA, null); } #endregion //Desplegamos la unidad obtenida this.DatoAInterfazUsuario(unidadBase); this.EstablecerSeguridad(); } catch (Exception ex) { this.vista.PermitirRegistrar(false); throw new Exception(string.Format("{0}.PrepararEdicion:{1}{2}", nombreClase, Environment.NewLine, ex.Message)); } }
/// <summary> /// Realiza la baja de la unidad /// </summary> public void RealizarBajaUnidadFlota() { string s; if ((s = this.ValidarCamposRegistro()) != null) { this.vista.MostrarMensaje(s, ETipoMensajeIU.ADVERTENCIA, null); return; } //Editamos la unidad this.Editar(); //Redirigimos al detalle de la unidad this.vista.LimpiarSesion(); this.vista.LimpiarPaqueteNavegacion("UnidadExpedienteBO"); var unidadID = this.vista.UnidadID; //Se envía los datos de la interfaz al diccionario del reporte //Se obtiene los Datos para el reporte. DataSet DsBajas = new DataSet(); DataTable table = DsBajas.Tables["DatosBaja"]; UnidadBO oBajas = new UnidadBO() { UnidadID = unidadID, UUA = this.vista.UsuarioID }; string Empresa = this.vista.EmpresaActualNombre; bool siniestro = this.vista.Siniestro; string Tipo = this.vista.TipoUnidadNombre; int? IdUsuario = this.vista.UsuarioID; int?ModuloID = this.vista.ModuloID; Dictionary <string, Object> datos = this.controlador.ObtenerDatosReporte(dctx, oBajas, unidadID, ModuloID, Empresa, siniestro, Tipo, IdUsuario); #region Asignar la Unidad if (datos.ContainsKey("Unidad") && datos["Unidad"] != null) { oBajas = (UnidadBO)datos["Unidad"]; } #endregion #region Obtener el folio del reporte ConsultarFolioDA consultarFolio = new ConsultarFolioDA(); InsertarFolioDAO insertarFolio = new InsertarFolioDAO(); int folio = 1; string serie = "AF"; DataSet dsFolio = new DataSet(); dsFolio = consultarFolio.Action(dctx, oBajas.Sucursal.Id, ETipoFoliador.Baja_Unidad); if (dsFolio.Tables.Contains("Folios") && dsFolio.Tables["Folios"].Rows.Count > 0) { folio = dsFolio.Tables["Folios"].Rows[0].Field <int>("Folio") + 1; AuditoriaBO auditoriaBO = new AuditoriaBO { FC = DateTime.Now, FUA = DateTime.Now, UC = this.vista.UsuarioID, UUA = this.vista.UsuarioID }; insertarFolio.Action(dctx, this.vista.SucursalActualID, serie, folio, ETipoFoliador.Baja_Unidad, auditoriaBO); } else { AuditoriaBO auditoriaBO = new AuditoriaBO { FC = DateTime.Now, FUA = DateTime.Now, UC = this.vista.UsuarioID, UUA = this.vista.UsuarioID }; insertarFolio.Action(dctx, this.vista.SucursalActualID, serie, folio, ETipoFoliador.Baja_Unidad, auditoriaBO); } datos.Add("Folio", serie + folio); #endregion datos.Add("CentroCostos", this.vista.CentroCostos.Trim().ToUpper()); datos.Add("UnidadBO", datos); this.vista.EstablecerPaqueteNavegacionReporte("BajaUnidad", datos); if (unidadID.HasValue) { this.vista.EstablecerPaqueteNavegacion("UnidadExpedienteBO", new UnidadBO { UnidadID = unidadID }); } #region Generar el correo para enviar a los autorizadores if (this.vista.UnidadOperativaID == (int)ETipoEmpresa.Generacion || this.vista.UnidadOperativaID == (int)ETipoEmpresa.Construccion || this.vista.UnidadOperativaID == (int)ETipoEmpresa.Equinova) { int moduloID = (int)this.vista.ModuloID; byte[] reporte = this.GenerarReporteAdjuntar(datos); Enum TipoAutorizacion = this.vista.UnidadOperativaID == (int)ETipoEmpresa.Generacion ? (Enum)ETipoAutorizacionGeneracion.Baja_Unidad : this.vista.UnidadOperativaID == (int)ETipoEmpresa.Construccion ? (Enum)ETipoAutorizacionConstruccion.Baja_Unidad : (Enum)ETipoAutorizacionEquinova.Baja_Unidad; AutorizadorBR oAutorizador = new AutorizadorBR(); #region Crear el Diccionario para reemplazar los valores del formato con los de la entrega. Dictionary <string, string> datosAutorizacion = new Dictionary <string, string>(); #endregion string error = string.Empty; try { oAutorizador.SolicitarAutorizacion(dctx, TipoAutorizacion, datosAutorizacion, moduloID, this.vista.UnidadOperativaID, this.vista.SucursalActualID, reporte); } catch (Exception ex) { error = ex.Message; } } #endregion this.vista.RedirigirADetalles(true); }
/// <summary> /// Despliega en la vista la inforamciónd e la unidad que se haya recuperado /// </summary> /// <param name="unidadBase">Unidad que se desea visualizar</param> private void DatoAInterfazUsuario(ElementoFlotaBOF unidadBase) { var elemento = unidadBase; #region Datos Elemento #region Nuevo elemento if (elemento == null) { elemento.Unidad = new UnidadBO { Cliente = new ClienteBO(), Sucursal = new SucursalBO { UnidadOperativa = new UnidadOperativaBO() }, Modelo = new ModeloBO { Marca = new MarcaBO() }, ActivoFijo = new ActivoFijoBO(), CaracteristicasUnidad = new CaracteristicasUnidadBO(), EquiposAliados = new List <EquipoAliadoBO>(), TipoEquipoServicio = new TipoUnidadBO(), }; elemento.Tramites = new List <TramiteBO>(); elemento.Contrato = new ContratoProxyBO { Cliente = new CuentaClienteIdealeaseBO() }; } #endregion #region Instanciar Propiedades if (elemento.Unidad == null) { elemento.Unidad = new UnidadBO { Cliente = new ClienteBO(), Sucursal = new SucursalBO { UnidadOperativa = new UnidadOperativaBO() }, Modelo = new ModeloBO { Marca = new MarcaBO() }, ActivoFijo = new ActivoFijoBO(), CaracteristicasUnidad = new CaracteristicasUnidadBO(), EquiposAliados = new List <EquipoAliadoBO>(), TipoEquipoServicio = new TipoUnidadBO(), }; } if (elemento.Unidad.Cliente == null) { elemento.Unidad.Cliente = new ClienteBO(); } if (elemento.Unidad.Sucursal == null) { elemento.Unidad.Sucursal = new SucursalBO { UnidadOperativa = new UnidadOperativaBO() } } ; if (elemento.Unidad.Sucursal.UnidadOperativa == null) { elemento.Unidad.Sucursal.UnidadOperativa = new UnidadOperativaBO(); } if (elemento.Unidad.Modelo == null) { elemento.Unidad.Modelo = new ModeloBO { Marca = new MarcaBO() } } ; if (elemento.Unidad.Modelo.Marca == null) { elemento.Unidad.Modelo.Marca = new MarcaBO(); } if (elemento.Unidad.ActivoFijo == null) { elemento.Unidad.ActivoFijo = new ActivoFijoBO(); } if (elemento.Unidad.CaracteristicasUnidad == null) { elemento.Unidad.CaracteristicasUnidad = new CaracteristicasUnidadBO(); } if (elemento.Unidad.EquiposAliados == null) { elemento.Unidad.EquiposAliados = new List <EquipoAliadoBO>(); } if (elemento.Unidad.TipoEquipoServicio == null) { elemento.Unidad.TipoEquipoServicio = new TipoUnidadBO(); } if (elemento.Tramites == null) { elemento.Tramites = new List <TramiteBO>(); } if (elemento.Contrato == null) { elemento.Contrato = new ContratoProxyBO { Cliente = new CuentaClienteIdealeaseBO() } } ; if (elemento.Contrato.Cliente == null) { elemento.Contrato.Cliente = new CuentaClienteIdealeaseBO(); } #endregion #region Información de la Unidad en barra this.vista.EstaDisponible = elemento.EstaDisponible; this.vista.EstaEnContrato = elemento.EstaEnRenta; this.vista.TieneEquipoAliado = elemento.TieneEquipoAliado; #region Tramites PlacaEstatalBO tPlacaEstatal = (PlacaEstatalBO)elemento.Tramites.Find(p => p.Tipo != null && p.Tipo == ETipoTramite.PLACA_ESTATAL); PlacaFederalBO tPlacaFederal = (PlacaFederalBO)elemento.Tramites.Find(p => p.Tipo != null && p.Tipo == ETipoTramite.PLACA_FEDERAL); this.vista.NumeroPlaca = tPlacaFederal != null ? tPlacaFederal.Numero : (tPlacaEstatal != null ? tPlacaEstatal.Numero : null); #endregion #endregion #endregion #region Datos Unidad var bo = unidadBase.Unidad; #region Unidad Nueva if (ReferenceEquals(bo, null)) { bo = new UnidadBO { ActivoFijo = new ActivoFijoBO(), EquiposAliados = new List <EquipoAliadoBO>(), Modelo = new ModeloBO { Marca = new MarcaBO() }, Sucursal = new SucursalBO { UnidadOperativa = new UnidadOperativaBO() }, TipoEquipoServicio = new TipoUnidadBO() }; } #endregion #region Instancias de propiedades if (bo.TipoEquipoServicio == null) { bo.TipoEquipoServicio = new TipoUnidadBO(); } if (bo.ActivoFijo == null) { bo.ActivoFijo = new ActivoFijoBO(); } if (bo.EquiposAliados == null) { bo.EquiposAliados = new List <EquipoAliadoBO>(); } if (bo.Modelo == null) { bo.Modelo = new ModeloBO { Marca = new MarcaBO() } } ; if (bo.Sucursal == null) { bo.Sucursal = new SucursalBO { UnidadOperativa = new UnidadOperativaBO() } } ; #endregion #region DetalleUnidad this.vista.UnidadID = bo.UnidadID; this.vista.NumeroSerie = bo.NumeroSerie; this.vista.ClaveActivoOracle = bo.ClaveActivoOracle; this.vista.LiderID = bo.IDLider; this.vista.NumeroEconomico = bo.NumeroEconomico; this.vista.TipoUnidadNombre = bo.TipoEquipoServicio.Nombre; this.vista.ModeloNombre = bo.Modelo.Nombre; this.vista.Anio = bo.Anio; this.vista.FechaCompra = bo.ActivoFijo.FechaFacturaCompra; this.vista.MontoFactura = bo.ActivoFijo.CostoSinIva; this.vista.FolioFactura = string.Empty; #endregion #region Info Sucursal bool completa = false; this.vista.SucursalActualID = bo.Sucursal.Id; this.vista.SucursalActualNombre = bo.Sucursal.Nombre; #region Empresa var empresa = new EmpresaBO(); if (bo.Sucursal.UnidadOperativa != null) { this.vista.EmpresaActualID = bo.Sucursal.UnidadOperativa.Id; if (bo.Sucursal.UnidadOperativa.Empresa == null) { #region Unidad Operativa //Obtener información de la Unidad Operativa List <UnidadOperativaBO> lstUO = FacadeBR.ConsultarUnidadOperativaCompleto(this.dctx, new UnidadOperativaBO() { Id = this.vista .UnidadOperativaID }); if (lstUO.Count <= 0) { throw new Exception( "No se encontró la información completa de la unidad operativa sobre la que trabaja."); } //Establecer la información de la Unidad Operativa if (lstUO[0].Empresa != null) { empresa = lstUO[0].Empresa; } #endregion this.vista.EmpresaActualNombre = empresa.Nombre; } else { if (!string.IsNullOrEmpty(bo.Sucursal.UnidadOperativa.Empresa.Nombre) && !string.IsNullOrWhiteSpace(bo.Sucursal.UnidadOperativa.Empresa.Nombre)) { this.vista.EmpresaActualNombre = bo.Sucursal.UnidadOperativa.Empresa.Nombre; } else { #region Unidad Operativa //Obtener información de la Unidad Operativa List <UnidadOperativaBO> lstUO = FacadeBR.ConsultarUnidadOperativaCompleto(this.dctx, new UnidadOperativaBO() { Id = this.vista .UnidadOperativaID }); if (lstUO.Count <= 0) { throw new Exception( "No se encontró la información completa de la unidad operativa sobre la que trabaja."); } //Establecer la información de la Unidad Operativa if (lstUO[0].Empresa != null) { empresa = lstUO[0].Empresa; } #endregion this.vista.EmpresaActualNombre = empresa.Nombre; } } } #endregion #region Domicilio Sucursal if (bo.Sucursal.DireccionesSucursal != null) { if (bo.Sucursal.DireccionesSucursal.Count > 0) { var direccionActual = bo.Sucursal.DireccionesSucursal.Find(p => p.Primaria != null && p.Primaria == true); if (direccionActual != null) { string dir = ""; if (!string.IsNullOrEmpty(direccionActual.Calle)) { dir += (direccionActual.Calle + " "); } if (!string.IsNullOrEmpty(direccionActual.Colonia)) { dir += (direccionActual.Colonia + " "); } if (!string.IsNullOrEmpty(direccionActual.CodigoPostal)) { dir += (direccionActual.CodigoPostal + " "); } if (direccionActual.Ubicacion != null) { if (direccionActual.Ubicacion.Municipio != null && !string.IsNullOrEmpty(direccionActual.Ubicacion.Municipio.Nombre)) { dir += (direccionActual.Ubicacion.Municipio.Nombre + " "); } if (direccionActual.Ubicacion.Ciudad != null && !string.IsNullOrEmpty(direccionActual.Ubicacion.Ciudad.Nombre)) { dir += (direccionActual.Ubicacion.Ciudad.Nombre + " "); } if (direccionActual.Ubicacion.Estado != null && !string.IsNullOrEmpty(direccionActual.Ubicacion.Estado.Nombre)) { dir += (direccionActual.Ubicacion.Estado.Nombre + " "); } if (direccionActual.Ubicacion.Pais != null && !string.IsNullOrEmpty(direccionActual.Ubicacion.Pais.Nombre)) { dir += (direccionActual.Ubicacion.Pais.Nombre + " "); } } if (dir != null && dir.Trim().CompareTo("") != 0) { this.vista.DomicilioSucursalActual = dir; completa = true; } else { this.vista.DomicilioSucursalActual = null; } } else { this.vista.DomicilioSucursalActual = null; } } else { this.vista.DomicilioSucursalActual = null; } } #endregion #region Consultar Completo para obtener la Dirección if (bo.Sucursal != null && bo.Sucursal.Id != null && !completa) { List <SucursalBO> lst = FacadeBR.ConsultarSucursalCompleto(this.dctx, bo.Sucursal); DireccionSucursalBO direccion = null; if (lst.Count > 0 && lst[0].DireccionesSucursal != null) { direccion = lst[0].DireccionesSucursal.Find(p => p.Primaria != null && p.Primaria == true); } if (direccion != null) { string dir = ""; if (!string.IsNullOrEmpty(direccion.Calle)) { dir += (direccion.Calle + " "); } if (!string.IsNullOrEmpty(direccion.Colonia)) { dir += (direccion.Colonia + " "); } if (!string.IsNullOrEmpty(direccion.CodigoPostal)) { dir += (direccion.CodigoPostal + " "); } if (direccion.Ubicacion != null) { if (direccion.Ubicacion.Municipio != null && !string.IsNullOrEmpty(direccion.Ubicacion.Municipio.Nombre)) { dir += (direccion.Ubicacion.Municipio.Nombre + " "); } if (direccion.Ubicacion.Ciudad != null && !string.IsNullOrEmpty(direccion.Ubicacion.Ciudad.Nombre)) { dir += (direccion.Ubicacion.Ciudad.Nombre + " "); } if (direccion.Ubicacion.Estado != null && !string.IsNullOrEmpty(direccion.Ubicacion.Estado.Nombre)) { dir += (direccion.Ubicacion.Estado.Nombre + " "); } if (direccion.Ubicacion.Pais != null && !string.IsNullOrEmpty(direccion.Ubicacion.Pais.Nombre)) { dir += (direccion.Ubicacion.Pais.Nombre + " "); } } if (dir != null && dir.Trim().CompareTo("") != 0) { this.vista.DomicilioSucursalActual = dir; completa = true; } else { this.vista.DomicilioSucursalActual = null; } } else { this.vista.DomicilioSucursalActual = null; } } else if (!completa) { this.vista.DomicilioSucursalActual = null; } #endregion #endregion #endregion }
private void DatoAInterfazUsuario(IDictionary parameters) { ArrendamientoBO boArrendamiento = new ArrendamientoBO(); if (!parameters.Contains("UnidadBO") || !(parameters["UnidadBO"] is UnidadBO)) { return; } UnidadBO bo = (UnidadBO)parameters["UnidadBO"]; #region Inicialización de Propiedades if (bo.ActivoFijo == null) { bo.ActivoFijo = new ActivoFijoBO(); } if (bo.CaracteristicasUnidad == null) { bo.CaracteristicasUnidad = new CaracteristicasUnidadBO(); } if (bo.CaracteristicasUnidad.Ejes == null) { bo.CaracteristicasUnidad.Ejes = new List <EjeBO>(); } if (bo.CaracteristicasUnidad.Motor == null) { bo.CaracteristicasUnidad.Motor = new MotorBO(); } if (bo.CaracteristicasUnidad.SistemaElectrico == null) { bo.CaracteristicasUnidad.SistemaElectrico = new SistemaElectricoBO(); } if (bo.CaracteristicasUnidad.Transmision == null) { bo.CaracteristicasUnidad.Transmision = new TransmisionBO(); } if (bo.Cliente == null) { bo.Cliente = new ClienteBO(); } if (bo.EquiposAliados == null) { bo.EquiposAliados = new List <EquipoAliadoBO>(); } if (bo.NumerosSerie == null) { bo.NumerosSerie = new List <NumeroSerieBO>(); } if (bo.Llantas == null) { bo.LimpiarLlantas(); } if (bo.Mediciones == null) { bo.Mediciones = new MedicionesBO(); } if (bo.Mediciones.Horometros == null) { bo.Mediciones.Horometros = new List <HorometroBO>(); } if (bo.Mediciones.Odometros == null) { bo.Mediciones.Odometros = new List <OdometroBO>(); } if (bo.Modelo == null) { bo.Modelo = new ModeloBO(); } if (bo.Modelo.Marca == null) { bo.Modelo.Marca = new MarcaBO(); } if (bo.Sucursal == null) { bo.Sucursal = new SucursalBO(); } if (bo.Sucursal.UnidadOperativa == null) { bo.Sucursal.UnidadOperativa = new UnidadOperativaBO(); } if (bo.TipoEquipoServicio == null) { bo.TipoEquipoServicio = new TipoUnidadBO(); } if (bo.Arrendamientos == null) { bo.Arrendamientos = new List <ArrendamientoBO>(); } if (bo.Pedimentos == null) { bo.Pedimentos = new List <ArchivoBO>(); } #endregion this.vista.EquipoID = bo.EquipoID; this.vista.UnidadID = bo.UnidadID; this.vista.NumeroSerie = bo.NumeroSerie; this.vista.NumerosSerie = bo.NumerosSerie; this.vista.ClaveActivoOracle = bo.ClaveActivoOracle; this.vista.LiderID = bo.IDLider; this.vista.Anio = bo.Anio; this.vista.ModeloNombre = bo.Modelo.Nombre; this.vista.ModeloId = bo.Modelo.Id; this.vista.MarcaId = bo.Modelo.Marca.Id; this.vista.NumeroEconomico = bo.NumeroEconomico; this.vista.TipoUnidadNombre = bo.TipoEquipoServicio.Nombre; this.vista.FechaCompra = bo.ActivoFijo.FechaFacturaCompra; this.vista.MontoFactura = bo.ActivoFijo.CostoSinIva; if (bo.Area != null) { ETipoEmpresa tipoEmpresa; tipoEmpresa = (ETipoEmpresa)this.vista.UnidadOperativaId; if (tipoEmpresa != null) { switch (tipoEmpresa) { case ETipoEmpresa.Construccion: EAreaConstruccion tipoRentaConstruccion = (EAreaConstruccion)bo.Area; this.vista.Area = tipoRentaConstruccion; if (tipoRentaConstruccion == EAreaConstruccion.RE) { boArrendamiento = bo.ObtenerArrendamientoVigente(); this.vista.ProveedorID = boArrendamiento.Proveedor.Id; //En lugar del propietario, va el proveedor id, el control debe de obtener la información. this.vista.OrdenCompraProveedor = boArrendamiento.NumeroOrdenCompra; this.vista.MontoArrendamiento = boArrendamiento.MontoArrendamiento; this.vista.CodigoMoneda = boArrendamiento.CodigoMoneda; this.vista.FechaInicioArrendamiento = boArrendamiento.FechaInicioArrendamiento; this.vista.FechaFinArrendamiento = boArrendamiento.FechaFinArrendamiento; this.vistaPagina1.OcultarControlesRE(true); } else { if ((tipoRentaConstruccion == EAreaConstruccion.RO || tipoRentaConstruccion == EAreaConstruccion.ROC) && bo.EstatusActual != null && bo.EstatusActual == EEstatusUnidad.Terminada) { this.vista.HabilitaBoton(false, "E"); this.vistaPagina1.OcultarControlesRE(false); } } this.vista.Cliente = bo.Cliente.Nombre; this.vista.ClienteId = bo.Cliente.Id; this.vista.SucursalNombre = bo.Sucursal.Nombre; this.vista.SucursalId = bo.Sucursal.Id; vistaPagina1.UnidadBloqueada = bo.EquipoBloqueado; this.vista.EntraMantenimiento = bo.EntraMantenimiento; this.vistaPagina1.EstablecerEntraMantenimeinto(); this.vista.Archivos = bo.ObtenerPedimento(); break; case ETipoEmpresa.Generacion: EAreaGeneracion tipoRentaGeneracion = (EAreaGeneracion)bo.Area; this.vista.Area = tipoRentaGeneracion; if (tipoRentaGeneracion == EAreaGeneracion.RE) { boArrendamiento = bo.ObtenerArrendamientoVigente(); this.vista.ProveedorID = boArrendamiento.Proveedor.Id; //En lugar del propietario, va el proveedor id, el control debe de obtener la información. this.vista.OrdenCompraProveedor = boArrendamiento.NumeroOrdenCompra; this.vista.MontoArrendamiento = boArrendamiento.MontoArrendamiento; this.vista.CodigoMoneda = boArrendamiento.CodigoMoneda; this.vista.FechaInicioArrendamiento = boArrendamiento.FechaInicioArrendamiento; this.vista.FechaFinArrendamiento = boArrendamiento.FechaFinArrendamiento; this.vistaPagina1.OcultarControlesRE(true); } else { if ((tipoRentaGeneracion == EAreaGeneracion.RO || tipoRentaGeneracion == EAreaGeneracion.ROC) && bo.EstatusActual != null && bo.EstatusActual == EEstatusUnidad.Terminada) { this.vista.HabilitaBoton(false, "E"); this.vistaPagina1.OcultarControlesRE(false); } } this.vista.Cliente = bo.Cliente.Nombre; this.vista.ClienteId = bo.Cliente.Id; this.vista.SucursalNombre = bo.Sucursal.Nombre; this.vista.SucursalId = bo.Sucursal.Id; vistaPagina1.UnidadBloqueada = bo.EquipoBloqueado; this.vista.EntraMantenimiento = bo.EntraMantenimiento; this.vistaPagina1.EstablecerEntraMantenimeinto(); this.vista.Archivos = bo.ObtenerPedimento(); break; case ETipoEmpresa.Equinova: EAreaEquinova tipoRentaEquinova = (EAreaEquinova)bo.Area; this.vista.Area = tipoRentaEquinova; if (tipoRentaEquinova == EAreaEquinova.RE) { boArrendamiento = bo.ObtenerArrendamientoVigente(); this.vista.ProveedorID = boArrendamiento.Proveedor.Id; //En lugar del propietario, va el proveedor id, el control debe de obtener la información. this.vista.OrdenCompraProveedor = boArrendamiento.NumeroOrdenCompra; this.vista.MontoArrendamiento = boArrendamiento.MontoArrendamiento; this.vista.CodigoMoneda = boArrendamiento.CodigoMoneda; this.vista.FechaInicioArrendamiento = boArrendamiento.FechaInicioArrendamiento; this.vista.FechaFinArrendamiento = boArrendamiento.FechaFinArrendamiento; this.vistaPagina1.OcultarControlesRE(true); } else { if ((tipoRentaEquinova == EAreaEquinova.RO || tipoRentaEquinova == EAreaEquinova.ROC) && bo.EstatusActual != null && bo.EstatusActual == EEstatusUnidad.Terminada) { this.vista.HabilitaBoton(false, "E"); this.vistaPagina1.OcultarControlesRE(false); } } this.vista.Cliente = bo.Cliente.Nombre; this.vista.ClienteId = bo.Cliente.Id; this.vista.SucursalNombre = bo.Sucursal.Nombre; this.vista.SucursalId = bo.Sucursal.Id; vistaPagina1.UnidadBloqueada = bo.EquipoBloqueado; this.vista.EntraMantenimiento = bo.EntraMantenimiento; this.vistaPagina1.EstablecerEntraMantenimeinto(); this.vista.Archivos = bo.ObtenerPedimento(); break; default: this.vista.Area = (EArea)bo.Area; this.vista.SucursalNombre = bo.Sucursal.Nombre; this.vista.SucursalId = bo.Sucursal.Id; this.vista.Cliente = bo.Cliente.Nombre; this.vista.ClienteId = bo.Cliente.Id; this.vista.FabricanteNombre = bo.Fabricante; vistaPagina1.UnidadBloqueada = bo.EquipoBloqueado; #region SC0002 this.vista.EntraMantenimiento = bo.EntraMantenimiento; this.vistaPagina1.EstablecerEntraMantenimeinto(); #endregion break; } } } this.vista.Propietario = bo.Propietario; //RQM 14150, datos técnicos, modificación de la visualización if (!this.vista.ValoresTabs.Contains("1")) { this.presentadorPagina2.AgregarHorometros(bo.Mediciones.Horometros); this.presentadorPagina2.AgregarOdometros(bo.Mediciones.Odometros); this.vista.CapacidadTanque = bo.CaracteristicasUnidad.CapacidadTanque; this.vista.RendimientoTanque = bo.CaracteristicasUnidad.RendimientoTanque; this.vista.PBCMaximoRecomendado = bo.CaracteristicasUnidad.PBCMaximoRecomendado; this.vista.PBVMaximoRecomendado = bo.CaracteristicasUnidad.PBVMaximoRecomendado; } //RQM 14150, números de serie, modificación de la visualización if (!this.vista.ValoresTabs.Contains("2")) { // this.presentadorPagina3.AgregarNumerosSerie(bo.NumerosSerie); //************************************************************ this.vista.Radiador = bo.CaracteristicasUnidad.Radiador; this.vista.PostEnfriador = bo.CaracteristicasUnidad.PostEnfriador; this.vista.SerieCompresorAire = bo.CaracteristicasUnidad.Motor.SerieCompresorAire; this.vista.SerieECM = bo.CaracteristicasUnidad.Motor.SerieECM; #region SC0030 this.vista.SerieMotor = bo.CaracteristicasUnidad.Motor.SerieMotor; #endregion this.vista.SerieTurboCargador = bo.CaracteristicasUnidad.Motor.SerieTurboCargador; this.vista.SerieAlternador = bo.CaracteristicasUnidad.SistemaElectrico.SerieAlternador; this.vista.SerieBaterias = bo.CaracteristicasUnidad.SistemaElectrico.SerieBaterias; this.vista.SerieMarcha = bo.CaracteristicasUnidad.SistemaElectrico.SerieMarcha; this.vista.TransmisionModelo = bo.CaracteristicasUnidad.Transmision.Modelo; this.vista.TransmisionSerie = bo.CaracteristicasUnidad.Transmision.Serie; EjeBO eje = bo.CaracteristicasUnidad.ObtenerEjePorPosicion(EPosicionEje.Delantero); if (eje != null) { this.vista.EjeDireccionModelo = eje.Modelo; this.vista.EjeDireccionSerie = eje.Serie; } eje = bo.CaracteristicasUnidad.ObtenerEjePorPosicion(EPosicionEje.TraseroDelantero); if (eje != null) { this.vista.EjeTraseroDelanteroModelo = eje.Modelo; this.vista.EjeTraseroDelanteroSerie = eje.Serie; } eje = bo.CaracteristicasUnidad.ObtenerEjePorPosicion(EPosicionEje.TraseroTrasero); if (eje != null) { this.vista.EjeTraseroTraseroModelo = eje.Modelo; this.vista.EjeTraseroTraseroSerie = eje.Serie; } } //RQM 14150, Llantas, modificación de la visualización if (!this.vista.ValoresTabs.Contains("3")) { this.vista.EnllantableID = bo.EnllantableID; this.vista.TipoEnllantable = (int)bo.TipoEnllantable; this.vista.DescripcionEnllantable = bo.DescripcionEnllantable; this.presentadorPagina4.AgregarLlantas(bo.ObtenerLlantas()); LlantaBO refaccion = bo.ObtenerRefaccion(); if (refaccion == null) { refaccion = new LlantaBO() { EsRefaccion = true } } ; if (refaccion.Auditoria == null) { refaccion.Auditoria = new AuditoriaBO(); } if (refaccion.Sucursal == null) { refaccion.Sucursal = new SucursalBO(); } this.vista.RefaccionSucursalID = refaccion.Sucursal.Id; this.vista.RefaccionSucursalNombre = refaccion.Sucursal.Nombre; this.vista.RefaccionID = refaccion.LlantaID; this.vista.RefaccionCodigo = refaccion.Codigo; this.vista.RefaccionMarca = refaccion.Marca; this.vista.RefaccionModelo = refaccion.Modelo; this.vista.RefaccionActivo = refaccion.Activo; this.vista.RefaccionFC = refaccion.Auditoria.FC; this.vista.RefaccionFUA = refaccion.Auditoria.FUA; this.vista.RefaccionMedida = refaccion.Medida; this.vista.RefaccionProfundidad = refaccion.Profundidad; this.vista.RefaccionRevitalizada = refaccion.Revitalizada; this.vista.RefaccionStock = refaccion.Stock; this.vista.RefaccionUC = refaccion.Auditoria.UC; this.vista.RefaccionUUA = refaccion.Auditoria.UUA; } //RQM 14150, Equipos Aliados, modificación de la visualización if (!this.vista.ValoresTabs.Contains("4")) { this.presentadorPagina5.AgregarEquiposAliado(bo.EquiposAliados); } this.vista.EstatusUnidad = bo.EstatusActual; if (bo.EstatusActual != null && bo.EstatusActual != EEstatusUnidad.NoDisponible) { this.vista.MostrarActaNacimientoOriginal(true); } else { this.vista.MostrarActaNacimientoOriginal(false); } //RQM 14150, tramites, modificación de la visualización this.presentadorPagina6.CargarTramites(bo.TramitableID, bo.TipoTramitable, bo.DescripcionTramitable); this.presentadorPagina7.DesplegarInformacion(bo); #region SC0006 - Adición de datos de siniestro List <SiniestroUnidadBO> historial = parameters.Contains("SiniestroUnidadBO") && parameters["SiniestroUnidadBO"] is List <SiniestroUnidadBO>?(List <SiniestroUnidadBO>)parameters["SiniestroUnidadBO"] : null; this.presentadorPagina7.DesplegarInformacionSiniestro(historial); #endregion this.presentadorActaOriginal.CargarActaNacimiento(bo.ActaNacimiento); }
private void EstablecerDatosNavegacion(object paqueteNavegacion) { try { if (paqueteNavegacion == null) { throw new Exception("Se esperaba un objeto en la navegación. No se puede identificar qué unidad desea dar de alta."); } if (!(paqueteNavegacion is UnidadBO)) { throw new Exception("Se esperaba una unidad."); } UnidadBO boAnterior = (UnidadBO)paqueteNavegacion; var unidadBase = new ElementoFlotaBOF { Unidad = new UnidadBO() }; this.vista.LimpiarPaqueteNavegacion("UnidadExpedienteBO"); boAnterior = this.ObtenerUnidad(boAnterior); this.vista.UltimoObjeto = boAnterior; //Consultamos la unidad para el elemento a editar unidadBase.Unidad.UnidadID = boAnterior.UnidadID; unidadBase = this.ObtenerElemento(unidadBase.Unidad); if (unidadBase == null) { unidadBase = new ElementoFlotaBOF(); } if (unidadBase != null && unidadBase.Unidad == null) { unidadBase.Unidad = new UnidadBO(); } if (!unidadBase.Unidad.EstatusActual.HasValue) { throw new Exception("El estatus de la unidad no fue recuperado, para continuar con la alta de la unidad es necesario especificar el estatus actual de la unidad."); } //Validar estatus de acuerdo a regla if (!boAnterior.ValidarCambioEstatus(unidadBase.Unidad.EstatusActual)) { string mnj = "No se puede cambiar el estatus de la unidad de " + (boAnterior.EstatusActual != null ? boAnterior.EstatusActual.ToString() : "") + " a " + (unidadBase.Unidad.EstatusActual != null ? unidadBase.Unidad.EstatusActual.ToString() : ""); this.vista.PermitirRegistrar(false); this.vista.MostrarMensaje(mnj, ETipoMensajeIU.ADVERTENCIA, null); } if ((unidadBase.Unidad.EstatusActual.Value != EEstatusUnidad.Terminada)) { this.vista.PermitirRegistrar(false); this.vista.MostrarMensaje("No se puede dar de alta la unidad, debido a que no cuenta con el estatus Terminada, verifique su información", ETipoMensajeIU.ADVERTENCIA, null); } this.DatoAInterfazUsuario(unidadBase); } catch (Exception ex) { this.DatoAInterfazUsuario(new UnidadBO()); this.vista.PermitirRegistrar(false); throw new Exception(this.nombreClase + ".EstablecerDatosNavegacion: " + 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; }
/// <summary> /// Despliega los datos de la unidad a la interfaz /// </summary> /// <param name="unidad"></param> private void DatosAInterfazUsuario(UnidadBO unidad) { UnidadBO consultada = ObtenerUnidad(unidad); #region Se obtiene la información completa de la unidad y sus trámites List <TramiteBO> lstTramites = new List <TramiteBO>(); if (consultada != null && (consultada.UnidadID != null || consultada.EquipoID != null)) { lstTramites = new TramiteBR().ConsultarCompleto(dataContext, new TramiteProxyBO() { Activo = true, Tramitable = consultada }, false); } #endregion if (consultada == null) { consultada = new Equipos.BO.UnidadBO(); } if (consultada.Modelo == null) { consultada.Modelo = new ModeloBO(); } if (consultada.Modelo.Marca == null) { consultada.Modelo.Marca = new MarcaBO(); } if (consultada.Sucursal == null) { consultada.Sucursal = new SucursalBO(); } if (consultada.CaracteristicasUnidad == null) { consultada.CaracteristicasUnidad = new CaracteristicasUnidadBO(); } if (consultada == null) { throw new Exception("No se ha proporcionado una unidad a agregar"); } vista.UnidadID = consultada.UnidadID; vista.EquipoID = consultada.EquipoID; vista.VIN = !string.IsNullOrEmpty(consultada.NumeroSerie) ? consultada.NumeroSerie : string.Empty; vista.NumeroEconocimico = !string.IsNullOrEmpty(consultada.NumeroEconomico) ? consultada.NumeroEconomico : string.Empty; vista.SucursalID = consultada.Sucursal.Id; vista.Sucursal = !string.IsNullOrEmpty(consultada.Sucursal.Nombre) ? consultada.Sucursal.Nombre : string.Empty; vista.ModeloID = consultada.Modelo.Id; vista.Modelo = consultada.Modelo.Nombre; vista.Marca = consultada.Modelo.Marca.Nombre; this.vista.UnidadCapacidadTanque = consultada.CombustibleConsumidoTotal; vista.Anio = consultada.Anio; //Información de los Trámites de la Unidad y Deducible TramiteBO tramite = null; #region Placa Estatal tramite = lstTramites.Find(p => p.Tipo != null && p.Tipo == ETipoTramite.PLACA_ESTATAL && p.Activo != null && p.Activo == true); if (tramite != null && tramite.Resultado != null && tramite.Resultado.Trim().CompareTo("") != 0) { this.vista.UnidadPlacaEstatal = tramite.Resultado; } else { this.vista.UnidadPlacaEstatal = null; } #endregion this.vista.EArea = consultada.Area; //Información de los Equipos Aliados de la Unidad DataTable dt = new DataTable(); dt.Columns.Add(new DataColumn("NumeroSerie")); dt.Columns.Add(new DataColumn("Anio")); dt.Columns.Add(new DataColumn("Dimensiones")); dt.Columns.Add(new DataColumn("PBV")); dt.Columns.Add(new DataColumn("PBC")); dt.Columns.Add(new DataColumn("Modelo")); if (consultada.EquiposAliados != null) { foreach (EquipoAliadoBO ea in consultada.EquiposAliados) { DataRow dr = dt.NewRow(); dr["NumeroSerie"] = ea.NumeroSerie; dr["Anio"] = ea.Anio; dr["Dimensiones"] = ea.Dimension; dr["PBV"] = ea.PBV; dr["PBC"] = ea.PBC; if (ea.Modelo != null) { dr["Modelo"] = ea.Modelo.Nombre; } dt.Rows.Add(dr); } } dt.AcceptChanges(); this.vista.EstablecerEquiposAliadoUnidad(dt); }