package com.ycwl.basic.integration.common.manager;

import com.ycwl.basic.integration.common.util.ConfigValueUtil;
import com.ycwl.basic.integration.scenic.dto.config.ScenicConfigV2DTO;

import java.math.BigDecimal;
import java.util.*;
import java.util.stream.Collectors;

/**
 * 景区配置管理器
 * 基于通用ConfigManager实现景区配置的管理功能
 * 
 * 提供类型安全的配置值获取功能，支持多种数据类型的自动转换，
 * 当类型不兼容时返回null而不是抛出异常。
 */
public class ScenicConfigManager extends ConfigManager<ScenicConfigV2DTO> {
    
    /**
     * 从配置列表构造管理器
     * 
     * @param configList 配置项列表
     */
    public ScenicConfigManager(List<ScenicConfigV2DTO> configList) {
        super(configList);
    }
    @Override
    protected String getConfigKey(ScenicConfigV2DTO config) {
        return config != null ? config.getConfigKey() : null;
    }

    @Override
    protected Object getConfigValue(ScenicConfigV2DTO config) {
        return config != null ? config.getConfigValue() : null;
    }

}