package com.ssj.service.kmt.arrange.service;


import com.ssj.bean.kmt.arrange.dto.DutyTemplate;
import com.ssj.bean.kmt.arrange.dto.TeacherArrangeVO;
import com.ssj.bean.kmt.arrange.dto.TeacherNextArrangeVO;
import com.ssj.bean.kmt.arrange.vo.DutyRequestVO;
import com.ssj.bean.kmt.arrange.vo.DutySysRequestVO;
import com.ssj.bean.kmt.kmt.domain.KmtArrangeAllot;
import com.ssj.framework.core.common.service.BaseService;
import com.ssj.framework.core.util.ResponseEntity;

import java.util.Date;
import java.util.List;


public interface KmtArrangeAllotService extends BaseService<KmtArrangeAllot, String> {

	KmtArrangeAllot getKmtArrangeAllotByTeacher(String arrangeDetailId,String teacherId);

	void updateKmtArrangeAllotToStatus(String arrangeDetailId,String teacherId,Integer status);

    TeacherArrangeVO teacherMonthDutyList(String teacherUserId);

    TeacherNextArrangeVO teacherNextMonthDutyList(String teacherUserId);

    ResponseEntity  saveTeacherDuty(DutyRequestVO requestVO, String teacherUserId);

    List<DutyTemplate> dutyTemplateList(String teacherUserId);

    void saveSysTeacherDuty(DutySysRequestVO vo1);
	Integer countArrangeActiveNum();

	Integer countKmtArrangeAllotByArrangeDetailId(String arrangeDetailId);

	List<String> findKmtArrangeAllotByArrangeDetailId(String arrangeDetailId);

   void updateAttendType(String date) throws Exception;

     /**
     *判断是否在排班时间，如果是则返回true,如果不是则返回false
     * @param createTime  scon_homework_picture的创建时间
     * @param teacherId 老师id
     * @return
     */
    public boolean findTeacherArrange(Date createTime, String teacherId);
    
    /**
     * 清除当前时间之后的老师排班数据。
     * @param teacherId
     */
    public void clearArrangeAllotByTeacherId(String teacherId);
    
    
}
