package com.cool.store.mapper;

import com.cool.store.entity.EmployeeTrainingDO;
import com.cool.store.vo.EmployeeTrainingVO;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.models.auth.In;
import org.apache.ibatis.annotations.Param;
import tk.mybatis.mapper.common.Mapper;

import java.util.List;

public interface EmployeeTrainingMapper extends Mapper<EmployeeTrainingDO> {

    List<EmployeeTrainingVO> employeeTrainingList(@Param("keyWord") String keyWord, @Param("regionIdList") List<String> regionIdList,
                                                  @Param("authRegionIdList") List<String> authRegionIdList, @Param("assignFlag") Boolean assignFlag,
                                                  @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("storeNumList") List<String> storeNumList,
                                                  @Param("theoreticalExamStatus") Integer theoreticalExamStatus,
                                                  @Param("practicalExamStatus") Integer practicalExamStatus,
                                                  @Param("assessmentStatus") Integer assessmentStatus,
                                                  @Param("assignStoreFlag") Boolean assignStoreFlag);

    List<EmployeeTrainingVO> trainingListByShopId(@Param("shopId") Long shopId, @Param("trainingTeacherUserId") String trainingTeacherUserId,
                                                  @Param("status") Integer status);

    List<EmployeeTrainingVO> assessmentUserList(@Param("name") String name, @Param("practicalAssessmentUserId") String practicalAssessmentUserId,
                                                @Param("assessmentStatus") Integer assessmentStatus,
                                                @Param("estimatedAssessmentBeginTime") String estimatedAssessmentBeginTime, @Param("estimatedAssessmentEndTime") String estimatedAssessmentEndTime,
                                                @Param("actualAssessmentBeginTime") String actualAssessmentBeginTime, @Param("actualAssessmentEndTime") String actualAssessmentEndTime,
                                                @Param("storeIdList") List<String> storeIdList);
}