nuget bump and userSecrets tasks and query update for event
Allow multiple ids are present
This commit is contained in:
@ -15,7 +15,7 @@ public class PagesController : Controller
|
||||
|
||||
public PagesController(AppSettings appSettings, IMetrologyRepository metrologyRepository)
|
||||
{
|
||||
_AppSettings=appSettings;
|
||||
_AppSettings = appSettings;
|
||||
_MetrologyRepository = metrologyRepository;
|
||||
_IsTestDatabase = appSettings.ConnectionString.Contains("test", StringComparison.InvariantCultureIgnoreCase);
|
||||
}
|
||||
|
@ -27,15 +27,15 @@
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Dapper" Version="2.0.123" />
|
||||
<PackageReference Include="EntityFramework" Version="6.4.4" />
|
||||
<PackageReference Include="jQuery" Version="3.6.3" />
|
||||
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.Server" Version="7.0.3" />
|
||||
<PackageReference Include="jQuery" Version="3.6.4" />
|
||||
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.Server" Version="7.0.4" />
|
||||
<PackageReference Include="Microsoft.Extensions.Caching.Memory" Version="7.0.0" />
|
||||
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="7.0.0" />
|
||||
<PackageReference Include="Microsoft.Extensions.Configuration.UserSecrets" Version="7.0.0" />
|
||||
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="7.0.0" />
|
||||
<PackageReference Include="Microsoft.Extensions.Hosting.WindowsServices" Version="7.0.0" />
|
||||
<PackageReference Include="Microsoft.Extensions.Hosting" Version="7.0.1" />
|
||||
<PackageReference Include="Newtonsoft.Json" Version="13.0.2" />
|
||||
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
|
||||
<PackageReference Include="Serilog.AspNetCore.Ingestion" Version="1.0.0-dev-00032" />
|
||||
<PackageReference Include="Serilog.AspNetCore" Version="6.1.0" />
|
||||
<PackageReference Include="Serilog.Settings.Configuration" Version="3.4.0" />
|
||||
|
@ -116,9 +116,9 @@ public class InfinityQSRepository : IInfinityQSRepository
|
||||
InfinityQSBase[]? results = JsonSerializer.Deserialize<InfinityQSBase[]>(stringBuilder.ToString(), new JsonSerializerOptions { PropertyNameCaseInsensitive = true });
|
||||
if (results is null)
|
||||
throw new NullReferenceException(nameof(results));
|
||||
if (results.Select(l => l.SE_SGRP).Distinct().Count() != 1)
|
||||
throw new NotSupportedException("Multiple ids are present!");
|
||||
result = (from l in results orderby l.SE_TSNO, l.TD_TEST select l).First();
|
||||
// if (results.Select(l => l.SE_SGRP).Distinct().Count() != 1)
|
||||
// throw new NotSupportedException("Multiple ids are present!");
|
||||
result = (from l in results orderby l.SE_SGRP, l.SE_TSNO, l.TD_TEST select l).First();
|
||||
return result;
|
||||
}
|
||||
|
||||
@ -177,6 +177,39 @@ public class InfinityQSRepository : IInfinityQSRepository
|
||||
return result;
|
||||
}
|
||||
|
||||
string IInfinityQSRepository.GetCommandText(InfinityQSBase infinityQSBase)
|
||||
{
|
||||
StringBuilder result = new();
|
||||
if (string.IsNullOrEmpty(infinityQSBase.PR_NAME))
|
||||
throw new ArgumentException(nameof(infinityQSBase.PR_NAME));
|
||||
if (string.IsNullOrEmpty(infinityQSBase.PD_NAME))
|
||||
throw new ArgumentException(nameof(infinityQSBase.PD_NAME));
|
||||
if (infinityQSBase.SE_SGTM is null)
|
||||
throw new ArgumentException(nameof(infinityQSBase.SE_SGTM));
|
||||
_ = result
|
||||
.AppendLine(" select ")
|
||||
.AppendLine(" ev.f_evnt [ev_evnt], ")
|
||||
.AppendLine(" ev.f_sgtm [ev_sgtm], ")
|
||||
.AppendLine(" dateadd(HH, -7, (dateadd(SS, convert(bigint, ev.f_sgtm), '19700101'))) [ev_utc7], ")
|
||||
.AppendLine(" pr.f_name [pr_name], ")
|
||||
.AppendLine(" pd.f_name [pd_name], ")
|
||||
.AppendLine(" td.f_test [td_test], ")
|
||||
.AppendLine(" td.f_name [td_name], ")
|
||||
.AppendLine(" ev.f_name [ev_name] ")
|
||||
.AppendLine(" from [spcepiworld].[dbo].[evnt_inf] ev ")
|
||||
.AppendLine(" join [spcepiworld].[dbo].[prcs_dat] pr ")
|
||||
.AppendLine(" on ev.f_prcs = pr.f_prcs ")
|
||||
.AppendLine(" join [spcepiworld].[dbo].[part_dat] pd ")
|
||||
.AppendLine(" on ev.f_part = pd.f_part ")
|
||||
.AppendLine(" join [spcepiworld].[dbo].[test_dat] td ")
|
||||
.AppendLine(" on ev.f_test = td.f_test ")
|
||||
.Append(" where pr.f_name = '").Append(infinityQSBase.PR_NAME).AppendLine("' ")
|
||||
.Append(" and pd.f_name = '").Append(infinityQSBase.PD_NAME).AppendLine("' ")
|
||||
.Append(" and ev.f_sgtm = ").Append(infinityQSBase.SE_SGTM).AppendLine(" ")
|
||||
.AppendLine(" for json path ");
|
||||
return result.ToString();
|
||||
}
|
||||
|
||||
Result<InfinityQSEvent[]> IInfinityQSRepository.GetEvents(string subGroupId)
|
||||
{
|
||||
Result<InfinityQSEvent[]>? result;
|
||||
@ -196,7 +229,7 @@ public class InfinityQSRepository : IInfinityQSRepository
|
||||
results = Array.Empty<InfinityQSEvent>();
|
||||
else
|
||||
{
|
||||
string commandText = $"select * from [spcepiworld].[dbo].[evnt_inf] ev where ev.f_prcs = '{infinityQSBase.PR_NAME}' and ev.f_part = '{infinityQSBase.PD_NAME}' and ev.f_sgtm = {infinityQSBase.SE_SGTM} ";
|
||||
string commandText = infinityQSRepository.GetCommandText(infinityQSBase);
|
||||
StringBuilder stringBuilder = GetForJsonPath(_DBConnectionFactory, commandText);
|
||||
results = JsonSerializer.Deserialize<InfinityQSEvent[]>(stringBuilder.ToString(), new JsonSerializerOptions { PropertyNameCaseInsensitive = true });
|
||||
if (results is null)
|
||||
|
@ -26,7 +26,7 @@ public class InfinityQSV2Repository : IInfinityQSV2Repository
|
||||
{
|
||||
StringBuilder result = new();
|
||||
if (string.IsNullOrEmpty(subGroupId))
|
||||
throw new ArgumentException(nameof(subGroupId));
|
||||
throw new ArgumentException(null, nameof(subGroupId));
|
||||
_ = result
|
||||
.AppendLine(" select ")
|
||||
.AppendLine(" sd.f_sgrp sd_sgrp, ")
|
||||
@ -50,7 +50,7 @@ public class InfinityQSV2Repository : IInfinityQSV2Repository
|
||||
StringBuilder result = new();
|
||||
const string dateTimeFormat = "yyyy-MM-dd HH:mm:ss";
|
||||
if (!string.IsNullOrEmpty(dateTime) && (dateTime.Contains('-') || dateTime.Contains(' ') || dateTime.Contains(':')) && dateTime.Length != dateTimeFormat.Length)
|
||||
throw new ArgumentException(nameof(dateTime));
|
||||
throw new ArgumentException(null, nameof(dateTime));
|
||||
_ = result
|
||||
.AppendLine(" select ")
|
||||
.AppendLine(" se.f_sgrp se_sgrp, ")
|
||||
@ -117,9 +117,9 @@ public class InfinityQSV2Repository : IInfinityQSV2Repository
|
||||
if (collection is null)
|
||||
throw new NullReferenceException(nameof(collection));
|
||||
InfinityQSBaseV2[] results = InfinityQSBase.Convert(collection);
|
||||
if (results.Select(l => l.SubGroupId).Distinct().Count() != 1)
|
||||
throw new NotSupportedException("Multiple ids are present!");
|
||||
result = (from l in results orderby l.SiteNumber, l.VariableNumber select l).First();
|
||||
// if (results.Select(l => l.SubGroupId).Distinct().Count() != 1)
|
||||
// throw new NotSupportedException("Multiple ids are present!");
|
||||
result = (from l in results orderby l.SubGroupId, l.SiteNumber, l.VariableNumber select l).First();
|
||||
return result;
|
||||
}
|
||||
|
||||
@ -180,6 +180,39 @@ public class InfinityQSV2Repository : IInfinityQSV2Repository
|
||||
return result;
|
||||
}
|
||||
|
||||
string IInfinityQSV2Repository.GetCommandText(InfinityQSBaseV2 infinityQSBase)
|
||||
{
|
||||
StringBuilder result = new();
|
||||
if (string.IsNullOrEmpty(infinityQSBase.Process))
|
||||
throw new ArgumentException(nameof(infinityQSBase.Process));
|
||||
if (string.IsNullOrEmpty(infinityQSBase.Part))
|
||||
throw new ArgumentException(nameof(infinityQSBase.Part));
|
||||
if (infinityQSBase.SubGroupDateTime is null)
|
||||
throw new ArgumentException(nameof(infinityQSBase.SubGroupDateTime));
|
||||
_ = result
|
||||
.AppendLine(" select ")
|
||||
.AppendLine(" ev.f_evnt [ev_evnt], ")
|
||||
.AppendLine(" ev.f_sgtm [ev_sgtm], ")
|
||||
.AppendLine(" dateadd(HH, -7, (dateadd(SS, convert(bigint, ev.f_sgtm), '19700101'))) [ev_utc7], ")
|
||||
.AppendLine(" pr.f_name [pr_name], ")
|
||||
.AppendLine(" pd.f_name [pd_name], ")
|
||||
.AppendLine(" td.f_test [td_test], ")
|
||||
.AppendLine(" td.f_name [td_name], ")
|
||||
.AppendLine(" ev.f_name [ev_name] ")
|
||||
.AppendLine(" from [spcepiworld].[dbo].[evnt_inf] ev ")
|
||||
.AppendLine(" join [spcepiworld].[dbo].[prcs_dat] pr ")
|
||||
.AppendLine(" on ev.f_prcs = pr.f_prcs ")
|
||||
.AppendLine(" join [spcepiworld].[dbo].[part_dat] pd ")
|
||||
.AppendLine(" on ev.f_part = pd.f_part ")
|
||||
.AppendLine(" join [spcepiworld].[dbo].[test_dat] td ")
|
||||
.AppendLine(" on ev.f_test = td.f_test ")
|
||||
.Append(" where pr.f_name = '").Append(infinityQSBase.Process).AppendLine("' ")
|
||||
.Append(" and pd.f_name = '").Append(infinityQSBase.Part).AppendLine("' ")
|
||||
.Append(" and ev.f_sgtm = ").Append(infinityQSBase.SubGroupDateTime).AppendLine(" ")
|
||||
.AppendLine(" for json path ");
|
||||
return result.ToString();
|
||||
}
|
||||
|
||||
Result<InfinityQSEventV2[]> IInfinityQSV2Repository.GetEvents(string subGroupId)
|
||||
{
|
||||
Result<InfinityQSEventV2[]>? result;
|
||||
@ -199,7 +232,7 @@ public class InfinityQSV2Repository : IInfinityQSV2Repository
|
||||
collection = Array.Empty<InfinityQSEvent>();
|
||||
else
|
||||
{
|
||||
string commandText = $"select * from [spcepiworld].[dbo].[evnt_inf] ev where ev.f_prcs = '{infinityQSBase.Process}' and ev.f_part = '{infinityQSBase.Part}' and ev.f_sgtm = {infinityQSBase.SubGroupDateTime} ";
|
||||
string commandText = infinityQSV2Repository.GetCommandText(infinityQSBase);
|
||||
StringBuilder stringBuilder = GetForJsonPath(_DBConnectionFactory, commandText);
|
||||
collection = JsonSerializer.Deserialize<InfinityQSEvent[]>(stringBuilder.ToString(), new JsonSerializerOptions { PropertyNameCaseInsensitive = true });
|
||||
if (collection is null)
|
||||
|
Reference in New Issue
Block a user