using Kean.Application.Command.Interfaces; using Kean.Application.Command.ViewModels; using Kean.Domain.Wcs.Commands; using System; using System.Threading.Tasks; namespace Kean.Application.Command.Implements { /// <summary> /// 控制交互聚合颗粒 /// </summary> partial class AggregateGrain { /* * 实现 Kean.Application.Command.Interfaces.IAggregateGrain.AcceptInput 方法 */ public Task<(AcceptInputCommand Fallback, Failure Failure)> AcceptInput(AcceptInputCommand command) => GrainFactory.GetGrain<IWcsGrain>(Guid.NewGuid()).AcceptInput(command); /* * 实现 Kean.Application.Command.Interfaces.IAggregateGrain.SyncOutput 方法 */ public Task<Failure> SyncOutput(SyncOutputCommand command) => GrainFactory.GetGrain<IWcsGrain>(Guid.NewGuid()).SyncOutput(command); /* * 实现 Kean.Application.Command.Interfaces.IAggregateGrain.SyncStation 方法 */ public Task<Failure> SyncStation(SyncStationCommand command) => GrainFactory.GetGrain<IWcsGrain>(Guid.NewGuid()).SyncStation(command); } }