package cn.com.qmth.stmms.biz.subjectheader.service;

import java.util.List;

import cn.com.qmth.stmms.biz.exam.model.ExamSubject;
import cn.com.qmth.stmms.biz.exam.query.SubjectHeaderSearchQuery;
import cn.com.qmth.stmms.biz.subjectheader.model.SubjectHeader;

public interface SubjectHeaderService {

    SubjectHeader findById(int id);

    List<SubjectHeader> findByExamId(int examId);

    List<SubjectHeader> findByExamIdAndSubjectCode(int examId, String subjectCode);

    SubjectHeader findByLoginName(String loginName);

    long countByExamId(int examId);

    long countByExamIdAndSubjectCode(int examId, String subjectCode);

    SubjectHeaderSearchQuery findByQuery(SubjectHeaderSearchQuery query);

    int batchCreate(ExamSubject subject, int count, String password);

    SubjectHeader save(SubjectHeader sh);

    void delete(SubjectHeader sh);

    void deleteById(int id);

    void deleteByExamIdAndSubjectCode(int examId, String subjectCode);

}
