Ejemplo n.º 1
0
        public async Task <bool> ActualizarDocumentoAdjunto(DocumentoAdjunto documentoAdjunto)
        {
            try
            {
                var dbAttachment = await _context.DocumentoAdjunto.Where(att => att.Id == documentoAdjunto.Id).FirstOrDefaultAsync();

                documentoAdjunto.FechaModifica     = DateTime.Now;
                documentoAdjunto.Guid              = dbAttachment.Guid;
                documentoAdjunto.NombreUsuarioCrea = dbAttachment.NombreUsuarioCrea;
                documentoAdjunto.FechaRegistro     = dbAttachment.FechaRegistro;

                _context.Entry(dbAttachment).Property(x => x.Id).IsModified = false;

                //Update attachment
                _context.Entry(dbAttachment).CurrentValues.SetValues(documentoAdjunto);

                _context.Entry(dbAttachment).State     = EntityState.Detached;
                _context.Entry(documentoAdjunto).State = EntityState.Modified;

                return(await _context.SaveChangesAsync() > 0);
            }
            catch (Exception)
            {
                throw;
            }
        }
        public async Task <int> CrearDocumentoAdjunto(DocumentoAdjunto documentoAdjunto)
        {
            try
            {
                string RutaServer = ObtenerRutaServidor();


                //Se combierte el stream del documento adjutno en butes
                Byte[] bytes = Convert.FromBase64String(documentoAdjunto.Stream);

                //Se valida si existe la carpeta en el servidor
                if (!Directory.Exists($"{RutaServer}"))
                {
                    Directory.CreateDirectory($"{RutaServer}");
                }

                //se guarda la ruta en el documentoAfjunto para registrarla en la base de datos
                string nameSystem = $"{Guid.NewGuid().ToString()}.{documentoAdjunto.NombreArchivo.Split('.')[1]}";
                documentoAdjunto.Ruta   = $"{RutaServer}{nameSystem}";
                documentoAdjunto.Nombre = nameSystem;

                await File.WriteAllBytesAsync(documentoAdjunto.Ruta, bytes);

                documentoAdjunto.NombreUsuarioCrea = "admin";

                return(await _repository.CrearDocumentoAdjunto(documentoAdjunto));
            }
            catch (Exception)
            {
                throw;
            }
        }
        public ActionResult DeleteConfirmed(int id, int?DocumentoID, string Controladora)
        {
            DocumentoAdjunto documentoAdjunto = db.DocumentoAdjuntoes.Find(id);

            db.DocumentoAdjuntoes.Remove(documentoAdjunto);
            db.SaveChanges();
            //return RedirectToAction("Index");
            return(RedirectToAction("Edit", Controladora, new { id = DocumentoID }));
        }
Ejemplo n.º 4
0
 public async Task <IActionResult> CrearDocumentoAdjunto([FromBody] DocumentoAdjunto documentoAdjunto)
 {
     try
     {
         return(Ok(await _service.CrearDocumentoAdjunto(documentoAdjunto)));
     }
     catch (Exception ex)
     {
         return(BadRequest(ex.Message));
     }
 }
        public async Task <bool> ActualizarDocumentoAdjunto(DocumentoAdjunto documentoAdjunto)
        {
            try
            {
                string RutaServer = ObtenerRutaServidor();



                //Se valida si existe la carpeta en el servidor
                if (!Directory.Exists($"{RutaServer}"))
                {
                    Directory.CreateDirectory($"{RutaServer}");
                }

                //se guarda la ruta en el documentoAfjunto para registrarla en la base de datos
                if (documentoAdjunto.Nombre == null)
                {
                    string nameSystem = $"{Guid.NewGuid().ToString()}.{documentoAdjunto.NombreArchivo.Split('.')[1]}";
                    documentoAdjunto.Ruta   = $"{RutaServer}/{nameSystem}";
                    documentoAdjunto.Nombre = nameSystem;
                }



                //Se combierte el stream del documento adjutno en butes

                if (documentoAdjunto.Stream != null)
                {
                    Byte[] bytes = Convert.FromBase64String(documentoAdjunto.Stream);
                    await File.WriteAllBytesAsync(documentoAdjunto.Ruta, bytes);
                }


                if (documentoAdjunto.Id != 0)
                {
                    //Se elimina el archivo actual registrado para este documento
                    string path = await _repository.ConsultarRutaActualPapelTrabajo(documentoAdjunto.Id);

                    //File.Delete(path);

                    return(await _repository.ActualizarDocumentoAdjunto(documentoAdjunto));
                }
                else
                {
                    return(await _repository.CrearDocumentoAdjunto(documentoAdjunto) > 0);
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
        // GET: DocumentoAdjunto/Details/5
        public ActionResult Details(int?id, int?DocumentoID, string Controladora)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            DocumentoAdjunto documentoAdjunto = db.DocumentoAdjuntoes.Find(id);

            if (documentoAdjunto == null)
            {
                return(HttpNotFound());
            }
            ViewBag.DocumentoID  = DocumentoID;
            ViewBag.Controladora = Controladora;
            return(View(documentoAdjunto));
        }
        // GET: DocumentoAdjunto/Edit/5
        public ActionResult Edit(int?id, int?DocumentoID, string Controladora)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            DocumentoAdjunto documentoAdjunto = db.DocumentoAdjuntoes.Find(id);

            if (documentoAdjunto == null)
            {
                return(HttpNotFound());
            }
            //ViewBag.OrdenID = new SelectList(db.Ordens, "OrdenID", "OrdenID", documentoAdjunto.OrdenID);
            //ViewBag.SolicitudID = new SelectList(db.Solicituds, "SolicitudID", "SolicitudOwnerID", documentoAdjunto.SolicitudID);
            ViewBag.DocumentoID  = DocumentoID;
            ViewBag.Controladora = Controladora;
            return(View(documentoAdjunto));
        }
        public async Task <DocumentoAdjunto> ConsultarDocumentoAdjuntoPorId(int documentoAdjuntoId)
        {
            try
            {
                string RutaServer = ObtenerRutaServidor();

                DocumentoAdjunto doc = await _repository.ConsultarDocumentoAdjuntoPorId(documentoAdjuntoId);

                byte[] readText = File.ReadAllBytes(doc.Ruta);
                doc.Stream = Convert.ToBase64String(readText);

                return(doc);
            }
            catch (Exception)
            {
                throw;
            }
        }
 public ActionResult Edit([Bind(Include = "DocumentoAdjuntoID,DocumentoAdjuntoFechaCreacion,DocumentoAdjuntoFechaAprobacion,DocumentoAdjuntoCargado,DocumentoAdjuntoAprobado,DocumentoAdjuntoComentario,DocumentoAdjuntoTipo,SolicitudID,OrdenID")] DocumentoAdjunto documentoAdjunto)
 {
     if (ModelState.IsValid)
     {
         db.Entry(documentoAdjunto).State = EntityState.Modified;
         db.SaveChanges();
         //return RedirectToAction("Index");
         if (documentoAdjunto.SolicitudID != null)
         {
             return(RedirectToAction("Edit", "Solicitud", new { id = documentoAdjunto.SolicitudID }));
         }
         else if (documentoAdjunto.OrdenID != null)
         {
             return(RedirectToAction("Edit", "Orden", new { id = documentoAdjunto.OrdenID }));
         }
     }
     //ViewBag.OrdenID = new SelectList(db.Ordens, "OrdenID", "OrdenID", documentoAdjunto.OrdenID);
     //ViewBag.SolicitudID = new SelectList(db.Solicituds, "SolicitudID", "SolicitudID", documentoAdjunto.SolicitudID);
     return(View(documentoAdjunto));
 }
        // GET: DocumentoAdjunto/Create
        public ActionResult Create(int?DocumentoID, string Controladora)
        {
            //ViewBag.OrdenID = new SelectList(db.Ordens, "OrdenID", "OrdenID");
            //ViewBag.SolicitudID = new SelectList(db.Solicituds, "SolicitudID", "SolicitudOwnerID");
            ViewBag.DocumentoID  = DocumentoID;
            ViewBag.Controladora = Controladora;
            DocumentoAdjunto documentoAdjunto = new DocumentoAdjunto();

            if (Controladora == "Solicitud")
            {
                documentoAdjunto.SolicitudID = DocumentoID;
                documentoAdjunto.OrdenID     = null;
            }
            else if (Controladora == "Orden")
            {
                documentoAdjunto.OrdenID     = DocumentoID;
                documentoAdjunto.SolicitudID = null;
            }

            return(View(documentoAdjunto));
        }
Ejemplo n.º 11
0
        public int MantenimientoDocumentoAdjunto(DocumentoAdjunto objDocumentoAdjuntop)
        {
            int r = 0;

            using (SqlConnection conn = DataContext.GetConnection())
            {
                var listaParams = new List <SqlParameter>();
                listaParams.Add(new SqlParameter("@IdDocumentoAdjunto", SqlDbType.VarChar)
                {
                    Direction = ParameterDirection.Input, Value = objDocumentoAdjuntop.IdDocumentoAdjunto
                });
                listaParams.Add(new SqlParameter("@Nombre", SqlDbType.VarChar)
                {
                    Direction = ParameterDirection.Input, Value = objDocumentoAdjuntop.Nombre
                });
                listaParams.Add(new SqlParameter("@Ruta", SqlDbType.VarChar)
                {
                    Direction = ParameterDirection.Input, Value = objDocumentoAdjuntop.Ruta
                });
                listaParams.Add(new SqlParameter("@Fecha", SqlDbType.DateTime)
                {
                    Direction = ParameterDirection.Input, Value = objDocumentoAdjuntop.Fecha
                });
                listaParams.Add(new SqlParameter("@IdPersona", SqlDbType.VarChar)
                {
                    Direction = ParameterDirection.Input, Value = objDocumentoAdjuntop.IdPersona
                });
                listaParams.Add(new SqlParameter("@IdDigitalizacion", SqlDbType.VarChar)
                {
                    Direction = ParameterDirection.Input, Value = objDocumentoAdjuntop.IdDigitalizacion
                });
                listaParams.Add(new SqlParameter("@IdDocumento", SqlDbType.VarChar)
                {
                    Direction = ParameterDirection.Input, Value = objDocumentoAdjuntop.IdDocumento
                });
                r = SQLHelper.ExecuteNonQuery(conn, System.Data.CommandType.StoredProcedure, @"Sp_DocumentoAdjuntoMantenimiento", listaParams.ToArray());
            }
            return(r);
        }
Ejemplo n.º 12
0
        public async Task <int> CrearDocumentoAdjunto(DocumentoAdjunto documentoAdjunto)
        {
            try
            {
                if (documentoAdjunto.Guid != null)
                {
                    documentoAdjunto.Guid = Guid.NewGuid();
                }

                documentoAdjunto.FechaRegistro = DateTime.Now;
                documentoAdjunto.Descripcion   = "DocumentoAdjunto";

                _context.Entry(documentoAdjunto).State = EntityState.Added;
                await _context.SaveChangesAsync();

                return((await _context.DocumentoAdjunto.SingleAsync(a => a.Guid == documentoAdjunto.Guid)).Id);
            }
            catch (Exception ex)
            {
                throw;
            }
        }