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

import java.util.List;

import cn.com.qmth.stmms.biz.exam.model.ExamSubject;
import cn.com.qmth.stmms.biz.exam.model.Marker;
import cn.com.qmth.stmms.biz.exam.query.MarkerSearchQuery;

public interface MarkerService {

    Marker save(Marker marker);

    Marker findById(Integer id);

    Marker findByLoginName(String loginName);

    List<Marker> findByExamAndSubject(int examId, String subjectCode);

    long countByExam(int examId);

    long countByExamAndSubject(int examId, String subjectCode);

    void delete(Marker marker);

    void deleteById(Integer markerId);

    void deleteByExamAndSubject(int examId, String subjectCode);

    void deleteByExam(int examId);

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

    int batchCreateCommon(int examId, int count, String password);

    MarkerSearchQuery findByQuery(MarkerSearchQuery query);

    List<Marker> getMarkCount(int examId);

	List<Marker> findExamAndCommon(int examId, boolean common);

	List<Marker> findCommon(boolean commo);

	public Marker findByStudentId(int studentId);

    public int batchSave(List<Marker> list);

    long countByLoginName(String loginName);

}
