using Learun.Util;
using System.Collections.Generic;
namespace Learun.Application.Base.SystemModule
{
///
/// 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园
/// Copyright (c) 2013-2018 北京泉江科技有限公司
/// 创建人:陈彬彬
/// 日 期:2017.04.01
/// 描 述:编号规则
///
public interface CodeRuleIBLL
{
#region 获取数据
///
/// 规则列表
///
/// 分页
/// 查询参数
///
IEnumerable GetPageList(Pagination pagination, string keyword);
///
/// 规则列表
///
///
IEnumerable GetList();
///
/// 规则实体
///
/// 主键值
///
CodeRuleEntity GetEntity(string keyValue);
///
/// 规则实体
///
/// 规则编码
///
CodeRuleEntity GetEntityByCode(string enCode);
#endregion
#region 提交数据
///
/// 删除规则
///
/// 主键
void VirtualDelete(string keyValue);
///
/// 保存规则表单(新增、修改)
///
/// 主键值
/// 规则实体
///
void SaveEntity(string keyValue, CodeRuleEntity codeRuleEntity);
#endregion
#region 验证数据
///
/// 规则编号不能重复
///
/// 编号
/// 主键
///
bool ExistEnCode(string enCode, string keyValue);
///
/// 规则名称不能重复
///
/// 名称
/// 主键
///
bool ExistFullName(string fullName, string keyValue);
#endregion
#region 单据编码处理
///
/// 获取当前编号规则种子列表
///
/// 编号规则主键
///
List GetSeedList(string ruleId, UserInfo userInfo);
///
/// 保存单据编号规则种子
///
/// 主键
/// 种子实体
void SaveSeed(string keyValue, CodeRuleSeedEntity codeRuleSeedEntity, UserInfo userInfo);
///
/// 获得指定模块或者编号的单据号
///
/// 编码
/// 用户ID
/// 单据号
string GetBillCode(string enCode, string userId = "");
///
/// 占用单据号
///
/// 单据编码
/// 用户ID
/// true/false
void UseRuleSeed(string enCode, string userId = "");
#endregion
}
}