using ce.autofac.extension;
using learun.util;
using System.Collections.Generic;
using System.Threading.Tasks;
namespace learun.iapplication
{
///
/// 版 本 EasyCode EC管理后台
/// Copyright (c) 2019-present EC管理有限公司
/// 创建人:tobin
/// 日 期:2019.09.24
/// 描 述:岗位管理
///
public interface PostIBLL : IBLL
{
#region 获取数据
///
/// 获取岗位数据列表(根据公司列表)
///
/// 公司主键
///
Task> GetList(string companyId);
///
/// 获取岗位数据列表(根据公司列表)
///
/// 公司主键
/// 部门Id
/// 关键词
///
Task> GetList(string companyId, string departmentId, string keyword);
///
/// 获取岗位数据列表(根据主键串)
///
/// 根据主键串
///
Task> GetListByPostIds(string postIds);
///
/// 获取树形结构数据
///
/// 公司主键
///
Task> GetTree(string companyId);
///
/// 获取岗位实体数据
///
/// 主键
///
Task GetEntity(string keyValue);
#endregion 获取数据
#region 提交数据
///
/// 删除
///
/// 主键
Task Delete(string keyValue);
///
/// 保存岗位(新增、修改)
///
/// 主键值
/// 岗位实体
///
Task SaveEntity(string keyValue, PostEntity postEntity);
#endregion 提交数据
#region 扩展方法
///
/// 判断是否是上级
///
/// 自己的岗位
/// 对方的岗位
///
Task IsUp(string myId, string otherId);
///
/// 判断是否是下级
///
/// 自己的岗位
/// 对方的岗位
///
Task IsDown(string myId, string otherId);
///
/// 获取上级岗位人员ID
///
/// 岗位id
/// 级数
///
Task> GetUpIdList(string strPostIds, int level);
///
/// 获取下级岗位人员ID
///
/// 岗位id
/// 级数
///
Task> GetDownIdList(string strPostIds, int level);
#endregion 扩展方法
}
}