package com.estate.expert.admin.service.impl;
|
|
import com.estate.expert.admin.domain.business.car.Car;
|
import com.estate.expert.admin.domain.business.car.CarDto;
|
import com.estate.expert.admin.domain.business.car.CarRepository;
|
import com.estate.expert.admin.domain.standard.hierachy.HierarchyIds;
|
import com.estate.expert.admin.service.common.CrudServiceBaseImpl;
|
import com.estate.expert.admin.service.CarService;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.stereotype.Service;
|
|
import javax.annotation.Resource;
|
import java.util.List;
|
|
/**
|
* 车辆管理服务实现
|
**/
|
@Slf4j
|
@Service
|
public class CarServiceImpl extends CrudServiceBaseImpl<Car, CarDto> implements CarService {
|
|
@Resource
|
private CarRepository carRepository;
|
|
@Resource
|
private HierarchyServiceImpl hierarchyService;
|
|
@Override
|
public List<CarDto> list(String departmentPath, String licenseNo) {
|
var list = carRepository.listCars(departmentPath, licenseNo);
|
return toDto(list);
|
}
|
|
@Override
|
public List<Car> listAll(String keyword) {
|
return carRepository.listCars(keyword);
|
}
|
|
|
@Override
|
public List<CarDto> toDto(List<Car> entityList) {
|
var hierarchy = hierarchyService.get(HierarchyIds.DEPARTMENT).getContent();
|
var dtos = super.toDto(entityList);
|
dtos.forEach(dto -> {
|
var department = hierarchy.get(dto.getDepartmentPath());
|
if(department != null) {
|
dto.setDepartmentName(department.getName());
|
}
|
});
|
return dtos;
|
}
|
|
@Override
|
public CarDto toDto(Car entity) {
|
var hierarchy = hierarchyService.get(HierarchyIds.DEPARTMENT).getContent();
|
var dto = super.toDto(entity);
|
var department = hierarchy.get(dto.getDepartmentPath());
|
if(department != null) {
|
dto.setDepartmentName(department.getName());
|
}
|
return dto;
|
}
|
}
|