smartproc-be/src/main/java/com/iconplus/smartproc/service/supplypositioningmatrix/GetSupplyPositioningMatrixByIdService.java
2023-05-26 10:39:31 +07:00

40 lines
2.0 KiB
Java

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<SupplyPositioningMatrixRequest, SupplyPositioningMatrixResponse> {
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();
}
}