using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using EMIS.ViewModel.TeacherManagement;
using Bowin.Common.Linq.Entity;
using EMIS.ViewModel;
using EMIS.Entities;
using System.Linq.Expressions;
namespace EMIS.CommonLogic.TeacherManagement
{
public interface IStaffServices
{
///
/// 查询教师列表
///
/// 查询条件实体
/// 校区ID
/// 学院ID
/// 教研室ID
/// 是否显示照片
/// 页码
/// 显示码
///
IGridResultSet GetStaffViewGrid(ConfiguretView configuretView, Guid? campusID, Guid? collegeID, Guid? departmentID, int? isPhoto, Guid? userID, int pageIndex, int pageSize);
IGridResultSet GetStaffViewGridWithNoDataRange(ConfiguretView configuretView,
Guid? campusID, Guid? collegeID, Guid? departmentID, int? isPhoto, Guid? userID, int pageIndex, int pageSize);
IGridResultSet GetStaffViewGrid(Guid? campusID, Guid? collegeID, string loginID, string name, int pageIndex, int pageSize);
///
/// 查询教师列表
///
/// 查询条件实体
/// 校区ID
/// 学院ID
/// 教研室ID
/// 是否显示照片
///
List GetStaffViewList(ConfiguretView configuretView, Guid? campusID, Guid? collegeID, Guid? departmentID, int? isPhoto);
///
/// 获取全部教师列表详细信息
///
///
List GetListStaffView();
///
/// 获取全部教师主表列表信息
///
///
List GetStaffList();
///
/// 获取教师主表信息
///
/// 用户ID
///
CF_Staff GetStaff(Guid? userID);
///
/// 获取教师主表信息
///
/// Expression查询条件
///
CF_Staff GetStaff(Expression> exp);
///
/// 获取教师扩展表信息
///
/// 用户ID
///
CF_StaffProfile GetStaffProfile(Guid? userID);
///
/// 获取教师详细信息
///
/// 用户ID
///
StaffView GetStaffView(Guid? userID);
///
/// 获取教师详细信息
///
/// Expression查询条件
///
StaffView GetStaffView(Expression> exp);
///
/// 获取全部教师列表详细信息
///
///
List GetListStaffView(Guid? userID);
///
/// 添加
///
/// 主表实体
/// 扩展表实体
///
void StaffAdd(StaffView staffView, string photoUrl);
///
/// 删除
///
///
///
bool StaffDelete(List userIDs);
///
/// 验证
///
/// 教职工ID
/// 代码
///
string GetVerification(Guid? userID, string Code,Guid? CollegeID, Guid? DepartmentID);
void DeletePhoto(Guid userID);
///
/// 教师信息导入
///
/// 导入的数据集合
/// 返回的操作失败集合
/// 操作成功记录条数
///
void StaffImport(out int OkCount, out List errdataList, out int successCount, string sourcePhysicalPath, string sourceWebPath, out string errorWebPath, out string Errinfo);
///
/// 保存自我修改信息
///
///
void UpdateForSelf(StaffView staffView);
///
/// 获取全部教师不带数据范围
///
///
///
///
///
Bowin.Common.Linq.Entity.IGridResultSet GetAllStaffView(ViewModel.ConfiguretView configuretView, int pageIndex, int pageSize);
}
}