From 5ebd986fc99e37f8f2b1eea010946ac6d688b321 Mon Sep 17 00:00:00 2001
From: Stian Lyng <stianlyng@protonmail.com>
Date: Thu, 27 Apr 2023 12:19:20 +0200
Subject: [PATCH] bugfix: add product to fridge

---
 .../v233/SmartMat/controller/group/FridgeController.java       | 3 ---
 .../v233/SmartMat/dto/request/FridgeProductRequest.java        | 2 +-
 .../v233/SmartMat/entity/fridgeProduct/FridgeProductAsso.java  | 3 +++
 .../idatt2016/v233/SmartMat/service/group/FridgeService.java   | 2 +-
 4 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/controller/group/FridgeController.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/controller/group/FridgeController.java
index 783d85b7..a23569f0 100644
--- a/src/main/java/ntnu/idatt2016/v233/SmartMat/controller/group/FridgeController.java
+++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/controller/group/FridgeController.java
@@ -3,13 +3,10 @@ package ntnu.idatt2016.v233.SmartMat.controller.group;
 import lombok.AllArgsConstructor;
 import ntnu.idatt2016.v233.SmartMat.dto.request.FridgeProductRequest;
 import ntnu.idatt2016.v233.SmartMat.entity.group.Fridge;
-import ntnu.idatt2016.v233.SmartMat.entity.product.Product;
 import ntnu.idatt2016.v233.SmartMat.service.group.FridgeService;
 import org.springframework.http.ResponseEntity;
 import org.springframework.web.bind.annotation.*;
 
-import java.sql.Date;
-import java.util.Optional;
 
 /**
  * Controller for fridges API, providing endpoints for fridge management
diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/dto/request/FridgeProductRequest.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/dto/request/FridgeProductRequest.java
index 199a7a9d..9e5ad480 100644
--- a/src/main/java/ntnu/idatt2016/v233/SmartMat/dto/request/FridgeProductRequest.java
+++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/dto/request/FridgeProductRequest.java
@@ -5,5 +5,5 @@ package ntnu.idatt2016.v233.SmartMat.dto.request;
  * @param groupId the id of the group
  * @param productId the id of the product
  */
-public record FridgeProductRequest(long groupId, long productId, int amount, int days) {
+public record FridgeProductRequest(long groupId, long ean, int amount, int days) {
 }
diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/fridgeProduct/FridgeProductAsso.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/fridgeProduct/FridgeProductAsso.java
index 1253eccd..ec82efc3 100644
--- a/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/fridgeProduct/FridgeProductAsso.java
+++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/fridgeProduct/FridgeProductAsso.java
@@ -1,5 +1,6 @@
 package ntnu.idatt2016.v233.SmartMat.entity.fridgeProduct;
 
+import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
 import jakarta.persistence.*;
 import lombok.*;
@@ -23,11 +24,13 @@ public class FridgeProductAsso {
     @ManyToOne
     @JoinColumn(name = "fridge_id")
     @JsonIgnoreProperties({"products"})
+    @JsonIgnore
     private Fridge fridgeId;
 
     @ManyToOne
     @JoinColumn(name = "ean")
     @JsonIgnoreProperties({"fridges"})
+    @JsonIgnore
     private Product ean;
 
     @Column(name = "purchase_date")
diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/service/group/FridgeService.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/service/group/FridgeService.java
index 4fdd9621..9a7d2b0c 100644
--- a/src/main/java/ntnu/idatt2016/v233/SmartMat/service/group/FridgeService.java
+++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/service/group/FridgeService.java
@@ -60,7 +60,7 @@ public class FridgeService {
 
 
     public Optional<Object> addProductToFridge(FridgeProductRequest fridgeProductRequest) {
-        Optional<Product> product = productService.getProductById(fridgeProductRequest.productId());
+        Optional<Product> product = productService.getProductById(fridgeProductRequest.ean());
         Optional<Fridge> fridge = fridgeRepository.findByGroupGroupId(fridgeProductRequest.groupId());
         if(product.isEmpty() || fridge.isEmpty()) return Optional.empty();
 
-- 
GitLab