pui and legaxy fix (no no static check for meters)
This commit is contained in:
@@ -45,8 +45,8 @@ namespace Xylem.Common.Hardware.WaterMeter.Genesis.GenesisCore
|
|||||||
|
|
||||||
private void PreMeasurement()
|
private void PreMeasurement()
|
||||||
{
|
{
|
||||||
//if (!SkipPreparationForTestBench)
|
if (!SkipPreparationForTestBench)
|
||||||
//{
|
{
|
||||||
|
|
||||||
//TODO set display unit
|
//TODO set display unit
|
||||||
//TODO calculated overflow volume for display
|
//TODO calculated overflow volume for display
|
||||||
@@ -89,11 +89,11 @@ namespace Xylem.Common.Hardware.WaterMeter.Genesis.GenesisCore
|
|||||||
WriteRegister(Register.Genesisflow.StoreConfiguration, 1);
|
WriteRegister(Register.Genesisflow.StoreConfiguration, 1);
|
||||||
|
|
||||||
|
|
||||||
//}
|
}
|
||||||
//else
|
else
|
||||||
//{
|
{
|
||||||
// WriteLog($"wait for measurement is starting");
|
WriteLog($"wait for measurement is starting");
|
||||||
//}
|
}
|
||||||
ProcessStatus = ProcessState.WaitForMeasurement;
|
ProcessStatus = ProcessState.WaitForMeasurement;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -1 +1 @@
|
|||||||
1a3d4919c9c702245832d925951f2b7cb72fc333
|
5ed75d99ee45ff67821090f1b3dbb001dd9e4fe3
|
||||||
|
|||||||
@@ -7,6 +7,7 @@
|
|||||||
{
|
{
|
||||||
EMEA_433,
|
EMEA_433,
|
||||||
EMEA_868,
|
EMEA_868,
|
||||||
NA
|
NA,
|
||||||
|
EMEA
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -65,19 +65,6 @@ namespace Xylem.Common.Logic.ProductionOrderCore.OrderData
|
|||||||
ret.Add(new ProgrammingParameters("SENSUSRADIO_ImpedanceCodeOption", BitConverter.GetBytes(radioParams.ImpedanceCodeOption).Reverse().ToArray()));
|
ret.Add(new ProgrammingParameters("SENSUSRADIO_ImpedanceCodeOption", BitConverter.GetBytes(radioParams.ImpedanceCodeOption).Reverse().ToArray()));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (orderNr == 3144128)
|
|
||||||
{
|
|
||||||
orderNr = 3179323;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
if (orderNr == 3148219)
|
|
||||||
{
|
|
||||||
orderNr = 3179323;
|
|
||||||
}
|
|
||||||
|
|
||||||
var rawVako = VakoDbAdapter.GetRawVako(connectionString, orderNr);
|
var rawVako = VakoDbAdapter.GetRawVako(connectionString, orderNr);
|
||||||
var rawMapping = VakoDbAdapter.GetVakoMapping(connectionString, rawVako.Type);
|
var rawMapping = VakoDbAdapter.GetVakoMapping(connectionString, rawVako.Type);
|
||||||
var vakoData = VakoParser.Parse(rawVako, rawMapping);
|
var vakoData = VakoParser.Parse(rawVako, rawMapping);
|
||||||
|
|||||||
@@ -7,9 +7,7 @@
|
|||||||
xmlns:uc="clr-namespace:ProductionUiCordonel"
|
xmlns:uc="clr-namespace:ProductionUiCordonel"
|
||||||
mc:Ignorable="d"
|
mc:Ignorable="d"
|
||||||
Title="Cordonel Production UI" MinHeight="500" MinWidth="400" Height="600" Width="644" Initialized="Window_Initialized" Closing="Window_Closing">
|
Title="Cordonel Production UI" MinHeight="500" MinWidth="400" Height="600" Width="644" Initialized="Window_Initialized" Closing="Window_Closing">
|
||||||
<Window.Resources>
|
|
||||||
<local:QuantityToBackgroundConverter x:Key="BackgroundConverter" />
|
|
||||||
</Window.Resources>
|
|
||||||
<DockPanel HorizontalAlignment="Right" Width="634" Height="569" VerticalAlignment="Top" Margin="0,0,2,0">
|
<DockPanel HorizontalAlignment="Right" Width="634" Height="569" VerticalAlignment="Top" Margin="0,0,2,0">
|
||||||
<ToolBarTray DockPanel.Dock="Top">
|
<ToolBarTray DockPanel.Dock="Top">
|
||||||
<ToolBar>
|
<ToolBar>
|
||||||
|
|||||||
@@ -23,35 +23,35 @@ using Xylem.Common.Logic.SoftwareAccessHelper;
|
|||||||
|
|
||||||
namespace ProductionUiCordonel
|
namespace ProductionUiCordonel
|
||||||
{
|
{
|
||||||
public class QuantityToBackgroundConverter : IValueConverter
|
//public class QuantityToBackgroundConverter : IValueConverter
|
||||||
{
|
//{
|
||||||
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
|
// public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
|
||||||
{
|
// {
|
||||||
var dc = DisplayCodes.None;
|
// var dc = DisplayCodes.None;
|
||||||
|
|
||||||
if (DisplayCodes.TryParse(value.ToString(), out dc))
|
// if (DisplayCodes.TryParse(value.ToString(), out dc))
|
||||||
{
|
// {
|
||||||
string hex = "";
|
// string hex = "";
|
||||||
int intValue;
|
// int intValue;
|
||||||
if (int.TryParse(value.ToString(), out intValue))
|
// if (int.TryParse(value.ToString(), out intValue))
|
||||||
{
|
// {
|
||||||
hex = intValue.ToString("X");
|
// hex = intValue.ToString("X");
|
||||||
}
|
// }
|
||||||
return $"{dc} ({hex})";
|
// return $"{dc} ({hex})";
|
||||||
}
|
// }
|
||||||
else
|
// else
|
||||||
{
|
// {
|
||||||
return "?";
|
// return "?";
|
||||||
}
|
// }
|
||||||
|
|
||||||
|
|
||||||
}
|
// }
|
||||||
|
|
||||||
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
|
// public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
|
||||||
{
|
// {
|
||||||
throw new NotImplementedException();
|
// throw new NotImplementedException();
|
||||||
}
|
// }
|
||||||
}
|
//}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Interaction logic for MainWindow.xaml
|
/// Interaction logic for MainWindow.xaml
|
||||||
|
|||||||
+1
-2
@@ -150,8 +150,7 @@ namespace ProductionUiCordonel.ProductionProcesses.Actions
|
|||||||
}
|
}
|
||||||
reTrysLeft = reTrysLeft - 1;
|
reTrysLeft = reTrysLeft - 1;
|
||||||
|
|
||||||
currentProcessState = ProductionProcessState.Done;
|
currentProcessState = ProductionProcessState.Error;
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -679,7 +679,7 @@ namespace XylemCommonUiLegacyGenCtl
|
|||||||
{
|
{
|
||||||
TestsetuptContainer.meterTestSettings[slot] = new MeterTestSettings() { SerialNr = serialNumber, Slot = slot, FlowAdjustment = true, FlowTesting = true };
|
TestsetuptContainer.meterTestSettings[slot] = new MeterTestSettings() { SerialNr = serialNumber, Slot = slot, FlowAdjustment = true, FlowTesting = true };
|
||||||
}
|
}
|
||||||
AddMeter(serialNumber, slot, false);
|
AddMeter(serialNumber, slot, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void RemoveMeter(int slot)
|
public void RemoveMeter(int slot)
|
||||||
@@ -957,13 +957,13 @@ namespace XylemCommonUiLegacyGenCtl
|
|||||||
{
|
{
|
||||||
((GenesisMeter)meter).InitCalibration();
|
((GenesisMeter)meter).InitCalibration();
|
||||||
}
|
}
|
||||||
else
|
//else
|
||||||
{
|
//{
|
||||||
((GenesisMeter)meter).InitMeasurement();
|
// ((GenesisMeter)meter).InitMeasurement();
|
||||||
}
|
//}
|
||||||
// Reboot, HighPeresur
|
//// Reboot, HighPeresur
|
||||||
//ReadOut Alarms, Show and reset
|
////ReadOut Alarms, Show and reset
|
||||||
_logger.Debug($"Start CheckMetersAreReadyForTest");
|
//_logger.Debug($"Start CheckMetersAreReadyForTest");
|
||||||
|
|
||||||
}
|
}
|
||||||
}));
|
}));
|
||||||
@@ -971,18 +971,15 @@ namespace XylemCommonUiLegacyGenCtl
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
listOfTasks.ForEach(t => t.Start());
|
|
||||||
Task.WaitAll(listOfTasks.ToArray());
|
|
||||||
listOfTasksInit.ForEach(t => t.Start());
|
listOfTasksInit.ForEach(t => t.Start());
|
||||||
Task.WaitAll(listOfTasksInit.ToArray());
|
Task.WaitAll(listOfTasksInit.ToArray());
|
||||||
TryInvoke(new Action(() =>
|
TryInvoke(new Action(() =>
|
||||||
{
|
{
|
||||||
UpdateBatch();
|
UpdateBatch();
|
||||||
}));
|
}));
|
||||||
setBusy(false, "", true);
|
|
||||||
//CheckMetersAreReadyForTestStatic();
|
//CheckMetersAreReadyForTestStatic();
|
||||||
|
setBusy(false, "", true);
|
||||||
|
|
||||||
}).ContinueWith(delegate
|
}).ContinueWith(delegate
|
||||||
{
|
{
|
||||||
@@ -1001,85 +998,85 @@ namespace XylemCommonUiLegacyGenCtl
|
|||||||
|
|
||||||
private void CheckMetersAreReadyForTestStatic()
|
private void CheckMetersAreReadyForTestStatic()
|
||||||
{
|
{
|
||||||
var listOfTasks = new List<Task>();
|
//var listOfTasks = new List<Task>();
|
||||||
|
|
||||||
foreach (var meter in batch.ListOfMeters)
|
//foreach (var meter in batch.ListOfMeters)
|
||||||
{
|
//{
|
||||||
listOfTasks.Add(new Task(() =>
|
// listOfTasks.Add(new Task(() =>
|
||||||
{
|
// {
|
||||||
if (!(meter is GenesisMeter))
|
// if (!(meter is GenesisMeter))
|
||||||
{
|
// {
|
||||||
return;
|
// return;
|
||||||
}
|
// }
|
||||||
var i = 1;
|
// var i = 1;
|
||||||
|
|
||||||
var sleepTimeS = 1;
|
// var sleepTimeS = 1;
|
||||||
_logger.Debug($" Meter {meter.Slot} CheckMetersAreReadyForTest loops {i};delay {sleepTimeS}S");
|
// _logger.Debug($" Meter {meter.Slot} CheckMetersAreReadyForTest loops {i};delay {sleepTimeS}S");
|
||||||
((GenesisMeter)meter).StartMeasurement();
|
// ((GenesisMeter)meter).StartMeasurement();
|
||||||
var MeterReadyForTest = false;
|
// var MeterReadyForTest = false;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
while (i <= 7)
|
// while (i <= 7)
|
||||||
{
|
// {
|
||||||
((GenesisMeter)meter).RequestIntermediateMeasurementState(0);
|
// ((GenesisMeter)meter).RequestIntermediateMeasurementState(0);
|
||||||
Thread.Sleep(i * 2000);
|
// Thread.Sleep(i * 2000);
|
||||||
i = i + 1;
|
// i = i + 1;
|
||||||
try
|
// try
|
||||||
{
|
// {
|
||||||
var state = ((GenesisMeter)meter).GetMeasurementState(0);
|
// var state = ((GenesisMeter)meter).GetMeasurementState(0);
|
||||||
|
|
||||||
|
|
||||||
if (state != MeasurementStates.IsWaitingForStartData && state != MeasurementStates.NotStarted)
|
// if (state != MeasurementStates.IsWaitingForStartData && state != MeasurementStates.NotStarted)
|
||||||
{
|
// {
|
||||||
|
|
||||||
var r = ((GenesisMeter)meter).GetMainMeasurementResult(null, null, true);
|
// var r = ((GenesisMeter)meter).GetMainMeasurementResult(null, null, true);
|
||||||
|
|
||||||
if (r.DutVolumeCm != 0)
|
// if (r.DutVolumeCm != 0)
|
||||||
{
|
// {
|
||||||
_logger.Info($" Meter {meter.Slot} Meter has progress (Volume{r.DutVolumeCm})");
|
// _logger.Info($" Meter {meter.Slot} Meter has progress (Volume{r.DutVolumeCm})");
|
||||||
|
|
||||||
MeterReadyForTest = true;
|
// MeterReadyForTest = true;
|
||||||
break;
|
// break;
|
||||||
}
|
// }
|
||||||
|
|
||||||
|
|
||||||
}
|
// }
|
||||||
_logger.Info($" Meter {meter.Slot} Meter no update display; loops left {i}; state {state}");
|
// _logger.Info($" Meter {meter.Slot} Meter no update display; loops left {i}; state {state}");
|
||||||
|
|
||||||
}
|
// }
|
||||||
catch (Exception)
|
// catch (Exception)
|
||||||
{
|
// {
|
||||||
|
|
||||||
}
|
// }
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
TryInvoke(new Action(() =>
|
// TryInvoke(new Action(() =>
|
||||||
{
|
// {
|
||||||
updateCell($"Status", meter.Slot, $"Warte auf Zählerstand wechsel ", Color.LightYellow);
|
// updateCell($"Status", meter.Slot, $"Warte auf Zählerstand wechsel ", Color.LightYellow);
|
||||||
}));
|
// }));
|
||||||
|
|
||||||
}
|
// }
|
||||||
((GenesisMeter)meter).StopMeasurement();
|
// ((GenesisMeter)meter).StopMeasurement();
|
||||||
|
|
||||||
if (!MeterReadyForTest)
|
// if (!MeterReadyForTest)
|
||||||
{
|
// {
|
||||||
//todo event remove meter
|
// //todo event remove meter
|
||||||
_logger.Info($" Meter {meter.Slot} Meter has NO! progress");
|
// _logger.Info($" Meter {meter.Slot} Meter has NO! progress");
|
||||||
TryInvoke(new Action(() =>
|
// TryInvoke(new Action(() =>
|
||||||
{
|
// {
|
||||||
updateCell($"Status", meter.Slot, $"Zählerstand wechsel nicht erfasst", Color.LightPink);
|
// updateCell($"Status", meter.Slot, $"Zählerstand wechsel nicht erfasst", Color.LightPink);
|
||||||
}));
|
// }));
|
||||||
}
|
// }
|
||||||
|
|
||||||
|
|
||||||
}));
|
// }));
|
||||||
|
|
||||||
}
|
//}
|
||||||
|
|
||||||
listOfTasks.ForEach(t => t.Start());
|
//listOfTasks.ForEach(t => t.Start());
|
||||||
Task.WaitAll(listOfTasks.ToArray());
|
//Task.WaitAll(listOfTasks.ToArray());
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -1087,96 +1084,96 @@ namespace XylemCommonUiLegacyGenCtl
|
|||||||
|
|
||||||
private void CheckMetersAreReadyForTest()
|
private void CheckMetersAreReadyForTest()
|
||||||
{
|
{
|
||||||
_logger.Trace($"CheckMetersAreReadyForTest");
|
//_logger.Trace($"CheckMetersAreReadyForTest");
|
||||||
TryInvoke(new Action(() =>
|
//TryInvoke(new Action(() =>
|
||||||
{
|
//{
|
||||||
lblAction.Text = "Warte auf Zählerstand wechsel von allen Zählern";
|
// lblAction.Text = "Warte auf Zählerstand wechsel von allen Zählern";
|
||||||
|
|
||||||
}));
|
//}));
|
||||||
|
|
||||||
|
|
||||||
var listOfTasks = new List<Task>();
|
//var listOfTasks = new List<Task>();
|
||||||
|
|
||||||
foreach (var meter in batch.ListOfMeters)
|
//foreach (var meter in batch.ListOfMeters)
|
||||||
{
|
//{
|
||||||
|
|
||||||
|
|
||||||
if (!(meter is GenesisMeter))
|
// if (!(meter is GenesisMeter))
|
||||||
{
|
// {
|
||||||
if (!(meter is GenesisMeter))
|
// if (!(meter is GenesisMeter))
|
||||||
{
|
// {
|
||||||
continue;
|
// continue;
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
|
|
||||||
TryInvoke(new Action(() =>
|
// TryInvoke(new Action(() =>
|
||||||
{
|
// {
|
||||||
|
|
||||||
updateCell($"Status", meter.Slot, $"Warte auf Zählerstand wechsel", Color.LightYellow);
|
// updateCell($"Status", meter.Slot, $"Warte auf Zählerstand wechsel", Color.LightYellow);
|
||||||
}));
|
// }));
|
||||||
|
|
||||||
|
|
||||||
listOfTasks.Add(new Task(() =>
|
// listOfTasks.Add(new Task(() =>
|
||||||
{
|
// {
|
||||||
var i = 120;
|
// var i = 120;
|
||||||
|
|
||||||
var sleepTimeS = 5;
|
// var sleepTimeS = 5;
|
||||||
_logger.Debug($" Meter {meter.Slot} CheckMetersAreReadyForTest loops {i};delay {sleepTimeS}S");
|
// _logger.Debug($" Meter {meter.Slot} CheckMetersAreReadyForTest loops {i};delay {sleepTimeS}S");
|
||||||
((GenesisMeter)meter).StartMeasurement();
|
// ((GenesisMeter)meter).StartMeasurement();
|
||||||
var MeterReadyForTest = false;
|
// var MeterReadyForTest = false;
|
||||||
while (i >= 0)
|
// while (i >= 0)
|
||||||
{
|
// {
|
||||||
Thread.Sleep(sleepTimeS * 1000);
|
// Thread.Sleep(sleepTimeS * 1000);
|
||||||
try
|
// try
|
||||||
{
|
// {
|
||||||
var r = ((GenesisMeter)meter).GetMainMeasurementResult(null, null, true);
|
// var r = ((GenesisMeter)meter).GetMainMeasurementResult(null, null, true);
|
||||||
i = i - sleepTimeS;
|
// i = i - sleepTimeS;
|
||||||
if (r.DutVolumeCm != 0)
|
// if (r.DutVolumeCm != 0)
|
||||||
{
|
// {
|
||||||
_logger.Info($" Meter {meter.Slot} Meter has progress {r.DutVolumeCm}");
|
// _logger.Info($" Meter {meter.Slot} Meter has progress {r.DutVolumeCm}");
|
||||||
TryInvoke(new Action(() =>
|
// TryInvoke(new Action(() =>
|
||||||
{
|
// {
|
||||||
// updateCell($"Status", meter.Slot, $"Zählerstand wechsel erfasst Von:{r.DutStartRecord.GetVolumeCm()} Auf: {r.DutStopRecord.GetVolumeCm()}", Color.LimeGreen);
|
// // updateCell($"Status", meter.Slot, $"Zählerstand wechsel erfasst Von:{r.DutStartRecord.GetVolumeCm()} Auf: {r.DutStopRecord.GetVolumeCm()}", Color.LimeGreen);
|
||||||
}));
|
// }));
|
||||||
MeterReadyForTest = true;
|
// MeterReadyForTest = true;
|
||||||
break;
|
// break;
|
||||||
}
|
// }
|
||||||
else
|
// else
|
||||||
{
|
// {
|
||||||
_logger.Info($" Meter {meter.Slot} Meter no update display {r.DutVolumeCm}; loops left {i}");
|
// _logger.Info($" Meter {meter.Slot} Meter no update display {r.DutVolumeCm}; loops left {i}");
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
catch (Exception)
|
// catch (Exception)
|
||||||
{
|
// {
|
||||||
|
|
||||||
}
|
// }
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
TryInvoke(new Action(() =>
|
// TryInvoke(new Action(() =>
|
||||||
{
|
// {
|
||||||
updateCell($"Status", meter.Slot, $"Warte auf Zählerstand wechsel ", Color.LightYellow);
|
// updateCell($"Status", meter.Slot, $"Warte auf Zählerstand wechsel ", Color.LightYellow);
|
||||||
}));
|
// }));
|
||||||
|
|
||||||
}
|
// }
|
||||||
((GenesisMeter)meter).StopMeasurement();
|
// ((GenesisMeter)meter).StopMeasurement();
|
||||||
|
|
||||||
if (MeterReadyForTest)
|
// if (MeterReadyForTest)
|
||||||
{
|
// {
|
||||||
_logger.Info($" Meter {meter.Slot} Meter has NO! progress");
|
// _logger.Info($" Meter {meter.Slot} Meter has NO! progress");
|
||||||
TryInvoke(new Action(() =>
|
// TryInvoke(new Action(() =>
|
||||||
{
|
// {
|
||||||
updateCell($"Status", meter.Slot, $"Zählerstand wechsel nicht erfasst", Color.LightPink);
|
// updateCell($"Status", meter.Slot, $"Zählerstand wechsel nicht erfasst", Color.LightPink);
|
||||||
}));
|
// }));
|
||||||
}
|
// }
|
||||||
|
|
||||||
}));
|
// }));
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
//}
|
||||||
listOfTasks.ForEach(t => t.Start());
|
//listOfTasks.ForEach(t => t.Start());
|
||||||
Task.WaitAll(listOfTasks.ToArray());
|
//Task.WaitAll(listOfTasks.ToArray());
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user