diff --git a/src/main/java/fr/ulille/iut/pizzaland/beans/Pizza.java b/src/main/java/fr/ulille/iut/pizzaland/beans/Pizza.java new file mode 100644 index 0000000000000000000000000000000000000000..2961374b67394c2b623dca87ca13d6a116fb4c1c --- /dev/null +++ b/src/main/java/fr/ulille/iut/pizzaland/beans/Pizza.java @@ -0,0 +1,111 @@ +package fr.ulille.iut.pizzaland.beans; + +import java.util.List; + +import fr.ulille.iut.pizzaland.dto.IngredientCreateDto; +import fr.ulille.iut.pizzaland.dto.IngredientDto; +import fr.ulille.iut.pizzaland.dto.PizzaCreateDto; +import fr.ulille.iut.pizzaland.dto.PizzaDto; + +public class Pizza { + private long id; + private String name; + private List<Ingredient> ingredient; + + public Pizza() { + } + + public Pizza(long id, String name, List<Ingredient> ingredient) { + this.id = id; + this.name = name; + this.ingredient = ingredient; + } + + public void setId(long id) { + this.id = id; + } + + public long getId() { + return id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public void setIngredient(List<Ingredient> ingredient) { + this.ingredient = ingredient; + } + + public List<Ingredient> getIngredients() { + return ingredient; + } + + public static PizzaDto toDto(Pizza p) { + PizzaDto dto = new PizzaDto(); + dto.setId(p.getId()); + dto.setName(p.getName()); + dto.setIngredients(p.getIngredients()); + + return dto; + } + + public static Pizza fromDto(PizzaDto dto) { + Pizza pizza = new Pizza(); + pizza.setId(dto.getId()); + pizza.setName(dto.getName()); + pizza.setIngredient(dto.getIngredients()); + + return pizza; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + Pizza other = (Pizza) obj; + if (id != other.id) + return false; + if (name == null) { + if (other.name != null) + return false; + } else if (!name.equals(other.name)) + return false; + return true; + } + + @Override + public String toString() { + String retour = "Pizza [id=" + id + ", name=" + name; + for (Ingredient unIngredient : ingredient) { + retour += ", ingredient=" + unIngredient; + } + retour += "]"; + return retour; + } + + public static PizzaCreateDto toCreateDto(Pizza pizza) { + PizzaCreateDto dto = new PizzaCreateDto(); + dto.setName(pizza.getName()); + dto.setIngredients(pizza.getIngredients()); + + return dto; + } + + public static Pizza fromPizzaCreateDto(PizzaCreateDto dto) { + Pizza pizza = new Pizza(); + pizza.setName(dto.getName()); + pizza.setIngredient(dto.getIngredient()); + + return pizza; + } + +} diff --git a/src/main/java/fr/ulille/iut/pizzaland/dao/PizzaDao.java b/src/main/java/fr/ulille/iut/pizzaland/dao/PizzaDao.java new file mode 100644 index 0000000000000000000000000000000000000000..626ba350df63893adc31034d49c9a2eb8597777e --- /dev/null +++ b/src/main/java/fr/ulille/iut/pizzaland/dao/PizzaDao.java @@ -0,0 +1,20 @@ +package fr.ulille.iut.pizzaland.dao; + +import org.jdbi.v3.sqlobject.statement.SqlUpdate; +import org.jdbi.v3.sqlobject.transaction.Transaction; + +public interface PizzaDao { + + @SqlUpdate("CREATE TABLE IF NOT EXISTS Pizzas ....") + void createPizzaTable(); + + @SqlUpdate("CREATE TABLE IF NOT EXISTS PizzaIngredientsAssociation .....") + void createAssociationTable(); + + @Transaction + default void createTableAndIngredientAssociation() { + createAssociationTable(); + createPizzaTable(); + + } +} \ No newline at end of file diff --git a/src/main/java/fr/ulille/iut/pizzaland/dto/PizzaCreateDto.java b/src/main/java/fr/ulille/iut/pizzaland/dto/PizzaCreateDto.java new file mode 100644 index 0000000000000000000000000000000000000000..1306ddd8ddcb445ec54e2d447e60269c25182236 --- /dev/null +++ b/src/main/java/fr/ulille/iut/pizzaland/dto/PizzaCreateDto.java @@ -0,0 +1,29 @@ +package fr.ulille.iut.pizzaland.dto; + +import java.util.List; + +import fr.ulille.iut.pizzaland.beans.Ingredient; + +public class PizzaCreateDto { + private String name; + private List<Ingredient> ingredient; + + public PizzaCreateDto() {} + + public void setName(String name) { + this.name = name; + } + + public String getName() { + return name; + } + + public void setIngredients(List<Ingredient> ingredient) { + this.ingredient = ingredient; + } + + public List<Ingredient> getIngredient() { + return ingredient; + } + +} diff --git a/src/main/java/fr/ulille/iut/pizzaland/dto/PizzaDto.java b/src/main/java/fr/ulille/iut/pizzaland/dto/PizzaDto.java new file mode 100644 index 0000000000000000000000000000000000000000..5b87f7ccc819d075430d8548cd3550a12fee9d69 --- /dev/null +++ b/src/main/java/fr/ulille/iut/pizzaland/dto/PizzaDto.java @@ -0,0 +1,40 @@ +package fr.ulille.iut.pizzaland.dto; + +import java.util.List; + +import fr.ulille.iut.pizzaland.beans.Ingredient; +import fr.ulille.iut.pizzaland.beans.Pizza; + +public class PizzaDto { + + private long id; + private String nom; + private List<Ingredient> ingredient; + + public PizzaDto() {}; + + public long getId() { + return id; + } + + public void setId(long id) { + this.id = id; + } + + public String getName() { + return nom; + } + + public void setName(String nom) { + this.nom = nom; + } + + public List<Ingredient> getIngredients() { + return ingredient; + } + + public void setIngredients(List<Ingredient> ingredient) { + this.ingredient = ingredient; + } + +}