You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
1.5 KiB
52 lines
1.5 KiB
using Kean.Domain.Stock.Commands;
|
|
using System;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace Kean.Domain.Stock.SharedServices
|
|
{
|
|
/// <summary>
|
|
/// 重定位库存
|
|
/// </summary>
|
|
public sealed class Relocate
|
|
{
|
|
private readonly ICommandBus _commandBus;
|
|
|
|
/// <summary>
|
|
/// 依赖注入
|
|
/// </summary>
|
|
public Relocate(ICommandBus commandBus) =>
|
|
_commandBus = commandBus;
|
|
|
|
/// <summary>
|
|
/// 处理程序
|
|
/// </summary>
|
|
/// <param name="transaction">事务</param>
|
|
/// <param name="barcode">托盘条码</param>
|
|
/// <param name="spec">负载规格</param>
|
|
/// <param name="original">起始位置</param>
|
|
/// <param name="destination">目标位置</param>
|
|
/// <param name="operator">操作者</param>
|
|
/// <param name="tag">标签</param>
|
|
/// <param name="timestamp">时间戳</param>
|
|
public Task Handler(
|
|
string transaction,
|
|
string barcode,
|
|
int? spec,
|
|
int original,
|
|
int destination,
|
|
int @operator,
|
|
string tag,
|
|
(DateTime, DateTime) timestamp) =>
|
|
_commandBus.Execute(new RelocateCommand
|
|
{
|
|
Transaction = transaction,
|
|
Barcode = barcode,
|
|
Spec = spec,
|
|
Original = original,
|
|
Destination = destination,
|
|
Operator = @operator,
|
|
Tag = tag,
|
|
Timestamp = timestamp
|
|
});
|
|
}
|
|
}
|