private void ConsultarCompleto() { try { ContratoRDBO bo = (ContratoRDBO)this.InterfazUsuarioADato(); List <ContratoRDBO> lst = new ContratoRDBR().Consultar(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."); } lst[0].DocumentosAdjuntos = new ArchivoBR().Consultar(this.dctx, new ArchivoBO() { Activo = true, TipoAdjunto = ETipoAdjunto.ContratoRD }, lst[0].ContratoID); this.DatoAInterfazUsuario(lst[0]); this.vista.UltimoObjeto = lst[0]; } catch (Exception ex) { this.DatoAInterfazUsuario(new ContratoRDBO()); throw new Exception(this.nombreClase + ".ConsultarCompleto:" + ex.Message); } }
/// <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); }
public ConsultarListadoVerificacionPRE(IConsultarListadoVerificacionVIS vista) { if (ReferenceEquals(vista, null)) { throw new Exception(String.Format("{0}: La vista proporcionada no puede ser nula", nombreClase)); } this.vista = vista; this.controlador = new ContratoRDBR(); this.dctx = FacadeBR.ObtenerConexion(); }
/// <summary> /// Imprime la plantilla del contrato /// </summary> /// CU014 public void ImprimirPlantillaContratoRD() { try { ContratoRDBR contratoBR = new ContratoRDBR(); AppSettingsReader n = new AppSettingsReader(); int moduloID = Convert.ToInt32(n.GetValue("ModuloID", System.Type.GetType("System.Int32"))); Dictionary <string, Object> datosImprimir = contratoBR.ObtenerPlantillaContrato(dataContext, moduloID, this.vista.UnidadAdscripcionID.Value); vista.EstablecerPaqueteNavegacionImprimir("CU014", datosImprimir); vista.IrAImprimir(); } catch (Exception ex) { throw new Exception(nombreClase + ".ImprimirPlantillaContratoRD:Inconsistencia al intentar cargar los datos a imprimir." + ex.Message); } }
/// <summary> /// Constructor por defecto del Presentador /// </summary> /// <param name="view">Vista de Registro de Contrato</param> /// <param name="viewDatosContrato">Vista de los Datos del Contrato</param> /// <param name="viewDocumentos">Vista del Control de Documentos</param> public RegistrarContratoRDPRE(IRegistrarContratoRDVIS view, IucContratoRDVIS viewDatosContrato, IucCatalogoDocumentosVIS viewDocumentos) { try { this.vista = view; this.presentadorDatosContrato = new ucContratoRDPRE(viewDatosContrato); this.presentadorDocumentos = new ucCatalogoDocumentosPRE(viewDocumentos); this.controlador = new ContratoRDBR(); this.dctx = FacadeBR.ObtenerConexion(); } catch (Exception ex) { this.vista.MostrarMensaje("Inconsistencia en los parámetros de configuración", ETipoMensajeIU.ERROR, this.nombreClase + ".RegistrarContratoRDPRE:" + ex.Message); } }
public CambiarFrecuenciaContratosRDPRE(ICambiarFrecuenciaContratosRDVIS view) { if (view == null) { throw new Exception(nombreClase + ".CambiarFrecuenciaContratosRDPRE: La vista usada no puede ser NULL"); } try { this.vista = view; this.controladorContrato = new ContratoRDBR(); this.controladorPagos = new PagoUnidadContratoRDBR(); this.dataContext = FacadeBR.ObtenerConexion(); } catch (Exception ex) { throw new Exception(nombreClase + ".CambiarFrecuenciaContratosRDPRE: Ocurrio un problema al obtener la informacion Inicial", ex.InnerException); } }
/// <summary> /// Constructor que recibe la vista sobre la que actuará el presentador /// </summary> /// <param name="vistaActual">vista sobre la que actuará el presentador</param> /// <param name="vistaHerramientas">Vista de la barra de herramientas</param> /// <param name="vistaInfoContrato">Vista de la Informacion General</param> /// <param name="vistadg">Vista de los datos generales de la unidad</param> /// <param name="vistaea">Vista de los datos de los equipos aliados</param> public CancelarContratoRDPRE(ICancelarContratoRDVIS vistaActual, IucHerramientasRDVIS vistaHerramientas, IucResumenContratoRDVIS vistaInfoContrato, IucDatosGeneralesElementoVIS vistadg, IucEquiposAliadosUnidadVIS vistaea) { try { this.vista = vistaActual; this.presentadorResumen = new ucResumenContratoRDPRE(vistaInfoContrato); this.presentadorDG = new ucDatosGeneralesElementoPRE(vistadg); this.presentadorEA = new ucEquiposAliadosUnidadPRE(vistaea); this.presentadorHerramientas = new ucHerramientasRDPRE(vistaHerramientas); this.controlador = new ContratoRDBR(); this.dctx = FacadeBR.ObtenerConexion(); } catch (Exception ex) { this.vista.MostrarMensaje("Inconsistencia en los parámetros de configuración", ETipoMensajeIU.ERROR, this.nombreClase + ".CancelarContratoRDPRE:" + ex.Message); } }
/// <summary> /// Constructor del presentador /// </summary> /// <param name="view">Vista con la cual iteractuara el presentador</param> public ConsultarCambioFrecuenciaRDPRE(IConsultarCambioFrecuenciaRDVIS view) { try { if (view != null) { vista = view; } else { throw new Exception("La vista proporcionada no puede ser Nula."); } dataContext = FacadeBR.ObtenerConexion(); controlador = new ContratoRDBR(); } catch (Exception ex) { vista.MostrarMensaje("Inconsistencias en la construcción del presentador", ETipoMensajeIU.ERROR, nombreClase + ".ConsultarCambioFrecuenciaRDPRE: " + ex.Message); } }
/// <summary> /// Constructor que recibe la vista sobre la que actuará el presentador /// </summary> /// <param name="vistaActual">vista sobre la que actuará el presentador</param> /// <param name="herramientas">Presentador de la barra de herramientas</param> /// <param name="infoContrato">Presentador de la Informacion General</param> /// <param name="vistadg">Vista de los datos generales de la unidad</param> /// <param name="vistaea">Vista de los datos de los equipos aliados</param> public DetalleContratoRDPRE(IDetalleContratoRDVIS view, IucHerramientasRDVIS vistaHerramientas, IucResumenContratoRDVIS vistaInfoContrato, IucDatosGeneralesElementoVIS vistadg, IucEquiposAliadosUnidadVIS vistaea, IucCatalogoDocumentosVIS viewDocsContrato, IucCatalogoDocumentosVIS viewDocsEntrega, IucCatalogoDocumentosVIS viewDocsRecepcion) { try { this.vista = view; this.presentadorResumen = new ucResumenContratoRDPRE(vistaInfoContrato); this.presentadorDG = new ucDatosGeneralesElementoPRE(vistadg); this.presentadorEA = new ucEquiposAliadosUnidadPRE(vistaea); this.presentadorHerramientas = new ucHerramientasRDPRE(vistaHerramientas); this.presentadorDocumentosContrato = new ucCatalogoDocumentosPRE(viewDocsContrato); this.presentadorDocumentosEntrega = new ucCatalogoDocumentosPRE(viewDocsEntrega); this.presentadorDocumentosRecepcion = new ucCatalogoDocumentosPRE(viewDocsRecepcion); this.controlador = new ContratoRDBR(); this.dctx = FacadeBR.ObtenerConexion(); } catch (Exception ex) { this.vista.MostrarMensaje("Inconsistencia en los parámetros de configuración", ETipoMensajeIU.ERROR, this.nombreClase + ".CerrarContratoRDPRE:" + ex.Message); } }
public void ImprimirPagare() { try { if (this.vista.ContratoID == null) { throw new Exception("No se puede imprimir el pagaré sin el identificador del contrato"); } ContratoRDBR controlador = new ContratoRDBR(); Dictionary <string, Object> datosPagare = controlador.ObtenerDatosPagare(FacadeBR.ObtenerConexion(), new ContratoRDBO() { ContratoID = this.vista.ContratoID }); vista.EstablecerPaqueteNavegacion("NombreReporte", "CU094"); vista.EstablecerPaqueteNavegacion("DatosReporte", datosPagare); vista.RedirigirAImprimir(); } catch (Exception ex) { throw new Exception("DetalleContratoRDPRE.ImprimirPagare: " + ex.Message); } }
/// <summary> /// Genera el reporte para la impresión de la plantilla del Check List /// </summary> public void ImprimirPlantillaCheckListRD() { try { ContratoRDBR contratoBR = new ContratoRDBR(); AppSettingsReader n = new AppSettingsReader(); int moduloID = Convert.ToInt32(n.GetValue("ModuloID", typeof(int))); Dictionary <string, Object> datosImprimir = contratoBR.ObtenerPlantillaCheckList(dataContext, new ContratoRDBO { Sucursal = new SucursalBO { UnidadOperativa = new UnidadOperativaBO { Id = this.vista.UnidadAdscripcionID.Value } } }, moduloID); vista.EstablecerPaqueteNavegacionImprimir("CU012", datosImprimir); vista.IrAImprimir(); } catch (Exception ex) { throw new Exception(nombreClase + ".ImprimirPlantillaCheckListRD: Inconsistencia al intentar cargar los datos a imprimir." + ex.Message); } }
/// <summary> /// Constructor del presentador /// </summary> /// <param name="vistaActual">Vista Actual</param> public ConsultarContratoRDPRE(IConsultarContratoRDVIS vistaActual, ucHerramientasRDPRE herramientas) { try { if (vistaActual != null) { vista = vistaActual; } else { throw new Exception("La vista proporcionada no puede ser nula."); } HerramientasPRE = herramientas; dataContext = Facade.SDNI.BR.FacadeBR.ObtenerConexion(); Controlador = new ContratoRDBR(); } catch (Exception ex) { vista.MostrarMensaje("Inconsistencias en la construcción del presentador", ETipoMensajeIU.ERROR, nombreClase + ".ConsultarContratosFSLPRE: " + 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"); } }