package com.example.demo.controller;

import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

import java.time.LocalDateTime;
import java.util.LinkedHashMap;
import java.util.Map;

/**
 * 健康检查控制器。
 * <p>
 * 提供系统健康检查和运行状态信息。
 * </p>
 */
@Tag(name = "系统健康检查", description = "系统运行状态与健康检查接口")
@RestController
public class HealthController {

    /**
     * 健康检查端点。
     *
     * @return 系统健康状态
     */
    @Operation(summary = "健康检查", description = "返回系统运行状态信息，包括服务状态、运行时间等")
    @GetMapping("/api/health")
    public Map<String, Object> health() {
        Map<String, Object> status = new LinkedHashMap<>();
        status.put("status", "UP");
        status.put("service", "战场态势与任务规划系统");
        status.put("timestamp", LocalDateTime.now().toString());
        status.put("version", "1.0.0");
        return status;
    }
}
