using Newtonsoft.Json; using System.Text; using Xylem.Common.Logic.ProductionOrderCore.OrderData; using XylemCommonUiLegacyGenCtl.Enums; namespace XylemCommonUiLegacyGenCtl.DataPackage { public class TestSetupContainer { public TestSetupContainer() { meterTestResults = new MeterTestResults[10]; } public bool WatingForDecision { get; set; } = true; public TempSouceType TempSouce { get; set; } public MeterSize MeterSize { get; set; } public int DelayInSBeforStart { get; set; } public bool AllChanelsRequired { get; set; } public bool ProductionMode { get; set; } public int TestRunNumber { get; set; } public MeterTestSettings[] meterTestSettings { get; set; } public MeterTestResults[] meterTestResults { get; set; } public override string ToString() { //(responseJson); var sb = new StringBuilder(); sb.AppendLine($"WatingForDecision={WatingForDecision}"); sb.AppendLine($"TempSouce={TempSouce}"); sb.AppendLine($"MeterSize={MeterSize}"); sb.AppendLine($"DelayInSBeforStart={DelayInSBeforStart}"); sb.AppendLine($"AllChanelsRequired={AllChanelsRequired}"); sb.AppendLine($"ProductionMode={ProductionMode}"); foreach (var item in meterTestSettings) { if (item == null) { continue; } sb.AppendLine($"Slot={item.Slot}"); sb.AppendLine($"SerialNr={item.SerialNr}"); sb.AppendLine($"FlowTesting={item.FlowTesting}"); sb.AppendLine($"PreAdjustment={item.PreAdjustment}"); sb.AppendLine($"FlowAdjustment={item.FlowAdjustment}"); sb.AppendLine($"FlowAdjustmentTarget={item.FlowAdjustmentTarget}"); sb.AppendLine($"meterType={item.meterType}"); sb.AppendLine($"FlowTestingOnlyForward={item.FlowTestingOnlyForward}"); sb.AppendLine($"FlowTestingOnlyRevers={item.FlowTestingOnlyRevers}"); } foreach (var item in meterTestResults) { if (item == null) { continue; } sb.AppendLine($"Slot={item.Slot}"); sb.AppendLine($"Sr={item.SerialNr}"); foreach (var flows in item.Results) { sb.AppendLine($"MeasuredRefFlowQmPerH={flows.MeasuredRefFlowQmPerH}"); sb.AppendLine($"MeasuredDutFlowQmPerH={flows.MeasuredDutFlowQmPerH}"); } } return JsonConvert.SerializeObject(this); } } }