/// <summary> /// Obtiene los datos que seran enviados a Actualizar /// </summary> /// <returns>Objeto que sera actualizado</returns> private Object InterfazUsuarioDato() { ContratoBO contrato = this.vista.ContratoConsultado; SucursalBO nuevaSucursal = new SucursalBO() { Auditoria = new AuditoriaBO(), UnidadOperativa = this.vista.UnidadOperativa }; nuevaSucursal.Id = this.vista.SucursalIdNueva != null ? this.vista.SucursalIdNueva : null; nuevaSucursal.Nombre = this.vista.SucursalNombreNueva != null ? this.vista.SucursalNombreNueva : null; DateTime?fua = DateTime.Now; Int32? uua = this.vista.UsuarioId; contrato.Sucursal = nuevaSucursal; contrato.FUA = fua; contrato.UUA = uua; foreach (ILineaContrato linea in contrato.LineasContrato) { linea.Equipo.Sucursal = nuevaSucursal; linea.Equipo.FUA = fua; linea.Equipo.UUA = uua; if ((linea.Equipo as UnidadBO).EquiposAliados != null && (linea.Equipo as UnidadBO).EquiposAliados.Any()) { UnidadBO unidad = (linea.Equipo as UnidadBO); foreach (EquipoAliadoBO equipoAliado in unidad.EquiposAliados) { equipoAliado.Sucursal = nuevaSucursal; equipoAliado.FUA = fua; equipoAliado.UUA = uua; } } } return(contrato); }
/// <summary> /// Establece en la Interfaz el Objeto de Navegación /// </summary> /// <param name="objetoNavegacion">Contrato que cambiara de sucursal</param> public void EstablecerPaqueteNavegacion(ContratoBO objetoNavegacion) { if (objetoNavegacion == null) { throw new Exception(nombreClase + ".EstablecerPaqueteNavegacion: El contrato que cambiara de sucursal no puede ser Nulo"); } this.ContratoId = objetoNavegacion.ContratoID != null ? objetoNavegacion.ContratoID : null; this.TipoContrato = objetoNavegacion.Tipo != null ? objetoNavegacion.Tipo : null; }
private void gridContratos_CellContentClick_1(object sender, DataGridViewCellEventArgs e) { ContratoBO contratoBO = new ContratoBO((Contrato)gridContratos.CurrentRow.DataBoundItem); DataTable dt = contratoBO.pegarBoletos(); DataTable dt2 = contratoBO.pegarDadosContrato(); CONCEPTI_FACTORING.VIEW.Cenarios.Relatorio.FCarneCliente Cc = new FCarneCliente(dt, dt2); Cc.ShowDialog(); }
/// <summary> /// Determina el Paquete que sera enviado a la interfaz de detalle /// </summary> /// <param name="nombre">Nombre del paquete</param> /// <param name="valor">Objeto que sera enviado</param> public ContratoBO ObtenerPaqueteNavegacion() { ContratoBO contrato = (ContratoBO)Session["ContratoProxyBO"]; if (contrato == null) { throw new Exception(nombreClase + ".ObtenerPaqueteNavegacion: No se encontro el Contrato que Cambiara de Sucursal"); } this.Session.Remove("ContratoProxyBO"); return(contrato); }
/// <summary> /// Establece el Paquete de Navegacion para el Detalle del Contrato Seleccionado /// </summary> /// <param name="Clave">Clave del Paquete</param> /// <param name="contrato">Identificador del Contrato Seleccionado</param> public void EstablecerPaqueteNavegacion(string Clave, ContratoBO contrato) { if (contrato != null && contrato.ContratoID != null) { Session[Clave] = contrato; } else { throw new Exception(NombreClase + ".EstablecerPaqueteNavegacion: El contrato proporcionado no contiene un identificador."); } }
private void gridContratos_CellContentClick(object sender, DataGridViewCellEventArgs e) { ContratoBO contratoBO = new ContratoBO((Contrato)gridContratos.CurrentRow.DataBoundItem); DataTable dt = new DataTable(); switch (TipoRelatorio.ToString()) { case "1": dt = contratoBO.pegarBoletos(); break; case "2": dt = contratoBO.pegarBoletosAbertos(); break; } CONCEPTI_FACTORING.VIEW.Cenarios.Relatorio.FBoletos fb = new Relatorio.FBoletos(dt); fb.ShowDialog(); }
protected void grdContratos_RowDataBound(object sender, GridViewRowEventArgs e) { try { if (e.Row.RowType == DataControlRowType.DataRow) { ContratoBO contrato = (ContratoBO)e.Row.DataItem; 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); } }
protected void grdContratos_RowCommand(object sender, GridViewCommandEventArgs e) { try { switch (e.CommandName.Trim()) { case "Detalles": { int?ContratoID = (e.CommandArgument != null) ? (int?)Convert.ToInt32(e.CommandArgument) : null; this.ContratoId = ContratoID; ContratoBO contrato = ContratosEncontrados.FirstOrDefault(x => x.ContratoID == ContratoID); if (contrato != null) { this.TipoContrato = contrato.Tipo; } presentador.RedirigirADetalle(); break; } case "Page": break; default: { MostrarMensaje("Comando no encontrado", ETipoMensajeIU.ERROR, "El comando no está especificado en el sistema"); break; } } } catch (Exception ex) { MostrarMensaje("Inconsistencias al intentar realizar una acción sobre un contrato:", ETipoMensajeIU.ERROR, nombreClase + ".grdContratos_RowCommand: " + ex.Message); } }
/// <summary> /// Determina si es posible generar el pago adicional del contrato /// </summary> /// <returns>Devuelve la inconsitencia encontrada para genera el pago adicional</returns> private string ValidarPagoAdicional() { if (this.vista.TipoContrato == null) { return("No se ha seleccionado del Departamento del Contrato"); } if (this.vista.SucursalID == null) { return("No se ha seleccionado la Sucursal del Contrato"); } if (String.IsNullOrEmpty(this.vista.FolioContrato)) { return("No se ha introducido el Folio del Contrato"); } ContratoBO contratoBo = null; List <ContratoBO> contratos = new List <ContratoBO>(); switch (vista.TipoContrato) { case ETipoContrato.RD: contratoBo = new ContratoRDBO { NumeroContrato = vista.FolioContrato, Sucursal = new SucursalBO { Id = vista.SucursalID }, Estatus = EEstatusContrato.EnCurso }; var contratosRD = new ContratoRDBR().Consultar(this.dctx, (ContratoRDBO)contratoBo); contratos.AddRange(contratosRD); break; case ETipoContrato.FSL: contratoBo = new ContratoFSLBO { NumeroContrato = vista.FolioContrato, Sucursal = new SucursalBO { Id = vista.SucursalID }, Estatus = EEstatusContrato.EnCurso }; var contratosFsl = new ContratoFSLBR().Consultar(this.dctx, (ContratoFSLBO)contratoBo); contratos.AddRange(contratosFsl); break; case ETipoContrato.CM: case ETipoContrato.SD: contratoBo = new ContratoManttoBO { NumeroContrato = vista.FolioContrato, Tipo = vista.TipoContrato, Sucursal = new SucursalBO { Id = vista.SucursalID }, Estatus = EEstatusContrato.EnCurso }; var contratosMantto = new ContratoManttoBR().Consultar(this.dctx, (ContratoManttoBO)contratoBo); contratos.AddRange(contratosMantto); break; } if (!contratos.Any()) { return("No se encontró el Contrato solicitado"); } switch (vista.TipoContrato) { case ETipoContrato.RD: var contratoRD = contratos.FirstOrDefault() as ContratoRDBO; if (!String.IsNullOrEmpty(TiempoMaximoRecepcionRD)) { if (DateTime.Now < contratoRD.FechaPromesaDevolucion.Value.AddHours(int.Parse(TiempoMaximoRecepcionRD))) { return("Deben pasar al menos " + TiempoMaximoRecepcionRD + " hrs para poder generar un pago adicional después de la Fecha de Promesa de Devolución."); } } break; } this.vista.ContratoID = contratos.FirstOrDefault().ContratoID; PagoUnidadContratoBO pagoBo = new PagoUnidadContratoBOF { ReferenciaContrato = new ReferenciaContratoBO() { ReferenciaContratoID = this.vista.ContratoID } }; PagoUnidadContratoBR pagoBr = new PagoUnidadContratoBR(); var pagos = pagoBr.Consultar(this.dctx, (PagoUnidadContratoBO)pagoBo); if (!pagos.Any()) { return("No se han generado Pagos para el Contrato"); } var ultimoPago = pagos.Last(x => x.Activo.Value); if (ultimoPago.EnviadoFacturacion != null && !ultimoPago.EnviadoFacturacion.Value) { return("No se ha Facturado el Último Pago Activo del Contrato"); } this.ultimoPagoContrato = ultimoPago; return(null); }
/// <summary> /// Metodo que genera el pago adicional /// </summary> public void GenerarPagoAdicional() { try { string validacion = this.ValidarPagoAdicional(); if (!String.IsNullOrEmpty(validacion)) { this.vista.MostrarMensaje("No se puede generar el pago Adicional: " + validacion, ETipoMensajeIU.INFORMACION); return; } ContratoBO contratoBo = null; IGeneradorPagosBR generadorPagos = null; SeguridadBO seguridadBo = this.CrearObjetoSeguridad(); List <ContratoBO> contratos = new List <ContratoBO>(); switch (vista.TipoContrato) { case ETipoContrato.RD: contratoBo = new ContratoRDBO { ContratoID = this.vista.ContratoID }; var contratosRd = new ContratoRDBR().ConsultarCompleto(this.dctx, (ContratoRDBO)contratoBo, false); contratos.AddRange(contratosRd); generadorPagos = new GeneradorPagoRDBR(); break; case ETipoContrato.FSL: contratoBo = new ContratoFSLBO { ContratoID = this.vista.ContratoID }; var contratosFsl = new ContratoFSLBR().ConsultarCompleto(this.dctx, (ContratoFSLBO)contratoBo); contratos.AddRange(contratosFsl); generadorPagos = new GeneradorPagosFSLBR(); break; case ETipoContrato.CM: case ETipoContrato.SD: contratoBo = new ContratoManttoBO { ContratoID = this.vista.ContratoID }; var contratosMantto = new ContratoManttoBR().ConsultarCompleto(this.dctx, (ContratoManttoBO)contratoBo, true, false); contratos.AddRange(contratosMantto); generadorPagos = new GeneradorPagosManttoBR(); break; } if (generadorPagos == null) { throw new Exception("No se pudo determinar el Tipo del Pago a Generar."); } generadorPagos.GenerarPagoAdicional(this.dctx, contratos.First(), (ultimoPagoContrato.NumeroPago.Value + 1), seguridadBo, false, true); PagoUnidadContratoBO pagoBo = new PagoUnidadContratoBOF { ReferenciaContrato = new ReferenciaContratoBO() { ReferenciaContratoID = this.vista.ContratoID } }; PagoUnidadContratoBR pagoBr = new PagoUnidadContratoBR(); var pagos = pagoBr.Consultar(this.dctx, (PagoUnidadContratoBO)pagoBo); this.Inicializar(); this.vista.MostrarMensaje("El pago " + pagos.Last().NumeroPago.ToString() + " con Fecha " + pagos.Last().FechaVencimiento.Value.ToShortDateString() + " se ha Creado con Éxito.", ETipoMensajeIU.EXITO); } catch (Exception ex) { this.vista.MostrarMensaje("Error al generar el pago Adicional", ETipoMensajeIU.ERROR, NombreClase + ".GenerarPagoAdicional: " + ex.GetBaseException().Message); } }
/// <summary> /// Obtiene el Contrato que sera Editado /// </summary> private void ConsultarCompleto() { ContratoBO contrato = new ContratoProxyBO() { ContratoID = this.vista.ContratoId }; ContratoBO contratoCompleto = null; switch (this.vista.TipoContrato) { case ETipoContrato.RD: ContratoRDBR controladorRD = new ContratoRDBR(); var contratoRd = new ContratoRDBO((ContratoBO)contrato); var contratosRd = controladorRD.ConsultarCompleto(this.dataContext, contratoRd); contratoCompleto = contratosRd.FirstOrDefault(); this.controlador = new ContratoRDBR(); this.vista.ObjetoAnterior = contratoCompleto != null?controladorRD.ConsultarCompleto(this.dataContext, contratoRd).FirstOrDefault() : null; break; case ETipoContrato.FSL: ContratoFSLBR controladorFsl = new ContratoFSLBR(); var contratoFsl = new ContratoFSLBO() { ContratoID = this.vista.ContratoId }; var contratosFsl = controladorFsl.ConsultarCompleto(this.dataContext, contratoFsl); contratoCompleto = contratosFsl.FirstOrDefault(); this.controlador = new ContratoFSLBR(); this.vista.ObjetoAnterior = contratoCompleto != null?controladorFsl.ConsultarCompleto(this.dataContext, contratoFsl).FirstOrDefault() : null; break; case ETipoContrato.CM: case ETipoContrato.SD: ContratoManttoBR controladorMantto = new ContratoManttoBR(); var contratoMantto = new ContratoManttoBO((ContratoBO)contrato); var contratosMantto = controladorMantto.ConsultarCompleto(this.dataContext, contratoMantto, false); contratoCompleto = contratosMantto.FirstOrDefault(); this.controlador = new ContratoManttoBR(); this.vista.ObjetoAnterior = contratoCompleto != null?controladorMantto.ConsultarCompleto(this.dataContext, contratoMantto, false).FirstOrDefault() : null; break; default: contratoCompleto = null; break; } if (contratoCompleto != null) { this.vista.ContratoId = contratoCompleto.ContratoID; this.vista.NumeroContrato = contratoCompleto.NumeroContrato; this.vista.SucursalIdAntigua = contratoCompleto.Sucursal.Id; this.vista.SucursalNombreAntigua = contratoCompleto.Sucursal.Nombre; this.vista.TipoContrato = contratoCompleto.Tipo; this.vista.ContratoConsultado = contratoCompleto; } else { throw new Exception(nombreClase + ".ConsultarCompleto: No se encontro el Contrato solicitado"); } }
/// <summary> /// Cambia el contrato de Sucursal /// </summary> public void CambiarSucursal() { try { string s = this.ValidarCampos(); if (!String.IsNullOrEmpty(s)) { this.vista.MostrarMensaje(s, ETipoMensajeIU.ADVERTENCIA); return; } ContratoBO contrato = (ContratoBO)InterfazUsuarioDato(); if (contrato == null) { throw new Exception("No se pudo obtener el contrato que sera cambiado de sucursal desde la interfaz"); } SeguridadBO seguridadBo = this.CrearObjetoSeguridad(); #region Conexion a BD Guid firma = Guid.NewGuid(); try { this.dataContext.OpenConnection(firma); this.dataContext.BeginTransaction(firma); } catch (Exception) { if (this.dataContext.ConnectionState == ConnectionState.Open) { this.dataContext.CloseConnection(firma); } throw new Exception("Se encontraron inconsistencias al Cambiar la Sucursal del Contrato."); } #endregion try { bool cambioExitoso = false; switch (this.vista.TipoContrato) { case ETipoContrato.RD: this.controlador = new ContratoRDBR(); cambioExitoso = ((ContratoRDBR)controlador).CambiarSucursalContrato(this.dataContext, (ContratoRDBO)contrato, (ContratoRDBO)this.vista.ObjetoAnterior, this.vista.Observaciones, seguridadBo); break; case ETipoContrato.FSL: this.controlador = new ContratoFSLBR(); cambioExitoso = ((ContratoFSLBR)controlador).CambiarSucursalContrato(this.dataContext, (ContratoFSLBO)contrato, (ContratoFSLBO)this.vista.ObjetoAnterior, this.vista.Observaciones, seguridadBo); break; case ETipoContrato.CM: case ETipoContrato.SD: this.controlador = new ContratoManttoBR(); cambioExitoso = ((ContratoManttoBR)controlador).CambiarSucursalContrato(this.dataContext, (ContratoManttoBO)contrato, (ContratoManttoBO)this.vista.ObjetoAnterior, this.vista.Observaciones, seguridadBo); break; } if (!cambioExitoso) { throw new Exception("Ocurrio un problema al cambiar El contrato y las Unidades de Sucursal"); } ModificarPagosBR modificarPagosBr = new ModificarPagosBR(); cambioExitoso = modificarPagosBr.CambiarPagosSucursal(this.dataContext, contrato, seguridadBo); if (!cambioExitoso) { throw new Exception("Ocurrio un problema al cambiar Los Pagos de Sucursal"); } this.dataContext.CommitTransaction(firma); this.vista.PermitirGuardar(false); this.vista.MostrarMensaje("El Contrato cambio de Sucursal con Éxito", ETipoMensajeIU.EXITO); } catch (Exception ex) { this.dataContext.RollbackTransaction(firma); throw; } finally { if (this.dataContext.ConnectionState == ConnectionState.Open) { this.dataContext.CloseConnection(firma); } } } catch (Exception ex) { throw new Exception(nombreClase + ".CambiarSucursal: " + ex.Message, ex.InnerException); } }
private void GerarBoletos(Contrato contrato) { Contrato c = new ContratoBO().Find(co => co.COD_CONTRATO == contrato.COD_CONTRATO).First(); new ContratoBO(c).gerarBoletos(); }
private void gridContratos_CellContentClick(object sender, DataGridViewCellEventArgs e) { ContratoBO contratoBO = new ContratoBO((Contrato)gridContratos.CurrentRow.DataBoundItem); DataTable dt = contratoBO.pegarBoletos(); }