clear alarms has now all 6 groups
This commit is contained in:
parent
18af494ebf
commit
51de88f1aa
@ -821,7 +821,7 @@ namespace CordonelAssemblyLine.Model
|
||||
meter.ReLogin();
|
||||
}
|
||||
meter.SetProcessState(DisplayCodes.PickingTested);
|
||||
var url = $"{ServiceUrls.MeterProcessStateUrl()}SetPickingState?PcbID={meter.PcbId}&FertigungsauftragsNr={_order}";
|
||||
var url = $"{ServiceUrls.MeterProcessStateUrl()}SetPickingState?PcbID={meter.PcbId}&FertigungsauftragsNr={_order}&successful=1";
|
||||
var retString = LocalWebRequest.PostRequestAsyncAndGetContent(url);
|
||||
|
||||
if (bool.TryParse(retString, out var result))
|
||||
|
||||
@ -2114,7 +2114,10 @@ namespace Xylem.Common.Hardware.WaterMeter.Genesis.GenesisCore
|
||||
{
|
||||
WriteRegister("SENSUSRADIO_PersistenceGroup5", new Byte[] { 0x00, 0xff, 0x00, 0xff });
|
||||
}
|
||||
|
||||
if (GetRegistersDic().Any(a => a.Key.RegisterName == "PersistenceGroup6"))
|
||||
{
|
||||
WriteRegister("SENSUSRADIO_PersistenceGroup6", new Byte[] { 0x00, 0xff, 0x00, 0xff });
|
||||
}
|
||||
WriteRegister("CUSTOMER_AlarmEnableMask", beforeCancelAlarmEnableMask);
|
||||
WriteRegister("CUSTOMER_AlarmBroadcastMask", beforeCancelAlarmBroadcastMask);
|
||||
}
|
||||
|
||||
@ -1 +1 @@
|
||||
89102b0142e574de38a9f47d370f3334e5e6c268
|
||||
b03dfbada453427a2bb1275645a5f1b525f29900
|
||||
|
||||
@ -833,7 +833,7 @@ namespace Xylem.Common.Service.MeterProcessState.Controllers
|
||||
var startInex = St.IndexOf("\"StartDT\":\"") + "\"StartDT\":\"".Length;
|
||||
var datestring = St.Substring(startInex, "29.07.2022 06:47:27".Length);
|
||||
|
||||
lastProdDate = DateTime.ParseExact(datestring, "dd.MM.yyyy hh:mm:ss", CultureInfo.CreateSpecificCulture("de-DE"));
|
||||
lastProdDate = DateTime.ParseExact(datestring, "dd.MM.yyyy HH:mm:ss", CultureInfo.CreateSpecificCulture("de-DE"));
|
||||
|
||||
}
|
||||
|
||||
|
||||
@ -1,12 +1,20 @@
|
||||
using Oracle.ManagedDataAccess.Client;
|
||||
using LaaPackages.Features.Cordonel.Models;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using Oracle.ManagedDataAccess.Client;
|
||||
using Service.MeterProcessState;
|
||||
using Service.MeterProcessState.Data;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Data.Entity.Core.Common.CommandTrees.ExpressionBuilder;
|
||||
using System.Globalization;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web.Helpers;
|
||||
using System.Web.Http;
|
||||
using Xylem.Common.Hardware.WaterMeter.Genesis.Registers.Json;
|
||||
using Xylem.Common.Logic.ServiceCore;
|
||||
|
||||
|
||||
@ -121,7 +129,105 @@ namespace Xylem.Common.Service.MeterProcessState.Controllers
|
||||
return Request.CreateResponse(HttpStatusCode.InternalServerError, ex.ToString() + "<br >" + ex.InnerException.ToString());
|
||||
}
|
||||
}
|
||||
[Route("SyncKitronData")]
|
||||
public async Task<HttpResponseMessage> SyncKitronData()
|
||||
{
|
||||
StringBuilder query = new StringBuilder();
|
||||
query.AppendLine("SELECT TOP (1) ID, Jobname, ActionDate, DoneDate, LastID, DataCount FROM KitronSync where DoneDate is null order by ID ");
|
||||
using (var dataAccess = new SqlDataAccess(GlobalConfig.connectionString.Value))
|
||||
{
|
||||
var dt = dataAccess.ExecuteQuery(query.ToString());
|
||||
foreach (DataRow item in dt.Rows)
|
||||
{
|
||||
var LastID = (int)item["LastID"];
|
||||
|
||||
var DataCount = (int)item["DataCount"];
|
||||
var UpdateTillLasID = LastID + DataCount;
|
||||
var kitronFinals = dataAccess.ExecuteQuery($" sELECT * FROM OPENQUERY (MyOraDB, ' SELECT DS_ID,ID_PCB,ID_TEST,JSON FROM DELTACHEF.GENESIS_PCBFUNCTIONALTEST_PD WHERE DS_ID >= {LastID + 1} and DS_ID <= {LastID+ 1 + DataCount} order by DS_ID asc ');");
|
||||
foreach (DataRow kitronItem in kitronFinals.Rows)
|
||||
{
|
||||
try
|
||||
{
|
||||
var DS_ID = (double)kitronItem["DS_ID"];
|
||||
var ID_PCB = kitronItem["ID_PCB"].ToString();
|
||||
var ID_TEST = (double)kitronItem["ID_TEST"];
|
||||
var JSON = kitronItem["JSON"].ToString();
|
||||
var oo = JObject.Parse(JSON);
|
||||
UpdateTillLasID = (int)DS_ID;
|
||||
var TestResultPass = false;
|
||||
var IrDALogonSkeleton = "";
|
||||
var FWVersion = "";
|
||||
var MaterialNumber = "";
|
||||
var StartDT = DateTime.MinValue;
|
||||
foreach (var oItem in oo.Children().Values())
|
||||
{
|
||||
foreach (JProperty ChildValues in oItem.Children())
|
||||
{
|
||||
switch (ChildValues.Name)
|
||||
{
|
||||
case "TestResult":
|
||||
TestResultPass = (ChildValues.Value.ToString().ToUpper() == "PASS");
|
||||
break;
|
||||
case "IrDA Logon Skeleton":
|
||||
IrDALogonSkeleton = ChildValues.Value.ToString();
|
||||
break;
|
||||
case "FW Version":
|
||||
FWVersion = ChildValues.Value.ToString();
|
||||
break;
|
||||
case "MaterialNumber":
|
||||
MaterialNumber = ChildValues.Value.ToString();
|
||||
break;
|
||||
case "StartDT":
|
||||
DateTime.TryParseExact(ChildValues.Value.ToString(), "dd.MM.yyyy HH:mm:ss", CultureInfo.InvariantCulture, DateTimeStyles.AssumeLocal, out StartDT);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
if (TestResultPass)
|
||||
{
|
||||
int matr = -1;
|
||||
string remark = "";
|
||||
if (!int.TryParse(MaterialNumber, out matr))
|
||||
{
|
||||
matr = -1;
|
||||
remark = MaterialNumber;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
dataAccess.ExecuteQuery($"" +
|
||||
$" IF not EXISTS (SELECT 1 FROM dbo.[Cordonel_KitronData] WHERE KitronDSId = {DS_ID}) " +
|
||||
$" Begin" +
|
||||
$" INSERT INTO [dbo].[Cordonel_KitronData] ([PcbId] ,[KitronDSId] ,[Skeleton] ,[FW] ,[MaterialNumber] ,[ProdDate], [Remark]) " +
|
||||
$" VALUES ( {ID_PCB},{DS_ID}, '{IrDALogonSkeleton}','{FWVersion}', {matr} , '{StartDT.ToString("yyyyMMdd HH:mm:ss")}', '{remark}')" +
|
||||
$" end");
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
throw;
|
||||
}
|
||||
}
|
||||
dataAccess.ExecuteQuery($"Update [dbo].KitronSync set LastID = {UpdateTillLasID} ");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
return Request.CreateResponse(HttpStatusCode.OK, await Task.Run(() => { return true; }));
|
||||
}
|
||||
[Route("GetProddate")]
|
||||
public async Task<HttpResponseMessage> GetProddate(string Seriennumer = "")
|
||||
{
|
||||
@ -145,7 +251,7 @@ namespace Xylem.Common.Service.MeterProcessState.Controllers
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// create connection
|
||||
@ -173,7 +279,7 @@ namespace Xylem.Common.Service.MeterProcessState.Controllers
|
||||
var St = ((string)reader["JSON"]);
|
||||
var startInex = St.IndexOf("\"StartDT\":\"") + "\"StartDT\":\"".Length;
|
||||
var datestring = St.Substring(startInex, "29.07.2022 06:47:27".Length);
|
||||
DateTime.ParseExact(datestring, "dd.MM.yyyy hh:mm:ss", CultureInfo.InvariantCulture);
|
||||
DateTime.ParseExact(datestring, "dd.MM.yyyy HH:mm:ss", CultureInfo.InvariantCulture);
|
||||
|
||||
|
||||
|
||||
|
||||
@ -115,7 +115,7 @@ namespace Xylem.Common.Service.MeterProcessState.Controllers
|
||||
}
|
||||
else
|
||||
{
|
||||
retC.kitronDate = DateTime.ParseExact(datestring, "dd.MM.yyyy hh:mm:ss", CultureInfo.InvariantCulture);
|
||||
retC.kitronDate = DateTime.ParseExact(datestring, "dd.MM.yyyy HH:mm:ss", CultureInfo.InvariantCulture);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
|
||||
<NameOfLastUsedPublishProfile>E:\REPO\lab\la_operations\laa_production\Common\Service\MeterProcessState\Properties\PublishProfiles\IISProfile.pubxml</NameOfLastUsedPublishProfile>
|
||||
<NameOfLastUsedPublishProfile>E:\REPO\lab\la_operations\laa_production\Common\Service\MeterProcessState\Properties\PublishProfiles\a.pubxml</NameOfLastUsedPublishProfile>
|
||||
<UseIISExpress>true</UseIISExpress>
|
||||
<Use64BitIISExpress />
|
||||
<IISExpressSSLPort />
|
||||
|
||||
@ -303,7 +303,7 @@ namespace Xylem.Common.Ui.GenesisToolBox
|
||||
|
||||
MeterPwdDb _pwdContainer = new MeterPwdDb();
|
||||
var ret = MeterPwdHandlerDb.RequestPwdFileFromDb(_currentGenesis.GetPcbId(), out _pwdContainer);
|
||||
|
||||
//
|
||||
|
||||
if (_currentGenesis.Login(_pwdContainer.Skeleton))
|
||||
{
|
||||
|
||||
Loading…
Reference in New Issue
Block a user