using Autofac;
|
using Rhea.Common;
|
using Rhea.Common.Interface;
|
using SqlSugar;
|
using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Text;
|
using System.Threading;
|
using System.Threading.Tasks;
|
using Tiger.Model;
|
|
namespace Tiger.IBusiness
|
{
|
public interface ICodeRuleCache : ITigerCache
|
{
|
public List<BAS_CODE_RULE> Rules { get; set; }
|
public BAS_CODE_RULE this[string ruleCode] { get; }
|
|
/// <summary>
|
/// 使用指定规则验证传入编码
|
/// </summary>
|
/// <param name="code">需要验证的条码</param>
|
/// <param name="rule">指定用于验证的条码规则</param>
|
/// <returns>Result.Data is RuleVerifier</returns>
|
public Result Verify(string code, BAS_CODE_RULE rule);
|
|
/// <summary>
|
/// 使用符合传入条件的规则验证传入编码
|
/// </summary>
|
/// <param name="code">需要验证的条码</param>
|
/// <param name="predicate">用于验证条码规则的过滤条件</param>
|
/// <returns>Result.Data is List<RuleVerifier></returns>
|
public Result Verify(string code, Func<BAS_CODE_RULE, bool> predicate = null);
|
|
/// <summary>
|
/// 生成条码
|
/// </summary>
|
/// <param name="ruleCode"></param>
|
/// <param name="args"></param>
|
/// <returns></returns>
|
public Result Generate(string ruleCode, params object?[] args);
|
|
/// <summary>
|
/// 尝试生成条码,不保存到数据库
|
/// </summary>
|
/// <param name="ruleCode"></param>
|
/// <param name="args"></param>
|
/// <returns></returns>
|
public Result TryGenerate(string ruleCode, params object?[] args);
|
|
}
|
}
|