package com.hc.business.mapper;

import com.hc.business.dto.ZccmUserStatusClassDto;
import com.hc.business.model.ZccmUser;
import com.hc.business.model.ZccmUserStatus;
import com.hc.core.utils.mapper.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * 用户班级学习进度表
 * (UserStatus)表数据库访问层
 *
 * @author java
 * @since 2020-12-06 11:26:42
 */

@Repository
public interface ZccmUserStatusMapper extends Mapper<ZccmUserStatus> {

    /**
     * 查询用户培训记录
     *
     * @param userId 用户id
     * @return 实例对象数组
     */
    List<ZccmUserStatusClassDto> queryDtoByUserId(Integer userId);


    /**
     * 查询用户状态
     *
     * @param userId 用户id
     * @return 实例对象数组
     */
    List<ZccmUserStatus> queryByUserId(Integer userId);


    /**
     * 查询用户状态
     *
     * @param userId  用户id
     * @param classId 班次id
     * @return 实例对象数组
     */
    List<ZccmUserStatus> queryByClassIdAndUserId(@Param("classId") Integer classId,
                                             @Param("userId") Integer userId);

    /**
     * 查询用户状态
     *
     * @param classId 班次id
     * @return 实例对象数组
     */
    List<ZccmUser> queryByClassId(Integer classId);

}