package com.iconplus.smartproc.service.metodepenyampaian; import com.iconplus.smartproc.exception.BusinessException; import com.iconplus.smartproc.helper.service.BaseService; import com.iconplus.smartproc.model.request.MetodePenyampaianRequest; import com.iconplus.smartproc.model.response.MetodePenyampaianResponse; import com.iconplus.smartproc.repository.MetodePenyampaianRepository; import com.iconplus.smartproc.util.Constants; import org.springframework.http.HttpStatus; import org.springframework.stereotype.Service; @Service public class GetMetodePenyampaianByIdService implements BaseService { private final MetodePenyampaianRepository metodePenyampaianRepository; public GetMetodePenyampaianByIdService(MetodePenyampaianRepository metodePenyampaianRepository) { this.metodePenyampaianRepository = metodePenyampaianRepository; } @Override public MetodePenyampaianResponse execute(MetodePenyampaianRequest input) { var metodePenyampaianView = metodePenyampaianRepository.findByIdAndIsDeleteFalse(input.getId()); if (metodePenyampaianView.isEmpty()) { throw new BusinessException(HttpStatus.CONFLICT, Constants.ERR_CODE_10001, Constants.ERR_TTL_10001, String.format(Constants.ERR_MSG_10001, "Metode Penyampaian", input.getId())); } return MetodePenyampaianResponse.builder() .id(metodePenyampaianView.get().getId()) .metodePenyampaian(metodePenyampaianView.get().getMetodePenyampaian()) .keterangan(metodePenyampaianView.get().getKeterangan()) .isActive(metodePenyampaianView.get().getIsActive()) .isDelete(metodePenyampaianView.get().getIsDelete()) .build(); } }