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