using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using Song.Entities;
namespace Song.ServiceInterfaces
{
///
/// 学科管理
///
public interface ISubject : WeiSha.Common.IBusinessInterface
{
///
/// 添加学科与专业
///
/// 业务实体
int SubjectAdd(Subject entity);
///
/// 批量添加专业,可用于导入时
///
/// 机构id
/// 专业名称,可以是用逗号分隔的多个名称
///
Subject SubjectBatchAdd(int orgid, string names);
///
/// 是否已经存在专业
///
///
///
///
///
Subject SubjectIsExist(int orgid, int pid, string name);
///
/// 修改
///
/// 业务实体
void SubjectSave(Subject entity);
///
/// 删除,按主键ID;
///
/// 实体的主键
void SubjectDelete(int identify);
///
/// 清空专业下的所有试题
///
///
void SubjectClear(int identify);
///
/// 获取单一实体对象,按主键ID;
///
/// 实体的主键
///
Subject SubjectSingle(int identify);
///
/// 当前专业下的所有子专业id
///
/// 当前专业id
///
List TreeID(int sbjid);
///
/// 获取专业名称,如果为多级,则带上父级名称
///
///
///
string SubjectName(int identify);
///
/// 当前专业,是否有子专业
///
///
/// 当前专业Id
/// 有子级,返回true
bool SubjectIsChildren(int orgid, int identify, bool? isUse);
///
/// 获取学科/专业
///
///
///
///
Subject[] SubjectCount(bool? isUse, int count);
///
/// 获取学科/专业
///
/// 机构ID
/// 搜索关键字可传递数组
/// 上级ID
///
///
Subject[] SubjectCount(int orgid, string[] sear, int pid, int count);
///
/// 获取学科/专业
///
/// 机构ID
/// 搜索关键字
///
/// 上级ID
///
///
Subject[] SubjectCount(int orgid, string sear, bool? isUse, int pid, int count);
///
/// 取指定个数的学科或专业
///
///
///
///
///
/// 排序方式,def默认排序(先推荐,后排序号),tax按排序号,rec按推荐
/// 启始索引
/// 取多少条
///
Subject[] SubjectCount(int orgid, string sear, bool? isUse, int pid, string order, int index, int size);
///
/// 获取学科/专业
///
/// 机构ID
/// 搜索关键字
///
/// 上级ID
///
///
Subject[] SubjectCount(int orgid, int depid, string sear, bool? isUse, int pid, int count);
///
/// 当前专业的上级父级
///
///
/// 是否包括自身
///
List Parents(int sbjid, bool isself);
///
/// 计算专业数量
///
///
///
/// 上级id
///
///
int SubjectOfCount(int orgid, bool? isUse, int pid);
///
/// 当前学科下的所有试题
///
/// 当前机构
///
/// 试题类型
///
///
///
Questions[] QusForSubject(int orgid, int identify, int qusType, bool? isUse, int count);
///
/// 获取专业的下的试题数量
///
/// 当前机构
/// 专业id
/// 试题分类
/// 是否启用的试题
///
int QusCountForSubject(int orgid, int identify, int qusType, bool? isUse);
///
/// 分页获取
///
///
///
///
///
///
///
///
Subject[] SubjectPager(int orgid, int depid, bool? isUse, string searTxt, int size, int index, out int countSum);
///
/// 将当前项目向上移动;仅在当前对象的同层移动,即同一父节点下的对象这前移动;
///
///
/// 如果已经处于顶端,则返回false;移动成功,返回true
bool RemoveUp(int id);
///
/// 将当前项目向下移动;仅在当前对象的同层移动,即同一父节点下的对象这前移动;
///
///
/// 如果已经处于顶端,则返回false;移动成功,返回true
bool RemoveDown(int id);
}
}