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 })); }
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)); }
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); }
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; } }