package com.zioinfo.mes.integration;

import lombok.RequiredArgsConstructor;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.HttpMethod;
import org.springframework.stereotype.Component;

import java.util.Map;

/**
 * GUARDiA OCR 연계 — 성적서·도면·납품서 파싱 결과를 품질/입고 등록 보조에 활용.
 */
@Component
@RequiredArgsConstructor
public class OcrClient {

    @Value("${guardia.ocr-url:http://localhost:8005}")
    private String ocrUrl;

    private final GuardiaHttpClient http;

    /** OCR 문서 파싱 결과 조회(docId 기준). 연계 실패 시 빈 Map. */
    public Map<String, Object> fetchParsed(String docId) {
        return http.callMap(ocrUrl, "/api/ocr/documents/" + docId + "/result", HttpMethod.GET, null);
    }

    public boolean available() {
        return !http.callMap(ocrUrl, "/actuator/health", HttpMethod.GET, null).isEmpty();
    }
}
