using Microsoft.Extensions.Options; namespace Admin.NET.Plugin.AiDOP.WorkOrder; /// /// WP9 · 按 选择 Local / Mes 建单实现。 /// 注入点应使用本类型(或 ),勿直接多实现竞注。 /// public sealed class PickBillCreatorFacade : IPickBillCreator, ITransient { private readonly AidopPickBillOptions _opt; private readonly WorkOrderPickBillService _local; private readonly MesPickBillCreator _mes; public PickBillCreatorFacade( IOptions opt, WorkOrderPickBillService local, MesPickBillCreator mes) { _opt = opt.Value; _local = local; _mes = mes; } public Task CreateAsync( long tenantId, string domain, string workOrd, string account, CancellationToken ct = default) { if (_opt.IsMes) return _mes.CreateAsync(tenantId, domain, workOrd, account, ct); return _local.CreateAsync(tenantId, domain, workOrd, account, ct); } }