package com.kym.service;

import com.kym.entity.RechargeConfig;
import com.kym.service.mybatisplus.MyBaseService;

import java.util.List;

/**
 * 充值配置项服务
 *
 * @author skyline
 * @since 2024-11-15
 */
public interface RechargeConfigService extends MyBaseService<RechargeConfig> {

    /**
     * 根据站点查询配置项（通过分组联查），优先返回站点专属配置，若无则返回默认配置。
     * 返回扁平列表，API响应格式不变。
     */
    List<RechargeConfig> listByStationId(String stationId);

    /**
     * 根据用户归属站点+充值金额查找配置项。
     * 先查站点专属分组 → 回退默认分组 → 组内匹配金额。
     * 用于充值回调场景（wxNotify），确保同金额不同组时赠款金额正确。
     */
    RechargeConfig getByStationAndAmount(String stationId, Integer amount);

    /**
     * 根据分组ID查询该分组下的所有配置项
     */
    List<RechargeConfig> listByGroupId(Long groupId);
}
