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.
164 lines
4.8 KiB
164 lines
4.8 KiB
using System.Collections.Generic;
|
|
using System.Threading;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace Kean.Domain.Wcs.SharedServices.Proxies
|
|
{
|
|
/// <summary>
|
|
/// 任务域代理
|
|
/// </summary>
|
|
public sealed class TaskProxy
|
|
{
|
|
private readonly IDomain _domain; // 域
|
|
|
|
/// <summary>
|
|
/// 依赖注入
|
|
/// </summary>
|
|
public TaskProxy(IDomain domain) => _domain = domain;
|
|
|
|
/// <summary>
|
|
/// 任务执行
|
|
/// </summary>
|
|
/// <param name="id">标识</param>
|
|
public Task Execute(int id) =>
|
|
_domain["Task"].SharedService["Execute"].Invoke(id);
|
|
|
|
/// <summary>
|
|
/// 任务阻塞
|
|
/// </summary>
|
|
/// <param name="id">标识</param>
|
|
/// <param name="message">异常信息</param>
|
|
public Task Block(int id, string message) =>
|
|
_domain["Task"].SharedService["Block"].Invoke(id, message);
|
|
|
|
/// <summary>
|
|
/// 任务完成
|
|
/// </summary>
|
|
/// <param name="id">标识</param>
|
|
public Task Complete(int id) =>
|
|
_domain["Task"].SharedService["Complete"].Invoke(id);
|
|
|
|
/// <summary>
|
|
/// 任务取消
|
|
/// </summary>
|
|
/// <param name="id">标识</param>
|
|
public Task Cancel(int id) =>
|
|
_domain["Task"].SharedService["Cancel"].Invoke(id);
|
|
|
|
/// <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 Task Infeed(
|
|
int warehouse,
|
|
string barcode,
|
|
int? spec,
|
|
object original,
|
|
object destination,
|
|
int? priority,
|
|
int @operator,
|
|
string tag,
|
|
int? previous,
|
|
string parameters) =>
|
|
_domain["Task"].SharedService["Infeed"].Invoke(
|
|
warehouse,
|
|
barcode,
|
|
spec,
|
|
original,
|
|
destination,
|
|
priority,
|
|
@operator,
|
|
tag,
|
|
previous,
|
|
parameters);
|
|
|
|
/// <summary>
|
|
/// 申请出库
|
|
/// </summary>
|
|
public Task ApplyOut(
|
|
string warehouseCode,
|
|
string deviceCode,
|
|
string barcode,
|
|
string tag,
|
|
CancellationToken cancellationToken) =>
|
|
_domain["Task"].SharedService["ApplyOut"].Invoke(
|
|
warehouseCode,
|
|
deviceCode,
|
|
barcode,
|
|
tag,
|
|
cancellationToken);
|
|
|
|
/// <summary>
|
|
/// 任务中转
|
|
/// </summary>
|
|
/// <param name="id">标识</param>
|
|
public Task TransferRelocate(int id) =>
|
|
_domain["Task"].SharedService["TransferRelocate"].Invoke(id);
|
|
|
|
/// <summary>
|
|
/// 任务错误
|
|
/// </summary>
|
|
/// <param name="id">标识</param>
|
|
public Task ScanError(string barcode, string parameters) =>
|
|
_domain["Task"].SharedService["ScanError"].Invoke(barcode, parameters);
|
|
|
|
/// <summary>
|
|
/// 任务错误
|
|
/// </summary>
|
|
/// <param name="id">标识</param>
|
|
public Task SetTaskState(int taskId, string barcode, string taskState,
|
|
string message, string type) =>
|
|
_domain["Task"].SharedService["SetTaskState"].Invoke(taskId, barcode, taskState, message, type);
|
|
|
|
/// <summary>
|
|
/// 输送
|
|
/// </summary>
|
|
public Task BypassHithum(
|
|
string barcode,
|
|
object original) =>
|
|
_domain["Task"].SharedService["BypassHithum"].Invoke(
|
|
barcode,
|
|
original);
|
|
|
|
/// <summary>
|
|
/// 直接输送
|
|
/// </summary>
|
|
public Task BypassEmpty(
|
|
string barcode,
|
|
object original) =>
|
|
_domain["Task"].SharedService["BypassEmpty"].Invoke(
|
|
barcode,
|
|
original);
|
|
|
|
public Task InfeedCheck(
|
|
int warehouse,
|
|
string barcode,
|
|
int? spec,
|
|
object original,
|
|
object destination,
|
|
int? priority,
|
|
int @operator,
|
|
string tag,
|
|
int? previous,
|
|
string parameters) =>
|
|
_domain["Task"].SharedService["InfeedCheck"].Invoke(
|
|
warehouse,
|
|
barcode,
|
|
spec,
|
|
original,
|
|
destination,
|
|
priority,
|
|
@operator,
|
|
tag,
|
|
previous,
|
|
parameters);
|
|
}
|
|
}
|