package com.iconplus.smartproc.service.rkstemplate; import com.iconplus.smartproc.exception.BusinessException; import com.iconplus.smartproc.helper.service.BaseService; import com.iconplus.smartproc.model.request.RksTemplateVariabelRequest; import com.iconplus.smartproc.model.response.RksTemplateVariabelResponse; import com.iconplus.smartproc.repository.RksTemplateVariabelRepository; import com.iconplus.smartproc.util.Constants; import org.springframework.stereotype.Service; @Service public class GetRksTemplateVariabelService implements BaseService { private final RksTemplateVariabelRepository rksTemplateVariabelRepository; public GetRksTemplateVariabelService(RksTemplateVariabelRepository rksTemplateVariabelRepository) { this.rksTemplateVariabelRepository = rksTemplateVariabelRepository; } @Override public RksTemplateVariabelResponse execute(RksTemplateVariabelRequest input) { var rksTemplateVariabel = rksTemplateVariabelRepository.findByIdAndIsDeleteFalse(input.getId()) .orElseThrow(() -> new BusinessException( Constants.ERR_CODE_10001, Constants.ERR_TTL_10001, String.format(Constants.ERR_MSG_10001, "RKS Template Variabel", input.getId()) )); return RksTemplateVariabelResponse.builder() .id(rksTemplateVariabel.getId()) .rksTemplateId(rksTemplateVariabel.getRksTemplateId()) .variableName(rksTemplateVariabel.getVariableName()) .keterangan(rksTemplateVariabel.getKeterangan()) .contohIsian(rksTemplateVariabel.getContohIsian()) .isian(rksTemplateVariabel.getIsian()) .digunakanDi(rksTemplateVariabel.getDigunakanDi()) .build(); } }