package com.game.business.service;

import java.util.List;
import com.game.business.domain.AppUserCountDividend;
import com.baomidou.mybatisplus.extension.service.IService;
import com.game.common.core.domain.HttpRet;

/**
 * 用户代理分红Service接口
 *
 * @author game
 * @date 2024-06-30
 */
public interface IAppUserCountDividendService extends IService<AppUserCountDividend> {
    /**
     * 查询用户代理分红
     *
     * @param id 用户代理分红主键
     * @return 用户代理分红
     */
    public AppUserCountDividend selectAppUserCountDividendById(Long id);

    /**
     * 查询用户代理分红列表
     *
     * @param appUserCountDividend 用户代理分红
     * @return 用户代理分红集合
     */
    public List<AppUserCountDividend> selectAppUserCountDividendList(AppUserCountDividend appUserCountDividend);

    /**
     * 新增用户代理分红
     *
     * @param appUserCountDividend 用户代理分红
     * @return 结果
     */
    public void insertAppUserCountDividend(AppUserCountDividend appUserCountDividend);

    /**
     * 修改用户代理分红
     *
     * @param appUserCountDividend 用户代理分红
     * @return 结果
     */
    public int updateAppUserCountDividend(AppUserCountDividend appUserCountDividend);

    /**
     * 批量删除用户代理分红
     *
     * @param ids 需要删除的用户代理分红主键集合
     * @return 结果
     */
    public int deleteAppUserCountDividendByIds(Long[] ids);

    /**
     * 删除用户代理分红信息
     *
     * @param id 用户代理分红主键
     * @return 结果
     */
    public int deleteAppUserCountDividendById(Long id);

    /**
     * 查询团队分红
     * */
    public List<AppUserCountDividend> selectUserDividendList(Long pid,Long userId,String dateNum);

    /**
     * 发放分红
     * */
    public HttpRet<Boolean> send(String userId,String dateNo,Long sendUserId);

    /**
     * 重载团队盈亏缓存
     * */
    public void reloadCache(String dateTime,List<Long> userIds);

}