package com.iconplus.smartproc.service.instansi; import com.iconplus.smartproc.exception.BusinessException; import com.iconplus.smartproc.helper.model.EmptyResponse; import com.iconplus.smartproc.helper.service.BaseService; import com.iconplus.smartproc.model.request.InstansiRequest; import com.iconplus.smartproc.repository.InstansiRepository; import com.iconplus.smartproc.util.Constants; import org.springframework.stereotype.Service; @Service public class DeleteInstansiService implements BaseService { private InstansiRepository instansiRepository; public DeleteInstansiService(InstansiRepository instansiRepository) { this.instansiRepository = instansiRepository; } @Override public EmptyResponse execute(InstansiRequest input) { var instansi = instansiRepository.findByIdAndIsDeleteFalse(input.getId()) .orElseThrow(() -> new BusinessException(Constants.ERR_CODE_10001, Constants.ERR_TTL_10001, String.format(Constants.ERR_MSG_10001, "instansi", input.getId()))); instansi.setIsDelete(true); instansiRepository.save(instansi); return new EmptyResponse(); } }