using System; using System.Collections.Generic; using System.Text; using Song.Entities; using System.Data; namespace Song.ServiceInterfaces { /// /// 考试管理 /// public interface IExamination : WeiSha.Common.IBusinessInterface { #region 考试管理 /// 添加 /// /// 业务实体 int ExamAdd(Examination entity); /// /// 整体添加 /// /// 考试主题 /// 考试的场次 /// 参考人员的范围 void ExamAdd(Examination theme, List items, List groups); /// /// 修改 /// /// 业务实体 void ExamSave(Examination entity); /// /// 整体修改 /// /// 考试主题 /// 考试的场次 /// 参考人员的范围 void ExamSave(Examination theme, List items, List groups); /// /// 删除,按主键ID; /// /// 实体的主键 void ExamDelete(int identify); /// /// 获取单一实体对象,按主键ID;此处获取的是考试主题或场次 /// /// 实体的主键 /// Examination ExamSingle(int identify); /// /// 获取单一实体对象,通过全局唯一值,此处获取的是考试主题 /// /// /// Examination ExamSingle(string uid); /// /// 获取单一实体对象,取最近一次考试;此处获取的是考试主题或场次 /// /// Examination ExamLast(); /// /// 获取当前考试的考试项目 /// /// /// Examination[] ExamItem(string uid); Examination[] ExamItem(int id); /// /// 当前考试主题关联的学生分类 /// /// /// StudentSort[] GroupForStudentSort(string uid); /// /// 获取考试,不分页 /// /// /// /// List ExamCount(int orgid, bool? isUse, int count); /// /// 获取当前学生要参加的考试 /// /// 时间范围查询的开始时间 /// 时间范围查询的结束时间 /// List GetSelfExam(int stid, DateTime? start, DateTime? end); List GetCountExam(int stid, DateTime? start, DateTime? end, bool? isUse, int count); /// /// 判断某个考试是否允许某个学生参加 /// /// 考试id /// 学生id /// bool ExamIsForStudent(int examid, int stid); /// /// 获取指定时间内容的考试 /// /// 时间区间检索的开始时间 /// 时间区间检索的末尾时间 /// /// /// /// /// /// Examination[] GetPager(int orgid, DateTime? start, DateTime? end, bool? isUse, string searName, int size, int index, out int countSum); /// /// 获取当前学生参加的的考试 /// /// /// 学科id /// /// /// /// /// /// ExamResults[] GetAttendPager(int stid, int sbjid, int orgid, string sear, int size, int index, out int countSum); #endregion #region 考试成绩提交等 /// /// 添加考试答题信息 /// /// ExamResults ResultAdd(ExamResults result); /// /// 保存考试答题信息 /// /// void ResultSave(ExamResults result); /// /// 成绩提交 /// /// void ResultSubmit(ExamResults result); /// /// 计算成绩并保存 /// /// /// Song.Entities.ExamResults ClacScore(ExamResults result); /// /// 删除考试成绩 /// /// 成绩记录的id void ResultDelete(int id); /// /// 删除某个学生的某个考试的成绩 /// /// 学员账号id /// 考试id void ResultDelete(int stid, int examid); /// /// 获取最新的答题信息(临时信息) /// /// 考试id /// 试卷id /// 考生id /// ExamResultsTemp ExamResultsTempSingle(int examid, int tpid, int stid); /// /// 获取最新的答题信息(正式答题信息) /// /// 考试id /// 试卷id /// 考生id /// ExamResults ResultSingle(int examid, int tpid, int acid); /// /// 从缓存中获取考试答题信息 /// /// /// /// /// ExamResults ResultSingleForCache(int examid, int tpid, int acid); /// /// 获取当前考试的所有考生答题信息 /// /// /// /// ExamResults[] ResultCount(int examid, int count); /// /// 当前考试信息中,下一个 /// /// /// /// 是否是人工判卷过的,false下一个未判卷的信息 /// ExamResults ResultSingleNext(int examid, int stid, bool? isCorrect); /// /// 通过答案id获取答题信息(正式答题信息) /// /// /// ExamResults ResultSingle(int exrid); /// /// 通过学员ID与考试ID,获取成绩(最好成绩) /// /// /// /// ExamResults ResultSingle(int accid, int examid); /// /// 计算当前考试结果的成绩 /// /// /// ExamResults ResultClacScore(ExamResults resu); /// /// 根据答题信息,获取试题(针对答题过程中死机,又上线时) /// /// /// List QuesForResults(string results); #endregion #region 成绩统计 /// /// 考试主题下的所有参考人员成绩 /// /// /// DataTable Result4Theme(int id); /// /// 考试主题下的所有参考人员的班组 /// /// /// StudentSort[] StudentSort4Theme(int id); /// /// 考试主题下的所有参考人员成绩 /// /// 当前考试主题的ID /// 学生分组的id,为0时取所有,为-1时取不在组的学员,大于0则取当前组学员 /// DataTable Result4Theme(int examid, int stsid); /// /// 考试主题下的所有参考人员成绩 /// /// 当前考试主题的ID /// 学生分组的id,为0时取所有,为-1时取不在组的学员,大于0则取当前组学员 /// DataTable Result4Theme(int examid, string stsid); /// /// 考试主题下的所有参考人员成绩 /// /// /// 学生分组的id,为0时取所有,为-1时取不在组的学员,大于0则取当前组学员 /// 是否取所有人员(含缺考人员),false为仅参考人员 /// DataTable Result4Theme(int id, int stsid, bool isAll); /// /// 当前考试主题下的各学员分组成绩排行 /// /// /// DataTable Result4StudentSort(int examid); /// /// 计算某个考试主题的及格率 /// /// /// double PassRate4Theme(string uid); /// /// 计算某场考试的及极率 /// /// /// double PassRate4Exam(Examination exam); /// /// 计算某个考试主题的平均分 /// /// /// double Avg4Theme(string uid); /// /// 计算某场考试的平均分 /// /// /// double Avg4Exam(int examid); /// /// 当前考试的参考人数 /// /// /// int Number4Exam(int examid); /// /// 当前考试场次下的所有人员成绩 /// /// /// ExamResults[] Results(int examid, int size, int index, out int countSum); ExamResults[] Results(string examuid, int size, int index, out int countSum); /// /// 当前考试场次下的所有人员成绩 /// /// 考试场次id /// 取多少条 /// ExamResults[] Results(int examid, int count); #endregion } }