Changeset e48199a for src/main/java/com/example/rezevirajmasa/demo/service/impl/MenuServiceImpl.java
Legend:
- Unmodified
- Added
- Removed
-
src/main/java/com/example/rezevirajmasa/demo/service/impl/MenuServiceImpl.java
rb67dfd3 re48199a 2 2 3 3 import com.example.rezevirajmasa.demo.model.Menu; 4 import com.example.rezevirajmasa.demo.model.PriceHistory; 4 5 import com.example.rezevirajmasa.demo.model.Restaurant; 5 6 import com.example.rezevirajmasa.demo.repository.MenuRepository; 7 import com.example.rezevirajmasa.demo.repository.PriceHistoryRepository; 6 8 import com.example.rezevirajmasa.demo.service.MenuService; 7 9 import com.example.rezevirajmasa.demo.service.RestaurantService; 10 import org.openqa.selenium.InvalidArgumentException; 8 11 import org.springframework.stereotype.Service; 9 12 13 import java.math.BigDecimal; 14 import java.time.LocalDateTime; 10 15 import java.util.List; 11 16 … … 15 20 private final RestaurantService restaurantService; 16 21 17 public MenuServiceImpl(MenuRepository menuRepository, RestaurantService restaurantService) { 22 private final PriceHistoryRepository priceHistoryRepository; 23 24 public MenuServiceImpl(MenuRepository menuRepository, RestaurantService restaurantService, PriceHistoryRepository priceHistoryRepository) { 18 25 this.menuRepository = menuRepository; 19 26 this.restaurantService = restaurantService; 27 this.priceHistoryRepository = priceHistoryRepository; 20 28 } 21 29 … … 25 33 return menuRepository.findAllByRestaurant(restaurant); 26 34 } 35 36 @Override 37 public void updateMenuPrice(Long menuId, BigDecimal newPrice) { 38 Menu menu = menuRepository.findById(menuId) 39 .orElseThrow(() -> new IllegalArgumentException("Menu not found")); 40 41 if (menu.getPrice() != null && !menu.getPrice().equals(newPrice)) { 42 PriceHistory priceHistory = new PriceHistory(menu, menu.getPrice(), LocalDateTime.now()); 43 priceHistoryRepository.save(priceHistory); 44 } 45 46 menu.setPrice(newPrice); 47 menuRepository.save(menu); 48 } 49 50 @Override 51 public Menu getMenuById(Long id) { 52 return menuRepository.findById(id) 53 .orElseThrow(()->new InvalidArgumentException("Invalid id sent: " + id)); 54 } 27 55 }
Note:
See TracChangeset
for help on using the changeset viewer.