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 Rules { get; set; } public BAS_CODE_RULE this[string ruleCode] { get; } /// /// 使用指定规则验证传入编码 /// /// 需要验证的条码 /// 指定用于验证的条码规则 /// Result.Data is RuleVerifier public Result Verify(string code, BAS_CODE_RULE rule); /// /// 使用符合传入条件的规则验证传入编码 /// /// 需要验证的条码 /// 用于验证条码规则的过滤条件 /// Result.Data is List<RuleVerifier> public Result Verify(string code, Func predicate = null); /// /// 生成条码 /// /// /// /// public Result Generate(string ruleCode, params object?[] args); /// /// 尝试生成条码,不保存到数据库 /// /// /// /// public Result TryGenerate(string ruleCode, params object?[] args); } }