package com.infoepoch.pms.agent.domain.care.model;

/**
 * 活动匹配用户规则。
 *
 * @param activityKey 活动关键词，用于匹配活动语义
 * @param sex 性别编码
 * @param minAge 最小年龄
 * @param maxAge 最大年龄
 * @param bmi BMI 分类
 * @param hobby 兴趣爱好，多个值使用英文逗号拼接
 * @param specialty 特长标签，多个值使用英文逗号拼接
 */
public record ActivityMatchUserRule(
        String activityKey,
        String sex,
        Integer minAge,
        Integer maxAge,
        String bmi,
        String hobby,
        String specialty
) {

    public ActivityMatchUserRule {
        activityKey = trim(activityKey);
        sex = trim(sex);
        bmi = trim(bmi);
        hobby = trim(hobby);
        specialty = trim(specialty);
    }

    private static String trim(String value) {
        return value == null ? "" : value.trim();
    }
}
