package com.ssj.service.mapper;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * @author yrf
 * @description
 * @time 2019/12/10 15:31
 */
@Mapper
public interface ZybStudentWorkMapper {

    /**
     * 查询指定时间区间内的而学习日期
     * @param vipId 学生id
     * @param beginDateTimeStr 开始时间（例：2019-12-10）
     * @param endDateTimeStr 结束时间（例：2019-12-10）
     * @return 学习日期列表
     */
    List<String> findLearningDate(@Param("vipId") String vipId, @Param("beginDateTimeStr") String beginDateTimeStr, @Param("endDateTimeStr") String endDateTimeStr);

    /**
     * 分科统计时间区间内作业天数和作业用时
     * @param vipId 学生id
     * @param beginTime 开始时间（例：2019-12-10）
     * @param endTime 结束时间（例：2019-12-10）
     * @return 统计结果列表
     */
    List<Map<String, Object>> countHomeworkDaysAndUsedTime(@Param("vipId") String vipId, @Param("beginTime") String beginTime, @Param("endTime") String endTime);

    /**
     * 更新zyb_student_push.type，type=0但是学生上传了作业，则type需要更新为4
     * @return 更新数量
     */
    int updateStudentPushType();
}
