山东雷驰
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.
 
 
 
 

58 lines
1.7 KiB

using Kean.Domain.Task.Commands;
using Kean.Domain.Task.Enums;
using Kean.Domain.Task.Repositories;
using System;
namespace Kean.Domain.Task.SharedServices
{
/// <summary>
/// 重新上报
/// </summary>
public sealed class Report
{
private readonly ICommandBus _commandBus;
private readonly ITaskRepository _taskRepository; // 任务仓库
/// <summary>
/// 依赖注入
/// </summary>
public Report(
ICommandBus commandBus,
ITaskRepository taskRepository)
{
_commandBus = commandBus;
_taskRepository = taskRepository;
}
/// <summary>
/// 处理程序
/// </summary>
/// <param name="warehouse">库房</param>
/// <param name="barcode">条码</param>
/// <param name="spec">负载规格</param>
/// <param name="original">操作位置</param>
/// <param name="destination">目标位置</param>
/// <param name="priority">优先级</param>
/// <param name="operator">操作者</param>
/// <param name="tag">标签</param>
/// <param name="previous">前序连接</param>
public async System.Threading.Tasks.Task<int> Handler(
string tag,
string barcode,
int destination,
int @operator)
{
// 创建任务
Models.Task task = new Models.Task();
task.Type = TaskType.Report;
task.Tag = tag;
task.Barcode = barcode;
task.Original = destination;
task.Timestamp = DateTime.Now;
task.Operator = @operator;
return await _taskRepository.CreateTask(task);
}
}
}