140 lines
4.2 KiB
Java
140 lines
4.2 KiB
Java
package eu.csc.ODPAppVehOwnServer.mapper;
|
|
|
|
|
|
import eu.csc.ODPAppVehOwnServer.models.VehicleBrandDto;
|
|
import eu.csc.ODPAppVehOwnServer.models.data.CustomerProfileDto;
|
|
import eu.csc.ODPAppVehOwnServer.models.data.DeviceDto;
|
|
import eu.csc.ODPAppVehOwnServer.models.data.LanguageDto;
|
|
import eu.csc.ODPAppVehOwnServer.models.data.PropulsionTypeDto;
|
|
import eu.csc.ODPAppVehOwnServer.models.regist.CustomerDeviceDto;
|
|
import eu.csc.ODPAppVehOwnServer.models.regist.CustomerVehicleDto;
|
|
import eu.csc.ODPAppVehOwnServer.persistence.entity.UserEntity;
|
|
import eu.csc.ODPAppVehOwnServer.persistence.entity.customer.CustomerDeviceEntity;
|
|
import eu.csc.ODPAppVehOwnServer.persistence.entity.customer.CustomerVehicleEntity;
|
|
import eu.csc.ODPAppVehOwnServer.persistence.entity.data.DeviceEntity;
|
|
import eu.csc.ODPAppVehOwnServer.persistence.entity.data.LanguageEntity;
|
|
import eu.csc.ODPAppVehOwnServer.persistence.entity.data.PropulsionTypeEntity;
|
|
import eu.csc.ODPAppVehOwnServer.persistence.entity.data.VehicleBrandEntity;
|
|
import lombok.var;
|
|
import org.mapstruct.Mapping;
|
|
|
|
import java.util.List;
|
|
import java.util.stream.Collectors;
|
|
|
|
public class DtoMapper {
|
|
|
|
|
|
private static DtoMapper dtoMapper;
|
|
|
|
|
|
public static DtoMapper getInstance() {
|
|
return dtoMapper == null ? (dtoMapper = new DtoMapper()) : dtoMapper;
|
|
}
|
|
|
|
private DtoMapper() {
|
|
|
|
}
|
|
|
|
|
|
public CustomerVehicleDto mapCustomerVehicleToDto(CustomerVehicleEntity item) {
|
|
|
|
throw new UnsupportedOperationException();
|
|
}
|
|
|
|
public CustomerDeviceDto mapCustomerDeviceToDto(CustomerDeviceEntity item){
|
|
|
|
var result = new CustomerDeviceDto();
|
|
|
|
result.setSerialNumber(item.getSerialNumber());
|
|
result.setName(item.getName());
|
|
result.setDeviceNumber(item.getDeviceNumber());
|
|
|
|
return result;
|
|
}
|
|
|
|
public List<PropulsionTypeDto> mapPropulsionTypesToDto(List<PropulsionTypeEntity> items){
|
|
return items.stream()
|
|
.map(this::mapPropulsionTypeToDto)
|
|
.collect(Collectors.toList());
|
|
}
|
|
|
|
private PropulsionTypeDto mapPropulsionTypeToDto(PropulsionTypeEntity item) {
|
|
var result = new PropulsionTypeDto();
|
|
|
|
result.setName(item.getName());
|
|
result.setPropulsionId(item.getTypeId());
|
|
result.setId(item.getId());
|
|
|
|
return result;
|
|
}
|
|
|
|
public List<CustomerDeviceDto> mapCustomerDevicesToDto(List<CustomerDeviceEntity> items) {
|
|
return items.stream()
|
|
.map(this::mapCustomerDeviceToDto)
|
|
.collect(Collectors.toList());
|
|
}
|
|
|
|
|
|
public List<LanguageDto> mapLanguagesToDto(List<LanguageEntity> items) {
|
|
return items.stream()
|
|
.map(this::mapLanguageToDto)
|
|
.collect(Collectors.toList());
|
|
}
|
|
|
|
public LanguageDto mapLanguageToDto(LanguageEntity item){
|
|
var result = new LanguageDto();
|
|
|
|
result.setDefault(item.isStandard());
|
|
result.setName(item.getName());
|
|
result.setLocale(item.getLocale());
|
|
|
|
return result;
|
|
}
|
|
|
|
public DeviceEntity mapDeviceFromDto(DeviceDto item) {
|
|
|
|
DeviceEntity result = new DeviceEntity();
|
|
|
|
result.setDevicenumber(item.getDeviceNumber());
|
|
result.setName(item.getName());
|
|
result.setManufacturer(item.getManufacturer());
|
|
|
|
result.setId(item.getId());
|
|
return result;
|
|
}
|
|
|
|
|
|
public VehicleBrandEntity mapVehicleBrandFromDto(VehicleBrandDto item) {
|
|
var result = new VehicleBrandEntity();
|
|
|
|
result.setBrandId(item.getBrandId());
|
|
result.setName(item.getName());
|
|
|
|
return result;
|
|
}
|
|
|
|
public VehicleBrandDto mapVehicleBrandToDto(VehicleBrandEntity item) {
|
|
var result = new VehicleBrandDto();
|
|
|
|
result.setBrandId(item.getBrandId());
|
|
result.setName(item.getName());
|
|
result.setId(item.getId());
|
|
result.setImageName(item.getImageName());
|
|
|
|
return result;
|
|
}
|
|
|
|
public CustomerProfileDto mapCustomerProfileToDto(UserEntity user) {
|
|
CustomerProfileDto result = new CustomerProfileDto();
|
|
|
|
result.setId(user.getId());
|
|
result.setEmail(user.getEmail());
|
|
result.setFirstname(user.getFirstname());
|
|
result.setLastname(user.getLastname());
|
|
result.setStreet(user.getStreet());
|
|
result.setPhone(user.getPhone());
|
|
|
|
return result;
|
|
}
|
|
}
|