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