From 577b699663728db872789d8a927ec2a8b2210889 Mon Sep 17 00:00:00 2001 From: ngfrolov Date: Thu, 6 Apr 2023 17:27:31 +0500 Subject: [PATCH] Add ProcessMapReportDto.UsagePlan; Fix % (mult 100); --- .../Data/ProcessMap/ProcessMapReportDto.cs | 9 ++++++-- .../ProcessMapReportMakerService.cs | 4 ++-- .../ProcessMap/ProcessMapReportService.cs | 22 ++++++++++--------- 3 files changed, 21 insertions(+), 14 deletions(-) diff --git a/AsbCloudApp/Data/ProcessMap/ProcessMapReportDto.cs b/AsbCloudApp/Data/ProcessMap/ProcessMapReportDto.cs index e9192d2c..cc7f950a 100644 --- a/AsbCloudApp/Data/ProcessMap/ProcessMapReportDto.cs +++ b/AsbCloudApp/Data/ProcessMap/ProcessMapReportDto.cs @@ -82,9 +82,14 @@ namespace AsbCloudApp.Data.ProcessMap public ProcessMapReportParamsDto SpeedLimit { get; set; } = new(); /// - /// Процент использования системы АПД, % + /// Процент использования системы АПД план, % /// - public double Usage { get; set; } + public double UsagePlan { get; set; } + + /// + /// Процент использования системы АПД факт, % + /// + public double UsageFact { get; set; } /// /// Фактическая механическая скорость, м/ч diff --git a/AsbCloudInfrastructure/Services/ProcessMap/ProcessMapReportMakerService.cs b/AsbCloudInfrastructure/Services/ProcessMap/ProcessMapReportMakerService.cs index f4a1da24..aea0e8e6 100644 --- a/AsbCloudInfrastructure/Services/ProcessMap/ProcessMapReportMakerService.cs +++ b/AsbCloudInfrastructure/Services/ProcessMap/ProcessMapReportMakerService.cs @@ -129,10 +129,10 @@ namespace AsbCloudInfrastructure.Services.ProcessMap FillIntervalModeDataSpeed(sheet, modeData.SpeedLimit, columnSpeed, row); sheet.Cell(row, columnUsagePlan) - .SetVal(100); + .SetVal(modeData.UsagePlan); sheet.Cell(row, columnUsageFact) - .SetVal(modeData.Usage); + .SetVal(modeData.UsageFact); sheet.Cell(row, columnRop) .SetVal(modeData.Rop); diff --git a/AsbCloudInfrastructure/Services/ProcessMap/ProcessMapReportService.cs b/AsbCloudInfrastructure/Services/ProcessMap/ProcessMapReportService.cs index ef9da1c4..f0c69468 100644 --- a/AsbCloudInfrastructure/Services/ProcessMap/ProcessMapReportService.cs +++ b/AsbCloudInfrastructure/Services/ProcessMap/ProcessMapReportService.cs @@ -171,7 +171,8 @@ namespace AsbCloudInfrastructure.Services.ProcessMap SpeedLimit = telemetryStat.BlockSpeed.MakeParams(processMapByMode?.RopPlan), Rop = telemetryStat.Rop, - Usage = telemetryStat.UsageSaub, + UsagePlan = processMapByMode?.UsageSaub ?? telemetryStat.UsagePredictPlan, + UsageFact = telemetryStat.UsageSaub, }; return result; } @@ -300,7 +301,7 @@ namespace AsbCloudInfrastructure.Services.ProcessMap { result.SetpointFact = DivideValByDepth(spWSum); result.Limit = (getterLimitMax is not null) ? DivideValByDepth(limitMaxWSum) : null; - result.SetpointUsage = deltaDepthSum > 0d ? SpUsageDepth / spUsageTotal : null; + result.SetpointUsage = deltaDepthSum > 0d ? 100d * SpUsageDepth / spUsageTotal : null; } return result; @@ -327,13 +328,13 @@ namespace AsbCloudInfrastructure.Services.ProcessMap public double? Rop => hoursSum == 0d ? null : depthSum / hoursSum; private double depthWithSaub = 0d; - public double UsageSaub { get; private set; } - - public DateTime DateStart { get; private set; } - public float DeltaDepth { get; private set; } - public int IdMode { get; private set; } - public string ModeName { get; private set; } - public double MechDrillingHours { get; private set; } + public double UsageSaub { get; } + public double UsagePredictPlan { get; } + public DateTime DateStart { get; } + public float DeltaDepth { get; } + public int IdMode { get; } + public string ModeName { get; } + public double MechDrillingHours { get; } public TelemetryStat(Span telemetry) { @@ -354,7 +355,8 @@ namespace AsbCloudInfrastructure.Services.ProcessMap for (int i = 0; i < telemetry.Length; i++) UpdateStat(telemetry[i]); - UsageSaub = depthWithSaub / depthSum; + UsageSaub = 100d * depthWithSaub / depthSum; + UsagePredictPlan = IdMode != 0 ? 100d : 0d; } private void UpdateStat(TelemetryDataSaubStatDto current)