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.RksTemplateRequest; import com.iconplus.smartproc.model.response.RksTemplateResponse; import com.iconplus.smartproc.repository.RksTemplateRepository; import com.iconplus.smartproc.util.Constants; import org.springframework.stereotype.Service; @Service public class PutUpdateRksTemplateService implements BaseService { private final RksTemplateRepository rksTemplateRepository; public PutUpdateRksTemplateService(RksTemplateRepository rksTemplateRepository) { this.rksTemplateRepository = rksTemplateRepository; } @Override public RksTemplateResponse execute(RksTemplateRequest input) { var rksTemplate = rksTemplateRepository.findByIdAndIsDeleteFalse(input.getId()) .orElseThrow(()-> new BusinessException( Constants.ERR_CODE_10001, Constants.ERR_TTL_10001, String.format(Constants.ERR_MSG_10001, "RKS Template", input.getId()) )); rksTemplate.setKodeTemplate(input.getKodeTemplate()); rksTemplate.setNamaTemplate(input.getNamaTemplate()); rksTemplate.setRksDaftarId(input.getRksDaftarId()); rksTemplate.setMetodePengadaanId(input.getMetodePengadaanId()); rksTemplate.setVersi(input.getVersi()); rksTemplate.setIsActive(input.getIsActive()); rksTemplateRepository.save(rksTemplate); return RksTemplateResponse.builder() .id(rksTemplate.getId()) .build(); } }