Changeset 2a552fe for src/main/java/com/example/autopartz/service
- Timestamp:
- 07/26/23 19:26:35 (16 months ago)
- Branches:
- main
- Parents:
- e02787e
- Location:
- src/main/java/com/example/autopartz/service
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
src/main/java/com/example/autopartz/service/OrderService.java
re02787e r2a552fe 8 8 public interface OrderService { 9 9 List<Order> findAll(); 10 Order create (Client user);10 Order createOrderAndAddPartToOrder(Client user, Integer partId, Integer quantity); 11 11 Order findById(Integer id); 12 12 void save(Order o); -
src/main/java/com/example/autopartz/service/PartService.java
re02787e r2a552fe 1 1 package com.example.autopartz.service; 2 2 3 import com.example.autopartz.model.Car; 4 import com.example.autopartz.model.Category; 3 5 import com.example.autopartz.model.Part; 4 6 … … 7 9 public interface PartService { 8 10 List<Part> findAll(); 11 9 12 Part findById(Integer id); 13 14 void addPartToWarehouse(Integer partId, Integer quantity, Integer warehouseId); 15 16 void addPart(String name, String description, Integer manufacturer, List<Car> cars, List<Category> categories, Integer warehouse, Integer quantity, Integer amount 17 ); 10 18 } -
src/main/java/com/example/autopartz/service/RepairShopService.java
re02787e r2a552fe 9 9 RepairShop getByName(String name); 10 10 RepairShop getById(Integer id); 11 void save(String name, String location, String number, Integer carMId); 11 12 } -
src/main/java/com/example/autopartz/service/UserService.java
re02787e r2a552fe 7 7 public interface UserService { 8 8 List<User> findAllUsers(); 9 9 10 User findByUsername(String username); 11 10 12 User findById(Integer id); 13 14 void addCarSampleForUser(Integer vin, Integer year, Integer power, Integer displacement, String fuel, Integer km, Integer cartype, String username); 15 11 16 } -
src/main/java/com/example/autopartz/service/impl/OrderServiceImpl.java
re02787e r2a552fe 3 3 import com.example.autopartz.model.Client; 4 4 import com.example.autopartz.model.Order; 5 import com.example.autopartz.model.manytomany.OrderContainsPart; 6 import com.example.autopartz.repository.OrderContainsPartRepository; 5 7 import com.example.autopartz.repository.OrderRepository; 6 8 import com.example.autopartz.service.OrderService; 7 9 import org.springframework.stereotype.Service; 8 10 11 import javax.transaction.Transactional; 9 12 import java.util.List; 10 13 @Service 11 14 public class OrderServiceImpl implements OrderService { 12 15 private final OrderRepository orderRepository; 16 private final OrderContainsPartRepository orderContainsPartRepository; 13 17 14 public OrderServiceImpl(OrderRepository orderRepository ) {18 public OrderServiceImpl(OrderRepository orderRepository, OrderContainsPartRepository orderContainsPartRepository) { 15 19 this.orderRepository = orderRepository; 20 this.orderContainsPartRepository = orderContainsPartRepository; 16 21 } 17 22 … … 22 27 23 28 @Override 24 public Order create(Client user) { 25 return orderRepository.save(new Order(user)); 29 @Transactional 30 public Order createOrderAndAddPartToOrder(Client user, Integer partId, Integer quantity) { 31 Order order = orderRepository.save(new Order(user)); 32 orderContainsPartRepository.save(new OrderContainsPart(partId, order.getOrderid(), quantity)); 33 return order; 26 34 } 27 35 -
src/main/java/com/example/autopartz/service/impl/PartServiceImpl.java
re02787e r2a552fe 1 1 package com.example.autopartz.service.impl; 2 2 3 import com.example.autopartz.model.Car; 4 import com.example.autopartz.model.Category; 3 5 import com.example.autopartz.model.Part; 4 import com.example.autopartz.repository.PartRepository; 6 import com.example.autopartz.model.Price; 7 import com.example.autopartz.model.manytomany.PartIsAppropriateForCar; 8 import com.example.autopartz.model.manytomany.PartIsFromCategory; 9 import com.example.autopartz.model.manytomany.PartIsInStockInWarehouse; 10 import com.example.autopartz.model.manytomany.PartIsInStockInWarehouseId; 11 import com.example.autopartz.repository.*; 5 12 import com.example.autopartz.service.PartService; 13 import com.example.autopartz.service.PriceService; 6 14 import org.springframework.stereotype.Service; 7 15 16 import javax.transaction.Transactional; 17 import java.time.LocalDate; 8 18 import java.util.List; 9 19 … … 11 21 public class PartServiceImpl implements PartService { 12 22 private final PartRepository partRepository; 23 private final PartIsInStockInWarehouseRepository partIsInStockInWarehouseRepository; 24 private final PartIsFromCategoryRepository partIsFromCategoryRepository; 25 private final PartIsAppropriateForCarRepository partIsAppropriateForCarRepository; 26 private final WarehouseRepository warehouseRepository; 27 private final PartManufacturerRepository partManufacturerRepository; 28 private final PriceService priceService; 13 29 14 public PartServiceImpl(PartRepository partRepository ) {30 public PartServiceImpl(PartRepository partRepository, PartIsInStockInWarehouseRepository partIsInStockInWarehouseRepository, PartIsFromCategoryRepository partIsFromCategoryRepository, PartIsAppropriateForCarRepository partIsAppropriateForCarRepository, WarehouseRepository warehouseRepository, PartManufacturerRepository partManufacturerRepository, PriceService priceService) { 15 31 this.partRepository = partRepository; 32 this.partIsInStockInWarehouseRepository = partIsInStockInWarehouseRepository; 33 this.partIsFromCategoryRepository = partIsFromCategoryRepository; 34 this.partIsAppropriateForCarRepository = partIsAppropriateForCarRepository; 35 this.warehouseRepository = warehouseRepository; 36 this.partManufacturerRepository = partManufacturerRepository; 37 this.priceService = priceService; 16 38 } 17 39 … … 25 47 return partRepository.findById(id).orElseThrow(RuntimeException::new); 26 48 } 49 50 @Override 51 @Transactional 52 public void addPartToWarehouse(Integer partId, Integer quantity, Integer warehouseId) { 53 PartIsInStockInWarehouseId tmp = new PartIsInStockInWarehouseId(partId, warehouseId); 54 PartIsInStockInWarehouse temp = partIsInStockInWarehouseRepository.findById(tmp).get(); 55 temp.setQuantity(temp.getQuantity() + quantity); 56 partIsInStockInWarehouseRepository.save(temp); 57 } 58 59 @Override 60 @Transactional 61 public void addPart(String name, String description, Integer manufacturer, List<Car> cars, List<Category> categories, Integer warehouse, Integer quantity, Integer amount) { 62 Part newPart = new Part(name, description==null ? "" : description, partManufacturerRepository.findById(manufacturer).get(), 63 categories, List.of(warehouseRepository.findById(warehouse).get()),cars); 64 partRepository.save(newPart); 65 priceService.save(new Price(amount, LocalDate.now(),newPart)); 66 partIsInStockInWarehouseRepository.save(new PartIsInStockInWarehouse(newPart.getId(),warehouse,quantity)); 67 for (Category c:categories 68 ) { 69 partIsFromCategoryRepository.save(new PartIsFromCategory(newPart.getId(),c.getId())); 70 } 71 for (Car car:cars){ 72 partIsAppropriateForCarRepository.save(new PartIsAppropriateForCar(newPart.getId(),car.getId())); 73 } 74 } 27 75 } -
src/main/java/com/example/autopartz/service/impl/RepairShopServiceImpl.java
re02787e r2a552fe 2 2 3 3 import com.example.autopartz.model.RepairShop; 4 import com.example.autopartz.model.manytomany.RsForCm; 5 import com.example.autopartz.repository.CarManufacturerRepository; 4 6 import com.example.autopartz.repository.RepairShopRepository; 7 import com.example.autopartz.repository.RsForCmRepository; 5 8 import com.example.autopartz.service.RepairShopService; 6 9 import org.springframework.stereotype.Service; 7 10 11 import javax.transaction.Transactional; 8 12 import java.util.List; 9 13 … … 11 15 public class RepairShopServiceImpl implements RepairShopService { 12 16 private final RepairShopRepository repairShopRepository; 17 private final CarManufacturerRepository carManufacturerRepository; 18 private final RsForCmRepository rsForCmRepository; 13 19 14 public RepairShopServiceImpl(RepairShopRepository repairShopRepository ) {20 public RepairShopServiceImpl(RepairShopRepository repairShopRepository, CarManufacturerRepository carManufacturerRepository, RsForCmRepository rsForCmRepository) { 15 21 this.repairShopRepository = repairShopRepository; 22 this.carManufacturerRepository = carManufacturerRepository; 23 this.rsForCmRepository = rsForCmRepository; 16 24 } 17 25 … … 30 38 return repairShopRepository.findById(id).get(); 31 39 } 40 41 @Override 42 @Transactional 43 public void save(String name, String location, String number, Integer carMId) { 44 RepairShop newRs = new RepairShop(name,location,number, 45 List.of(carManufacturerRepository.findById(carMId).get())); 46 repairShopRepository.save(newRs); 47 rsForCmRepository.save(new RsForCm(newRs.getId(), carMId)); 48 } 32 49 } -
src/main/java/com/example/autopartz/service/impl/UserServiceImpl.java
re02787e r2a552fe 1 1 package com.example.autopartz.service.impl; 2 2 3 import com.example.autopartz.model.Role; 4 import com.example.autopartz.model.User; 3 import com.example.autopartz.model.*; 4 import com.example.autopartz.repository.CarRepository; 5 import com.example.autopartz.repository.CarSampleRepository; 6 import com.example.autopartz.repository.ServiceBookRepository; 5 7 import com.example.autopartz.repository.UserRepository; 6 8 import com.example.autopartz.service.UserService; 7 9 import org.springframework.stereotype.Service; 8 10 9 import java .util.Collections;11 import javax.transaction.Transactional; 10 12 import java.util.List; 11 13 … … 13 15 public class UserServiceImpl implements UserService { 14 16 private final UserRepository userRepository; 17 private final CarRepository carRepository; 18 private final CarSampleRepository carSampleRepository; 19 private final ServiceBookRepository serviceBookRepository; 15 20 16 public UserServiceImpl(UserRepository userRepository ) {21 public UserServiceImpl(UserRepository userRepository, CarRepository carRepository, CarSampleRepository carSampleRepository, ServiceBookRepository serviceBookRepository) { 17 22 this.userRepository = userRepository; 23 this.carRepository = carRepository; 24 this.carSampleRepository = carSampleRepository; 25 this.serviceBookRepository = serviceBookRepository; 18 26 } 19 27 … … 32 40 return userRepository.findById(id).get(); 33 41 } 42 43 @Override 44 @Transactional 45 public void addCarSampleForUser(Integer vin, Integer year, Integer power, Integer displacement, String fuel, Integer km, Integer cartype, String username) { 46 CarSample cs = new CarSample(vin, year, power, displacement, fuel, km, (Client) this.findByUsername(username), carRepository.findById(cartype).get()); 47 carSampleRepository.save(cs); 48 serviceBookRepository.save(new ServiceBook(cs)); 49 } 34 50 }
Note:
See TracChangeset
for help on using the changeset viewer.