Пример #1
0
        public async Task <IActionResult> AdicionarAutor(Autores autor)
        {
            await Token.CheckCookies(HttpContext);

            var token = Token.GetToken(HttpContext);

            try
            {
                if (ModelState.IsValid)
                {
                    if (HttpContext.Request.Form.Files != null)
                    {
                        //pega todos os arquivos enviados via POST
                        var arquivos = HttpContext.Request.Form.Files;

                        //chama a função que vai salvar a imagem na pasta indicada
                        var diretorioImagem = new FilesManipulation().SalvarFoto(_environment.WebRootPath, "imgsAutores\\Imagens", arquivos);
                        autor.Foto = new FilesManipulation().ConverterArquivoBase64(diretorioImagem);

                        var resposta = await new AutorRequest().Insert(autor, token);

                        ViewBag.Info = resposta;
                    }
                }
            }
            catch (Exception ex)
            {
                ViewBag.Info = ex.ToString();
            }

            return(View());
        }
Пример #2
0
        public string Insert(Genero genero)
        {
            try
            {
                if (genero != null)
                {
                    if (GetGeneroByNome(genero.Nome) != null)
                    {
                        return("Genero já cadastrado na base de dados!");
                    }
                    else
                    {
                        //chama o método que formata o novo nome do autor
                        var nomeFoto = new GetNameFiles().GetNovoNome("lyfr_gender_", ".jpg");
                        //chama o método para salvar a foto
                        var salvarFoto = new FilesManipulation().ConverterDeBase64EmArquivo(_provedorDiretoriosArquivos.GetFileInfo(diretorioFotos).PhysicalPath, nomeFoto, genero.Foto);

                        //caso tenha conseguido salvar a foto, atribui o link a ela
                        //senão utiliza uma foto not found
                        if (salvarFoto)
                        {
                            genero.Foto = DefaultRoute.RotaPadrao + "/Generos/Fotos/" + nomeFoto;
                        }
                        else
                        {
                            genero.Foto = DefaultRoute.RotaPadrao + "/Generos/None/NotFound.jpg";
                        }

                        _context.Add(genero);
                        _context.SaveChanges();

                        return("Genero cadastrado com sucesso!");
                    }
                }
                else
                {
                    return("Genero é nulo! Por - favor preencha todos os campos e tente novamente!");
                }
            }
            catch (Exception)
            {
                return("Não foi possível se comunicar com a base de dados!");
            }
        }
Пример #3
0
        public string DeleteByTitulo(string titulo)
        {
            try
            {
                if (titulo == string.Empty || titulo == null || titulo == "" || string.IsNullOrWhiteSpace(titulo))
                {
                    return("Título é nulo! Tente novamente.");
                }

                var livroParaExcluir = GetLivroByTitulo(titulo);

                if (livroParaExcluir != null)
                {
                    //função que vai deletar o arquivo .epub do livro
                    var deleteEpub = new FilesManipulation().DeletarArquivo(_provedorDiretoriosArquivos.GetFileInfo(livroParaExcluir.Arquivo).PhysicalPath);

                    //pega o diretorio da capa atraves do link
                    var diretorioCapa = new FilesManipulation().PegarDiretorioLink(livroParaExcluir.Capa);

                    //deleta a capa pelo diretorio passado
                    var deleteCover = new FilesManipulation().DeletarArquivo(_provedorDiretoriosArquivos.GetFileInfo(diretorioCapa).PhysicalPath);


                    _context.Livros.Remove(livroParaExcluir);
                    _context.SaveChanges();

                    return("Livro " + livroParaExcluir.Titulo + " deletado com sucesso");
                }
                else
                {
                    return("Livro não encontrador");
                }
            }
            catch (Exception)
            {
                return("Não foi possível se comunicar com a base de dados!");
            }
        }
Пример #4
0
        public string DeleteByNome(string nome)
        {
            try
            {
                if (nome == string.Empty || nome == null || nome == "" || string.IsNullOrWhiteSpace(nome))
                {
                    return("Genero inválido! Por favor tente novamente.");
                }
                else
                {
                    var genero = GetGeneroByNome(nome);

                    if (genero != null)
                    {
                        //pega o diretorio da capa atraves do link
                        var diretorioFoto = new FilesManipulation().PegarDiretorioLink(genero.Foto);

                        //deleta a capa pelo diretorio passado
                        var deletePicture = new FilesManipulation().DeletarArquivo(_provedorDiretoriosArquivos.GetFileInfo(diretorioFoto).PhysicalPath);

                        _context.Genero.Remove(genero);
                        _context.SaveChanges();

                        return("Genero " + genero.Nome + " deletado com sucesso!");
                    }
                    else
                    {
                        return("Genero não cadastrado!");
                    }
                }
            }
            catch (Exception)
            {
                return("Não foi possível se comunicar com a base de dados!");
            }
        }
Пример #5
0
        public string Update(Livros livroRecebido)
        {
            try
            {
                var livroAlterar = GetLivroById(livroRecebido.IdLivro);

                if (livroRecebido != null)
                {
                    //caso a capa enviada tenha sido diferente de nulo
                    if (livroRecebido.Capa != null)
                    {
                        //pega o nome do arquivo atraves do link
                        var nomeCapa      = new GetNameFiles().GetCoverNameFileByLink(livroAlterar.Capa);
                        var diretorioCapa = diretorioCapas + "/" + nomeCapa;

                        //deleta o arquivo antigo
                        var deletarArquivo = new FilesManipulation().DeletarArquivo(_provedorDiretoriosArquivos.GetFileInfo(diretorioCapa).PhysicalPath);

                        //escreve a capa nova
                        var nomeNovaCapa     = new GetNameFiles().GetNovoNome("lyfr_cover", ".jpg");
                        var escreverNovaCapa = new FilesManipulation().ConverterDeBase64EmArquivo(_provedorDiretoriosArquivos.GetFileInfo(diretorioCapas).PhysicalPath, nomeNovaCapa, livroRecebido.Capa);

                        //atribui a nova capa ao livro que será alterado
                        livroAlterar.Capa = DefaultRoute.RotaPadrao + "/Livros/Capas/" + nomeNovaCapa;
                    }

                    if (livroRecebido.Arquivo != null)
                    {
                        //pega o nome do arquivo através dos dados no banco
                        var nomeArquivo      = new GetNameFiles().GetFileNameFileByLink(livroAlterar.Arquivo);
                        var diretorioArquivo = diretorioLivros + "/" + nomeArquivo;

                        //deleta o arquivo antigo
                        var deletarArquivo = new FilesManipulation().DeletarArquivo(_provedorDiretoriosArquivos.GetFileInfo(diretorioArquivo).PhysicalPath);

                        //escreve o novo arquivo
                        var nomeNovoArquivo   = new GetNameFiles().GetNovoNome("lyfr_book", ".epub");
                        var escreverNovoLivro = new FilesManipulation().ConverterDeBase64EmArquivo(_provedorDiretoriosArquivos.GetFileInfo(diretorioLivros).PhysicalPath, nomeNovoArquivo, livroRecebido.Arquivo);

                        livroAlterar.Arquivo = diretorioLivros + "/" + nomeNovoArquivo;
                    }

                    //atribui os dados enviados ao livro que será alterado
                    var livro = new Livros
                    {
                        IdLivro      = livroAlterar.IdLivro,
                        Titulo       = livroAlterar.Titulo,
                        Ano_Lanc     = livroAlterar.Ano_Lanc,
                        Arquivo      = livroAlterar.Arquivo,
                        Capa         = livroAlterar.Capa,
                        FkAutor      = livroAlterar.FkAutor,
                        FkEditora    = livroAlterar.FkEditora,
                        Genero       = livroAlterar.Genero,
                        Idioma       = livroAlterar.Idioma,
                        Isbn         = livroAlterar.Isbn,
                        Sinopse      = livroAlterar.Sinopse,
                        TotalAcessos = livroAlterar.TotalAcessos
                    };

                    //atualiza o livro no banco de dados
                    _context.Livros.Update(livro);
                    _context.SaveChanges();

                    return("Livro atualizado com sucesso");
                }
                else
                {
                    return("Dados enviados estão inválidos. Tente novamente");
                }
            }
            catch (Exception)
            {
                return("Não foi possível se comunicar com a base de dados!");
            }
        }
Пример #6
0
        public string Insert(Livros livro)
        {
            try
            {
                if (livro != null)
                {
                    if (GetLivroByTitulo(livro.Titulo) != null)
                    {
                        return("Autor já cadastrado na base de dados!");
                    }
                    else
                    {
                        //chama o método que formata o novo nome do livro
                        var nomeLivro = new GetNameFiles().GetNovoNome("lyfr_book", ".epub");


                        //chama o método que formata o novo nome da capa
                        var nomeCapa = new GetNameFiles().GetNovoNome("lyfr_cover", ".jpg");

                        //chama o método para salvar a capa
                        var salvarCapa = new FilesManipulation().ConverterDeBase64EmArquivo(_provedorDiretoriosArquivos.GetFileInfo(diretorioCapas).PhysicalPath, nomeCapa, livro.Capa);

                        //chama o método para salvar o livro
                        var salvarLivro = new FilesManipulation().ConverterDeBase64EmArquivo(_provedorDiretoriosArquivos.GetFileInfo(diretorioLivros).PhysicalPath, nomeLivro, livro.Arquivo);


                        //caso tenha conseguido salvar a foto, atribui o link a ela
                        //senão utiliza uma foto not found
                        if (salvarCapa && salvarLivro)
                        {
                            livro.Arquivo = "wwwroot/Livros/Epubs/" + nomeLivro;
                            livro.Capa    = DefaultRoute.RotaPadrao + "/Livros/Capas/" + nomeCapa;
                        }
                        else if (salvarCapa && !salvarLivro)
                        {
                            livro.Arquivo = "wwwroot/Livros/Epubs/None/NotFound.html";
                            livro.Capa    = DefaultRoute.RotaPadrao + "/Livros/Capas/" + nomeCapa;
                        }
                        else if (!salvarCapa && salvarLivro)
                        {
                            livro.Arquivo = "wwwroot/Livros/Epubs/" + nomeLivro;
                            livro.Capa    = DefaultRoute.RotaPadrao + "/Livros/Capas/None/NotFound.jpg";
                        }
                        else
                        {
                            livro.Arquivo = "wwwroot/Livros/Epubs/None/NotFound.html";
                            livro.Capa    = DefaultRoute.RotaPadrao + "/Livros/Capas/None/NotFound.jpg";
                        }

                        //define o total de acessos do livro como 0
                        livro.TotalAcessos = 0;

                        _context.Add(livro);
                        _context.SaveChanges();

                        return("Livro cadastrado com sucesso!");
                    }
                }
                else
                {
                    return("Livro é nulo! Por - favor preencha todos os campos e tente novamente!");
                }
            }
            catch (Exception)
            {
                return("Não foi possível se comunicar com a base de dados!");
            }
        }