/// <summary> /// Guarda Registro de los documentos cargados para el pase de salida /// </summary> /// <param name="documentos"></param> /// <returns></returns> public object GuardarDocumentoPaseSalida(List <DocumentoPosteado> documentos) { try { using (SamContext ctx = new SamContext()) { int Folio = documentos[0].FolioAvisoLlegadaID.GetValueOrDefault(); //Actualizamos el dato de Pase Salida Enviado del Folio aviso Llegada Sam3_FolioAvisoLlegada folioBd = ctx.Sam3_FolioAvisoLlegada.Where(x => x.FolioAvisoLlegadaID == Folio && x.Activo) .AsParallel().SingleOrDefault(); foreach (DocumentoPosteado d in documentos) { int tipoArchivoId = ctx.Sam3_TipoArchivo.Where(x => x.Nombre == d.TipoArchivoPaseSalida && x.Activo).Select(x => x.TipoArchivoID) .AsParallel().SingleOrDefault(); Sam3_Rel_FolioAvisoLlegada_PaseSalida_Archivo nuevoDoc = new Sam3_Rel_FolioAvisoLlegada_PaseSalida_Archivo(); nuevoDoc.Activo = true; nuevoDoc.ContentType = d.ContentType; nuevoDoc.DocGuid = d.DocGuid; nuevoDoc.DocumentoID = 0; nuevoDoc.Extencion = d.Extencion; nuevoDoc.FechaModificacion = DateTime.Now; nuevoDoc.FolioAvisoLlegadaID = folioBd.FolioAvisoLlegadaID; nuevoDoc.Nombre = d.FileName; nuevoDoc.TipoArchivoID = tipoArchivoId; nuevoDoc.Url = d.Path; nuevoDoc.UsuarioModificacion = d.UserId; nuevoDoc.IncidenciaID = d.IncidenciaID == -1 ? null : d.IncidenciaID; ctx.Sam3_Rel_FolioAvisoLlegada_PaseSalida_Archivo.Add(nuevoDoc); } ctx.SaveChanges(); return(true); } } catch (Exception ex) { //-----------------Agregar mensaje al Log ----------------------------------------------- LoggerBd.Instance.EscribirLog(ex); //-----------------Agregar mensaje al Log ----------------------------------------------- return(false); } }
/// <summary> /// Elimina logicamente un documento de pase de salida /// </summary> /// <param name="documentoID"></param> /// <param name="usuario"></param> /// <returns></returns> public object EliminarDocumentoPaseSalida(int documentoID, Sam3_Usuario usuario) { try { using (SamContext ctx = new SamContext()) { Sam3_Rel_FolioAvisoLlegada_PaseSalida_Archivo docBd = ctx.Sam3_Rel_FolioAvisoLlegada_PaseSalida_Archivo .Where(x => x.Rel_Folio_PaseSalida_Archivo_ID == documentoID).AsParallel().SingleOrDefault(); docBd.Activo = false; docBd.FechaModificacion = DateTime.Now; docBd.UsuarioModificacion = usuario.UsuarioID; ctx.SaveChanges(); TransactionalInformation result = new TransactionalInformation(); result.ReturnMessage.Add("Ok"); result.ReturnCode = 200; result.ReturnStatus = false; result.IsAuthenicated = true; return(result); } } catch (Exception ex) { //-----------------Agregar mensaje al Log ----------------------------------------------- LoggerBd.Instance.EscribirLog(ex); //-----------------Agregar mensaje al Log ----------------------------------------------- TransactionalInformation result = new TransactionalInformation(); result.ReturnMessage.Add(ex.Message); result.ReturnCode = 500; result.ReturnStatus = false; result.IsAuthenicated = true; return(result); } }