public string DeletaPalavra(int idPalavra) { PalavraJogo palavraJogo = this.Context.Palavras.FirstOrDefault(p => p.Id == idPalavra); this.Context.Palavras.Remove(palavraJogo); this.Context.SaveChanges(); return("Palavra deletada com sucesso."); }
public string AlteraPalavra(PalavraJogo palavra) { PalavraJogo palavraJogo = this.Context.Palavras.FirstOrDefault(p => p.Id == palavra.Id); palavraJogo.Palavra = palavra.Palavra; palavraJogo.IdTema = palavra.IdTema; palavraJogo.Dica1 = palavra.Dica1; palavraJogo.Dica2 = palavra.Dica2; this.Context.SaveChanges(); return("Palavra atualizada com sucesso"); }
public string AlteraPalavra(PalavraJogo palavra) { if (palavra == null) { return("Falha ao receber as informações da palavra"); } List <string> incosistencias = new List <string>(); PalavraJogo palavraBd = PegarPalavra(palavra.Id); if (palavraBd == null) { return("Id não encontrado no banco de dados"); } if (string.IsNullOrWhiteSpace(palavra.Palavra)) { incosistencias.Add("A palavra não pode estar em branco"); } TemaHandler temaHandler = new TemaHandler(); Tema tema = temaHandler.PegarTema(palavra.IdTema); if (tema == null) { incosistencias.Add("Id do tema não encontrado no banco de dados"); } if (string.IsNullOrWhiteSpace(palavra.Dica1)) { incosistencias.Add("A primeira dica não pode estar em branco"); } if (string.IsNullOrWhiteSpace(palavra.Dica2)) { incosistencias.Add("A segunda dica não pode estar em branco"); } if (incosistencias.Count > 0) { return(string.Join(" - ", incosistencias)); } return(this.PalavraBD.AlteraPalavra(palavra)); }
public string InserePalavra(PalavraJogo palavra) { if (palavra == null) { return("Falha ao receber as informações da palavra"); } List <string> incosistencias = new List <string>(); if (string.IsNullOrWhiteSpace(palavra.Palavra)) { incosistencias.Add("A palavra não pode estar em branco"); } else { List <PalavraJogo> palavras = PegarPalavrasPorTrecho(palavra.Palavra); if (palavras.Any(p => p.Palavra.ToUpper().Equals(palavra.Palavra.ToUpper()))) { return("Palavra já existe no banco de dados"); } } TemaHandler temaHandler = new TemaHandler(); Tema tema = temaHandler.PegarTema(palavra.IdTema); if (tema == null) { incosistencias.Add("Id do tema não encontrado no banco de dados"); } if (string.IsNullOrWhiteSpace(palavra.Dica1)) { incosistencias.Add("A primeira dica não pode estar em branco"); } if (string.IsNullOrWhiteSpace(palavra.Dica2)) { incosistencias.Add("A segunda dica não pode estar em branco"); } if (incosistencias.Count > 0) { return(string.Join(" - ", incosistencias)); } return(this.PalavraBD.InserePalavra(palavra)); }
public string DeletaPalavra(int?idPalavra) { if (idPalavra == null) { return("Falha ao receber id da palavra"); } PalavraJogo palavraBd = PegarPalavra(idPalavra ?? 0); if (palavraBd == null) { return("Id não encontrado no banco de dados"); } return(this.PalavraBD.DeletaPalavra(idPalavra ?? 0)); }
public ActionResult AlteraPalavra([FromBody] PalavraJogo palavra, [FromHeader] string token) { try { if (!Token.ValidarAdm(token)) { return(StatusCode(401, $"Usuário não autorizado para essa operação")); } string resultado = this.PalavraHandler.AlteraPalavra(palavra); return(Ok(resultado)); } catch (Exception ex) { return(StatusCode(500, $"Ocorreu uma falha na sua solicitação: {ex.Message}")); } }
public static RespPalavraJogo MontarResposta(PalavraJogo palavra, int quantidadeLetras) { Random random = new Random(); List <string> todasLetras = new List <string> { "A", "B", "C", "Ç", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "Y", "X", "Z" }; List <string> letras = new List <string>(); palavra.Palavra = palavra.Palavra.ToUpper().RemoverAcentos(); foreach (char letra in palavra.Palavra) { if (!letras.Contains(letra.ToString())) { letras.Add(letra.ToString()); todasLetras.Remove(letra.ToString()); } } int quatidadeTotalLetras = letras.Count + quantidadeLetras; while (letras.Count < quatidadeTotalLetras && todasLetras.Count != 0) { int index = random.Next(todasLetras.Count); letras.Add(todasLetras[index]); todasLetras.RemoveAt(index); } letras.Sort(); RespPalavraJogo retorno = new RespPalavraJogo() { Id = palavra.Id, Palavra = palavra.Palavra, Dica1 = palavra.Dica1, Dica2 = palavra.Dica2, Letras = letras }; return(retorno); }
public RespPalavraJogo ObterPalavra(string tema, int idUsuario) { List <PalavraJogo> palavras = this.JogoBD.ObterPalavras(tema); if (palavras == null || palavras.Count == 0) { throw new Exception("Não foram encontradas palavras no banco de dados"); } Random random = new Random(); int indexPalavra = random.Next(palavras.Count); int quantidadeLetras = 7; if (idUsuario != 0) { Usuario usuario = this.UsuarioBD.PegarUsuarioPeloId(idUsuario); RespUsuario usuarioCompleto = RespUsuario.MontarRespUsuario(usuario); quantidadeLetras += usuarioCompleto.Nivel; } PalavraJogo palavraSorteada = palavras[indexPalavra]; return(RespPalavraJogo.MontarResposta(palavraSorteada, quantidadeLetras)); }
public string InserePalavra(PalavraJogo palavra) { this.Context.Palavras.Add(palavra); this.Context.SaveChanges(); return("Palavra cadastrada com sucesso"); }