Picking is now fine for FAI
This commit is contained in:
parent
c8aea75791
commit
ac7460f07c
@ -155,7 +155,7 @@
|
||||
</site>
|
||||
<site name="MeterProcessState" id="2">
|
||||
<application path="/" applicationPool="Clr4IntegratedAppPool">
|
||||
<virtualDirectory path="/" physicalPath="D:\Projekte\SENSUS_GitLab\laa_production\Common\Service\MeterProcessState" />
|
||||
<virtualDirectory path="/" physicalPath="C:\Users\drabesch_ro\Repo\lab\la_operations\laa_production\Common\Service\MeterProcessState" />
|
||||
</application>
|
||||
<bindings>
|
||||
<binding protocol="http" bindingInformation="*:56011:localhost" />
|
||||
|
||||
@ -175,6 +175,10 @@
|
||||
<Project>{04201E95-90A0-4B73-A72F-379739B2A3AE}</Project>
|
||||
<Name>GenesisCore</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\Hardware\WaterMeter\Genesis\GenesisFile\GenesisFile.csproj">
|
||||
<Project>{2C6378C6-6BA1-4CEE-8992-8404D8369A90}</Project>
|
||||
<Name>GenesisFile</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\Hardware\WaterMeter\Genesis\Registers\Registers.csproj">
|
||||
<Project>{F4AAF7E6-7333-4284-B735-E32DEB076C64}</Project>
|
||||
<Name>Registers</Name>
|
||||
|
||||
@ -12,6 +12,7 @@ using System.Threading.Tasks;
|
||||
using System.Timers;
|
||||
using Xylem.Common.CommonCore.Configuration;
|
||||
using Xylem.Common.Hardware.WaterMeter.Genesis.GenesisCore;
|
||||
using Xylem.Common.Hardware.WaterMeter.Genesis.Registers;
|
||||
using Xylem.Common.Hardware.WaterMeter.WaterMeterCore;
|
||||
using Xylem.Common.Logic.ProductionOrderCore.TestResults;
|
||||
using Xylem.Common.Logic.SoftwareAccessHelper;
|
||||
@ -98,6 +99,20 @@ namespace CordonelAssemblyLine.Model
|
||||
NotifyPropertyChanged(nameof(CurrentPcbID));
|
||||
}
|
||||
}
|
||||
private bool _currentPcbHasPressure;
|
||||
public bool CurrentPcbHasPressure
|
||||
{
|
||||
get
|
||||
{
|
||||
return _currentPcbHasPressure;
|
||||
}
|
||||
set
|
||||
{
|
||||
_currentPcbHasPressure = value;
|
||||
|
||||
NotifyPropertyChanged(nameof(CurrentPcbHasPressure));
|
||||
}
|
||||
}
|
||||
private Timer tmrAutoDetect;
|
||||
|
||||
public LeakViewModel(int slotNR, int? stationID = null)
|
||||
@ -151,6 +166,20 @@ namespace CordonelAssemblyLine.Model
|
||||
tryMeter.Logout();
|
||||
Log("Try to get PcbID");
|
||||
CurrentPcbID = tryMeter.GetPcbId();
|
||||
CurrentPcbHasPressure = true;
|
||||
try
|
||||
{
|
||||
tryMeter.Login();
|
||||
var hasPresure = RegisterConverter.ConvertTo<bool>(tryMeter.ReadRegister("METROLOGYASST_PressurePresent"));
|
||||
CurrentPcbHasPressure = hasPresure;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
tryMeter.WriteLog(ex.Message);
|
||||
}
|
||||
|
||||
|
||||
|
||||
hasDetect = !string.IsNullOrEmpty(CurrentPcbID);
|
||||
CurrentMeter = tryMeter;
|
||||
@ -248,11 +277,24 @@ namespace CordonelAssemblyLine.Model
|
||||
throw new ApplicationException("Keinen Auftrag gefunden. Kommissionierung prüfen!");
|
||||
}
|
||||
var pressureResultData = JsonConvert.DeserializeObject<List<PressureResultData>>(retStr);
|
||||
|
||||
|
||||
//add pressures point
|
||||
PressureResultDataNotifyable PressureResultData;
|
||||
if (!pressureResultData.Any())
|
||||
{
|
||||
return new PressureResultDataNotifyable();
|
||||
PressureResultData = new PressureResultDataNotifyable();
|
||||
}
|
||||
return new PressureResultDataNotifyable(pressureResultData.First());
|
||||
|
||||
PressureResultData = new PressureResultDataNotifyable(pressureResultData.First());
|
||||
if (!CurrentPcbHasPressure)
|
||||
{
|
||||
PressureResultData = PressureResultData.Testpoints.Remove(PressureResultData.Testpoints.First(r => r.Ident == 10);
|
||||
}
|
||||
|
||||
|
||||
|
||||
return PressureResultData;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
@ -6,11 +6,12 @@ using System.ComponentModel;
|
||||
using System.IO.Ports;
|
||||
using System.Linq;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using Ui.ProductionControls;
|
||||
using Xylem.Common.CommonCore.Configuration;
|
||||
using Xylem.Common.Hardware.WaterMeter.Genesis.GenesisCore;
|
||||
using Xylem.Common.Hardware.WaterMeter.Genesis.GenesisFile;
|
||||
using Xylem.Common.Hardware.WaterMeter.Genesis.Registers;
|
||||
using Xylem.Common.Hardware.WaterMeter.WaterMeterCore;
|
||||
using Xylem.Common.Logic.SoftwareAccessHelper;
|
||||
@ -131,54 +132,76 @@ namespace CordonelAssemblyLine.Model
|
||||
}
|
||||
}
|
||||
|
||||
private string pLblS01Text;
|
||||
public string lblS01Text { get { return pLblS01Text; } set { pLblS01Text = value; NotifyPropertyChanged(nameof(lblS01Text)); } }
|
||||
|
||||
string _lblS01Text;
|
||||
public string lblS01Text { get { return _lblS01Text; } set { _lblS01Text = value; NotifyPropertyChanged(nameof(lblS01Text)); } }
|
||||
string _lblS02Text;
|
||||
public string lblS02Text { get { return _lblS02Text; } set { _lblS02Text = value; NotifyPropertyChanged(nameof(lblS02Text)); } }
|
||||
private string pLblS02Text;
|
||||
public string lblS02Text { get { return pLblS02Text; } set { pLblS02Text = value; NotifyPropertyChanged(nameof(lblS02Text)); } }
|
||||
|
||||
string _lblS03Text;
|
||||
public string lblS03Text { get { return _lblS03Text; } set { _lblS03Text = value; NotifyPropertyChanged(nameof(lblS03Text)); } }
|
||||
string _lblS04Text;
|
||||
public string lblS04Text { get { return _lblS04Text; } set { _lblS04Text = value; NotifyPropertyChanged(nameof(lblS04Text)); } }
|
||||
string _lblS05Text;
|
||||
public string lblS05Text { get { return _lblS05Text; } set { _lblS05Text = value; NotifyPropertyChanged(nameof(lblS05Text)); } }
|
||||
string _lblS06Text;
|
||||
public string lblS06Text { get { return _lblS06Text; } set { _lblS06Text = value; NotifyPropertyChanged(nameof(lblS06Text)); } }
|
||||
string _lblS07Text;
|
||||
public string lblS07Text { get { return _lblS07Text; } set { _lblS07Text = value; NotifyPropertyChanged(nameof(lblS07Text)); } }
|
||||
string _lblS08Text;
|
||||
public string lblS08Text { get { return _lblS08Text; } set { _lblS08Text = value; NotifyPropertyChanged(nameof(lblS08Text)); } }
|
||||
string _lblS09Text;
|
||||
public string lblS09Text { get { return _lblS09Text; } set { _lblS09Text = value; NotifyPropertyChanged(nameof(lblS09Text)); } }
|
||||
string _lblS10Text;
|
||||
public string lblS10Text { get { return _lblS10Text; } set { _lblS10Text = value; NotifyPropertyChanged(nameof(lblS10Text)); } }
|
||||
string _lblS11Text;
|
||||
public string lblS11Text { get { return _lblS11Text; } set { _lblS11Text = value; NotifyPropertyChanged(nameof(lblS11Text)); } }
|
||||
private string pLblS03Text;
|
||||
public string lblS03Text { get { return pLblS03Text; } set { pLblS03Text = value; NotifyPropertyChanged(nameof(lblS03Text)); } }
|
||||
|
||||
private string pLblS04Text;
|
||||
public string lblS04Text { get { return pLblS04Text; } set { pLblS04Text = value; NotifyPropertyChanged(nameof(lblS04Text)); } }
|
||||
|
||||
private string pLblS05Text;
|
||||
public string lblS05Text { get { return pLblS05Text; } set { pLblS05Text = value; NotifyPropertyChanged(nameof(lblS05Text)); } }
|
||||
|
||||
private string pLblS06Text;
|
||||
public string lblS06Text { get { return pLblS06Text; } set { pLblS06Text = value; NotifyPropertyChanged(nameof(lblS06Text)); } }
|
||||
|
||||
private string pLblS07Text;
|
||||
public string lblS07Text { get { return pLblS07Text; } set { pLblS07Text = value; NotifyPropertyChanged(nameof(lblS07Text)); } }
|
||||
|
||||
private string pLblS08Text;
|
||||
public string lblS08Text { get { return pLblS08Text; } set { pLblS08Text = value; NotifyPropertyChanged(nameof(lblS08Text)); } }
|
||||
|
||||
private string pLblS09Text;
|
||||
public string lblS09Text { get { return pLblS09Text; } set { pLblS09Text = value; NotifyPropertyChanged(nameof(lblS09Text)); } }
|
||||
|
||||
private string pLblS10Text;
|
||||
public string lblS10Text { get { return pLblS10Text; } set { pLblS10Text = value; NotifyPropertyChanged(nameof(lblS10Text)); } }
|
||||
|
||||
private string pLblS11Text;
|
||||
public string lblS11Text { get { return pLblS11Text; } set { pLblS11Text = value; NotifyPropertyChanged(nameof(lblS11Text)); } }
|
||||
|
||||
private System.Windows.Media.Brush progressWating = (System.Windows.Media.Brush)(new System.Windows.Media.BrushConverter()).ConvertFromString("Aquamarine");
|
||||
private System.Windows.Media.Brush progressCurrent = (System.Windows.Media.Brush)(new System.Windows.Media.BrushConverter()).ConvertFromString("yellow");
|
||||
private System.Windows.Media.Brush progressDone = (System.Windows.Media.Brush)(new System.Windows.Media.BrushConverter()).ConvertFromString("green");
|
||||
private System.Windows.Media.Brush progressError = (System.Windows.Media.Brush)(new System.Windows.Media.BrushConverter()).ConvertFromString("red");
|
||||
|
||||
|
||||
System.Windows.Media.Brush _lblS01Color;
|
||||
private System.Windows.Media.Brush _lblS01Color;
|
||||
public System.Windows.Media.Brush lblS01Color { get { return _lblS01Color; } set { _lblS01Color = value; NotifyPropertyChanged(nameof(lblS01Color)); } }
|
||||
System.Windows.Media.Brush _lblS02Color;
|
||||
|
||||
private System.Windows.Media.Brush _lblS02Color;
|
||||
public System.Windows.Media.Brush lblS02Color { get { return _lblS02Color; } set { _lblS02Color = value; NotifyPropertyChanged(nameof(lblS02Color)); } }
|
||||
|
||||
System.Windows.Media.Brush _lblS03Color;
|
||||
private System.Windows.Media.Brush _lblS03Color;
|
||||
public System.Windows.Media.Brush lblS03Color { get { return _lblS03Color; } set { _lblS03Color = value; NotifyPropertyChanged(nameof(lblS03Color)); } }
|
||||
System.Windows.Media.Brush _lblS04Color;
|
||||
|
||||
private System.Windows.Media.Brush _lblS04Color;
|
||||
public System.Windows.Media.Brush lblS04Color { get { return _lblS04Color; } set { _lblS04Color = value; NotifyPropertyChanged(nameof(lblS04Color)); } }
|
||||
System.Windows.Media.Brush _lblS05Color;
|
||||
|
||||
private System.Windows.Media.Brush _lblS05Color;
|
||||
public System.Windows.Media.Brush lblS05Color { get { return _lblS05Color; } set { _lblS05Color = value; NotifyPropertyChanged(nameof(lblS05Color)); } }
|
||||
System.Windows.Media.Brush _lblS06Color;
|
||||
|
||||
private System.Windows.Media.Brush _lblS06Color;
|
||||
public System.Windows.Media.Brush lblS06Color { get { return _lblS06Color; } set { _lblS06Color = value; NotifyPropertyChanged(nameof(lblS06Color)); } }
|
||||
System.Windows.Media.Brush _lblS07Color;
|
||||
|
||||
private System.Windows.Media.Brush _lblS07Color;
|
||||
public System.Windows.Media.Brush lblS07Color { get { return _lblS07Color; } set { _lblS07Color = value; NotifyPropertyChanged(nameof(lblS07Color)); } }
|
||||
System.Windows.Media.Brush _lblS08Color;
|
||||
|
||||
private System.Windows.Media.Brush _lblS08Color;
|
||||
public System.Windows.Media.Brush lblS08Color { get { return _lblS08Color; } set { _lblS08Color = value; NotifyPropertyChanged(nameof(lblS08Color)); } }
|
||||
System.Windows.Media.Brush _lblS09Color;
|
||||
|
||||
private System.Windows.Media.Brush _lblS09Color;
|
||||
public System.Windows.Media.Brush lblS09Color { get { return _lblS09Color; } set { _lblS09Color = value; NotifyPropertyChanged(nameof(lblS09Color)); } }
|
||||
System.Windows.Media.Brush _lblS10Color;
|
||||
|
||||
private System.Windows.Media.Brush _lblS10Color;
|
||||
public System.Windows.Media.Brush lblS10Color { get { return _lblS10Color; } set { _lblS10Color = value; NotifyPropertyChanged(nameof(lblS10Color)); } }
|
||||
System.Windows.Media.Brush _lblS11Color;
|
||||
|
||||
private System.Windows.Media.Brush _lblS11Color;
|
||||
public System.Windows.Media.Brush lblS11Color { get { return _lblS11Color; } set { _lblS11Color = value; NotifyPropertyChanged(nameof(lblS11Color)); } }
|
||||
|
||||
|
||||
@ -186,17 +209,29 @@ namespace CordonelAssemblyLine.Model
|
||||
|
||||
public PickingViewModel()
|
||||
{
|
||||
_lblS01Text = "Auftrag Scan";
|
||||
_lblS02Text = "Detektiere Pcb";
|
||||
_lblS03Text = "Lade Autrag";
|
||||
_lblS04Text = "Prüfe Region/ Frequenz";
|
||||
_lblS05Text = "Prüfe Drucksensor";
|
||||
_lblS06Text = "Prüfe FW Version";
|
||||
_lblS07Text = "Prüfe Dateisystem";
|
||||
_lblS08Text = "Battery fix";
|
||||
_lblS09Text = "Produktions-datum";
|
||||
_lblS10Text = "Display";
|
||||
_lblS11Text = "Montage bestätigen";
|
||||
lblS01Text = "-";
|
||||
lblS02Text = "-";
|
||||
lblS03Text = "-";
|
||||
lblS04Text = "-";
|
||||
lblS05Text = "-";
|
||||
lblS06Text = "-";
|
||||
lblS07Text = "-";
|
||||
lblS08Text = "-";
|
||||
lblS09Text = "-";
|
||||
lblS10Text = "-";
|
||||
lblS11Text = "-";
|
||||
lblS01Color = progressCurrent;
|
||||
lblS02Color = progressWating;
|
||||
lblS03Color = progressWating;
|
||||
lblS04Color = progressWating;
|
||||
lblS05Color = progressWating;
|
||||
lblS06Color = progressWating;
|
||||
lblS07Color = progressWating;
|
||||
lblS08Color = progressWating;
|
||||
lblS09Color = progressWating;
|
||||
lblS10Color = progressWating;
|
||||
lblS11Color = progressWating;
|
||||
|
||||
|
||||
InitProgressBar();
|
||||
|
||||
@ -246,6 +281,7 @@ namespace CordonelAssemblyLine.Model
|
||||
StartCom,
|
||||
WaitForBuildingMeterReady,
|
||||
WaitForBuildingPressureReady,
|
||||
LutUpdate,
|
||||
}
|
||||
private PickingStateMachine sm = PickingStateMachine.Init;
|
||||
|
||||
@ -338,9 +374,124 @@ namespace CordonelAssemblyLine.Model
|
||||
{
|
||||
meter.SetProcessState(Xylem.Common.Hardware.WaterMeter.WaterMeterCore.Consts.DisplayCodes.PickingStarted);
|
||||
var ret = RunCheck(checkAppsIdVersion, Frequency, MeterSize, PressurePresent, meter);
|
||||
lblS08Color = progressWating;
|
||||
if (ret)
|
||||
{
|
||||
|
||||
|
||||
if (!meter.WriteRegister("POWERMON_BatteryQuantity", 2, true, true))
|
||||
{
|
||||
lblS08Text = "1";
|
||||
lblS08Color = progressError;
|
||||
ret = false;
|
||||
}
|
||||
}
|
||||
if (ret)
|
||||
{
|
||||
|
||||
|
||||
lblS08Text = "2";
|
||||
lblS08Color = progressDone;
|
||||
lblS10Color = progressCurrent;
|
||||
if (OrderDetails.MeterSize <= 1)
|
||||
{
|
||||
lblS10Color = progressDone;
|
||||
lblS10Text = "Keine LUT für DN40/50";
|
||||
}
|
||||
else
|
||||
{
|
||||
StringBuilder sbUrl = new StringBuilder();
|
||||
sbUrl.Append("http://10.49.40.25/MeterProcessState/api/FileUpToDate/GetLutFiles");
|
||||
sbUrl.Append($"?Metersize={OrderDetails.MeterSize}");
|
||||
sbUrl.Append($"&ForProd=true");
|
||||
//?Metersize=2&Region=EMEA&
|
||||
if (OrderDetails.FrequencyIndicator != 0)
|
||||
{
|
||||
//get ema
|
||||
sbUrl.Append($"&Region=EMEA");
|
||||
}
|
||||
else
|
||||
{
|
||||
//get na
|
||||
sbUrl.Append($"&Region=NA");
|
||||
}
|
||||
|
||||
|
||||
try
|
||||
{
|
||||
|
||||
var retLut = LocalWebRequest.GetRequest(sbUrl.ToString(), 80000);
|
||||
var a = JsonConvert.DeserializeObject<List<CordonelMetrologyLut>>(retLut);
|
||||
|
||||
if (a.Count == 1)
|
||||
{
|
||||
setState($"Vergleich abgeschlossen:{State}");
|
||||
var lut = a.First();
|
||||
lblS10Text = $"Update {lut.FileName}";
|
||||
|
||||
|
||||
var _meterLutUpdate = new MeterLutUpdate(meter);
|
||||
if (_meterLutUpdate == null)
|
||||
{
|
||||
ret = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
var loadResult = _meterLutUpdate.LoadLutFromStream(lut.FileName, lut.FileContent.ToList());
|
||||
var updatResult = _meterLutUpdate.UpdateMeterLut();
|
||||
if (loadResult && updatResult)
|
||||
{
|
||||
lblS10Text = $"{lut.FileName} in meter";
|
||||
lblS10Color = progressDone;
|
||||
}
|
||||
else
|
||||
{
|
||||
Result = $"Fehler beim Update";
|
||||
setState(Result);
|
||||
lblS10Text = Result;
|
||||
lblS10Color = progressError;
|
||||
|
||||
ret = false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
Result = $"Keine eindeutige LUT gefunden";
|
||||
setState(Result);
|
||||
lblS10Color = progressError;
|
||||
lblS10Text = Result;
|
||||
ret = false;
|
||||
}
|
||||
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Result = $"Fehler beim LUT Update";
|
||||
setState(Result);
|
||||
lblS10Color = progressError;
|
||||
lblS10Text = Result;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
if (ret)
|
||||
{
|
||||
|
||||
if (!meter.IsLoggedOn)
|
||||
{
|
||||
meter.ReLogin();
|
||||
}
|
||||
meter.SetProcessState(Xylem.Common.Hardware.WaterMeter.WaterMeterCore.Consts.DisplayCodes.PickingTested);
|
||||
var url = $"{ServiceUrls.MeterProcessStateUrl()}SetPickingState?PcbID={meter.PcbId}&FertigungsauftragsNr={Order}";
|
||||
var RetString = LocalWebRequest.PostRequestAsyncAndGetContent(url);
|
||||
@ -364,15 +515,36 @@ namespace CordonelAssemblyLine.Model
|
||||
|
||||
private bool RunCheck(Dictionary<uint, uint> checkAppsIdVersion, uint Frequency, uint MeterSize, bool PressurePresent, GenesisMeter meter)
|
||||
{
|
||||
setState($"Üperprüfe Parameter");
|
||||
var FrequencyReadOut = RegisterConverter.ConvertTo<UInt32>(meter.ReadRegister("SENSUSRADIO_FrequencyIndicator"));
|
||||
if (FrequencyReadOut != Frequency)
|
||||
{
|
||||
|
||||
setState($"Falsche Frequenz! soll {Frequency}MHz ist {FrequencyReadOut}MHz");
|
||||
meter.WriteLog(State);
|
||||
return false;
|
||||
lblS04Color = progressWating;
|
||||
|
||||
|
||||
|
||||
|
||||
setState($"Überprüfe Parameter");
|
||||
if (Frequency == 0)
|
||||
{
|
||||
lblS04Text = "NA";
|
||||
}
|
||||
else
|
||||
{
|
||||
var FrequencyReadOut = RegisterConverter.ConvertTo<UInt32>(meter.ReadRegister("SENSUSRADIO_FrequencyIndicator"));
|
||||
if (FrequencyReadOut != Frequency)
|
||||
{
|
||||
|
||||
setState($"Falsche Frequenz! soll {Frequency}MHz ist {FrequencyReadOut}MHz");
|
||||
meter.WriteLog(State);
|
||||
lblS04Color = progressError;
|
||||
return false;
|
||||
}
|
||||
lblS04Text = "EMEA \\" + Frequency;
|
||||
lblS04Color = progressDone;
|
||||
lblS05Color = progressWating;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
//TODO: metersize check for bigger dn sizes!!!
|
||||
//var MeterSizeReadOut = RegisterConverter.ConvertTo<UInt32>(meter.ReadRegister("GENESISFLOW_MeterSize"));
|
||||
//if (MeterSizeReadOut != MeterSize)
|
||||
@ -382,51 +554,44 @@ namespace CordonelAssemblyLine.Model
|
||||
// return false;
|
||||
//}
|
||||
|
||||
//meter.WriteRegister("METROLOGYASST_PressurePresent", 1,true);
|
||||
|
||||
var PressureReadOut = RegisterConverter.ConvertTo<bool>(meter.ReadRegister("METROLOGYASST_PressurePresent"));
|
||||
if (PressureReadOut)
|
||||
|
||||
if (PressureReadOut == PressurePresent)
|
||||
{
|
||||
|
||||
meter.WriteRegister("METROLOGYASST_PressureMeasure", 1, true);
|
||||
|
||||
|
||||
var pressure = RegisterConverter.ConvertTo<Int32>(meter.ReadRegister("METROLOGYASST_PressureMeasure"));
|
||||
setState($"Prüfe Drucksensor. {pressure}");
|
||||
|
||||
meter.WriteRegister("METROLOGYASST_PressureMeasure", 1, true);
|
||||
|
||||
|
||||
var pressureS = RegisterConverter.ConvertTo<Int32>(meter.ReadRegister("METROLOGYASST_PressureMeasure"));
|
||||
|
||||
|
||||
if (pressure - pressureS == 0)
|
||||
if (!PressurePresent)
|
||||
{
|
||||
PressureReadOut = false;
|
||||
|
||||
meter.WriteRegister("METROLOGYASST_PressurePresent", 0, true);
|
||||
lblS05Text = "Kein Drucksensor";
|
||||
}
|
||||
else
|
||||
{
|
||||
setState($"Pcb mit Drucksensor. Registerwert überschrieben");
|
||||
PressureReadOut = true;
|
||||
lblS05Text = "Drucksensor vorhanden";
|
||||
}
|
||||
lblS05Color = progressDone;
|
||||
lblS06Color = progressCurrent;
|
||||
|
||||
}
|
||||
if (PressureReadOut != PressurePresent)
|
||||
else
|
||||
{
|
||||
if (!PressurePresent)
|
||||
{
|
||||
setState($"Pcb mit Drucksensor. Laut Auftrag keine verbaut");
|
||||
lblS05Text = "Drucksensor vorhanden!";
|
||||
meter.WriteLog(State);
|
||||
}
|
||||
else
|
||||
{
|
||||
setState($"Pcb ohne Drucksensor. Laut Auftrag soll eine verbaut werden");
|
||||
lblS05Text = "ohne Drucksensor!";
|
||||
meter.WriteLog(State);
|
||||
}
|
||||
//todo raus
|
||||
return false;
|
||||
lblS05Color = progressError;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
foreach (var item in checkAppsIdVersion)
|
||||
{
|
||||
|
||||
@ -437,20 +602,22 @@ namespace CordonelAssemblyLine.Model
|
||||
{
|
||||
setState($"Falsche FW, bitte Updaten AppId:{item.Key} sollte {item.Value} haben, hat aber {MeterFWApp.Version}");
|
||||
meter.WriteLog(State);
|
||||
lblS06Color = progressError;
|
||||
return false;
|
||||
}
|
||||
|
||||
lblS06Text = MeterFWApp.StrVersion;
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
setState($"Fehler beim auslesen der FW");
|
||||
meter.WriteLog(State);
|
||||
lblS06Text = State;
|
||||
lblS06Color = progressError;
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
lblS06Color = progressDone;
|
||||
lblS07Color = progressCurrent;
|
||||
|
||||
try
|
||||
{
|
||||
@ -464,8 +631,10 @@ namespace CordonelAssemblyLine.Model
|
||||
var storeRet = meter.ReadRegister("METROLOGYASST_StoreConfiguration");
|
||||
if (meter.PcbId != "18440026" && meter.PcbId != "193300058" && meter.PcbId != "194800276" && meter.PcbId != "201420255" && !storeRet.All(a => a.Equals(0)))
|
||||
{
|
||||
lblS07Text = "Filesystem corrupt";
|
||||
setState($"Filesystem corrupt");
|
||||
meter.WriteLog(State);
|
||||
lblS07Color = progressError;
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -474,9 +643,12 @@ namespace CordonelAssemblyLine.Model
|
||||
{
|
||||
setState($"Fehler beim überprüfen des Filesystems");
|
||||
meter.WriteLog(State);
|
||||
lblS07Color = progressError;
|
||||
lblS07Text = State;
|
||||
return false;
|
||||
}
|
||||
|
||||
lblS07Color = progressDone;
|
||||
lblS07Text = "Filesystem i.O";
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -519,8 +691,32 @@ namespace CordonelAssemblyLine.Model
|
||||
var c = (System.Windows.Media.Brush)converter.ConvertFromString("Aquamarine");
|
||||
c.Freeze();
|
||||
ResultColor = c;
|
||||
ProgressBar.Where(n => n.Name == "Init").First().State = Ui.ProductionControls.Enums.ImgStatus.Success;
|
||||
ProgressBar.Where(n => n.Name == "Scan").First().State = Ui.ProductionControls.Enums.ImgStatus.InProgress;
|
||||
|
||||
lblS01Text = "-";
|
||||
lblS02Text = "-";
|
||||
lblS03Text = "-";
|
||||
lblS04Text = "-";
|
||||
lblS05Text = "-";
|
||||
lblS06Text = "-";
|
||||
lblS07Text = "-";
|
||||
lblS08Text = "-";
|
||||
lblS09Text = "-";
|
||||
lblS10Text = "-";
|
||||
lblS11Text = "-";
|
||||
lblS01Color = progressWating;
|
||||
lblS02Color = progressWating;
|
||||
lblS03Color = progressWating;
|
||||
lblS04Color = progressWating;
|
||||
lblS05Color = progressWating;
|
||||
lblS06Color = progressWating;
|
||||
lblS07Color = progressWating;
|
||||
lblS08Color = progressWating;
|
||||
lblS09Color = progressWating;
|
||||
lblS10Color = progressWating;
|
||||
lblS11Color = progressWating;
|
||||
|
||||
|
||||
|
||||
break;
|
||||
case PickingStateMachine.WaitForScanning:
|
||||
Scanner = $"Offen {ScannerPort}";
|
||||
@ -533,9 +729,9 @@ namespace CordonelAssemblyLine.Model
|
||||
|
||||
|
||||
sm = PickingStateMachine.WaitForDetect;
|
||||
ProgressBar.Where(n => n.Name == "Scan").First().State = Ui.ProductionControls.Enums.ImgStatus.Success;
|
||||
ProgressBar.Where(n => n.Name == "Connect").First().State = Ui.ProductionControls.Enums.ImgStatus.InProgress;
|
||||
|
||||
lblS01Text = Order;
|
||||
lblS01Color = progressDone;
|
||||
lblS02Color = progressWating;
|
||||
}
|
||||
|
||||
break;
|
||||
@ -563,13 +759,16 @@ namespace CordonelAssemblyLine.Model
|
||||
setState($"Pcb gefunden {PcbId}");
|
||||
Log($"New PcbID detected {PcbId}");
|
||||
sm = PickingStateMachine.GetOrderDetails;
|
||||
ProgressBar.Where(n => n.Name == "Connect").First().State = Ui.ProductionControls.Enums.ImgStatus.Success;
|
||||
ProgressBar.Where(n => n.Name == "Order data").First().State = Ui.ProductionControls.Enums.ImgStatus.InProgress;
|
||||
|
||||
lblS02Text = PcbId;
|
||||
lblS02Color = progressDone;
|
||||
lblS03Color = progressWating;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
Slot = $"Keine Konnektivität EP {SlotNr}";
|
||||
lblS02Text = Slot;
|
||||
Log($"No Meter found");
|
||||
|
||||
}
|
||||
@ -588,13 +787,21 @@ namespace CordonelAssemblyLine.Model
|
||||
setState($"Lade Auftragsdaten {Order}");
|
||||
var retCode = 0;
|
||||
var str = LocalWebRequest.GetRequestWithError($"{ServiceUrls.GenesisFinalCheckServiceUrl()}GetOrderOverview?ProductionOrderNumber={Order}&CheckPcbId={PcbId}", out retCode, 35000);
|
||||
if (str.Contains("The request is invalid"))
|
||||
{
|
||||
Result = "Auftrag nicht gefunden";
|
||||
lblS03Text = Result;
|
||||
lblS03Color = progressError;
|
||||
sm = PickingStateMachine.MeterError;
|
||||
break;
|
||||
}
|
||||
if (retCode == 417)
|
||||
{
|
||||
sm = PickingStateMachine.MeterError;
|
||||
Result = "Keine Radio Parameter";
|
||||
lblS03Text = Result;
|
||||
UpdateLogText(Result, true);
|
||||
ProgressBar.Where(n => n.Name == "Compare Result").First().State = Ui.ProductionControls.Enums.ImgStatus.Error;
|
||||
ProgressBar.Where(n => n.Name == "Order data").First().State = Ui.ProductionControls.Enums.ImgStatus.Error;
|
||||
lblS03Color = progressError;
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -604,18 +811,22 @@ namespace CordonelAssemblyLine.Model
|
||||
if (OrderOverview.OrderOverViewCordonel.Count == OrderOverview.OrderOverViewCordonel.AssignedPicking)
|
||||
{
|
||||
Result = "Auftrag schon komplett";
|
||||
lblS03Text = Result;
|
||||
lblS03Color = progressError;
|
||||
UpdateLogText(Result, true);
|
||||
sm = PickingStateMachine.MeterError;
|
||||
ProgressBar.Where(n => n.Name == "Compare Result").First().State = Ui.ProductionControls.Enums.ImgStatus.Error;
|
||||
ProgressBar.Where(n => n.Name == "Order data").First().State = Ui.ProductionControls.Enums.ImgStatus.Error;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
setState($"Auftragsdaten geladen {Order}");
|
||||
|
||||
sm = PickingStateMachine.Compare;
|
||||
ProgressBar.Where(n => n.Name == "Order data").First().State = Ui.ProductionControls.Enums.ImgStatus.Success;
|
||||
ProgressBar.Where(n => n.Name == "Compare").First().State = Ui.ProductionControls.Enums.ImgStatus.InProgress;
|
||||
|
||||
|
||||
lblS03Text = $"Nr {OrderOverview.OrderOverViewCordonel.AssignedPicking + 1 } von {OrderOverview.OrderOverViewCordonel.Count}";
|
||||
lblS03Color = progressDone;
|
||||
lblS04Color = progressCurrent;
|
||||
|
||||
}
|
||||
}
|
||||
@ -626,40 +837,46 @@ namespace CordonelAssemblyLine.Model
|
||||
setState($"Vergleiche Auftragsdaten {Order} mit Pcb Eigenschaften");
|
||||
|
||||
var minDate = DateTime.Now;
|
||||
|
||||
|
||||
lblS09Color = progressCurrent;
|
||||
minDate = minDate.AddMonths(OrderOverview.OrderOverViewCordonel.Count < 5 ? -9 : -3);
|
||||
setState($"Register wurde am {OrderOverview.KitronProductionDate } hergestellt, für diesen Auftrag ist muss das Register vor {minDate} hergestellt worden sein");
|
||||
lblS09Text = $"{OrderOverview.KitronProductionDate}";
|
||||
if (Order == "3189174")
|
||||
{
|
||||
minDate = minDate.AddYears(-5);
|
||||
}
|
||||
if (OrderOverview.KitronProductionDate <= minDate)
|
||||
{
|
||||
setState($"Fehlgeschlagen Register ist zu alt! Bitte QS informieren. KitronProductionDate:{OrderOverview.KitronProductionDate }");
|
||||
|
||||
// sm = PickingStateMachine.MeterError;
|
||||
|
||||
sm = PickingStateMachine.MeterError;
|
||||
lblS09Color = progressError;
|
||||
var b = (System.Windows.Media.Brush)converter.ConvertFromString("#FFFF00");
|
||||
b.Freeze();
|
||||
ResultColor = b;
|
||||
|
||||
//break;
|
||||
break;
|
||||
|
||||
}
|
||||
|
||||
lblS09Color = progressDone;
|
||||
|
||||
if (Compare(OrderDetails.CheckAppsIdVersion, OrderDetails.FrequencyIndicator, OrderDetails.MeterSize, OrderDetails.PressurePresent))
|
||||
{
|
||||
//erfolg anzeigen und weiter
|
||||
ProgressBar.Where(n => n.Name == "Compare Result").First().State = Ui.ProductionControls.Enums.ImgStatus.Success;
|
||||
ProgressBar.Where(n => n.Name == "Compare").First().State = Ui.ProductionControls.Enums.ImgStatus.Success;
|
||||
|
||||
sm = PickingStateMachine.MeterDone;
|
||||
}
|
||||
else
|
||||
{
|
||||
sm = PickingStateMachine.MeterError;
|
||||
ProgressBar.Where(n => n.Name == "Compare Result").First().State = Ui.ProductionControls.Enums.ImgStatus.Error;
|
||||
ProgressBar.Where(n => n.Name == "Compare").First().State = Ui.ProductionControls.Enums.ImgStatus.Error;
|
||||
var b = (System.Windows.Media.Brush)converter.ConvertFromString("#FF8000");
|
||||
b.Freeze();
|
||||
ResultColor = b;
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
case PickingStateMachine.MeterError:
|
||||
OrderDetails = null;
|
||||
OrderOverview = null;
|
||||
@ -669,6 +886,7 @@ namespace CordonelAssemblyLine.Model
|
||||
sm = PickingStateMachine.StartCom;
|
||||
|
||||
break;
|
||||
|
||||
case PickingStateMachine.MeterDone:
|
||||
|
||||
|
||||
@ -694,6 +912,7 @@ namespace CordonelAssemblyLine.Model
|
||||
|
||||
if (barScanner.Input == "%Cordonel_SAP_100%")
|
||||
{
|
||||
barScanner = null;
|
||||
ProgressBar.Where(n => n.Name == "Scan Build").First().State = Ui.ProductionControls.Enums.ImgStatus.Success;
|
||||
var url = ServiceUrls.MeterProcessStateUrl();
|
||||
url = url + $"setSapState?PcbID={PcbId}&code=100&version=1";
|
||||
@ -736,6 +955,7 @@ namespace CordonelAssemblyLine.Model
|
||||
|
||||
if (barScanner.Input == "%Cordonel_SAP_101%")
|
||||
{
|
||||
barScanner = null;
|
||||
var url = ServiceUrls.MeterProcessStateUrl();
|
||||
url = url + $"setSapState?PcbID={PcbId}&code=101&version=1";
|
||||
try
|
||||
|
||||
@ -68,18 +68,46 @@
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS01Color}" Text="{Binding lblS01Text, UpdateSourceTrigger=PropertyChanged}" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="0" Grid.Column="0" Height="36" Grid.RowSpan="2" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS02Color}" Text="{Binding lblS02Text, UpdateSourceTrigger=PropertyChanged}" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="0" Grid.Column="1" Height="36" Grid.RowSpan="2" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS03Color}" Text="{Binding lblS03Text, UpdateSourceTrigger=PropertyChanged}" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="0" Grid.Column="2" Height="36" Grid.RowSpan="2" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS04Color}" Text="{Binding lblS04Text, UpdateSourceTrigger=PropertyChanged}" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="0" Grid.Column="3" Height="36" Grid.RowSpan="2" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS05Color}" Text="{Binding lblS05Text, UpdateSourceTrigger=PropertyChanged}" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="0" Grid.Column="4" Height="36" Grid.RowSpan="2" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS06Color}" Text="{Binding lblS06Text, UpdateSourceTrigger=PropertyChanged}" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="0" Grid.Column="5" Height="36" Grid.RowSpan="2" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS07Color}" Text="{Binding lblS07Text, UpdateSourceTrigger=PropertyChanged}" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="0" Grid.Column="6" Height="36" Grid.RowSpan="2" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS08Color}" Text="{Binding lblS08Text, UpdateSourceTrigger=PropertyChanged}" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="0" Grid.Column="7" Height="36" Grid.RowSpan="2" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS09Color}" Text="{Binding lblS09Text, UpdateSourceTrigger=PropertyChanged}" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="0" Grid.Column="8" Height="36" Grid.RowSpan="2" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS10Color}" Text="{Binding lblS10Text, UpdateSourceTrigger=PropertyChanged}" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="0" Grid.Column="9" Height="36" Grid.RowSpan="2" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS11Color}" Text="{Binding lblS11Text, UpdateSourceTrigger=PropertyChanged}" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="0" Grid.Column="10" Height="36" Grid.RowSpan="2" HorizontalAlignment="Left" FontSize="12" />
|
||||
<Border Background="{Binding lblS01Color}" Grid.Column="0" Grid.RowSpan="2" />
|
||||
<Border Background="{Binding lblS02Color}" Grid.Column="1" Grid.RowSpan="2" />
|
||||
<Border Background="{Binding lblS03Color}" Grid.Column="2" Grid.RowSpan="2" />
|
||||
<Border Background="{Binding lblS04Color}" Grid.Column="3" Grid.RowSpan="2" />
|
||||
<Border Background="{Binding lblS05Color}" Grid.Column="4" Grid.RowSpan="2" />
|
||||
<Border Background="{Binding lblS06Color}" Grid.Column="5" Grid.RowSpan="2" />
|
||||
<Border Background="{Binding lblS07Color}" Grid.Column="6" Grid.RowSpan="2" />
|
||||
<Border Background="{Binding lblS08Color}" Grid.Column="7" Grid.RowSpan="2" />
|
||||
<Border Background="{Binding lblS09Color}" Grid.Column="8" Grid.RowSpan="2" />
|
||||
<Border Background="{Binding lblS10Color}" Grid.Column="9" Grid.RowSpan="2" />
|
||||
<Border Background="{Binding lblS11Color}" Grid.Column="10" Grid.RowSpan="2" />
|
||||
|
||||
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS01Color}" Text="Auftrag Scan" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="0" Grid.Column="0" Height="36" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS02Color}" Text="Detektiere Pcb" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="0" Grid.Column="1" Height="36" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS03Color}" Text="Lade Autrag" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="0" Grid.Column="2" Height="36" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS04Color}" Text="Prüfe Region/ Frequenz" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="0" Grid.Column="3" Height="36" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS05Color}" Text="Prüfe Drucksensor" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="0" Grid.Column="4" Height="36" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS06Color}" Text="Prüfe FW Version" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="0" Grid.Column="5" Height="36" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS07Color}" Text="Prüfe Dateisystem" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="0" Grid.Column="6" Height="36" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS08Color}" Text="Battery fix" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="0" Grid.Column="7" Height="36" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS09Color}" Text="Produktions-datum" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="0" Grid.Column="8" Height="36" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS10Color}" Text="LUT Update" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="0" Grid.Column="9" Height="36" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS11Color}" Text="Montage bestätigen" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="0" Grid.Column="10" Height="36" HorizontalAlignment="Left" FontSize="12" />
|
||||
|
||||
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS01Color}" Text="{Binding lblS01Text}" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="1" Grid.Column="0" Height="36" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS02Color}" Text="{Binding lblS02Text}" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="1" Grid.Column="1" Height="36" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS03Color}" Text="{Binding lblS03Text}" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="1" Grid.Column="2" Height="36" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS04Color}" Text="{Binding lblS04Text}" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="1" Grid.Column="3" Height="36" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS05Color}" Text="{Binding lblS05Text}" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="1" Grid.Column="4" Height="36" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS06Color}" Text="{Binding lblS06Text}" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="1" Grid.Column="5" Height="36" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS07Color}" Text="{Binding lblS07Text}" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="1" Grid.Column="6" Height="36" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS08Color}" Text="{Binding lblS08Text}" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="1" Grid.Column="7" Height="36" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS09Color}" Text="{Binding lblS09Text}" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="1" Grid.Column="8" Height="36" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS10Color}" Text="{Binding lblS10Text}" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="1" Grid.Column="9" Height="36" HorizontalAlignment="Left" FontSize="12" />
|
||||
<TextBlock TextWrapping="WrapWithOverflow" Background="{Binding lblS11Color}" Text="{Binding lblS11Text}" Margin="1,1,0,0" VerticalAlignment="Top" Grid.Row="1" Grid.Column="10" Height="36" HorizontalAlignment="Left" FontSize="12" />
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</Grid>
|
||||
|
||||
@ -1 +1 @@
|
||||
1a3d4919c9c702245832d925951f2b7cb72fc333
|
||||
5ed75d99ee45ff67821090f1b3dbb001dd9e4fe3
|
||||
|
||||
@ -172,7 +172,7 @@ namespace Xylem.Common.Service.MeterProcessState.Controllers
|
||||
{
|
||||
if (HttpContext.Current.Request.Files[a.ToString()] is HttpPostedFile f)
|
||||
{
|
||||
|
||||
|
||||
listOfFiles.Add(new Tuple<string, byte[]>(f.FileName, GetFileBytes(f)));
|
||||
}
|
||||
}
|
||||
@ -256,31 +256,43 @@ namespace Xylem.Common.Service.MeterProcessState.Controllers
|
||||
{
|
||||
return await Task.Run(() =>
|
||||
{
|
||||
|
||||
|
||||
using (var dataacces = new SqlDataAccess(GlobalConfig.connectionString.Value))
|
||||
|
||||
using (var dataacces = new SqlDataAccess(GlobalConfig.connectionString.Value))
|
||||
{
|
||||
var sb = new StringBuilder();
|
||||
|
||||
sb.AppendLine($" SELECT [Id] ");
|
||||
sb.AppendLine($" ,lut.[FileID] ");
|
||||
sb.AppendLine($" ,[DataLength] ");
|
||||
sb.AppendLine($" ,[Version] ");
|
||||
sb.AppendLine($" ,[FileCrc] ");
|
||||
sb.AppendLine($" ,[MeterSize] ");
|
||||
sb.AppendLine($" ,[Region] ");
|
||||
sb.AppendLine($" ,[CurrentVerionForProd] ");
|
||||
sb.AppendLine($" ,files.[FileName] ");
|
||||
sb.AppendLine($" ,files.FileContent ");
|
||||
sb.AppendLine($" FROM [Auftrag].[dbo].[Cordonel_Lut] lut ");
|
||||
sb.AppendLine($" inner join [Auftrag].[dbo].[FileClusterStore] fileMaster on fileMaster.FileId = lut.[FileID] ");
|
||||
sb.AppendLine($" inner join [Auftrag].[dbo].[FileMapToCluster] map on fileMaster.FileIsDeleted = 0 and fileMaster.FileId = map.[FileMapToCluster_FileClusterId] ");
|
||||
sb.AppendLine($" inner join [Auftrag].[dbo].[File] files on files.FileId = map.[FileMapToCluster_FileId] ");
|
||||
sb.AppendLine($" where 1= 1 ");
|
||||
if (Metersize.HasValue)
|
||||
{
|
||||
var sb = new StringBuilder();
|
||||
|
||||
sb.AppendLine($" SELECT [Id] ");
|
||||
sb.AppendLine($" ,lut.[FileID] ");
|
||||
sb.AppendLine($" ,[DataLength] ");
|
||||
sb.AppendLine($" ,[Version] ");
|
||||
sb.AppendLine($" ,[FileCrc] ");
|
||||
sb.AppendLine($" ,[MeterSize] ");
|
||||
sb.AppendLine($" ,[Region] ");
|
||||
sb.AppendLine($" ,[CurrentVerionForProd] ");
|
||||
sb.AppendLine($" ,files.[FileName] ");
|
||||
sb.AppendLine($" ,files.FileContent ");
|
||||
sb.AppendLine($" FROM [Auftrag].[dbo].[Cordonel_Lut] lut ");
|
||||
sb.AppendLine($" inner join [Auftrag].[dbo].[FileClusterStore] fileMaster on fileMaster.FileId = lut.[FileID] ");
|
||||
sb.AppendLine($" inner join [Auftrag].[dbo].[FileMapToCluster] map on fileMaster.FileIsDeleted = 0 and fileMaster.FileId = map.[FileMapToCluster_FileClusterId] ");
|
||||
sb.AppendLine($" inner join [Auftrag].[dbo].[File] files on files.FileId = map.[FileMapToCluster_FileId] ");
|
||||
|
||||
|
||||
var retDT = dataacces.ExecuteQuery(sb.ToString());
|
||||
return Request.CreateResponse(HttpStatusCode.OK, retDT);
|
||||
sb.AppendLine($" and MeterSize= {Metersize.Value} ");
|
||||
}
|
||||
if (!string.IsNullOrEmpty(Region))
|
||||
{
|
||||
sb.AppendLine($" and Region ='{Region}' ");
|
||||
}
|
||||
if (ForProd.HasValue)
|
||||
{
|
||||
sb.AppendLine($" and CurrentVerionForProd ={(ForProd.Value? "1" : "0") } ");
|
||||
}
|
||||
|
||||
var retDT = dataacces.ExecuteQuery(sb.ToString());
|
||||
return Request.CreateResponse(HttpStatusCode.OK, retDT);
|
||||
}
|
||||
|
||||
|
||||
});
|
||||
|
||||
@ -572,15 +572,9 @@ namespace Service.MeterProcessState.Controllers
|
||||
|
||||
sb.AppendLine($" where CordonelCurrentFw_Deleted is null ");
|
||||
sb.AppendLine($" and CordonelCurrentFw_Frequency = {FrequencyIndicator} ");
|
||||
if (PressurePresent)
|
||||
{
|
||||
sb.AppendLine($" and CordonelCurrentFw_ForPressure = 1 ");
|
||||
}
|
||||
else
|
||||
{
|
||||
sb.AppendLine($" and CordonelCurrentFw_ForPressure = 0 ");
|
||||
}
|
||||
|
||||
|
||||
sb.AppendLine($" and CordonelCurrentFw_Metersize = {MeterSize} ");
|
||||
|
||||
|
||||
var checkAppsData = dataacces.ExecuteQuery(sb.ToString());
|
||||
|
||||
@ -709,7 +703,7 @@ namespace Service.MeterProcessState.Controllers
|
||||
|
||||
private static bool findMatchingTestResult(ref DateTime lastProdDate, string LengthString, string dnString, RadioTest radioTestResult)
|
||||
{
|
||||
var TestStepLoopCalibratesOk = radioTestResult.TestStepLoopCalibrate.Values.Where(w => w != null && w.ResultCalibration.ToLower() == "ok" && w.LengthCode.StartsWith($"DN{dnString}")).ToList();
|
||||
var TestStepLoopCalibratesOk = radioTestResult.TestStepLoopCalibrate.Values.Where(w => w != null && w.ResultCalibration != null && w.LengthCode != null && w.ResultCalibration.ToLower() == "ok" && w.LengthCode.StartsWith($"DN{dnString}")).ToList();
|
||||
|
||||
|
||||
|
||||
@ -717,7 +711,7 @@ namespace Service.MeterProcessState.Controllers
|
||||
//DN50-270
|
||||
|
||||
var a = TestStepLoopCalibratesOk.Where(w => w.ResultCalibration.ToLower() == "ok" && w.LengthCode.StartsWith($"DN{dnString}") && w.LengthCode.Contains($"-{LengthString}") && !w.LengthCode.Contains($"-{LengthString}o")).ToList();
|
||||
var ao = radioTestResult.TestStepLoopCalibrate.Values.Where(w => w != null && w.ResultCalibration.ToLower() == "ok" && w.LengthCode.StartsWith($"DN{dnString}") && w.LengthCode.Contains($"-{LengthString}o")).ToList();
|
||||
var ao = TestStepLoopCalibratesOk.Where(w => w != null && w.ResultCalibration.ToLower() == "ok" && w.LengthCode.StartsWith($"DN{dnString}") && w.LengthCode.Contains($"-{LengthString}o")).ToList();
|
||||
|
||||
|
||||
if (a.Any() && ao.Any())
|
||||
|
||||
Loading…
Reference in New Issue
Block a user