65 lines
2.4 KiB
Plaintext
65 lines
2.4 KiB
Plaintext
package com.healthcare.ohctech.service.impl;
|
|
|
|
import com.healthcare.ohctech.dto.MedicineFormDto;
|
|
import com.healthcare.ohctech.entity.MedicineForm;
|
|
import com.healthcare.ohctech.repository.MedicineFormRepo;
|
|
import com.healthcare.ohctech.service.MedicineFormService;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.data.domain.Page;
|
|
import org.springframework.data.domain.Pageable;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
@Service
|
|
public class MedicineFormServiceImpl implements MedicineFormService {
|
|
|
|
private final MedicineFormRepo medicineFormRepo;
|
|
|
|
@Autowired
|
|
public MedicineFormServiceImpl(MedicineFormRepo medicineFormRepo) {
|
|
this.medicineFormRepo = medicineFormRepo;
|
|
}
|
|
|
|
@Override
|
|
public MedicineForm getMedicineFormById(Long id) {
|
|
return medicineFormRepo.findById(id)
|
|
.orElseThrow(() -> new RuntimeException("MedicineForm not found for ID: " + id));
|
|
}
|
|
|
|
@Override
|
|
public Page<MedicineForm> getAllMedicineForms(Pageable pageable) {
|
|
return medicineFormRepo.findAll(pageable);
|
|
}
|
|
|
|
@Override
|
|
public void addMedicineForm(MedicineFormDto medicineFormDto, Long userId) {
|
|
MedicineForm medicineForm = convertToEntity(new MedicineForm(), medicineFormDto);
|
|
medicineForm.setModifiedBy(userId);
|
|
medicineFormRepo.save(medicineForm);
|
|
}
|
|
|
|
@Override
|
|
public void updateMedicineForm(MedicineFormDto medicineFormDto, Long userId) {
|
|
Long formId = medicineFormDto.id();
|
|
MedicineForm medicineForm = medicineFormRepo.findById(formId)
|
|
.orElseThrow(() -> new RuntimeException("MedicineForm not found for ID: " + formId));
|
|
|
|
convertToEntity(medicineForm, medicineFormDto);
|
|
medicineForm.setModifiedBy(userId);
|
|
medicineFormRepo.save(medicineForm);
|
|
}
|
|
|
|
@Override
|
|
public void deleteMedicineForm(Long id) {
|
|
MedicineForm medicineForm = medicineFormRepo.findById(id)
|
|
.orElseThrow(() -> new RuntimeException("MedicineForm not found for ID: " + id));
|
|
medicineFormRepo.delete(medicineForm);
|
|
}
|
|
|
|
private MedicineForm convertToEntity(MedicineForm medicineForm, MedicineFormDto medicineFormDto) {
|
|
medicineForm.setFormName(medicineFormDto.formName());
|
|
medicineForm.setFormCode(medicineFormDto.formCode());
|
|
medicineForm.setIsQtyFixed(medicineFormDto.isQtyFixed());
|
|
return medicineForm;
|
|
}
|
|
}
|