Пример #1
0
 public void AgregarArchivo(ArchivoBO archivoBO)
 {
     if (NuevosArchivos == null)
     {
         NuevosArchivos = new List <ArchivoBO>();
     }
     NuevosArchivos.Add(archivoBO);
     DespliegaArchivos();
 }
Пример #2
0
 public MemoryStream GetData(int archivoID)
 {
     archivoBO = this.presentador.ObtenerArchivoDescargable(archivoID);
     if (archivoBO != null)
     {
         MemoryStream ReturnStream = new MemoryStream(archivoBO.Archivo);
         return(ReturnStream);
     }
     return(null);
 }
Пример #3
0
 public ArchivoBO ObtenerArchivoDescargable(int archivoID)
 {
     try
     {
         ArchivoBR archivoBR = new ArchivoBR();
         ArchivoBO archivoBO = archivoBR.ConsultarCompleto(dctx, archivoID);
         return(archivoBO);
     }
     catch (Exception ex)
     {
         throw new Exception("No se pudo obtener el archivo de descarga");
     }
 }
Пример #4
0
 protected void grdArchivos_RowCommand(object sender, GridViewCommandEventArgs e)
 {
     switch (e.CommandName.Trim())
     {
     case "eliminar": {
         try {
             int       index   = Convert.ToInt32(e.CommandArgument);
             ArchivoBO archivo = this.NuevosArchivos[index];
             this.EliminaArchivo(archivo);
         } catch (Exception ex) {
             MostrarMensaje("No fué posible eliminar el elemento", ETipoMensajeIU.ERROR, ex.Message);
         }
         break;
     }
     }
 }
Пример #5
0
 public void EliminaArchivo(ArchivoBO archivoBO)
 {
     if (archivoBO != null)
     {
         if (NuevosArchivos.Contains(archivoBO))
         {
             if (archivoBO.Id != null)
             {
                 archivoBO.Activo = false;
             }
             else
             {
                 NuevosArchivos.Remove(archivoBO);
             }
             DespliegaArchivos();
         }
     }
 }
Пример #6
0
        public void AgregarArchivo()
		{
            if (!vista.ValidaArchivo()) return;
			ArchivoBO archivoBO = new ArchivoBO();
            archivoBO.Nombre = vista.ObtenerNombreArchivo();
            archivoBO.TipoAdjunto = vista.TipoAdjunto;
			archivoBO.Activo = true;
            archivoBO.Archivo = vista.ObtenerArchivosBytes();
            archivoBO.Observaciones = vista.ObtenerObservaciones();
            String tipo = vista.ObtenerExtension();
            TipoArchivoBO tipoArchivo = ValidarArchivo(tipo);
            if (tipoArchivo != null)
            {
                archivoBO.TipoArchivo = tipoArchivo;
                vista.AgregarArchivo(archivoBO);
            }
            vista.LimpiaCampos();
        }
Пример #7
0
        protected void grdArchivos_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                ArchivoBO archivoBO    = (ArchivoBO)e.Row.DataItem;
                Label     lblExtension = e.Row.FindControl("lblExtension") as Label;
                if (lblExtension != null)
                {
                    string extension = string.Empty;
                    if (archivoBO.TipoArchivo != null)
                    {
                        if (archivoBO.TipoArchivo.Extension != null)
                        {
                            extension = archivoBO.TipoArchivo.Extension;
                        }
                    }
                    lblExtension.Text = extension;
                }

                if (archivoBO.Id != null)
                {
                    ImageButton imgBtn = (ImageButton)e.Row.FindControl("ibtDescargar");
                    imgBtn.OnClientClick = "javascript:window.open('../Comun.UI/hdlrCatalogoDocumentos.ashx?archivoID=" + archivoBO.Id + "'); return false;";
                }

                if (this.ModoEdicion != null)
                {
                    if (this.ModoEdicion == false)
                    {
                        ImageButton imgBtn = (ImageButton)e.Row.FindControl("ibtEliminar");
                        imgBtn.Visible = false;
                    }
                }

                if (archivoBO.Activo == false)
                {
                    e.Row.Attributes["style"] = "display:none";
                }
            }
        }
        /// <summary>
        /// Registra un Contrato RO
        /// </summary>
        private void Registrar()
        {
            #region Se inicia la Transaccion
            dctx.SetCurrentProvider("Outsourcing");
            Guid firma = Guid.NewGuid();
            try {
                dctx.OpenConnection(firma);
                dctx.BeginTransaction(firma);
            } catch (Exception) {
                if (dctx.ConnectionState == ConnectionState.Open)
                {
                    dctx.CloseConnection(firma);
                }
                throw new Exception("Se encontraron inconsistencias al insertar el Contrato.");
            }
            #endregion

            try {
                //Se obtiene la información a partir de la Interfaz de Usuario
                ContratoPSLBO bo = (ContratoPSLBO)this.InterfazUsuarioADato();
                if (bo.Estatus == EEstatusContrato.EnPausa)
                {
                    #region LLenar el anexo por cambios en la renovación.
                    AnexosContratoPSLBO anexo = new AnexosContratoPSLBO();
                    anexo.FechaInicio             = bo.FechaInicioActual;
                    anexo.FechaFin                = bo.FechaPromesaActual;
                    anexo.FechaIntercambioUnidad  = null;
                    anexo.MontoTotalArrendamiento = bo.MontoTotalArrendamiento;
                    anexo.TipoAnexoContrato       = ETipoAnexoContrato.Contrato;
                    anexo.Vigente       = true;
                    anexo.ContratoPSLID = this.vista.ContratoID;
                    anexo.FC            = this.vista.FUA;
                    anexo.FUA           = this.vista.FUA;
                    anexo.UC            = this.vista.UUA;
                    anexo.UUA           = this.vista.UUA;

                    ArchivoBO archivo = new ArchivoBO();
                    archivo.Activo    = true;
                    archivo.Auditoria = new AuditoriaBO {
                        FC = this.vista.FUA, FUA = this.vista.FUA, UC = this.vista.UUA, UUA = this.vista.UUA
                    };
                    archivo.TipoAdjunto = ETipoAdjunto.AnexoContrato;
                    archivo.TipoArchivo = this.presentadorDocumentos.Vista.TiposArchivo.Find(x => x.Extension.ToUpper() == "PDF");

                    Random random = new Random();
                    archivo.Nombre      = "Anexo_" + DateTime.Now.ToShortDateString().Replace("/", string.Empty) + random.Next(99999).ToString() + ".pdf";
                    archivo.NombreCorto = archivo.Nombre;

                    Dictionary <string, object> dataSources = new Dictionary <string, object>();
                    #region Consulta periodoTarifario.
                    List <DiaPeriodoTarifaBO> lstTemp         = new List <DiaPeriodoTarifaBO>();
                    DiaPeriodoTarifaBR        periodoTarifaBR = new DiaPeriodoTarifaBR();
                    lstTemp = periodoTarifaBR.Consultar(dctx, new DiaPeriodoTarifaBO()
                    {
                        UnidadOperativaID = this.vista.UnidadOperativaID
                    });
                    if (lstTemp.Count == 1)
                    {
                        dataSources.Add("PeriodoTarifa", lstTemp[0]);
                    }
                    if (!string.IsNullOrEmpty(bo.Divisa.MonedaDestino.Codigo))
                    {
                        MonedaBO moneda = FacadeBR.ConsultarMoneda(this.dctx, new MonedaBO()
                        {
                            Codigo = bo.Divisa.MonedaDestino.Codigo
                        }).FirstOrDefault();
                        dataSources.Add("Moneda", moneda);
                    }
                    #endregion
                    dataSources["ContratoPSLBO"] = bo;
                    ContratoAnexoROCRPT reporteCorrectivo = new ContratoAnexoROCRPT(dataSources);
                    using (MemoryStream stream = new MemoryStream()) {
                        reporteCorrectivo.CreateDocument();
                        reporteCorrectivo.ExportToPdf(stream);
                        archivo.Archivo = stream.GetBuffer();
                    }
                    anexo.AgregarAnexo(archivo);
                    bo.AgregarAnexoContrato(anexo);
                    #endregion

                    #region Llenando información del pago
                    GeneradorPagoPSLBR generadorPago = new GeneradorPagoPSLBR();
                    //Cuando se genera el pago se llenan los campos de acumulados de tarifas
                    generadorPago.ObtenerPagos(new PagoContratoPSLBO(), bo, null, 0, ETipoPago.NORMAL);
                    #endregion
                }

                //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 inserta en la base de datos
                this.controlador.InsertarCompleto(this.dctx, bo, seguridadBO);
                //Se consulta lo insertado para recuperar los ID
                DataSet ds = this.controlador.ConsultarSet(this.dctx, bo);
                if (ds.Tables[0].Rows.Count <= 0)
                {
                    throw new Exception("Al consultar lo insertado no se encontraron coincidencias.");
                }
                if (ds.Tables[0].Rows.Count > 1)
                {
                    throw new Exception("Al consultar lo insertado se encontró más de una coincidencia.");
                }

                bo.ContratoID = this.controlador.DataRowToContratoPSLBO(ds.Tables[0].Rows[0]).ContratoID;

                //El proceso de generación de pagos es eliminado de esta sección
                dctx.CommitTransaction(firma);

                //Se despliega la información en la Interfaz de Usuario
                this.DatoAInterfazUsuario(bo);
            } catch (Exception ex) {
                dctx.RollbackTransaction(firma);
                throw new Exception(this.nombreClase + ".Registrar:" + ex.Message);
            } finally {
                if (dctx.ConnectionState == ConnectionState.Open)
                {
                    dctx.CloseConnection(firma);
                }
            }
        }