63 lines
1.7 KiB
C#
63 lines
1.7 KiB
C#
using CordonelPreadjustmentUi.Processes;
|
|
using CordonelPreadjustmentUi.Processes.Itinerary;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Threading.Tasks;
|
|
using static CordonelPreadjustmentUi.PreAdjustmentControl;
|
|
|
|
namespace Xylem.Common.Ui.CordonelPreadjustmentUi.Processes.Actions
|
|
{
|
|
public class MagFluxZeroFlowProcess : BaseProcess
|
|
{
|
|
public MagFluxZeroFlowProcess(string processName, StatusPanelItems panelState, string performMessage, string failedMessage, int? expectedTimeS) : base(processName, panelState, performMessage, failedMessage, expectedTimeS)
|
|
{
|
|
}
|
|
public override List<Task> StartWork()
|
|
{
|
|
return doWorkProcess(base.CurrentProcessProgress);
|
|
}
|
|
|
|
private List<Task> doWorkProcess(ProcessProgress currentProcessProgress)
|
|
{
|
|
private List<Task> doWorkProcess(ProcessProgress pp)
|
|
{
|
|
|
|
|
|
var MetersToProcess = MeterStateCtls.Where(e => e.IsEnabled).ToList();
|
|
|
|
var listOfProcessTask = new List<Task>();
|
|
|
|
listOfProcessTask.Add(new Task<bool>(() =>
|
|
{
|
|
|
|
pp.DebugMessage($"Performing {ProcessName} procedure", null, "APP");
|
|
|
|
var ZeroOffsetTime = DateTimeOffset.UtcNow.AddMinutes(2);
|
|
|
|
var MetersToProcess = MeterStateCtls.Where(e => e.IsEnabled).ToList();
|
|
|
|
|
|
|
|
while (FlushTime > DateTimeOffset.UtcNow)
|
|
{
|
|
Thread.Sleep(1000);
|
|
}
|
|
|
|
|
|
return true;
|
|
}));
|
|
|
|
|
|
return listOfProcessTask;
|
|
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|