diff --git a/services/src/main/java/ch/hepia/account/AccountService.java b/services/src/main/java/ch/hepia/account/AccountService.java index d57e225470225d9877d3a03897006cb48e143d85..3377d9b4c9b76eb4d0978285bf57b03e43ac64f7 100644 --- a/services/src/main/java/ch/hepia/account/AccountService.java +++ b/services/src/main/java/ch/hepia/account/AccountService.java @@ -84,8 +84,13 @@ public class AccountService{ //------------------------------------------ if (obj instanceof EventCreditAnAccount){ EventCreditAnAccount e = (EventCreditAnAccount) obj; - accountsDB.creditAnAccount(e.idAccount(), e.amount()); - send(new EventAccountCredited(e.id(), "The account is credited")); + if(accountsDB.accountPresent(e.idAccount())){ + accountsDB.creditAnAccount(e.idAccount(), e.amount()); + send(new EventAccountCredited(e.id(), "The account is credited")); + } + else{ + send(new EventAccountDoesntExist(e.id(), "The account doesn't exist")); + } System.out.println(e.toString()); } //------------------------------------------ diff --git a/services/src/main/java/ch/hepia/stock/StockService.java b/services/src/main/java/ch/hepia/stock/StockService.java index ab32d84e881fa1d59ed78e065fce08e63bdf0588..206c39d4e70b97000cb839adc83d0bd7451ab6fb 100644 --- a/services/src/main/java/ch/hepia/stock/StockService.java +++ b/services/src/main/java/ch/hepia/stock/StockService.java @@ -89,8 +89,14 @@ public class StockService { // ------------------------------------------ if (obj instanceof EventAddProductQuantity) { EventAddProductQuantity e = (EventAddProductQuantity) obj; - stockDB.addQuantity(e.idProduct(), e.quantity()); - send(new EventProductQuantityAdded(e.id(), "Quantity added to the stock")); + if(productsDB.getById(e.idProduct()).isPresent()){ + stockDB.addQuantity(e.idProduct(), e.quantity()); + send(new EventProductQuantityAdded(e.id(), "Quantity added to the stock")); + } + else{ + send(new EventProductDoesntExist(e.id(), "Product doesn't exist")); + } + System.out.println(e.toString()); }