using System;
using System.Collections.Generic;
using System.Text;
using Song.Entities;
namespace Song.ServiceInterfaces
{
///
/// 院系职位的管理
///
public interface IPosition : WeiSha.Common.IBusinessInterface
{
///
/// 添加
///
/// 业务实体
void Add(Position entity);
///
/// 修改
///
/// 业务实体
void Save(Position entity);
///
/// 删除
///
/// 业务实体
void Delete(Position entity);
///
/// 删除,按主键ID;
///
/// 实体的主键
void Delete(int identify);
///
/// 删除,按职位名称
///
/// 职位名称
void Delete(int orgid, string name);
///
/// 删除与员工之间的关联
///
///
void DeleteRelation4Emp(int identify);
///
/// 获取单一实体对象,按主键ID;
///
/// 实体的主键
///
Position GetSingle(int identify);
///
/// 获取单一实体对象,按职位名称
///
/// 职位名称
///
Position GetSingle(int orgid,string name);
///
/// 获取超级管理员角色
///
///
Position GetSuper();
///
/// 获取对象;即所有职位;
///
///
Position[] GetAll(int orgid);
Position[] GetAll(int orgid,bool? isUse);
///
/// 获取当前角色的所有员工
///
///
///
EmpAccount[] GetAllEmplyee(int posid);
///
/// 获取当前角色的所有在职员工
///
///
/// 是否在职
///
EmpAccount[] GetAllEmplyee(int posid,bool use);
///
/// 当前对象名称是否重名
///
/// 业务实体
///
bool IsExist(int orgid, Position entity);
///
/// 将当前项目向上移动;仅在当前对象的同层移动,即同一父节点下的对象这前移动;
///
///
/// 如果已经处于顶端,则返回false;移动成功,返回true
bool RemoveUp(int orgid, int id);
///
/// 将当前项目向下移动;仅在当前对象的同层移动,即同一父节点下的对象这前移动;
///
///
/// 如果已经处于顶端,则返回false;移动成功,返回true
bool RemoveDown(int orgid, int id);
///
/// 获取机构的管理岗位
///
///
///
Position GetAdmin(int orgid);
}
}