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()); }
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!"); } }
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!"); } }
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!"); } }
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!"); } }
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!"); } }