添加 MX-PD-盘古 项目文件
将 MX-PD-盘古 - new 目录下的所有文件添加到主仓库
This commit is contained in:
@@ -0,0 +1,78 @@
|
||||
using MainShell.Common;
|
||||
using MW.WorkFlow;
|
||||
using System;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace MainShell.Process
|
||||
{
|
||||
public class ChipPreparationSyncActivity : ActivityAbstractBase
|
||||
{
|
||||
private readonly TimeSpan _timeout;
|
||||
|
||||
public ChipPreparationSyncActivity(string name, TimeSpan? timeout = null)
|
||||
: base(name)
|
||||
{
|
||||
_timeout = timeout ?? TimeSpan.FromSeconds(30);
|
||||
}
|
||||
|
||||
protected override async Task<ActivityResult> OnExecuteAsync(WorkflowContext context, ActivityControl activityControl)
|
||||
{
|
||||
SubstrateLifecycleState substrateState;
|
||||
if (!context.TryGetData<SubstrateLifecycleState>(WorkflowContextKeys.SubstrateProcessState, out substrateState) ||
|
||||
substrateState != SubstrateLifecycleState.HeightMeasured)
|
||||
{
|
||||
return Fail(
|
||||
context,
|
||||
MessageKey.ProcessStepFailedWithReason,
|
||||
new object[]
|
||||
{
|
||||
Name,
|
||||
"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><CEB4><EFBFBD>ɲ<EFBFBD><C9B2>ߣ<EFBFBD><DFA3><EFBFBD><EFBFBD>ܽ<EFBFBD><DCBD><EFBFBD>оƬͬ<C6AC><CDAC><EFBFBD>㡣"
|
||||
});
|
||||
}
|
||||
|
||||
bool pendingChipLoad;
|
||||
if (context.TryGetData<bool>(WorkflowContextKeys.PendingChipLoad, out pendingChipLoad) && !pendingChipLoad)
|
||||
{
|
||||
return ActivityResult.Success;
|
||||
}
|
||||
|
||||
PreparationAreaService preparationAreaService;
|
||||
if (!context.TryGetData<PreparationAreaService>(WorkflowContextKeys.PreparationAreaService, out preparationAreaService) || preparationAreaService == null)
|
||||
{
|
||||
throw new InvalidOperationException("δ<>ڹ<EFBFBD><DAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><EFBFBD><D7BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||||
}
|
||||
|
||||
ChipPreparationWaitResult waitResult = await preparationAreaService.WaitUntilLoadedAsync(_timeout, activityControl.CancellationToken).ConfigureAwait(false);
|
||||
if (!waitResult.Success)
|
||||
{
|
||||
if (waitResult.IsCanceled)
|
||||
{
|
||||
SetWorkflowFailure(context, string.IsNullOrWhiteSpace(waitResult.ErrorMessage) ? "оƬͬ<C6AC><CDAC><EFBFBD>ȴ<EFBFBD><C8B4><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>" : waitResult.ErrorMessage);
|
||||
return ActivityResult.Canceled;
|
||||
}
|
||||
|
||||
return Fail(
|
||||
context,
|
||||
MessageKey.ProcessStepFailedWithReason,
|
||||
new object[]
|
||||
{
|
||||
Name,
|
||||
string.IsNullOrWhiteSpace(waitResult.ErrorMessage) ? "оƬͬ<C6AC><CDAC><EFBFBD>ȴ<EFBFBD>ʧ<EFBFBD>ܡ<EFBFBD>" : waitResult.ErrorMessage
|
||||
});
|
||||
}
|
||||
|
||||
CurrentChipStateService currentChipStateService;
|
||||
if (!context.TryGetData<CurrentChipStateService>(WorkflowContextKeys.CurrentChipStateService, out currentChipStateService) || currentChipStateService == null)
|
||||
{
|
||||
throw new InvalidOperationException("δ<>ڹ<EFBFBD><DAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD>ǰоƬ״̬<D7B4><CCAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||||
}
|
||||
|
||||
currentChipStateService.SetState(CurrentChipLifecycleState.LoadedPendingTransfer);
|
||||
context.SetData(WorkflowContextKeys.CurrentChipState, CurrentChipLifecycleState.LoadedPendingTransfer);
|
||||
context.SetData(WorkflowContextKeys.PendingChipLoad, false);
|
||||
context.SetData(WorkflowContextKeys.PreparationAreaStatus, preparationAreaService.CurrentStatus);
|
||||
return ActivityResult.Success;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user