|
|
|
@ -7,6 +7,7 @@ using DS.WMS.Core.Op.Dtos.TaskInteraction;
|
|
|
|
|
using DS.WMS.Core.Op.Entity;
|
|
|
|
|
using DS.WMS.Core.Op.Entity.TaskInteraction;
|
|
|
|
|
using DS.WMS.Core.Op.Interface.TaskInteraction;
|
|
|
|
|
using DS.WMS.Core.Op.Method.TaskInteraction.ActionSelector;
|
|
|
|
|
using DS.WMS.Core.TaskPlat;
|
|
|
|
|
using Fasterflect;
|
|
|
|
|
using Masuit.Tools;
|
|
|
|
@ -234,6 +235,37 @@ namespace DS.WMS.Core.Op.Method.TaskInteraction
|
|
|
|
|
await taskFlow.RunWithBsno(businessTask.TaskType, businessTask.BusinessId, dataContext);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 自动订舱
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="businessId">业务ID</param>
|
|
|
|
|
/// <param name="businessType">业务类型</param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
public async Task<DataResult> AutomaticBooking(long businessId, BusinessType businessType)
|
|
|
|
|
{
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
var businessTask = await TenantDb.Queryable<BusinessTask>().Where(
|
|
|
|
|
x => x.BusinessId == businessId && x.BusinessType == businessType && x.TaskType == TaskBaseTypeEnum.WAIT_BOOKING).FirstAsync();
|
|
|
|
|
if (businessTask == null)
|
|
|
|
|
return DataResult.FailedWithDesc(MultiLanguageConst.TaskStatusNotSupported);
|
|
|
|
|
|
|
|
|
|
TaskFlowDataContext dataContext = new
|
|
|
|
|
(
|
|
|
|
|
(TaskFlowDataNameConst.BusinessTask, businessTask),
|
|
|
|
|
("TypeName", typeof(BookingSelector).AssemblyQualifiedName)
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
await ExecuteAsync(dataContext);
|
|
|
|
|
return DataResult.Success;
|
|
|
|
|
}
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
{
|
|
|
|
|
await ex.LogAsync(Db);
|
|
|
|
|
return DataResult.FailedWithDesc(MultiLanguageConst.Operation_Failed);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 执行动作
|
|
|
|
|
/// </summary>
|
|
|
|
@ -250,7 +282,6 @@ namespace DS.WMS.Core.Op.Method.TaskInteraction
|
|
|
|
|
ServiceProvider = ServiceProvider
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
foreach (var key in dataContext.Keys)
|
|
|
|
|
context.AdditionalData[key] = dataContext[key];
|
|
|
|
|
|
|
|
|
|