using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Bowin.Common.Linq.Entity;
using EMIS.ViewModel;
using EMIS.ViewModel.TeachingMaterial;
using System.Data;
using EMIS.Entities;
using EMIS.ViewModel.Cultureplan;
namespace EMIS.CommonLogic.TeachingMaterial
{
public interface ITeachingMaterialPoolServices
{
///
/// 获取书库信息列表
///
///
///
IGridResultSet GetTeachingMaterialPoolViewGrid(ConfiguretView configuretView, Guid? publishID, Guid? coursematerialID, bool? isLate, int? teachingMaterialType, int pageIndex, int pageSize);
///
/// 编辑书库
///
///
void EditTeachingMaterialPool(TeachingMaterialPoolView TeachingMaterialPoolView, Guid createUserID, IList coursematerialList);
///
/// 编辑教材库存
///
///
///
void EditTeachingMateriaInventory(TeachingMaterialPoolView TeachingMaterialPoolView, Guid createUserID);
///
/// 删除出版单位信息
///
///
void DeleteTeachingMaterialPool(List TeachingMaterialPoolIDs);
///
/// 获取书库单位
///
///
TeachingMaterialPoolView GetSingleTeachingMaterialPool(Guid TeachingMaterialPoolID);
///
/// 获取书库信息列表导出
///
///
///
IList GetTeachingMaterialPoolViewExcel(ConfiguretView configuretView, Guid? publishID, Guid? coursematerialID, bool? isLate, int? teachingMaterialType);
List GetTeachingMaterialCoursematerialList(Guid? teachingMaterialPoolID);
///
/// 获取教材总库信息列表(用于学生征订)
///
///
///
IGridResultSet GetTeachingMaterialPoolForOrder(ConfiguretView configuretView, Guid? publishID, string isbn, Guid? coursematerialID, string teachingMaterialName, string ischeck, int pageIndex, int pageSize);
///
/// 获取学生课程教材列表
///
///
///
IGridResultSet GetStudentTeachingMaterialViewGrid(ConfiguretView configuretView, int pageIndex, int pageSize);
IList GetStudentTeachingMaterialViewList(ConfiguretView configuretView);
//验证编号是否存在
bool IsExistCode(string code);
//验证ISBN是否存在
bool IsExistISBN(string ISBN);
///
/// 教材信息导入
///
/// 导入的数据集合
/// 返回的操作失败集合
/// 操作成功记录条数
///
void TeachingMaterialPoolImport(Dictionary cellheader, out int OkCount, out List errdataList, out int successCount, string sourcePhysicalPath);
///
/// 获取教材最大的编号+1之后返回
///
///
string GetLastTeachingMaterialCode();
}
}