unpatch cache path by permanent solution

This commit is contained in:
Фролов 2021-10-04 15:54:58 +05:00
parent cc9896c062
commit e1457471c8

View File

@ -32,7 +32,7 @@ namespace AsbCloudInfrastructure.Services
=> GetWellByTelemetryUid(uid)?.Id;
public double GetTimezoneOffsetByTelemetryId(int idTelemetry) =>
cacheTelemetry.FirstOrDefault(t => t.Id == idTelemetry).Info?.TimeZoneOffsetTotalHours??0d;
cacheTelemetry.FirstOrDefault(t => t.Id == idTelemetry).Info?.TimeZoneOffsetTotalHours ?? 0d;
public void UpdateInfo(string uid, TelemetryInfoDto info)
{
@ -52,33 +52,15 @@ namespace AsbCloudInfrastructure.Services
private Well GetWellByTelemetryUid(string uid)
{
var tele = cacheTelemetry.FirstOrDefault(t => t.RemoteUid == uid, RefreshMode.IfResultEmpty);
var tele = cacheTelemetry.FirstOrDefault(t => t.RemoteUid == uid);
if (tele is null)
return null;
return cacheWells.FirstOrDefault(w => w?.IdTelemetry == tele.Id);
}
// TODO: fix cacheTable before uncomment next
//private Telemetry GetOrCreateTelemetryByUid(string uid)
// => cacheTelemetry.FirstOrDefault(t => t.RemoteUid == uid)
// ?? cacheTelemetry.Insert(new Telemetry { RemoteUid = uid, });
private Telemetry GetOrCreateTelemetryByUid(string uid)
{
var telemetry = cacheTelemetry.FirstOrDefault(t => t.RemoteUid == uid);
if (telemetry is not null)
return telemetry;
telemetry = db.Telemetries.OrderBy(t=>t.Info).FirstOrDefault(t => t.RemoteUid == uid);
if (telemetry is not null)
return telemetry;
var newTelemetryEntry = db.Telemetries.Add(new Telemetry { RemoteUid = uid });
db.SaveChanges();
cacheTelemetry.Refresh();
return newTelemetryEntry.Entity;
}
=> cacheTelemetry.GetOrCreate(t => t.RemoteUid == uid, () => new Telemetry { RemoteUid = uid });
public IEnumerable<(string Key, int[] Ids)> GetRedundentRemoteUids()
{