using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using EMIS.ViewModel.Specialtyclass;
using Bowin.Common.Linq.Entity;
using EMIS.ViewModel;
using EMIS.Entities;
using EMIS.ViewModel.Students;
using System.Data;
using System.ServiceModel;
using System.ServiceModel.Web;
using System.IO;
using EMIS.ViewModel.SystemView;
namespace EMIS.CommonLogic.Students
{
public interface IStudentsServices
{
///
/// 获取列表
///
///
Bowin.Common.Linq.Entity.IGridResultSet GetStudentUserViewList(ViewModel.ConfiguretView configuretView,
int? campusID, Guid? collegeID, int? yearID, int? standardID, int? learningformID, Guid? classmajorID, int? IsGraduation, int? inSchoolStatusID, int? isPhotos, int? isDream, string planningGraduateDate,string LearnSystem,int? education,int? reportStatusID, int pageIndex, int pageSize);
///
/// 导出
///
///
IList GetStudentViewList(ViewModel.ConfiguretView configuretView,
int? campusID, Guid? collegeID, int? yearID, int? standardID, int? learningformID, Guid? classmajorID, int? IsGraduation, int? inSchoolStatusID, int? isPhotos, int? isDream, string planningGraduateDate, string LearnSystem, int? education, int? reportStatusID, List UserIDsIDList);
IList GetStudentExportList(ViewModel.ConfiguretView configuretView,
int? campusID, Guid? collegeID, int? years, int? standardID, int? learningformID, Guid? classmajorID, int? IsGraduation, int? inSchoolStatusID, int? isPhotos, int? isDream, string planningGraduateDate, string LearnSystem, int? education, int? reportStatusID);
void WriteToDbf(DataTable dt, List colList);
IList GetStudentViewListByIDList(IList studentUserIDList);
///
/// 获取可进行异动申请的学生。
///
///
IGridResultSet GetAbleDifferentDynamicApplyStudentList(ConfiguretView configuretView, int pageIndex, int pageSize);
//
//获取学生信息
//
//主键ID
//
StudentsView GetStudentfileView(Guid? Userid);
void Save(StudentsView studentfileView);
void StudentDelete(List userIDs);
DataTable Import(DataTable dataSource);
void GraduationPicImport(IList photoPaths);
void PicImport(IList photoPaths);
Sys_User GetUserByLoginID(Guid userid);
DateTime? ReckonPlanningGraduateDate(Guid GrademajorID);/*预计毕业时间 方案一*/
string GetPlanningGraduate(Guid GrademajorID);/*预计毕业时间 方案二*/
///
/// 获取学生扩展表信息
///
/// 用户ID
///
Sys_User GetUser(Guid? userID);
///
/// 获取学生扩展表信息
///
/// 用户ID
///
CF_StudentProfile GetProfile(Guid? userID);
///
/// 获取学生信息
///
/// 用户ID
///
CF_Student GetStudent(Guid? Userid);
///
/// 高考招生表
///
/// 用户ID
///
CF_Recruitstudents GetRecruit(Guid? Userid);
///
/// 学生缴费表
///
/// 用户ID
///
CF_StudentAccount GetAccount(Guid? Userid);
///
/// 学生联系表
///
/// 用户ID
///
CF_StudentContact GetContact(Guid? Userid);
///
/// 获取学生表信息
///
/// 用户ID
///
CF_Student GetStudenter(Guid? userID);
CF_Student GetReplaceGraduateNo(string ReplaceGraduateNo,Guid? userID);
///
/// 获取学生信息(通用控件学生列表)
///
///
///
///
///
///
///
///
IGridResultSet GetBaseStudentView(ViewModel.ConfiguretView configuretView, Guid? collegeID, Guid? grademajorID, Guid? classmajorID, Guid? userID, int pageIndex, int pageSize);
void ClearPhotoUrl(IList studentIDList);
int? GetDefaultLearnformForList();
//获取学生信息
StudentsView GetStudentViewByLoginID(string loginID);
//获取学生信息
StudentsView GetStudentViewByIDNum(string idNum);
///
/// 获取在校学生的毕业时间
///
///
IGridResultSet GetPlanningGraduateList();
///
/// 获取数据范围
///
///
int GetDataRange();
///
/// 获取在校学生
///
///
IGridResultSet GetStudentOnlyInSchool(ConfiguretView configuretView, int pageIndex, int pageSize);
IGridResultSet GetStudentUserViewList(ConfiguretView configuretView,
int? campusID, Guid? collegeID, int? education, int? years, int? standardID, int? learningformID, int? classNum, int? studentStatusID, bool? isPhotos,
bool? isOnlyGraduation, bool? isPreviousNotGraduated, int pageIndex, int pageSize);
RegistView GetRegistViewByUserID(Guid userID);
bool CheckNecessary(Guid userID);
}
}