/// <summary>
        /// Ejecuta los comandos del grid
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void grdListadosVerificacion_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            int?lineaContratoPSLID = null;

            try {
                switch (e.CommandName.Trim().ToUpper())
                {
                case "DETALLES":
                    int?unidadID = (e.CommandArgument != null) ? (int?)Convert.ToInt32(e.CommandArgument) : null;
                    break;

                case "IMPRIMIR":
                    lineaContratoPSLID = (e.CommandArgument != null) ? (int?)Convert.ToInt32(e.CommandArgument) : null;
                    ListadoVerificacionBOF listadoVerificacion = (ListadoVerificacionBOF)this.Resultado
                                                                 .FirstOrDefault(p => { var lineaContratoPSLId = ((ListadoVerificacionBOF)p).LineaContratoPSLID;
                                                                                        return(lineaContratoPSLId != null && lineaContratoPSLId.Value == lineaContratoPSLID); });

                    this.presentador.ImprimirListadoVerificacion(listadoVerificacion, lineaContratoPSLID);
                    break;

                case "REGISTRAR":
                    lineaContratoPSLID = (e.CommandArgument != null) ? (int?)Convert.ToInt32(e.CommandArgument) : null;
                    if (lineaContratoPSLID != null)
                    {
                        var tipo =
                            (ListadoVerificacionBOF)this.Resultado.FirstOrDefault(
                                p =>
                        {
                            var lineaContratoPSLId = ((ListadoVerificacionBOF)p).LineaContratoPSLID;
                            return(lineaContratoPSLId != null && lineaContratoPSLId.Value == lineaContratoPSLID);
                        });

                        switch (tipo.TipoListado)
                        {
                        case ETipoListadoVerificacion.ENTREGA:
                            this.presentador.RedirigirARegistrarEntrega(tipo.ContratoID, lineaContratoPSLID);
                            break;

                        case ETipoListadoVerificacion.RECEPCION:
                            this.presentador.RedirigirARegistrarRecepcion(tipo.ContratoID, lineaContratoPSLID);
                            break;
                        }
                    }
                    break;

                case "PAGE":
                    break;

                default: {
                    MostrarMensaje("Comando no encontrado", ETipoMensajeIU.ERROR, "El comando no está especificado en el sistema");
                    break;
                }
                }
            } catch (Exception ex) {
                this.MostrarMensaje("Inconsistencia al intentar realizar una acción sobre un Check List", ETipoMensajeIU.ERROR, nombreClase + ".grdListadosVerificacion_RowCommand" + ex.Message);
            }
        }
        public void ImprimirListadoVerificacion(ListadoVerificacionBOF listado, int?lineaContratoID)
        {
            #region Obtener el Tipo de CheckList
            ETipoUnidad?tipoUnidad = null;
            switch (this.vista.UnidadOperativaID)
            {
            case (int)ETipoEmpresa.Construccion:
                if (((EAreaConstruccion)listado.Unidad.Area) == EAreaConstruccion.RO || ((EAreaConstruccion)listado.Unidad.Area) == EAreaConstruccion.ROC)
                {
                    tipoUnidad = controlador.ObtenerTipoUnidadPorClave(this.dctx, (listado.Unidad).TipoEquipoServicio.NombreCorto, listado.Unidad);
                }
                if (((EAreaConstruccion)listado.Unidad.Area) == EAreaConstruccion.RE)
                {
                    tipoUnidad = ETipoUnidad.LV_SUBARRENDADO;
                }
                break;

            case (int)ETipoEmpresa.Generacion:
            case (int)ETipoEmpresa.Equinova:
                tipoUnidad = ETipoUnidad.LV_ENTREGA_RECEPCION;
                break;

            default:
                throw new Exception("No es posible recuperar la información de la unidad necesaria para el registro del check list. Intente de nuevo por favor.");
            }
            #endregion

            if (!tipoUnidad.HasValue)
            {
                this.vista.MostrarMensaje("No se ha podido derivar el Tipo de Unidad.", ETipoMensajeIU.ADVERTENCIA);
            }

            Dictionary <string, object> datos = controlador.ObtenerDatosCheckList(
                this.dctx, new ContratoPSLBO()
            {
                ContratoID = listado.ContratoID
            }, this.vista.ModuloID.Value, tipoUnidad.Value, lineaContratoID);

            datos.Add("ContratoPSLBO", datos);
            this.vista.EstablecerPaqueteNavegacion("CheckListEntregaRO", datos);

            string error = string.Empty;
            this.vista.RedirigirAImprimir(error);
        }
        /// <summary>
        /// Completa la información que se presenta en el grid
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void grdListadosVerificacion_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            try
            {
                if (e.Row.RowType == DataControlRowType.DataRow)
                {
                    ListadoVerificacionBOF bof = (ListadoVerificacionBOF)e.Row.DataItem;
                    Label lblPlacaFederal      = e.Row.FindControl("lblPlacaFederal") as Label;
                    if (lblPlacaFederal != null)
                    {
                        var placaFederal = bof.Tramites.FirstOrDefault(p => p.Tipo != null && p.Tipo.Value == ETipoTramite.PLACA_FEDERAL);
                        if (!ReferenceEquals(placaFederal, null))
                        {
                            lblPlacaFederal.Text = !string.IsNullOrEmpty(placaFederal.Resultado) && !string.IsNullOrWhiteSpace(placaFederal.Resultado)
                                                   ? placaFederal.Resultado.Trim().ToUpper()
                                                   : string.Empty;
                        }
                    }

                    Label lblPlacaEstatal = e.Row.FindControl("lblPlacaEstatal") as Label;
                    if (lblPlacaEstatal != null)
                    {
                        var placaEstatal =
                            bof.Tramites.FirstOrDefault(
                                p => p.Tipo != null && p.Tipo.Value == ETipoTramite.PLACA_ESTATAL);
                        if (!ReferenceEquals(placaEstatal, null))
                        {
                            lblPlacaEstatal.Text = !string.IsNullOrEmpty(placaEstatal.Resultado) && !string.IsNullOrWhiteSpace(placaEstatal.Resultado)
                                                       ? placaEstatal.Resultado.Trim().ToUpper()
                                                       : string.Empty;
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                this.MostrarMensaje("Inconsistencias al presentar la información", ETipoMensajeIU.ERROR, nombreClase + ".grdListadosVerificacion_RowDataBound: " + ex.Message);
            }
        }
Ejemplo n.º 4
0
        /// <summary>
        /// Convierte los datos de la vista a un objeto de negocio
        /// </summary>
        /// <returns>Objeto de negocio creado a partir del os datos en la vista</returns>
        private object InterfazUsuarioADatos()
        {
            ListadoVerificacionBOF bof = new ListadoVerificacionBOF();

            bof.CuentaCliente = new CuentaClienteIdealeaseBO {
                Cliente = new ClienteBO()
            };
            bof.Sucursal = new SucursalBO {
                UnidadOperativa = new UnidadOperativaBO {
                }
            };
            bof.Unidad = new UnidadBO();
            if (this.vista.ClienteID.HasValue)
            {
                bof.CuentaCliente.Cliente.Id = this.vista.ClienteID.Value;
            }
            if (this.vista.CuentaClienteID.HasValue)
            {
                bof.CuentaCliente.Id = this.vista.CuentaClienteID.Value;
            }
            if (this.vista.ModeloID.HasValue)
            {
                bof.Unidad.Modelo = new ModeloBO {
                    Id = this.vista.ModeloID.Value
                }
            }
            ;
            if (!string.IsNullOrEmpty(this.vista.NumeroContrato) && !string.IsNullOrWhiteSpace(this.vista.NumeroContrato))
            {
                bof.NumeroContrato = this.vista.NumeroContrato;
            }
            if (!string.IsNullOrEmpty(this.vista.NumeroEconomico) && !string.IsNullOrWhiteSpace(this.vista.NumeroEconomico))
            {
                bof.Unidad.NumeroEconomico = this.vista.NumeroEconomico;
            }
            if (!string.IsNullOrEmpty(this.vista.NumeroSerie) && !string.IsNullOrWhiteSpace(this.vista.NumeroSerie))
            {
                bof.Unidad.NumeroSerie = this.vista.NumeroSerie;
            }
            if (!string.IsNullOrEmpty(this.vista.Placas) && !string.IsNullOrWhiteSpace(this.vista.Placas))
            {
                bof.Placa = this.vista.Placas;
            }

            if (this.vista.SucursalID.HasValue)
            {
                bof.Sucursal.Id = this.vista.SucursalID.Value;
            }
            else
            {
                bof.Sucursales = FacadeBR.ConsultarSucursalesSeguridad(this.dctx, new SeguridadBO(Guid.Empty, new UsuarioBO()
                {
                    Id = this.vista.UsuarioID
                }, new AdscripcionBO {
                    UnidadOperativa = new UnidadOperativaBO()
                    {
                        Id = this.vista.UnidadOperativaID
                    }
                }));
            }

            if (this.vista.TipoListado.HasValue)
            {
                bof.TipoListado = (ETipoListadoVerificacion)this.vista.TipoListado.Value;
            }
            if (this.vista.UnidadOperativaID.HasValue)
            {
                bof.Sucursal.UnidadOperativa.Id = this.vista.UnidadOperativaID.Value;
            }

            return(bof);
        }
        /// <summary>
        /// Convierte los datos de la vista a un objeto de negocio
        /// </summary>
        /// <returns>Objeto de negocio creado a partir del os datos en la vista</returns>
        private object InterfazUsuarioADatos()
        {
            ListadoVerificacionBOF bof = new ListadoVerificacionBOF();

            bof.CuentaCliente = new CuentaClienteIdealeaseBO {
                Cliente = new ClienteBO()
            };
            bof.Sucursal = new SucursalBO {
                UnidadOperativa = new UnidadOperativaBO {
                }
            };
            bof.Unidad = new BPMO.SDNI.Equipos.BO.UnidadBO();

            if (this.vista.ClienteID.HasValue)
            {
                bof.CuentaCliente.Cliente.Id = this.vista.ClienteID.Value;
            }
            if (this.vista.CuentaClienteID.HasValue)
            {
                bof.CuentaCliente.Id = this.vista.CuentaClienteID.Value;
            }
            if (this.vista.ModeloID.HasValue)
            {
                bof.Unidad.Modelo = new ModeloBO {
                    Id = this.vista.ModeloID.Value
                }
            }
            ;
            if (!string.IsNullOrEmpty(this.vista.NumeroContrato) && !string.IsNullOrWhiteSpace(this.vista.NumeroContrato))
            {
                bof.NumeroContrato = this.vista.NumeroContrato;
            }
            if (this.vista.UnidadID.HasValue)
            {
                bof.Unidad.UnidadID = this.vista.UnidadID;
            }
            else
            {
                if (!string.IsNullOrWhiteSpace(this.vista.NumeroEconomico))
                {
                    bof.Unidad.NumeroEconomico = this.vista.NumeroEconomico;
                }
                if (!string.IsNullOrWhiteSpace(this.vista.NumeroSerie))
                {
                    bof.Unidad.NumeroSerie = this.vista.NumeroSerie;
                }
            }
            if (this.vista.SucursalSeleccionada != null)
            {
                bof.Sucursal.Id = this.vista.SucursalSeleccionada.Id;
            }
            else
            {
                bof.Sucursales = this.vista.SucursalesAutorizadas;
            }

            if (this.vista.TipoListado.HasValue)
            {
                bof.TipoListado = (ETipoListadoVerificacion)this.vista.TipoListado.Value;
            }
            if (this.vista.UnidadOperativaID.HasValue)
            {
                bof.Sucursal.UnidadOperativa.Id = this.vista.UnidadOperativaID.Value;
            }

            return(bof);
        }