package com.huimv.employment.service.enterprise.dto;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.v3.oas.annotations.media.Schema;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import java.util.Map;

@Schema(description = "MCP 企业画像增量更新请求（v2 §6.2.2）")
public class McpEnterpriseProfileUpdateRequest {

    @NotBlank(message = "session_id 不能为空")
    @JsonProperty("session_id")
    @Schema(description = "会话标识，与 AI chat session_id / conversation_no 一致",
            example = "a1b2c3d4e5f6", requiredMode = Schema.RequiredMode.REQUIRED)
    private String sessionId;

    @NotEmpty(message = "updates 不能为空")
    @Schema(description = "增量更新字段，支持点路径如 preferences.settlement_cycle",
            example = "{\"preferences.settlement_cycle\":\"monthly\",\"company_address\":\"上海市浦东新区...\"}")
    private Map<String, Object> updates;

    public String getSessionId() {
        return sessionId;
    }

    public void setSessionId(String sessionId) {
        this.sessionId = sessionId;
    }

    public Map<String, Object> getUpdates() {
        return updates;
    }

    public void setUpdates(Map<String, Object> updates) {
        this.updates = updates;
    }
}
