using System.Threading.Tasks;
namespace Kean.Domain.Stock.SharedServices.Proxies
{
///
/// 任务域代理
///
public sealed class TaskProxy
{
private readonly IDomain _domain; // 域
///
/// 依赖注入
///
public TaskProxy(IDomain domain) =>
_domain = domain;
///
/// 托盘是否有任务
///
/// 条码
/// 操作位置组
/// 目标位置组
/// 如果有任务,为 True,否则为 False
public Task HasTask(string barcode, string originalGroup = null, string destinationGroup = null) =>
_domain["Task"].SharedService["HasTask"].Invoke(barcode, originalGroup, destinationGroup);
///
/// 创建上报任务
///
public Task Reprot(string tag,
string barcode,
int destination,
int @operator) =>
_domain["Task"].SharedService["Reprot"].Invoke(
tag,
barcode,
destination,
@operator);
///
/// 变更任务状态
///
public Task SetTaskState(int taskId,
string barcode,
string taskState,
string message,
string type) =>
_domain["Task"].SharedService["SetTaskState"].Invoke(
taskId,
barcode,
taskState,
message,
type);
///
/// 删除任务
///
public Task DeleteTask(string barcode) =>
_domain["Task"].SharedService["DeleteTask"].Invoke(barcode);
///
/// 设置任务错误状态
///
public Task SetErrorStateForDir(string barcode, string status,string message) =>
_domain["Task"].SharedService["SetErrorStateForDir"].Invoke(barcode, status, message);
}
}