public Stream DownloadFile(string id, string uuid, string codigo)
        {
            try
            {
                alfadbEntities db = new alfadbEntities();

                int LibroId = Int16.Parse(id);

                //codigos Libro = db.codigos.Where(c => c.Codigo == codigo && c.UUID == uuid && ).Single()
                libroscodigos Libro = db.libroscodigos.Include(i => i.codigos).Include(i => i.libros).Where(c => c.codigos.Codigo == codigo && c.codigos.UUID == uuid && c.libros.Id == LibroId).SingleOrDefault();


                //string downloadFilePath = Path.Combine(HostingEnvironment.MapPath("~/FileServer/Extracts"), fileName + "." + fileExtension);
                string downloadFilePath = Path.Combine("C:\\Descargar_Libros\\", Libro.libros.Nombre + ".zip");

                // open stream
                System.IO.FileStream stream = new System.IO.FileStream(downloadFilePath, System.IO.FileMode.Open, System.IO.FileAccess.Read);

                String headerInfo = "attachment; filename=" + Libro.libros.Nombre + ".zip";
                WebOperationContext.Current.OutgoingResponse.Headers["Content-Disposition"] = headerInfo;

                HttpContext.Current.Response.Headers.Add("Content-Length", stream.Length.ToString());
                WebOperationContext.Current.OutgoingResponse.ContentType = "application/octet-stream";


                return(stream);
            }
            catch (Exception ex)
            {
                return(null);
            }
        }
Exemple #2
0
        public List <versiones> Actualizaciones(long libroId, long version, string uuid)
        {
            try
            {
                alfadbEntities db = new alfadbEntities();

                //Verifica si el libro se encuntra asociado al uuid
                libroscodigos libro = db.libroscodigos.Where(i => i.UUID == uuid && i.LibroId == libroId).SingleOrDefault();

                if (libro == null)
                {
                    throw new Exception("Este libro no se encuentra asociado a tu libreria");
                }

                //Busca una version disponible para el libro
                List <versiones> LstVersionesLibro = db.versiones.Where(i => i.LibroId == libroId && i.Version > version).ToList();

                return(LstVersionesLibro);
            }
            catch (Exception ex)
            {
                Error(ex, "El libro");
                return(null);
            }
        }
Exemple #3
0
        public List <libroscodigos> ChecarSaldo(long libroId, string uuid)
        {
            List <string> tokens = new List <string>();

            try
            {
                alfadbEntities db = new alfadbEntities();
                libroscodigos  ObjLibrosCodigos = new libroscodigos();

                // List<libroscodigos> Lstlibroscodigos = db.libroscodigos.AsNoTracking().Include(c=>c.codigos).Where(c => c.codigos.UUID== uuid).Where(Libroid=>Libroid.LibroId==null).ToList();
                List <libroscodigos> Lstlibroscodigos = db.libroscodigos.AsNoTracking().Where(c => c.UUID == uuid && c.LibroId == null).Include(a => a.codigos).ToList();
                if (Lstlibroscodigos.Count >= 1)
                {
                    //se llena el objeto libroscodigo para hacer el update table:libroscodigos
                    ObjLibrosCodigos.Id      = Lstlibroscodigos.First().Id;
                    ObjLibrosCodigos.LibroId = libroId;
                    ObjLibrosCodigos.Activo  = "SI";

                    // db.libroscodigos.Attach(ObjLibrosCodigos);
                    db.Entry(ObjLibrosCodigos).State = System.Data.Entity.EntityState.Modified;
                    db.Entry(ObjLibrosCodigos).Property(p => p.CodigoId).IsModified = false;
                    db.Entry(ObjLibrosCodigos).Property(p => p.Activo).IsModified   = false;
                    db.Entry(ObjLibrosCodigos).Property(p => p.UUID).IsModified     = false;


                    db.SaveChanges();
                }
                return(Lstlibroscodigos);
            }
            catch (Exception ex)
            {
                Error(ex, "Ya cuentas con este libro, intenta con otro libro");
                tokens.Add("");
                return(null);
            }
        }