using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using EMIS.ViewModel.EducationManagement;
using Bowin.Common.Linq.Entity;
using EMIS.ViewModel;
using EMIS.Entities;
using EMIS.ViewModel.EducationManage;
using EMIS.ViewModel.UniversityManage.TeacherManage;
using EMIS.ViewModel.UniversityManage.ClassroomManage;
using EMIS.ViewModel.UniversityManage.SpecialtyClassManage;
namespace EMIS.CommonLogic.EducationManagement
{
public partial interface IEducationMissionClassServices
{
///
/// 删除学生
///
///
///
void DeleteStudentbyEducationMissionClassID(Guid? educationMissionClassID, List userIDs);
///
/// 给任务班添加学生
///
///
///
void AddStudentbyEducationMissionClassID(Guid? educationMissionClassID, List userIDs);
///
/// 查询教师列表
///
/// 查询条件实体
/// 校区ID
/// 学院ID
/// 教研室ID
/// 是否显示照片
/// 页码
/// 显示码
///
IGridResultSet GetStaffViewGrid(ConfiguretView configuretView, Guid? campusID, Guid? collegeID, Guid? departmentID, int? isPhoto, Guid? userID, int pageIndex, int pageSize);
///
/// 查询教学任务班
///
/// 查询条件
/// 学年学期ID
/// 课程代码
/// 课程名称
/// 排课班级
/// 页数
/// 显示数
///
IGridResultSet GetEducationMissionClassViewGrid(ConfiguretView configuretView, Guid? campusID, Guid? collegeID, Guid? schoolyearID, Guid? departmentID, Guid? coursematerialID,
int? approvalStatus, int? teachingModeID, Guid? classmajorID, int? gradeYearID, int pageIndex, int pageSize);
///
/// 查询教学任务班
///
/// 查询条件
/// 学年学期ID
/// 课程代码
/// 课程名称
/// 排课班级
///
List GetEducationMissionClassViewList(ConfiguretView configuretView, Guid? campusID, Guid? collegeID, Guid? schoolyearID, Guid? departmentID, Guid? coursematerialID,
int? approvalStatus, int? teachingModeID, Guid? classmajorID, int? gradeYearID);
///
/// 查询教学任务班
///
/// 查询条件
/// 学年学期ID
/// 课程代码
/// 课程名称
/// 排课班级
///
List GetEducationMissionClassViewList(IList educationMissionClassIDList);
///
/// 根据教学任务班获取班级信息
///
///
///
ClassmajorView GetClassmajorByEducationClassID(Guid? educationMissionClassID);
///
/// 获取任务班信息
///
///
///
EducationMissionClassView GetEducationMissionClassView(Guid? educationMissionClassID);
///
/// 获取任务班信息
///
///
///
EM_EducationMissionClass GetEducationMissionClass(Guid? educationMissionClassID);
///
/// 获取学籍班的所有任务班
///
/// 学籍班ID
///
List GetEducationMissionClassList(Guid? educationMissionID);
///
/// 获取学籍班的所有任务班
///
///
List GetEducationMissionClassList();
///
/// 保存更新排课序号
///
///
///
void UpdateEducationMissionClassOrderNo(List educationMissionClassIDs, List orderNos);
///
/// 更新教学任务班信息
///
///
void UpdateEducationMissionClass(EducationMissionClassView educationMissionClassView);
///
/// 获取设置周数
///
///
///
List GetEducationMissionClassSettings(Guid? educationMissionClassID);
///
/// 获取教学任务授课老师
///
///
///
List GetEducationMissionClassTeacherListViewList(Guid? educationMissionClassID);
///
/// 更新
///
/// 实体
/// 选中周次
/// 教师
void EducationMissionClassUpdate(EducationMissionClassView educationMissionClassView, List weekNumList, List teacherList);
///
/// 设置排课老师信息
///
/// 实体
/// 选中周次
/// 教师
void EducationMissionClassUpdateTeacher(EducationMissionClassView educationMissionClassView, List teacherList);
///
/// 合班
///
/// 任务班ID
void EducationMissionConjunctionClassAdd(List educationMissionClassIDs);
///
/// 排课分班
///
///
void DivideIntoClassesAdd(DivideIntoClassesView divideIntoClassesView);
///
/// 分班信息
///
///
///
DivideIntoClassesView GetDivideIntoClassesView(Guid? educationMissionClassID);
///
/// 排课班表
///
///
///
EM_EducationSchedulingClass GetEducationSchedulingClass(Guid? educationSchedulingClassID);
///
/// 获取排课班信息
///
///
IGridResultSet GetEducationSchedulingClassViewGrid(Guid? educationMissionClassID, int pageIndex, int pageSize);
///
/// 获取排课班学生信息
///
/// 排课班ID
///
IGridResultSet GetEducationMissionClassStudentViewGrid(Guid? educationSchedulingClassID, int pageIndex, int pageSize);
///
/// 获取任务班对应的所以排课班学生信息
///
///
///
///
///
IGridResultSet GetEducationMissionClassSchedulingStudentViewGrid(Guid? educationMissionClassID, int pageIndex, int pageSize);
///
/// 获取任务班对应的所以排课班学生信息
///
///
///
///
///
List GetEducationMissionClassSchedulingStudentViewList(Guid? educationMissionClassID);
///
/// 合班
///
///
///
void EducationMissionClassConjunctionAdd(EducationMissionClassView educationMissionView, List educationMissionIDs);
///
/// 获取主表对象
///
///
///
EM_EducationMission GetEducationMission(Guid? educationMissionID);
///
/// 更新教学任务班表 处理状态
///
///
void EducationMissionClassUpdate(List educationMissionClassIDs);
///
/// 撤销提交
///
///
void UnSubmit(List educationMissionClassIDs);
///
/// 删除教学任务班
///
///
void Delete(List educationMissionClassIDs);
List GetCourseProcessView(Guid educationMissionID);
List GetCourseProcessTeacherView(Guid courseProcessID);
void SaveCourseProcessView(EducationMissionClassView educationMissionClassView, IList courseProcessViewList);
int GetStudentCount(Guid educationMissionClassID);
IGridResultSet GetAvailableClassroom(ConfiguretView configuretView,Guid collegeID, Guid? buildingID,
int? classroomType, int? minSeatCount, int? pageIndex, int? pageSize);
//任务班查询
IGridResultSet GetEducationMissionClassViewGrid(ConfiguretView configuretView, Guid? campusID, Guid? collegeID, Guid? schoolyearID, int? standardID, Guid? coursematerialID,
int? approvalStatus, int? teachingModeID, Guid? classmajorID, int? gradeYearID, Guid? CoursesTimeID, int pageIndex, int pageSize);
//任务班查询
List GetEducationMissionClassViewList(ConfiguretView configuretView, Guid? campusID, Guid? collegeID, Guid? schoolyearID, int? standardID, Guid? coursematerialID,
int? approvalStatus, int? teachingModeID, Guid? classmajorID, int? gradeYearID, int? learningformID, int? education, string LearnSystem, List EducationMissionClassIDList);
void EducationMissionClassUpdateClassRoom(EducationMissionClassView educationMissionClassView);
List GetEducationMissionClassStatus();
[Obsolete]
bool Verification(List collegeIDList, List schoolyearIDList);
bool CheckEducationMissionClassOpenControl(IList educationMissionClassIDList);
[Obsolete]
IGridResultSet GetLastCourseEducationMissionClassViewGrid(ConfiguretView configuretView, Guid userID, int? pageIndex, int? pageSize);
}
}