/// <summary> /// Valida que el operador que se desea editar no se encuentre en un contrato que este actualmente EN CURSO /// </summary> /// <returns>Mensaje informando el estatus del operador.</returns> public string ValidarUsoContrato()//SC_0051 { if (!this.vista.OperadorID.HasValue) { throw new Exception("Es necesario especificar el identificador del operador que deseas modificar."); } ContratoRDBR ctrl = new ContratoRDBR(); var contratoBOF = new ContratoRDBOF { Operador = new OperadorBO { OperadorID = this.vista.OperadorID } }; contratoBOF.EstatusContrato = new List <EEstatusContrato>(); contratoBOF.EstatusContrato.Add(EEstatusContrato.EnCurso); contratoBOF.EstatusContrato.Add(EEstatusContrato.EnPausa); contratoBOF.EstatusContrato.Add(EEstatusContrato.Borrador); var lstContratos = ctrl.Consultar(dctx, contratoBOF); if (lstContratos.Count > 0) { return(string.Format(@"Actualmente el operador esta siendo usado en el contrato # {0} con estatus ""{1}""", lstContratos[0].NumeroContrato, lstContratos[0].EstatusText)); } return(null); }
private void EstablecerFiltros() { try { Dictionary <string, object> elementosFiltro = this.ObtenerPaqueteNavegacion() as Dictionary <string, object>; if (elementosFiltro != null) { ///establecer objeto filtro en la interfaz ContratoRDBOF contratoFiltro = (ContratoRDBOF)elementosFiltro["ContratoRDFiltro"]; this.EstablecerPaqueteDatos(contratoFiltro); ///verificar consulta inmediata bool bandera = (bool)elementosFiltro["Bandera"]; if (bandera == true) { this.ConsultarContratos(); ///establecer paginación del grid int pagGrid = Convert.ToInt32(elementosFiltro["PagActGrid"]); this.vista.EstablecerPagResultados(pagGrid); } this.vista.LimpiarPaqueteNavegacion(); } } catch (Exception ex) { this.vista.MostrarMensaje("Inconsistencias con el diccionario de sesión", ETipoMensajeIU.ERROR, nombreClase + ".Page_Load:" + ex.Message); } }
public void EstablecerPaqueteNavegacion(string Nombre, int?UnidadID) { FlotaRDBOF elementoBO = this.UnidadesRD.Find(p => p.Unidad.UnidadID.HasValue && p.Unidad.UnidadID.Value == UnidadID); if (elementoBO != null) { switch (Nombre) { case "RegistrarReservacionUI": Session[Nombre] = elementoBO.Unidad; break; case "DetalleFlotaUI": Session[Nombre] = new ElementoFlotaBO { Unidad = elementoBO.Unidad }; break; case "ContratoRDBO": Session[Nombre] = new ContratoRDBOF { ContratoID = elementoBO.ContratoID }; break; } } else { throw new Exception(this.ToString() + ".EstablecerPaqueteNavegacion: La unidad seleccionada no se encuentra dentro del listado de unidades encintradas."); } }
/// <summary> /// Indica si la unidad seleccionada cuenta con una reservación con base en el cliente seleccionado, la fecha del contrato y de promesa de entrega /// </summary> /// <returns>True en caso de que cuente con una reservación, False en caso contrario</returns> public bool UnidadTieneReservacion() { try { if (this.vista.UnidadID == null) { return(false); } if (this.vista.FechaContrato == null) { return(false); } if (this.vista.FechaPromesaDevolucion == null) { return(false); } if (this.vista.CuentaClienteID == null) { return(false); } if (this.vista.UnidadOperativaID == null) { return(false); } //Se consulta si existen reservaciones conflicitvas ContratoRDBOF bof = new ContratoRDBOF(); bof.Unidad = new UnidadBO() { UnidadID = this.vista.UnidadID }; bof.Cliente = new CuentaClienteIdealeaseBO() { Id = this.vista.CuentaClienteID }; bof.FechaContrato = this.vista.FechaContrato; bof.FechaPromesaDevolucion = this.vista.FechaPromesaDevolucion; bof.Sucursal = new SucursalBO() { UnidadOperativa = new UnidadOperativaBO() { Id = this.vista.UnidadOperativaID } }; List <ReservacionRDBO> lstConflictivas = this.controlador.ConsultarReservacionesConflictivas(dctx, bof); if (lstConflictivas != null && lstConflictivas.Count > 0) { return(true); } return(false); } catch (Exception ex) { throw new Exception(this.nombreClase + ".UnidadTieneReservacion: " + "No fue posible comprobar que la unidad está reservada debido a que " + ex.Message); } }
/// <summary> /// Establece el Paquete de Navegacion para el Detalle del Contrato Seleccionado /// </summary> /// <param name="Clave">Clave del Paquete</param> /// <param name="ContratoID">Identificador del Contrato Seleccionado</param> public void EstablecerPaqueteNavegacion(string ClaveContrato, ContratoRDBOF contrato, Dictionary <string, object> elementosFiltro) { if (contrato != null) { Session[ClaveContrato] = contrato; } else { throw new Exception(nombreClase + ".EstablecerPaqueteNavegacion: El contrato proporcionado no pertence al listado de contratos encontrados."); } Session["FiltroConsultaContratoRD"] = elementosFiltro; }
private void EstablecerPaqueteNavegacion(int?ContratoID, string ClaveContrato) { ContratoRDBOF contrato = this.vista.ContratosEncontrados.Find(cont => cont.ContratoID == ContratoID); #region SC0020 ContratoRDBOF contratoFiltro = InterfazUsuarioADatos(); int numPagGrid = this.vista.ObtenerPagResultados(); bool bandera = true; Dictionary <string, object> elementosFiltro = new Dictionary <string, object>(); elementosFiltro.Add("ContratoRDFiltro", contratoFiltro); elementosFiltro.Add("PagActGrid", numPagGrid); elementosFiltro.Add("Bandera", bandera); this.vista.EstablecerPaqueteNavegacion(ClaveContrato, contrato, elementosFiltro); #endregion SC0020 }
/// <summary> /// Consulta los contratos de acuerdo a los parametros proporcionados en la vista /// </summary> public void ConsultarContratos() { try { ContratoRDBOF contrato = InterfazUsuarioADatos(); List <ContratoRDBOF> contratos = Controlador.Consultar(dataContext, contrato); if (contratos.Any()) { contratos = contratos.OrderBy(x => x.NumeroContrato).ToList(); } List <ContratoRDBOF> lstNew = new List <ContratoRDBOF>(); foreach (ContratoRDBOF c in contratos) { if (c == null) { continue; } if (c.Sucursal != null && c.Sucursal.UnidadOperativa != null && c.Sucursal.UnidadOperativa.Id != null && vista.UnidadOperativa != null && vista.UnidadOperativa.Id != null) { if (c.Sucursal.UnidadOperativa.Id != vista.UnidadOperativa.Id) { continue; } } lstNew.Add(c); } vista.CargarContratosEncontrados(lstNew); if (contratos.Count < 1) { this.vista.MostrarMensaje("La búsqueda no produjo resultados", ETipoMensajeIU.INFORMACION, "No se encontraron coincidencias con los criterios ingresados. Verifique sus datos"); } } catch (Exception ex) { throw new Exception(nombreClase + ".ConsultarContratos: " + ex.Message); } }
/// <summary> /// rellena la UI con los datos del contrato de sesión /// </summary> /// <returns></returns> public void EstablecerPaqueteDatos(ContratoRDBOF contratoFiltro) { if (contratoFiltro != null) { //Datos del Contrato this.vista.NumeroContrato = contratoFiltro.NumeroContrato; this.vista.FechaFinContrato = contratoFiltro.FechaFin; this.vista.FechaInicioContrato = contratoFiltro.FechaContrato; this.vista.Estatus = contratoFiltro.Estatus; this.vista.NumeroSerie = contratoFiltro.NumeroSerie; this.vista.NumeroEcononomico = contratoFiltro.NumeroEconomico; // Datos del Cliente if (contratoFiltro.Cliente != null) { this.vista.CuentaClienteID = contratoFiltro.Cliente.Id; this.vista.NombreCuentaCliente = contratoFiltro.Cliente.Nombre; this.vista.ClienteID = contratoFiltro.Cliente.Cliente.Id; } } }
protected void grdContratos_RowDataBound(object sender, GridViewRowEventArgs e) { try { if (e.Row.RowType == DataControlRowType.DataRow) { ContratoRDBOF contrato = (ContratoRDBOF)e.Row.DataItem; Label lblFechaContrato = e.Row.FindControl("lblFechaContrato") as Label; if (lblFechaContrato != null) { string fecha = string.Empty; if (contrato.FechaContrato != null) { fecha = String.Format("{0:dd/MM/yyyy}", contrato.FechaContrato); } lblFechaContrato.Text = fecha; } Label lblFechaFinContrato = e.Row.FindControl("lblFechaCierreContrato") as Label; if (lblFechaFinContrato != null) { string fechaFin = string.Empty; if (contrato.FechaFin != null) { fechaFin = String.Format("{0:dd/MM/yyyy}", contrato.FechaFin); } lblFechaFinContrato.Text = fechaFin; } Label labelSucursalNombre = e.Row.FindControl("lblSucursal") as Label; if (labelSucursalNombre != null) { string sucursalNombre = string.Empty; if (contrato.Sucursal != null) { if (contrato.Sucursal.Nombre != null) { sucursalNombre = contrato.Sucursal.Nombre; } } labelSucursalNombre.Text = sucursalNombre; } Label labelClienteNombre = e.Row.FindControl("lblCliente") as Label; if (labelClienteNombre != null) { string clienteNombre = string.Empty; if (contrato.Cliente != null) { if (contrato.Cliente.Nombre != null) { clienteNombre = contrato.Cliente.Nombre; } } labelClienteNombre.Text = clienteNombre; } } } catch (Exception ex) { MostrarMensaje("Inconsistencias al presentar la información", ETipoMensajeIU.ERROR, nombreClase + ".grdContratos_RowDataBound: " + ex.Message); } }
/// <summary> /// Obtiene un ContratoRD desde la Vista /// </summary> /// <returns></returns> public ContratoRDBOF InterfazUsuarioADatos() { ContratoRDBOF contrato = new ContratoRDBOF { Cliente = new CuentaClienteIdealeaseBO { Cliente = new ClienteBO(), UnidadOperativa = new UnidadOperativaBO() }, Sucursal = new SucursalBO { UnidadOperativa = new UnidadOperativaBO() }, Unidad = new UnidadBOF() }; // Datos Generales if (vista.UnidadOperativa != null) { contrato.Cliente.UnidadOperativa = vista.UnidadOperativa; contrato.Sucursal.UnidadOperativa = vista.UnidadOperativa; } // Datos del Cliente if (vista.CuentaClienteID != null) { contrato.Cliente.Id = vista.CuentaClienteID; } if (vista.NombreCuentaCliente != null && !string.IsNullOrEmpty(vista.NombreCuentaCliente.Trim())) { contrato.Cliente.Nombre = vista.NombreCuentaCliente.Trim(); } if (vista.ClienteID != null) { contrato.Cliente.Cliente.Id = vista.ClienteID; } // Datos del Contrato if (vista.NumeroContrato != null && !string.IsNullOrEmpty(vista.NumeroContrato.Trim())) { contrato.NumeroContrato = vista.NumeroContrato.Trim().ToUpper(); } if (vista.FechaInicioContrato != null) { contrato.FechaContrato = vista.FechaInicioContrato; } if (vista.FechaFinContrato != null) { contrato.FechaFin = vista.FechaFinContrato; } if (vista.Estatus != null) { contrato.Estatus = vista.Estatus; } if (vista.UnidadID != null) { contrato.Unidad.UnidadID = vista.UnidadID; } if (vista.NumeroSerie != null && !string.IsNullOrEmpty(vista.NumeroSerie.Trim())) { contrato.NumeroSerie = vista.NumeroSerie.Trim().ToUpper(); } if (vista.NumeroEcononomico != null && !string.IsNullOrEmpty(vista.NumeroEcononomico.Trim())) { contrato.NumeroEconomico = vista.NumeroEcononomico.Trim().ToUpper(); } if (vista.SucursalID != null) { contrato.Sucursal.Id = this.vista.SucursalID; contrato.Sucursal.Nombre = this.vista.SucursalNombre; } else { contrato.SucursalesConsulta = this.vista.SucursalesAutorizadas.ConvertAll(x => (SucursalBO)x);//SC_0051 } return(contrato); }