Пример #1
0
        public bool EliminarLibro(Libro unLibro)
        {
            try
            {
                if (!IsLibroEliminable(unLibro))
                {
                    return(false);
                }
                if (unLibro.Id == 0)
                {
                    return(true);
                }

                _contexto.Capitulos.RemoveRange(_contexto.Capitulos.Where(a => a.Id_Libro == unLibro.Id));
                _contexto.Libros.Remove(unLibro);
                _contexto.SaveChanges();

                return(true);
            }
            catch (Exception ex)
            {
                _errorMsg = "Ocurrio un error al eliminar el libro. Ver el log Error";
                StaticFileManager.LogError(ex);
                return(false);
            }
        }
Пример #2
0
        public bool EliminarTipoEstante(Tipo_Estante tipoEstante)
        {
            try
            {
                if (tipoEstante.Id == 0)
                {
                    return(true);
                }

                if (!this.IsTipoEstanteEliminable(tipoEstante))
                {
                    return(false);
                }

                _contexto.Tipo_Estantes.Remove(tipoEstante);
                _contexto.SaveChanges();

                return(true);
            }
            catch (Exception ex)
            {
                _errorMsg = "Ocurrio un error al eliminar el tipo estante. Ver el LogError";
                StaticFileManager.LogError(ex);
                return(false);
            }
        }
Пример #3
0
        public bool GuardarLibro(Libro unLibro)
        {
            if (unLibro.Descripcion == null)
            {
                unLibro.Descripcion = "";
            }

            try
            {
                if (!Valid(unLibro))
                {
                    return(false);
                }

                if (unLibro.Id == 0)
                {
                    _contexto.Libros.Add(unLibro);
                }

                _contexto.SaveChanges();
                return(true);
            }
            catch (Exception ex)
            {
                _errorMsg = "Ocurrio un error al guardar el libro. Ver el LogError";
                StaticFileManager.LogError(ex);
                return(false);
            }
        }
        public ParametrosConfiguracion LodXMLFileConfig()
        {
            try
            {
                XmlSerializer           reader      = new XmlSerializer(typeof(ParametrosConfiguracion));
                System.IO.StreamReader  file        = new System.IO.StreamReader(configFilePath);
                ParametrosConfiguracion paramConfig = (ParametrosConfiguracion)reader.Deserialize(file);
                file.Close();

                return(paramConfig);
            }
            catch (Exception ex)
            {
                StaticFileManager.LogError(ex);
                return(null);
            }
        }
Пример #5
0
        public bool GuardarCapitulo(Capitulo unCapitulo /*,string textoRTF*/)
        {
            try
            {
                Libro libro = _contexto.Libros.Where(a => a.Id == unCapitulo.Id_Libro).FirstOrDefault();

                if (libro == null)
                {
                    throw new Exception("No se encontro el libro. Error al guardar el nuevo capitulo");
                }

                if (!Valid(unCapitulo))
                {
                    return(false);
                }

                if (unCapitulo.Id == 0)
                {
                    _contexto.Capitulos.Add(unCapitulo);
                    libro.Total_Capitulos++;
                }
                //else
                //{
                //    if (!StaticFileManager.DeleteRTFDoc(unCapitulo.DocPath))
                //        throw new Exception("Ocurrio un error mientras generaba/actualizaba el documento rtf");
                //}

                unCapitulo.DocPath = "";
                //string docPath = StaticFileManager.SaveRTFDoc(libro.Estanteria.Titulo_Estante, libro.Titulo, unCapitulo.Titulo, textoRTF);
                //if (docPath != "")
                //    unCapitulo.DocPath = docPath;
                //else
                //    throw new Exception("Ocurrio un error mientras generaba/actualizaba el documento rtf");

                _contexto.SaveChanges();
                return(true);
            }
            catch (Exception ex)
            {
                StaticFileManager.LogError(ex);
                _errorMsg = "Ocurrio un error al guardar el capitulo. Ver el LogError";
                return(false);
            }
        }
Пример #6
0
        public List <Libro> GetLibros(ParamBusquedaLibro param, bool incluirPublicos = true)
        {
            try
            {
                //var libros = (from l in _contexto.Libros
                //              where
                //              (l.Id_Usuario == StaticUserLogin.Id || l.IsPublico)
                //              && (param.Id_Libro == 0 || (param.Id_Libro != 0 && l.Id == param.Id_Libro))
                //              && (param.Id_Estanteria == 0 || (param.Id_Estanteria != 0 && l.Id_Estanteria == param.Id_Estanteria))
                //              && (param.Id_Tipo_Estante == 0 || (param.Id_Tipo_Estante != 0 && l.Estanteria.Id_Tipo_Estante == param.Id_Tipo_Estante))
                //              && (param.TituloLibro == "" || (param.TituloLibro != "" && l.Titulo.ToUpper().Contains(param.TituloLibro.ToUpper())))
                //              select l).OrderBy(a => a.Titulo).ToList();

                string query = string.Format("select l.Id " +
                                             "from Libros l " +
                                             "inner join Estanterias e on l.Id_Estanteria = e.Id " +
                                             "inner join Usuarios u on l.Id_Usuario = u.Id " +
                                             "left join Capitulos c on l.Id = c.Id_Libro " +
                                             "where " +
                                             "(l.Id_Usuario = {0} or l.IsPublico = 1) " +
                                             "and({1} = 0 or({1} <> 0 and l.Id = {1})) " +
                                             "and({2} = 0 or({2} <> 0 and l.Id_Estanteria = {2})) " +
                                             "and('{3}' = '' or('{3}' <> '' and l.Titulo like '%{3}%')) " +
                                             "and({4} = 0 or({4} <> 0 and c.Id = {4})) " +
                                             "and('{5}' = '' or('{5}' <> '' and c.Titulo like '%{5}%'))", StaticUserLogin.Id, param.Id_Libro, param.Id_Estanteria, param.TituloLibro, param.Id_Capitulo, param.TituloCapitulo);

                List <int> ids_Libros = _contexto.Database.SqlQuery <int>(query).ToList();
                var        libros     = _contexto.Libros.Where(a => ids_Libros.Contains(a.Id)).ToList();

                if (!incluirPublicos)
                {
                    libros.RemoveAll(a => a.Id_Usuario != StaticUserLogin.Id && a.IsPublico);
                }

                return(libros);
            }
            catch (Exception ex)
            {
                StaticFileManager.LogError(ex);
                _errorMsg = "Ocurrio un error al realizar la busqueda";
                return(null);
            }
        }
Пример #7
0
        public bool EliminarEstante(Estanteria unEstante)
        {
            try
            {
                if (!IsEstanteEliminable(unEstante))
                {
                    return(false);
                }

                _contexto.Estanterias.Remove(unEstante);
                _contexto.SaveChanges();
                return(true);
            }
            catch (Exception ex)
            {
                _errorMsg = "Ocurrio un error al eliminar el estante. Ver el LogError";
                StaticFileManager.LogError(ex);
                return(false);
            }
        }
Пример #8
0
        public bool MarcarDesmarcarLibroFavorito(Libro unLibro)
        {
            try
            {
                if (unLibro.Id != StaticUserLogin.Id)
                {
                    _errorMsg = "No se puede marcar/Desmarcar como favorito un libro de otro usuario";
                    return(false);
                }

                unLibro.IsFavorito = !unLibro.IsFavorito;
                _contexto.SaveChanges();
                return(true);
            }
            catch (Exception ex)
            {
                StaticFileManager.LogError(ex);
                _errorMsg = "Ocurrio un error al marcar el libro como favorito";
                return(false);
            }
        }
        public void GenerateXMLFileConfig()
        {
            try
            {
                if (System.IO.File.Exists(configFilePath))
                {
                    return;
                }

                ParametrosConfiguracion paramConfig = new ParametrosConfiguracion();

                Directory.CreateDirectory(Directory.GetCurrentDirectory() + "\\DataBase");
                Parametro p1 = new Parametro()
                {
                    TipoParametros = Parametro.EnumTipoParametros.ConnectionString.ToString("g"),
                    Valor          = "Data Source =.\\SQLExpress; AttachDbFilename =" + Directory.GetCurrentDirectory() + "\\DataBase\\BibliotecaMoshi.mdf; Database = BibliotecaMoshiDB; Trusted_Connection = Yes"
                };

                Directory.CreateDirectory(Directory.GetCurrentDirectory() + "\\DocumentosRTF");
                Parametro p2 = new Parametro()
                {
                    TipoParametros = Parametro.EnumTipoParametros.DocumentsPahts.ToString("g"),
                    Valor          = System.IO.Directory.GetCurrentDirectory() + "\\DocumentosRTF"
                };

                paramConfig.Parametros.Add(p1);
                paramConfig.Parametros.Add(p2);

                XmlSerializer        writer = new XmlSerializer(typeof(ParametrosConfiguracion));
                System.IO.FileStream file   = System.IO.File.Create(configFilePath);
                writer.Serialize(file, paramConfig);
                file.Close();
            }
            catch (Exception ex)
            {
                StaticFileManager.LogError(ex);
            }
        }
Пример #10
0
        public bool EliminarCapitulo(Capitulo unCapitulo)
        {
            try
            {
                if (!IsCapituloEliminable(unCapitulo))
                {
                    return(false);
                }
                if (unCapitulo.Id == 0)
                {
                    return(true);
                }

                Libro unLibro = this.GetLibroById(unCapitulo.Id_Libro);
                unLibro.Total_Capitulos--;
                if (unLibro.Total_Capitulos < 0)
                {
                    unLibro.Total_Capitulos = 0;
                }

                if (!StaticFileManager.DeleteRTFDoc(unCapitulo.DocPath))
                {
                    throw new Exception("Ocurrio un error cuando se intento eliminar el documento rtf del disco");
                }

                _contexto.Capitulos.Remove(unCapitulo);
                _contexto.SaveChanges();
                return(true);
            }
            catch (Exception ex)
            {
                StaticFileManager.LogError(ex);
                _errorMsg = "Ocurrio un error al eliminar el capitulo. Ver el LogError";
                return(false);
            }
        }
Пример #11
0
        public bool GuardarTipoEstante(Tipo_Estante tipoEstante)
        {
            try
            {
                if (!Valid(tipoEstante))
                {
                    return(false);
                }

                if (tipoEstante.Id == 0)
                {
                    this._contexto.Tipo_Estantes.Add(tipoEstante);
                }

                this._contexto.SaveChanges();
                return(true);
            }
            catch (Exception ex)
            {
                _errorMsg = "Ocurrio un error al eliminar el tipo estante. Ver el LogError";
                StaticFileManager.LogError(ex);
                return(false);
            }
        }
Пример #12
0
        public bool GuardarEstante(Estanteria unEstante)
        {
            try
            {
                if (!Valid(unEstante))
                {
                    return(false);
                }

                if (unEstante.Id == 0)
                {
                    _contexto.Estanterias.Add(unEstante);
                }

                _contexto.SaveChanges();
                return(true);
            }
            catch (Exception ex)
            {
                _errorMsg = "Ocurrio un error mientras se guardan los cambios. Ver el LogError";
                StaticFileManager.LogError(ex);
                return(false);
            }
        }
Пример #13
0
        public bool EliminarUsuario(Usuario user)
        {
            try
            {
                if (user.Id == 0)
                {
                    return(true);
                }
                if (!IsEliminable(user))
                {
                    return(false);
                }

                _contexto.Usuarios.Remove(user);
                _contexto.SaveChanges();
                return(true);
            }
            catch (Exception ex)
            {
                StaticFileManager.LogError(ex);
                _errorMsg = "Ocurrio un error al eliminar al usuario. Ver LogError";
                return(false);
            }
        }
Пример #14
0
        public bool GuardarUsuario(Usuario user)
        {
            try
            {
                if (!Valid(user))
                {
                    return(false);
                }

                if (user.Id == 0)
                {
                    _contexto.Usuarios.Add(user);
                }

                _contexto.SaveChanges();
                return(true);
            }
            catch (Exception ex)
            {
                StaticFileManager.LogError(ex);
                _errorMsg = "Ocurrio un error mientras se guardaba el usuario. Ver LogError";
                return(false);
            }
        }