ohctechv3/.svn/pristine/ab/abc5f7ed0a6a239a750c1d4e327b1d82adf9156f.svn-base
2024-10-28 15:03:36 +05:30

72 lines
2.9 KiB
Plaintext

package com.healthcare.ohctech.service.impl;
import com.healthcare.ohctech.dto.DesignationDto;
import com.healthcare.ohctech.entity.Designation;
import com.healthcare.ohctech.repository.DesignationRepo;
import com.healthcare.ohctech.service.DesignationService;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.stereotype.Service;
import java.util.Optional;
@Service
public class DesignationServiceImpl implements DesignationService {
private final DesignationRepo designationRepo;
public DesignationServiceImpl(DesignationRepo designationRepo) {
this.designationRepo = designationRepo;
}
@Override
public Designation getDesignationById(Long designationId) {
return designationRepo.findById(designationId)
.orElseThrow(() -> new RuntimeException("Designation not found for ID :" + designationId));
}
@Override
public Page<Designation> getAllDesignations(Pageable pageable) {
return designationRepo.findAll(pageable);
}
@Override
public void addDesignation(DesignationDto designationDto) {
Designation designation = new Designation();
designation.setDesignationName(designationDto.designationName());
designation.setDesignationCode(designationDto.designationCode());
designation.setDesignationDesc(designationDto.designationDesc());
designation.setDesignationCollar(designationDto.designationCollar());
designationRepo.save(designation);
}
@Override
public void updateDesignation(DesignationDto designationDto) {
Long designationId = designationDto.id();
Optional<Designation> optionalDesignation = designationRepo.findById(designationId);
if (optionalDesignation.isPresent()) {
Designation designation = optionalDesignation.get();
designation.setDesignationName(designationDto.designationName());
designation.setDesignationCode(designationDto.designationCode());
designation.setDesignationDesc(designationDto.designationDesc());
designation.setDesignationCollar(designationDto.designationCollar());
designationRepo.save(designation);
} else {
throw new RuntimeException("Designation not found for ID: " + designationId);
}
}
@Override
public void deleteDesignation(Long designationId) {
Optional<Designation> optionalDesignation = designationRepo.findById(designationId);
if (optionalDesignation.isPresent()) {
Designation designation = optionalDesignation.get();
designationRepo.delete(designation);
} else {
throw new RuntimeException("Designation not found for ID: " + designationId);
}
}
}