61 lines
2.5 KiB
Plaintext
61 lines
2.5 KiB
Plaintext
package com.healthcare.ohctech.service.impl;
|
|
|
|
import com.healthcare.ohctech.dto.AmbulanceCategoryDto;
|
|
import com.healthcare.ohctech.entity.AmbulanceCategory;
|
|
import com.healthcare.ohctech.repository.AmbulanceCategoryRepo;
|
|
import com.healthcare.ohctech.service.AmbulanceCategoryService;
|
|
import org.springframework.data.domain.Page;
|
|
import org.springframework.data.domain.Pageable;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
@Service
|
|
public class AmbulanceCategoryServiceImpl implements AmbulanceCategoryService {
|
|
|
|
private final AmbulanceCategoryRepo ambulanceCategoryRepo;
|
|
|
|
public AmbulanceCategoryServiceImpl(AmbulanceCategoryRepo ambulanceCategoryRepo) {
|
|
this.ambulanceCategoryRepo = ambulanceCategoryRepo;
|
|
}
|
|
|
|
@Override
|
|
public AmbulanceCategory getAmbulanceCategoryById(Long id) {
|
|
return ambulanceCategoryRepo.findById(id)
|
|
.orElseThrow(() -> new RuntimeException("Ambulance category not found for ID: " + id));
|
|
}
|
|
|
|
@Override
|
|
public Page<AmbulanceCategory> getAllAmbulanceCategories(Pageable pageable) {
|
|
return ambulanceCategoryRepo.findAll(pageable);
|
|
}
|
|
|
|
@Override
|
|
public void addAmbulanceCategory(AmbulanceCategoryDto ambulanceCategoryDto,Long userId) {
|
|
AmbulanceCategory ambulanceCategory = convertToEntity(new AmbulanceCategory(), ambulanceCategoryDto);
|
|
ambulanceCategory.setModifiedBy(userId);
|
|
ambulanceCategoryRepo.save(ambulanceCategory);
|
|
}
|
|
|
|
@Override
|
|
public AmbulanceCategory updateAmbulanceCategory(AmbulanceCategoryDto ambulanceCategoryDto,Long userId) {
|
|
Long id = ambulanceCategoryDto.id();
|
|
AmbulanceCategory ambulanceCategory = ambulanceCategoryRepo.findById(id)
|
|
.orElseThrow(() -> new RuntimeException("Ambulance category not found with ID: " + id));
|
|
|
|
ambulanceCategory.setModifiedBy(userId);
|
|
convertToEntity(ambulanceCategory, ambulanceCategoryDto);
|
|
return ambulanceCategoryRepo.save(ambulanceCategory);
|
|
}
|
|
|
|
@Override
|
|
public void deleteAmbulanceCategory(Long id) {
|
|
AmbulanceCategory ambulanceCategory = ambulanceCategoryRepo.findById(id)
|
|
.orElseThrow(() -> new RuntimeException("Ambulance category not found with ID: " + id));
|
|
ambulanceCategoryRepo.delete(ambulanceCategory);
|
|
}
|
|
|
|
private AmbulanceCategory convertToEntity(AmbulanceCategory ambulanceCategory, AmbulanceCategoryDto ambulanceCategoryDto) {
|
|
ambulanceCategory.setAmbulanceCategory(ambulanceCategoryDto.ambulanceCategory());
|
|
return ambulanceCategory;
|
|
}
|
|
}
|