using Kean.Application.Command.Interfaces; using Kean.Application.Command.ViewModels; using Kean.Domain.Task.Commands; using System; using System.Threading.Tasks; namespace Kean.Application.Command.Implements { /// <summary> /// 任务交互聚合颗粒 /// </summary> partial class AggregateGrain { /* * 实现 Kean.Application.Command.Interfaces.IAggregateGrain.Infeed 方法 */ public Task<(int Id, Failure Failure)> Infeed(InfeedCommand command) => GrainFactory.GetGrain<ITaskGrain>(Guid.NewGuid()).Infeed(command); /* * 实现 Kean.Application.Command.Interfaces.IAggregateGrain.Outfeed 方法 */ public Task<(int Id, Failure Failure)> Outfeed(OutfeedCommand command) => GrainFactory.GetGrain<ITaskGrain>(Guid.NewGuid()).Outfeed(command); /* * 实现 Kean.Application.Command.Interfaces.IAggregateGrain.Transfer 方法 */ public Task<(int Id, Failure Failure)> Transfer(TransferCommand command) => GrainFactory.GetGrain<ITaskGrain>(Guid.NewGuid()).Transfer(command); /* * 实现 Kean.Application.Command.Interfaces.IAggregateGrain.Bypass 方法 */ public Task<(int Id, Failure Failure)> Bypass(BypassCommand command) => GrainFactory.GetGrain<ITaskGrain>(Guid.NewGuid()).Bypass(command); /* * 实现 Kean.Application.Command.Interfaces.IAggregateGrain.Execute 方法 */ public Task<Failure> Execute(ExecuteCommand command) => GrainFactory.GetGrain<ITaskGrain>(Guid.NewGuid()).Execute(command); /* * 实现 Kean.Application.Command.Interfaces.IAggregateGrain.Cancel 方法 */ public Task<Failure> Cancel(CancelCommand command) => GrainFactory.GetGrain<ITaskGrain>(Guid.NewGuid()).Cancel(command); /* * 实现 Kean.Application.Command.Interfaces.IAggregateGrain.Complete 方法 */ public Task<Failure> Complete(CompleteCommand command) => GrainFactory.GetGrain<ITaskGrain>(Guid.NewGuid()).Complete(command); /* * 实现 Kean.Application.Command.Interfaces.IAggregateGrain.Block 方法 */ public Task<Failure> Block(BlockCommand command) => GrainFactory.GetGrain<ITaskGrain>(Guid.NewGuid()).Block(command); ////////////////////////////////////////////// /* * 实现 Kean.Application.Command.Interfaces.IAggregateGrain.ApplyOut 方法 */ public Task<(int Id, Failure Failure)> ApplyOut(ApplyOutCommand command) => GrainFactory.GetGrain<ITaskGrain>(Guid.NewGuid()).ApplyOut(command); /* * 实现 Kean.Application.Command.Interfaces.IAggregateGrain.PalletOut 方法 */ public Task<(int Id, Failure Failure)> PalletOut(PalletOutCommand command) => GrainFactory.GetGrain<ITaskGrain>(Guid.NewGuid()).PalletOut(command); /* * 实现 Kean.Application.Command.Interfaces.IAggregateGrain.PreApplyOut 方法 */ public Task<(string barcode, Failure failure)> PreApplyOut(PreApplyOutCommand command) => GrainFactory.GetGrain<ITaskGrain>(Guid.NewGuid()).PreApplyOut(command); /* * 实现 Kean.Application.Command.Interfaces.IAggregateGrain.ReuploadHiWMS 方法 */ public Task<Failure> ReuploadHiWMS(ReuploadTaskCommand command) => GrainFactory.GetGrain<ITaskGrain>(Guid.NewGuid()).ReuploadHiWMS(command); /* * 实现 Kean.Application.Command.Interfaces.IAggregateGrain.SetRollResult 方法 */ public Task<Failure> SetRollTask(SetRollTaskCommand command) => GrainFactory.GetGrain<ITaskGrain>(Guid.NewGuid()).SetRollTask(command); /* * 实现 Kean.Application.Command.Interfaces.IAggregateGrain.SetTaskState 方法 */ public Task<Failure> SetTaskState(SetTaskStateCommand command) => GrainFactory.GetGrain<ITaskGrain>(Guid.NewGuid()).SetTaskState(command); /* * 实现 Kean.Application.Command.Interfaces.IAggregateGrain.CallDelete 方法 */ public Task<Failure> CallDelete(CallDeleteCommand command) => GrainFactory.GetGrain<ITaskGrain>(Guid.NewGuid()).CallDelete(command); /* * 实现 Kean.Application.Command.Interfaces.IAggregateGrain.SetPriority 方法 */ public Task<Failure> SetPriority(SetPriorityCommand command) => GrainFactory.GetGrain<ITaskGrain>(Guid.NewGuid()).SetPriority(command); /* * 实现 Kean.Application.Command.Interfaces.IAggregateGrain.CancelAgvApplyOut 方法 */ public Task<Failure> CancelAgvApplyOut(CancelAgvApplyOutCommand command) => GrainFactory.GetGrain<ITaskGrain>(Guid.NewGuid()).CancelAgvApplyOut(command); /* * 实现 Kean.Application.Command.Interfaces.IAggregateGrain.AutoPalletOut 方法 */ public Task<Failure> AutoPalletOut(AutoPalletOutCommand command) => GrainFactory.GetGrain<ITaskGrain>(Guid.NewGuid()).AutoPalletOut(command); } }