package com.iconplus.smartproc.service.supplypositioningmatrix; import com.iconplus.smartproc.exception.BusinessException; import com.iconplus.smartproc.helper.service.BaseService; import com.iconplus.smartproc.model.request.SupplyPositioningMatrixRequest; import com.iconplus.smartproc.model.response.SupplyPositioningMatrixResponse; import com.iconplus.smartproc.repository.SupplyPositioningMatrixRepository; import com.iconplus.smartproc.util.Constants; import org.springframework.http.HttpStatus; import org.springframework.stereotype.Service; @Service public class GetSupplyPositioningMatrixByIdService implements BaseService { private final SupplyPositioningMatrixRepository supplyPositioningMatrixRepository; public GetSupplyPositioningMatrixByIdService(SupplyPositioningMatrixRepository supplyPositioningMatrixRepository) { this.supplyPositioningMatrixRepository = supplyPositioningMatrixRepository; } @Override public SupplyPositioningMatrixResponse execute(SupplyPositioningMatrixRequest input) { var supplyPositioningMatrixView = supplyPositioningMatrixRepository.findByIdAndIsDeleteFalse(input.getId()); if (supplyPositioningMatrixView.isEmpty()) { throw new BusinessException(HttpStatus.CONFLICT, Constants.ERR_CODE_10001, Constants.ERR_TTL_10001, String.format(Constants.ERR_MSG_10001, input.getId())); } return SupplyPositioningMatrixResponse.builder() .id(supplyPositioningMatrixView.get().getId()) .supplyPositioningMatrix(supplyPositioningMatrixView.get().getSupplyPositioningMatrix()) .keterangan(supplyPositioningMatrixView.get().getKeterangan()) .isActive(supplyPositioningMatrixView.get().getIsActive()) .isDelete(supplyPositioningMatrixView.get().getIsDelete()) .build(); } }