forked from ddrilling/AsbCloudServer
Replace TelemetryService.GetOrDefaultIdTelemetryByIdWell() by GetOrDefaultTelemetryByIdWell()
This commit is contained in:
parent
1ca72d50d1
commit
43847298d8
@ -54,7 +54,7 @@ namespace AsbCloudApp.Services
|
||||
/// </summary>
|
||||
/// <param name="idWell"></param>
|
||||
/// <returns></returns>
|
||||
int? GetOrDefaultIdTelemetryByIdWell(int idWell);
|
||||
TelemetryBaseDto? GetOrDefaultTelemetryByIdWell(int idWell);
|
||||
|
||||
/// <summary>
|
||||
/// получить диапазон дат за которые есть данные
|
||||
|
@ -55,12 +55,12 @@ namespace AsbCloudInfrastructure.Repository
|
||||
|
||||
private async Task<TelemetryWirelineRunOutDto?> GetOrDefaultAsync(WellDto well, CancellationToken token)
|
||||
{
|
||||
var idTelemetry = telemetryService.GetOrDefaultIdTelemetryByIdWell(well.Id);
|
||||
if (idTelemetry is null)
|
||||
var telemetry = telemetryService.GetOrDefaultTelemetryByIdWell(well.Id);
|
||||
if (telemetry is null)
|
||||
return null;
|
||||
|
||||
var entity = await context.TelemetryWirelineRunOut
|
||||
.Where(x => x.IdTelemetry == idTelemetry)
|
||||
.Where(x => x.IdTelemetry == telemetry.Id)
|
||||
.AsNoTracking()
|
||||
.FirstOrDefaultAsync(token)
|
||||
.ConfigureAwait(false);
|
||||
|
@ -138,7 +138,7 @@ namespace AsbCloudInfrastructure.Services.ProcessMap
|
||||
dto.DateStart = GetInterpolatedDate(firstIntervalOperation, depthInterval.min);
|
||||
dto.IdWell = firstIntervalOperation.IdWell;
|
||||
dto.IdWellSectionType = firstIntervalOperation.IdWellSectionType;
|
||||
dto.WellSectionTypeName = firstIntervalOperation.WellSectionTypeName;
|
||||
dto.WellSectionTypeName = firstIntervalOperation.WellSectionTypeName ?? string.Empty;
|
||||
dto.MechDrillingHours = CalcHours(depthInterval, intervalOperations);
|
||||
}
|
||||
|
||||
|
@ -116,10 +116,10 @@ namespace AsbCloudInfrastructure.Services
|
||||
|
||||
public DatesRangeDto? GetDatesRangeOrDefault(int idWell)
|
||||
{
|
||||
var idTelemetry = telemetryService.GetOrDefaultIdTelemetryByIdWell(idWell);
|
||||
if (idTelemetry is null)
|
||||
var telemetry = telemetryService.GetOrDefaultTelemetryByIdWell(idWell);
|
||||
if (telemetry is null)
|
||||
return null;
|
||||
var range = telemetryService.GetDatesRange((int)idTelemetry);
|
||||
var range = telemetryService.GetDatesRange(telemetry.Id);
|
||||
return range;
|
||||
}
|
||||
|
||||
|
@ -37,17 +37,17 @@ namespace AsbCloudInfrastructure.Services.SAUB
|
||||
Take = request.Take ?? 32,
|
||||
};
|
||||
|
||||
var idTelemetry = telemetryService.GetOrDefaultIdTelemetryByIdWell(request.IdWell);
|
||||
if (idTelemetry is null)
|
||||
var telemetry = telemetryService.GetOrDefaultTelemetryByIdWell(request.IdWell);
|
||||
if (telemetry is null)
|
||||
return result;
|
||||
|
||||
var allEvents = await memoryCache.GetOrCreateBasicAsync(db.Set<TelemetryEvent>(), token);
|
||||
var events = allEvents.Where(e => e.IdTelemetry == idTelemetry);
|
||||
var events = allEvents.Where(e => e.IdTelemetry == telemetry.Id);
|
||||
|
||||
if (!events.Any())
|
||||
return result;
|
||||
|
||||
var query = db.TelemetryMessages.Where(m => m.IdTelemetry == idTelemetry)
|
||||
var query = db.TelemetryMessages.Where(m => m.IdTelemetry == telemetry.Id)
|
||||
.OrderBy(m => m.DateTime).AsNoTracking();
|
||||
|
||||
if (request.Categoryids?.Any() == true || !string.IsNullOrEmpty(request.SearchString))
|
||||
@ -68,7 +68,7 @@ namespace AsbCloudInfrastructure.Services.SAUB
|
||||
|
||||
query = query.OrderByDescending(m => m.DateTime);
|
||||
|
||||
var timezone = telemetryService.GetTimezone(idTelemetry ?? default);
|
||||
var timezone = telemetryService.GetTimezone(telemetry.Id);
|
||||
|
||||
if (request.Begin is not null)
|
||||
{
|
||||
@ -96,7 +96,7 @@ namespace AsbCloudInfrastructure.Services.SAUB
|
||||
return result;
|
||||
|
||||
var allUsers = await memoryCache.GetOrCreateBasicAsync(db.Set<TelemetryUser>(), token);
|
||||
var users = allUsers.Where(u => u.IdTelemetry == idTelemetry);
|
||||
var users = allUsers.Where(u => u.IdTelemetry == telemetry.Id);
|
||||
|
||||
var eventsDict = events.ToDictionary(x=>x.IdEvent, x => x);
|
||||
var usersDict = users.ToDictionary(x => x.IdUser, x => x);
|
||||
|
@ -93,17 +93,17 @@ namespace AsbCloudInfrastructure.Services.SAUB
|
||||
DateTime dateBegin = default, double intervalSec = 600d,
|
||||
int approxPointsCount = 1024, CancellationToken token = default)
|
||||
{
|
||||
var idTelemetry = telemetryService.GetOrDefaultIdTelemetryByIdWell(idWell) ?? -1;
|
||||
if (idTelemetry == -1)
|
||||
var telemetry = telemetryService.GetOrDefaultTelemetryByIdWell(idWell);
|
||||
if (telemetry is null)
|
||||
return null;
|
||||
|
||||
var timezone = telemetryService.GetTimezone(idTelemetry);
|
||||
var timezone = telemetryService.GetTimezone(telemetry.Id);
|
||||
|
||||
var filterByDateEnd = dateBegin != default;
|
||||
DateTimeOffset dateBeginUtc;
|
||||
if (dateBegin == default)
|
||||
{
|
||||
dateBeginUtc = telemetryService.GetLastTelemetryDate(idTelemetry)
|
||||
dateBeginUtc = telemetryService.GetLastTelemetryDate(telemetry.Id)
|
||||
.ToUtcDateTimeOffset(timezone.Hours);
|
||||
if (dateBeginUtc != default)
|
||||
dateBeginUtc = dateBeginUtc.AddSeconds(-intervalSec);
|
||||
@ -116,7 +116,7 @@ namespace AsbCloudInfrastructure.Services.SAUB
|
||||
if (dateBeginUtc == default)
|
||||
dateBeginUtc = DateTime.UtcNow.AddSeconds(-intervalSec);
|
||||
|
||||
var cacheData = telemetryDataCache.GetOrDefault(idTelemetry, dateBeginUtc.ToRemoteDateTime(timezone.Hours), intervalSec, approxPointsCount);
|
||||
var cacheData = telemetryDataCache.GetOrDefault(telemetry.Id, dateBeginUtc.ToRemoteDateTime(timezone.Hours), intervalSec, approxPointsCount);
|
||||
if (cacheData is not null)
|
||||
return cacheData;
|
||||
|
||||
@ -124,7 +124,7 @@ namespace AsbCloudInfrastructure.Services.SAUB
|
||||
var dbSet = db.Set<TEntity>();
|
||||
|
||||
var query = dbSet
|
||||
.Where(d => d.IdTelemetry == idTelemetry
|
||||
.Where(d => d.IdTelemetry == telemetry.Id
|
||||
&& d.DateTime >= dateBeginUtc);
|
||||
|
||||
if (filterByDateEnd)
|
||||
|
@ -5,6 +5,7 @@ using Mapster;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
@ -97,6 +98,12 @@ namespace AsbCloudInfrastructure.Services.SAUB
|
||||
: src.WellDepth;
|
||||
return dto;
|
||||
}
|
||||
|
||||
public Stream GetZippedCsv(int idWell, DateTime beginDate, DateTime endDate)
|
||||
{
|
||||
var telemetry = telemetryService.GetOrDefaultTelemetryByIdWell(idWell);
|
||||
return null;
|
||||
}
|
||||
}
|
||||
#nullable disable
|
||||
}
|
||||
|
@ -138,11 +138,11 @@ namespace AsbCloudInfrastructure.Services.SAUB
|
||||
throw new Exception($"Telemetry id: {idTelemetry} can't find timezone.");
|
||||
}
|
||||
|
||||
public int? GetOrDefaultIdTelemetryByIdWell(int idWell)
|
||||
public TelemetryBaseDto? GetOrDefaultTelemetryByIdWell(int idWell)
|
||||
{
|
||||
var telemetry = GetTelemetryCache()
|
||||
.FirstOrDefault(t => t.Well?.Id == idWell);
|
||||
return telemetry?.Id;
|
||||
return telemetry?.Adapt<TelemetryBaseDto>();
|
||||
}
|
||||
|
||||
private Well? GetWellByTelemetryUid(string uid)
|
||||
|
@ -72,10 +72,10 @@ namespace AsbCloudWebApi.Controllers.WITS
|
||||
[FromServices] IWitsRecordRepository<TDto> witsRecordRepository,
|
||||
CancellationToken token)
|
||||
{
|
||||
var idTelemetry = telemetryService.GetOrDefaultIdTelemetryByIdWell(idWell);
|
||||
if (idTelemetry is null)
|
||||
var telemetry = telemetryService.GetOrDefaultTelemetryByIdWell(idWell);
|
||||
if (telemetry is null)
|
||||
return NoContent();
|
||||
var dtos = await witsRecordRepository.GetLastAsync((int)idTelemetry, token);
|
||||
var dtos = await witsRecordRepository.GetLastAsync(telemetry.Id, token);
|
||||
return Ok(dtos);
|
||||
}
|
||||
|
||||
@ -96,10 +96,10 @@ namespace AsbCloudWebApi.Controllers.WITS
|
||||
[FromServices] IWitsRecordRepository<TDto> witsRecordRepository,
|
||||
CancellationToken token)
|
||||
{
|
||||
var idTelemetry = telemetryService.GetOrDefaultIdTelemetryByIdWell(idWell);
|
||||
if (idTelemetry is null)
|
||||
var telemetry = telemetryService.GetOrDefaultTelemetryByIdWell(idWell);
|
||||
if (telemetry is null)
|
||||
return NoContent();
|
||||
var dtos = await witsRecordRepository.GetAsync((int)idTelemetry, begin, end, token);
|
||||
var dtos = await witsRecordRepository.GetAsync(telemetry.Id, begin, end, token);
|
||||
return Ok(dtos);
|
||||
}
|
||||
|
||||
@ -118,10 +118,10 @@ namespace AsbCloudWebApi.Controllers.WITS
|
||||
[FromServices] IWitsRecordRepository<TDto> witsRecordRepository,
|
||||
CancellationToken token)
|
||||
{
|
||||
var idTelemetry = telemetryService.GetOrDefaultIdTelemetryByIdWell(idWell);
|
||||
if (idTelemetry is null)
|
||||
var telemetry = telemetryService.GetOrDefaultTelemetryByIdWell(idWell);
|
||||
if (telemetry is null)
|
||||
return NoContent();
|
||||
var dtos = await witsRecordRepository.GetStatAsync((int)idTelemetry, token);
|
||||
var dtos = await witsRecordRepository.GetStatAsync(telemetry.Id, token);
|
||||
return Ok(dtos);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user