package com.healthcare.ohctech.service.impl; import com.healthcare.ohctech.dto.CheckupParameterValueDto; import com.healthcare.ohctech.entity.CheckupParameterValue; import com.healthcare.ohctech.repository.CheckupParameterValueRepo; import com.healthcare.ohctech.service.CheckupParameterValueService; import org.springframework.data.domain.Page; import org.springframework.data.domain.Pageable; import org.springframework.stereotype.Service; import java.util.Optional; @Service public class CheckupParameterValueServiceImpl implements CheckupParameterValueService { private final CheckupParameterValueRepo checkupParameterValueRepo; public CheckupParameterValueServiceImpl(CheckupParameterValueRepo checkupParameterValueRepo) { this.checkupParameterValueRepo = checkupParameterValueRepo; } @Override public CheckupParameterValue getCheckupParameterValueById(Long id) { Optional checkupParameterValue = checkupParameterValueRepo.findById(id); return checkupParameterValue.orElse(null); } @Override public Page getAllCheckupParameterValues(Pageable pageable) { return checkupParameterValueRepo.findAll(pageable); } @Override public void addCheckupParameterValue(CheckupParameterValueDto checkupParameterValueDto) { CheckupParameterValue checkupParameterValue = new CheckupParameterValue(); checkupParameterValue.setParameterValueName(checkupParameterValueDto.parameterValueName()); checkupParameterValueRepo.save(checkupParameterValue); } @Override public CheckupParameterValue updateCheckupParameterValue(CheckupParameterValueDto checkupParameterValueDto) { Optional optionalCheckupParameterValue = checkupParameterValueRepo.findById(checkupParameterValueDto.id()); if (optionalCheckupParameterValue.isPresent()) { CheckupParameterValue checkupParameterValue = optionalCheckupParameterValue.get(); checkupParameterValue.setParameterValueName(checkupParameterValueDto.parameterValueName()); return checkupParameterValueRepo.save(checkupParameterValue); } else { throw new RuntimeException("Checkup Parameter Value not found with ID: " + checkupParameterValueDto.id()); } } @Override public void deleteCheckupParameterValue(Long id) { Optional optionalCheckupParameterValue = checkupParameterValueRepo.findById(id); if (optionalCheckupParameterValue.isPresent()) { checkupParameterValueRepo.delete(optionalCheckupParameterValue.get()); } else { throw new RuntimeException("Checkup Parameter Value not found with ID: " + id); } } }