Esempio n. 1
0
  @Transactional
  public static Result newAnuncio() {
    // O formulário dos Livros Preenchidos

    DynamicForm filledForm = Form.form().bindFromRequest();
    String objetivo = "";

    if (filledForm.get("objetivo").equals("Tocar Ocasionalmente")) {
      objetivo = "Tocar Ocasionalmente";
    } else if (filledForm.get("objetivo").equals("Procuro banda")) {
      objetivo = "Procuro banda";
    } else if (filledForm.get("objetivo").equals("Procuro musico")) {
      objetivo = "Procuro musico";
    }

    if (filledForm.hasErrors()) {
      List<Anuncio> result = dao.findAllByClass(Anuncio.class);
      // TODO falta colocar na interface mensagem de erro.
      return badRequest(views.html.index.render(result, contador));
    } else {
      Anuncio novoAnuncio =
          new Anuncio(
              filledForm.get("nome"),
              filledForm.get("cidade"),
              filledForm.get("bairro"),
              filledForm.get("instrumentos"),
              filledForm.get("email"),
              filledForm.get("face"),
              objetivo,
              filledForm.get("estilo_gosta"),
              filledForm.get("estilo_nao_gosta"),
              filledForm.get("codigo"));
      Logger.debug(
          "Criando anúncio: " + filledForm.data().toString() + " como " + novoAnuncio.getNome());
      // Persiste o Anuncio criado
      dao.persist(novoAnuncio);
      // Espelha no Banco de Dados
      dao.flush();
      /*
       * Usar routes.Application.<uma action> é uma forma de
       * evitar colocar rotas literais (ex: "/books")
       * hard-coded no código. Dessa forma, se mudamos no
       * arquivo routes, continua funcionando.
       */

      return redirect(routes.Application.anuncios());
    }
  }
Esempio n. 2
0
 @Transactional
 public static Result criar() {
   List<Anuncio> result = dao.findAllByClass(Anuncio.class);
   return ok(views.html.criar.render(result));
 }
Esempio n. 3
0
 /*
  * A Anotação transactional é necessária em todas as Actions que
  * usarem o BD.
  */
 @Transactional
 public static Result anuncios() {
   // Todos os Livros do Banco de Dados
   List<Anuncio> result = dao.findAllByClass(Anuncio.class);
   return ok(views.html.index.render(result, contador));
 }