97 lines
3.0 KiB
C#
97 lines
3.0 KiB
C#
using CordonelPreadjustmentUi.Processes.Itinerary;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Threading;
|
|
using System.Threading.Tasks;
|
|
using static CordonelPreadjustmentUi.PreAdjustmentControl;
|
|
|
|
namespace CordonelPreadjustmentUi.Processes.Actions
|
|
{
|
|
public class PrepareTestProcess : BaseProcess
|
|
{
|
|
|
|
|
|
public PrepareTestProcess(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 pp)
|
|
{
|
|
try
|
|
{
|
|
|
|
|
|
var listOfProcessTask = new List<Task>();
|
|
|
|
listOfProcessTask.Add(new Task<bool>(() =>
|
|
{
|
|
pp.DebugMessage("test start");
|
|
//var Result = false;
|
|
//for (int i = 0; i < 3; i++)
|
|
//{
|
|
// pp.DebugMessage = $"\tCOMMAND CHANNEL: \t Performing {ProcessName} procedure\n";
|
|
|
|
// try
|
|
// {
|
|
// Result = string.IsNullOrEmpty(meterctl.OverridePassword)
|
|
// ? meterctl.Meter.Login()
|
|
// : meterctl.Meter.Login(meterctl.OverridePassword);
|
|
|
|
// if (Result)
|
|
// {
|
|
// break;
|
|
// }
|
|
// Thread.Sleep(100);
|
|
// }
|
|
// catch (Exception e)
|
|
// {
|
|
// pp.DebugMessage = $"\tCOMMAND CHANNEL: \t Error on {ProcessName} procedure\n";
|
|
// }
|
|
|
|
//}
|
|
|
|
//var meterIndex = (meterctl.Slot).ToString(pp.Setting.Culture);
|
|
//meterctl.Failed = !Result;
|
|
//if (!Result)
|
|
//{
|
|
// pp.DebugMessage = $"\tCOMMAND CHANNEL: \t {ProcessName} procedure failed at METER{meterIndex}\n";
|
|
//}
|
|
//else
|
|
//{
|
|
// pp.DebugMessage = $"\tCOMMAND CHANNEL: \t {ProcessName} procedure successful at METER{meterIndex}\n";
|
|
// pp.GenerateReturnNote($"{meterctl.Slot}", meterctl.Meter.PcbId, PredefinedMessages.LoginFailed(pp.Setting.Culture));
|
|
//}
|
|
//no preperation test needed
|
|
|
|
pp.DebugMessage($"found {MeterStateCtls.Count} slots for meters");
|
|
|
|
pp.DebugMessage($"found {TempMeterStateCtls.Count} slots for temp meters");
|
|
|
|
return true;
|
|
|
|
}));
|
|
return listOfProcessTask;
|
|
}
|
|
catch (System.Exception ex)
|
|
{
|
|
|
|
throw new ApplicationException("PrepareTestProcess", ex);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|