package com.goldenchart.controller;
import com.goldenchart.service.IndicatorSettingsService;
import lombok.RequiredArgsConstructor;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import java.util.Map;
/**
* 전역 지표 파라미터 CRUD REST API.
*
*
프론트엔드 indicatorRegistry.ts 의 defaultParams 를 완전히 대체하는
* 사용자별 지표 파라미터를 저장/조회한다.
*
*
* GET /indicator-settings — 전체 지표 파라미터 조회
* GET /indicator-settings/{type} — 특정 지표 파라미터 조회
* PUT /indicator-settings — 전체 지표 파라미터 저장 (덮어쓰기)
* PATCH /indicator-settings/{type} — 특정 지표 파라미터 병합 저장
*
*/
@RestController
@RequestMapping("/indicator-settings")
@RequiredArgsConstructor
public class IndicatorSettingsController {
private final IndicatorSettingsService service;
// ── 헤더 파싱 헬퍼 ────────────────────────────────────────────────────────
private Long userId(String userIdHeader) {
if (userIdHeader == null || userIdHeader.isBlank()) return null;
try { return Long.parseLong(userIdHeader); } catch (NumberFormatException e) { return null; }
}
// ── GET: 전체 파라미터 조회 ────────────────────────────────────────────────
/**
* 이 장치/사용자의 모든 지표 파라미터를 반환.
* 프론트엔드 앱 시작 시 호출하여 전역 설정을 로드한다.
*/
@GetMapping
public ResponseEntity