package com.kxs.stat.biz.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.kxs.stat.api.model.KxsUserNewTrade;
import com.kxs.stat.api.vo.myUser.UserAddTrendVO;
import com.kxs.stat.api.vo.statUser.TrendTimesVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 创客新增统计表(KxsUserNewTrade)表数据库访问层
 *
 * @author 系统
 * @since 2024-05-16 11:07:42
 */
@Mapper
public interface KxsUserNewTradeMapper extends BaseMapper<KxsUserNewTrade> {


    /**
     * 创客详情-新增创客趋势图 按日和月查询
     *
     * @param userId 用户 ID
     * @param times  次
     * @param dateType   类型 0月 1天
     * @param totalType   类型 1团队 0个人
     * @return {@link List}<{@link TrendTimesVO}>
     */
    List<UserAddTrendVO> getAddUserTrend(@Param("userId") Long userId, @Param("times") List<Integer> times, @Param("dateType") Integer dateType, @Param("totalType") Integer totalType);

    /**
     * 获取日/月的新增数量
     *
     * @param userId    用户 ID
     * @param totalType 类型  0个人 1团队
     * @return {@link Integer}
     */
    Integer selectToDayOrMonthCount(@Param("userId") Long userId, @Param("date") Integer date, @Param("totalType") Integer totalType );
}

