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
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);
|
|
}
|
|
}
|
|
}
|