Coverage Summary for Class: SaleServiceImpl (org.softuni.cardealer.service)

Class Class, % Method, % Line, %
SaleServiceImpl 100% (1/ 1) 100% (3/ 3) 100% (11/ 11)


1 package org.softuni.cardealer.service; 2  3 import org.modelmapper.ModelMapper; 4 import org.softuni.cardealer.domain.entities.CarSale; 5 import org.softuni.cardealer.domain.entities.PartSale; 6 import org.softuni.cardealer.domain.models.service.CarSaleServiceModel; 7 import org.softuni.cardealer.domain.models.service.PartSaleServiceModel; 8 import org.softuni.cardealer.domain.models.service.PartServiceModel; 9 import org.softuni.cardealer.repository.CarSaleRepository; 10 import org.softuni.cardealer.repository.PartSaleRepository; 11 import org.springframework.beans.factory.annotation.Autowired; 12 import org.springframework.stereotype.Service; 13  14 @Service 15 public class SaleServiceImpl implements SaleService { 16  17  private final CarSaleRepository carSaleRepository; 18  private final PartSaleRepository partSaleRepository; 19  private final ModelMapper modelMapper; 20  21  @Autowired 22  public SaleServiceImpl(CarSaleRepository carSaleRepository, PartSaleRepository partSaleRepository, ModelMapper modelMapper) { 23  this.carSaleRepository = carSaleRepository; 24  this.partSaleRepository = partSaleRepository; 25  this.modelMapper = modelMapper; 26  } 27  28  @Override 29  public CarSaleServiceModel saleCar(CarSaleServiceModel carSaleServiceModel) { 30  CarSale carSale = this.modelMapper.map(carSaleServiceModel, CarSale.class); 31  carSale = this.carSaleRepository.saveAndFlush(carSale); 32  33  return this.modelMapper.map(carSale, CarSaleServiceModel.class); 34  } 35  36  @Override 37  public PartSaleServiceModel salePart(PartSaleServiceModel partSaleServiceModel) { 38  PartSale partSale = this.modelMapper.map(partSaleServiceModel, PartSale.class); 39  partSale = this.partSaleRepository.saveAndFlush(partSale); 40  41  return this.modelMapper.map(partSale, PartSaleServiceModel.class); 42  } 43 }