тут жесть, надо все исправлятб
This commit is contained in:
parent
3f76f77e44
commit
f9ffc7799c
@ -18,9 +18,8 @@ public class Component {
|
|||||||
@Column(name = "amount")
|
@Column(name = "amount")
|
||||||
private Integer amount;
|
private Integer amount;
|
||||||
|
|
||||||
@OneToMany(mappedBy = "component", cascade = CascadeType.ALL, fetch = FetchType.EAGER)
|
@ManyToMany(mappedBy = "component",fetch = FetchType.EAGER)
|
||||||
@JsonIgnore
|
private List<Favor> favors;
|
||||||
private List<FavorComponents> favors;
|
|
||||||
|
|
||||||
public Component() {
|
public Component() {
|
||||||
}
|
}
|
||||||
@ -50,26 +49,18 @@ public class Component {
|
|||||||
this.amount = amount;
|
this.amount = amount;
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<FavorComponents> getFavors() {
|
public List<Favor> getFavors() {
|
||||||
return favors;
|
return favors;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setFavors(List<FavorComponents> favors) {
|
public void setFavors(Favor favors) {
|
||||||
this.favors = favors;
|
|
||||||
|
if(!favors.getComponents().contains(this)){
|
||||||
|
favors.getComponents().add(this);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void addFavor(FavorComponents favorComponents) {
|
|
||||||
if (favors == null) {
|
|
||||||
favors = new ArrayList<>();
|
|
||||||
}
|
|
||||||
if (!favors.contains(favorComponents))
|
|
||||||
this.favors.add(favorComponents);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void removeFavor(FavorComponents favorComponents) {
|
|
||||||
if (favors.contains(favorComponents))
|
|
||||||
this.favors.remove(favorComponents);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean equals(Object o) {
|
public boolean equals(Object o) {
|
||||||
|
@ -18,12 +18,11 @@ public class Favor {
|
|||||||
@Column(name = "price")
|
@Column(name = "price")
|
||||||
private Integer price;
|
private Integer price;
|
||||||
|
|
||||||
@OneToMany(mappedBy = "favor", cascade = CascadeType.ALL, fetch = FetchType.EAGER)
|
@ManyToMany(mappedBy = "favor", fetch = FetchType.EAGER)
|
||||||
private List<FavorComponents> components;
|
private List<Component> components;
|
||||||
|
|
||||||
@OneToMany(mappedBy = "favor", cascade = CascadeType.ALL, fetch = FetchType.EAGER)
|
@ManyToMany(mappedBy = "favor", fetch = FetchType.EAGER)
|
||||||
@JsonIgnore
|
private List<Order> orders;
|
||||||
private List<OrderFavors> orders;
|
|
||||||
|
|
||||||
|
|
||||||
public Favor() {
|
public Favor() {
|
||||||
@ -55,12 +54,14 @@ public class Favor {
|
|||||||
this.price = price;
|
this.price = price;
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<FavorComponents> getComponents() {
|
public List<Component> getComponents() {
|
||||||
return components;
|
return components;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setComponents(List<FavorComponents> components) {
|
public void setComponents(Component components) {
|
||||||
this.components = components;
|
if (! components.getFavors().contains(this)){
|
||||||
|
components.getFavors().add(this);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void update(Favor favor){
|
public void update(Favor favor){
|
||||||
@ -69,37 +70,16 @@ public class Favor {
|
|||||||
this.components = favor.getComponents();
|
this.components = favor.getComponents();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void addComponent(FavorComponents favorComponents){
|
|
||||||
if (components == null){
|
|
||||||
this.components = new ArrayList<>();
|
|
||||||
}
|
|
||||||
if (!components.contains(favorComponents))
|
|
||||||
this.components.add(favorComponents);
|
|
||||||
}
|
|
||||||
public void removeComponent(FavorComponents favorComponents){
|
|
||||||
if (components.contains(favorComponents))
|
|
||||||
this.components.remove(favorComponents);
|
|
||||||
}
|
|
||||||
|
|
||||||
public List<OrderFavors> getOrders() {
|
public List<Order> getOrders() {
|
||||||
return orders;
|
return orders;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setOrders(List<OrderFavors> orders) {
|
public void setOrders(Order orders) {
|
||||||
this.orders = orders;
|
if (! orders.getFavors().contains(this)){
|
||||||
|
orders.getFavors().add(this);
|
||||||
}
|
}
|
||||||
public void addOrder(OrderFavors orderFavors){
|
|
||||||
if (orders == null){
|
|
||||||
orders = new ArrayList<>();
|
|
||||||
}
|
}
|
||||||
if (!orders.contains(orderFavors))
|
|
||||||
this.orders.add(orderFavors);
|
|
||||||
}
|
|
||||||
public void removeOrder(OrderFavors orderFavors){
|
|
||||||
if (orders.contains(orderFavors))
|
|
||||||
this.orders.remove(orderFavors);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean equals(Object o) {
|
public boolean equals(Object o) {
|
||||||
|
@ -16,8 +16,8 @@ public class Order {
|
|||||||
private Long id;
|
private Long id;
|
||||||
@Column(name = "date")
|
@Column(name = "date")
|
||||||
private Date date;
|
private Date date;
|
||||||
@OneToMany(mappedBy = "order", cascade = CascadeType.ALL, fetch = FetchType.EAGER)
|
@ManyToMany(fetch = FetchType.EAGER)
|
||||||
private List<OrderFavors> favors;
|
private List<Favor> favors;
|
||||||
public Order(){
|
public Order(){
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -43,26 +43,25 @@ public class Order {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public List<OrderFavors> getFavors() {
|
public List<Favor> getFavors() {
|
||||||
return favors;
|
return favors;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setFavors(List<OrderFavors> favors) {
|
public void setFavors(List<Favor> favors) {
|
||||||
this.favors = favors;
|
this.favors = favors;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void addFavor(OrderFavors orderFavors){
|
public void addFavor(Favor orderFavors){
|
||||||
if (favors == null){
|
if (favors == null){
|
||||||
this.favors = new ArrayList<>();
|
this.favors = new ArrayList<>();
|
||||||
}
|
}
|
||||||
if (!favors.contains(orderFavors))
|
favors.add(orderFavors);
|
||||||
this.favors.add(orderFavors);
|
if (!orderFavors.getOrders().contains(this)){
|
||||||
|
orderFavors.setOrders(this);
|
||||||
}
|
}
|
||||||
public void removeFavors(OrderFavors orderFavors){
|
|
||||||
if (favors.contains(orderFavors))
|
|
||||||
this.favors.remove(orderFavors);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean equals(Object o) {
|
public boolean equals(Object o) {
|
||||||
if (this == o) return true;
|
if (this == o) return true;
|
||||||
|
@ -44,18 +44,6 @@ public class ComponentService {
|
|||||||
.getResultList();
|
.getResultList();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Transactional(readOnly = true)
|
|
||||||
public List<Component> findFiltredComponents(Long[] arr) {
|
|
||||||
if (arr.length == 0) {
|
|
||||||
throw new IllegalArgumentException("Array id is empty");
|
|
||||||
}
|
|
||||||
List<Component> componentList = new ArrayList<>();
|
|
||||||
for (int i = 0; i < arr.length; i++) {
|
|
||||||
componentList.add(em.find(Component.class, arr[i]));
|
|
||||||
}
|
|
||||||
return componentList;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Transactional
|
@Transactional
|
||||||
public Component updateComponent(Long id, String componentName, Integer amount) {
|
public Component updateComponent(Long id, String componentName, Integer amount) {
|
||||||
if (!StringUtils.hasText(componentName) || amount == 0) {
|
if (!StringUtils.hasText(componentName) || amount == 0) {
|
||||||
@ -71,18 +59,11 @@ public class ComponentService {
|
|||||||
public Component deleteComponent(Long id) {
|
public Component deleteComponent(Long id) {
|
||||||
final Component currentComponent = findComponent(id);
|
final Component currentComponent = findComponent(id);
|
||||||
int size = currentComponent.getFavors().size();
|
int size = currentComponent.getFavors().size();
|
||||||
for (int i = 0; i < size; i++) {
|
|
||||||
FavorComponents temp = currentComponent.getFavors().get(0);
|
|
||||||
temp.getComponent().removeFavor(temp);
|
|
||||||
temp.getFavor().removeComponent(temp);
|
|
||||||
em.remove(temp);
|
|
||||||
}
|
|
||||||
em.remove(currentComponent);
|
em.remove(currentComponent);
|
||||||
return currentComponent;
|
return currentComponent;
|
||||||
}
|
}
|
||||||
@Transactional
|
@Transactional
|
||||||
public void deleteAllComponent() {
|
public void deleteAllComponent() {
|
||||||
em.createQuery("delete from FavorComponents").executeUpdate();
|
|
||||||
em.createQuery("delete from Component").executeUpdate();
|
em.createQuery("delete from Component").executeUpdate();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -28,12 +28,7 @@ public class FavorService {
|
|||||||
}
|
}
|
||||||
final Favor favor = new Favor(favorName, price);
|
final Favor favor = new Favor(favorName, price);
|
||||||
em.persist(favor);
|
em.persist(favor);
|
||||||
for (int i = 0; i < components.size(); i++) {
|
|
||||||
final FavorComponents favorComponents = new FavorComponents(components.get(i), favor, count[i]);
|
|
||||||
favor.addComponent(favorComponents);
|
|
||||||
components.get(i).addFavor(favorComponents);
|
|
||||||
em.persist(favorComponents);
|
|
||||||
}
|
|
||||||
return favor;
|
return favor;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user