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 9265609330a6a1164792c8cdcc9116e08afa3360..cc4e140cbd070b1f211fffebb3b4a6a86669f820 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 @@ -112,24 +112,5 @@ public class FridgeController { return fridgeService.wasteProductFromFridge(fridgeProductId).map(ResponseEntity::ok).orElseGet(() -> ResponseEntity.notFound().build()); } - /** - * Deletes all products in a fridge - * @param fridgeId the id of the fridge - * @return success if the products were deleted, bad request if the fridge doesn't exist - * - @DeleteMapping("/delete/all/{fridgeId}") - public ResponseEntity<String> deleteAllProductsInFridge(@PathVariable("fridgeId") long fridgeId) { - try { - boolean success = fridgeService.deleteAllProductsInFridge(fridgeId); - if (success){ - return ResponseEntity.ok("Success"); - } - return ResponseEntity.badRequest().body("Fridge not found"); - } catch (Exception e) { - return ResponseEntity.status(500).body("Internal server error"); - } - } - - */ } 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 bbe5b8717bb183192619d446f01a6d6ab502974e..0df58b4fe4b21788385ec234ef449307c5b7239c 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 @@ -3,7 +3,6 @@ package ntnu.idatt2016.v233.SmartMat.dto.request; /** * FridgeProductRequest is a record class representing a request to add a product to a fridge. * @param groupId the id of the group - * @param productId the id of the product */ -public record FridgeProductRequest(long fridgeProductId, long groupId, long ean, int amount, int days) { +public record FridgeProductRequest(long fridgeProductId, long groupId, long ean, int amount, int days, double price) { } diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/Waste.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/Waste.java index b876946b6c7dd762dad3566334e1210241e223e9..567f074c7863a26219a5ac9227019bdc9ad94203 100644 --- a/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/Waste.java +++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/entity/Waste.java @@ -53,4 +53,7 @@ public class Waste { @Column(name = "unit") String unit; + @Column(name = "buy_price") + double buyPrice; + } 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 c1d1160cee469b8525a64aec0cd375127f13051f..061b8aed1f0dcaa7e151be00e0eca75f306a5300 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 @@ -40,5 +40,8 @@ public class FridgeProductAsso { @Column(name = "amount") private double amount; + @Column(name = "buy_price") + private double buyPrice; + } 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 b143fa8fcfc08cdb532efdf8ff89329715acb3f2..9071dfa5f38b503f8519af0a5b80a20aa4eaddc0 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 @@ -72,6 +72,10 @@ public class FridgeService { public Optional<Object> addProductToFridge(FridgeProductRequest fridgeProductRequest) { Optional<Product> product = productService.getProductById(fridgeProductRequest.ean()); Optional<Fridge> fridge = fridgeRepository.findByGroupGroupId(fridgeProductRequest.groupId()); + double price = 100.0; + if(fridgeProductRequest.price() != 0.0){ + price = fridgeProductRequest.price(); + } if(product.isEmpty() || fridge.isEmpty()) return Optional.empty(); @@ -81,6 +85,7 @@ public class FridgeService { .amount(fridgeProductRequest.amount()) .daysToExpiration(fridgeProductRequest.days()) .purchaseDate(java.sql.Date.valueOf(LocalDate.now())) + .buyPrice(price) .build()); fridgeRepository.save(fridge.get()); @@ -192,7 +197,7 @@ public class FridgeService { group.setLevel(GroupUtil.getLevel(group.getPoints())); } groupRepository.save(group); - return Optional.of(wasteRepository.save(Waste.builder().amount(fridgeProductAsso1.getAmount()).unit(fridgeProductAsso1.getEan().getUnit()).ean(fridgeProductAsso1.getEan()).groupId(fridgeProductAsso1.getFridgeId().getGroup()).timestamp(new Timestamp(System.currentTimeMillis())).build())); + return Optional.of(wasteRepository.save(Waste.builder().buyPrice(fridgeProductAsso1.getBuyPrice()).amount(fridgeProductAsso1.getAmount()).unit(fridgeProductAsso1.getEan().getUnit()).ean(fridgeProductAsso1.getEan()).groupId(fridgeProductAsso1.getFridgeId().getGroup()).timestamp(new Timestamp(System.currentTimeMillis())).build())); }