Files
smartproc-be/src/main/java/com/iconplus/smartproc/service/lokasi/GetLokasiByIdService.java
dirgantarasiahaan c93f666056 fix decrypt password
2023-05-28 17:36:28 +07:00

44 lines
1.7 KiB
Java

package com.iconplus.smartproc.service.lokasi;
import com.iconplus.smartproc.exception.BusinessException;
import com.iconplus.smartproc.helper.service.BaseService;
import com.iconplus.smartproc.model.request.LokasiRequest;
import com.iconplus.smartproc.model.response.LokasiResponse;
import com.iconplus.smartproc.repository.LokasiRepository;
import com.iconplus.smartproc.util.Constants;
import org.springframework.http.HttpStatus;
import org.springframework.stereotype.Service;
@Service
public class GetLokasiByIdService implements BaseService<LokasiRequest, LokasiResponse> {
private final LokasiRepository lokasiRepository;
public GetLokasiByIdService(LokasiRepository lokasiRepository) {
this.lokasiRepository = lokasiRepository;
}
@Override
public LokasiResponse execute(LokasiRequest input) {
LokasiResponse lokasiResponse = new LokasiResponse();
var lokasiView = lokasiRepository.findByIdAndIsDeleteFalse(input.getId());
if (lokasiView.isEmpty()) {
throw new BusinessException(HttpStatus.CONFLICT,
Constants.ERR_CODE_10001,
Constants.ERR_TTL_10001,
String.format(Constants.ERR_MSG_10001, "Lokasi", input.getId()));
}
lokasiResponse.setLokasi(lokasiView.get().getLokasi());
lokasiResponse.setKeterangan(lokasiView.get().getKeterangan());
lokasiResponse.setIsDelete(lokasiView.get().getIsDelete());
return LokasiResponse.builder()
.id(lokasiView.get().getId())
.lokasi(lokasiView.get().getLokasi())
.keterangan(lokasiView.get().getKeterangan())
.isDelete(lokasiView.get().getIsDelete())
.build();
}
}