2021-07-19 15:31:50 +05:00
|
|
|
|
using Microsoft.EntityFrameworkCore;
|
|
|
|
|
using System.ComponentModel.DataAnnotations;
|
|
|
|
|
using System.ComponentModel.DataAnnotations.Schema;
|
|
|
|
|
using System.Text.Json.Serialization;
|
|
|
|
|
|
|
|
|
|
namespace AsbCloudDb.Model
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
[Table("t_telemetry_analysis"), Comment("События на скважине")]
|
2021-09-09 12:31:12 +05:00
|
|
|
|
public class TelemetryAnalysis : IId
|
2021-07-19 15:31:50 +05:00
|
|
|
|
{
|
|
|
|
|
[Key]
|
|
|
|
|
[Column("id")]
|
|
|
|
|
public int Id { get; set; }
|
|
|
|
|
|
|
|
|
|
[Column("id_telemetry")]
|
|
|
|
|
public int IdTelemetry { get; set; }
|
|
|
|
|
|
|
|
|
|
[Column("id_operation")]
|
2021-07-21 16:49:24 +05:00
|
|
|
|
public int IdOperation { get; set; }
|
2021-07-19 15:31:50 +05:00
|
|
|
|
|
|
|
|
|
[JsonIgnore]
|
|
|
|
|
[ForeignKey(nameof(IdTelemetry))]
|
|
|
|
|
[InverseProperty(nameof(Model.Telemetry.Analysis))]
|
|
|
|
|
public virtual Telemetry Telemetry { get; set; }
|
|
|
|
|
|
|
|
|
|
[JsonIgnore]
|
|
|
|
|
[ForeignKey(nameof(IdOperation))]
|
2021-08-16 14:19:43 +05:00
|
|
|
|
[InverseProperty(nameof(Model.WellOperationCategory.Analysis))]
|
|
|
|
|
public virtual WellOperationCategory Operation { get; set; }
|
2021-07-19 15:31:50 +05:00
|
|
|
|
|
|
|
|
|
[Column("unix_date", TypeName = "bigint"), Comment("Unix timestamp для Linq запросов с вычислением дат")]
|
|
|
|
|
public long UnixDate { get; set; }
|
|
|
|
|
|
|
|
|
|
[Column("duration_sec"), Comment("Кол-во секунд после предыдущей операции")]
|
2021-07-21 17:57:59 +05:00
|
|
|
|
public int DurationSec { get; set; }
|
2021-07-19 15:31:50 +05:00
|
|
|
|
|
2021-07-20 09:36:40 +05:00
|
|
|
|
[Column("operation_start_depth"), Comment("Глубина, на которой началась операция")]
|
|
|
|
|
public double? OperationStartDepth { get; set; }
|
|
|
|
|
|
|
|
|
|
[Column("operation_end_depth"), Comment("Глубина, на которой закончилась операция")]
|
|
|
|
|
public double? OperationEndDepth { get; set; }
|
2021-07-19 15:31:50 +05:00
|
|
|
|
|
|
|
|
|
[Column("is_well_depth_increasing"), Comment("Глубина забоя увеличивается")]
|
|
|
|
|
public bool IsWellDepthIncreasing { get; set; }
|
|
|
|
|
|
|
|
|
|
[Column("is_well_depth_decreasing"), Comment("Глубина забоя не увеличивается")]
|
|
|
|
|
public bool IsWellDepthDecreasing { get; set; }
|
|
|
|
|
|
|
|
|
|
[Column("is_bit_position_increasing"), Comment("Долото спускается")]
|
|
|
|
|
public bool IsBitPositionIncreasing { get; set; }
|
|
|
|
|
|
|
|
|
|
[Column("is_bit_position_decreasing"), Comment("Долото поднимается")]
|
|
|
|
|
public bool IsBitPositionDecreasing { get; set; }
|
|
|
|
|
|
|
|
|
|
[Column("is_bit_posision_lt_20"), Comment("Положение долота меньше 20м")]
|
2021-07-21 17:57:59 +05:00
|
|
|
|
public bool IsBitPositionLt20 { get; set; }
|
2021-07-19 15:31:50 +05:00
|
|
|
|
|
|
|
|
|
[Column("is_block_posision_incresing"), Comment("Талевый блок спускается")]
|
|
|
|
|
public bool IsBlockPositionIncreasing { get; set; }
|
|
|
|
|
|
|
|
|
|
[Column("is_block_posision_decresing"), Comment("Талевый блок поднимается")]
|
|
|
|
|
public bool IsBlockPositionDecreasing { get; set; }
|
|
|
|
|
|
|
|
|
|
[Column("is_rotor_speed_lt_3"), Comment("Обороты ротора ниже 3")]
|
2021-09-30 17:10:12 +05:00
|
|
|
|
public bool IsRotorSpeedLt5 { get; set; }
|
2021-07-19 15:31:50 +05:00
|
|
|
|
|
|
|
|
|
[Column("is_rotor_speed_gt_3"), Comment("Обороты ротора выше 3")]
|
2021-09-30 17:10:12 +05:00
|
|
|
|
public bool IsRotorSpeedGt5 { get; set; }
|
2021-07-19 15:31:50 +05:00
|
|
|
|
|
|
|
|
|
[Column("is_pressure_lt_20"), Comment("Давление менее 20")]
|
|
|
|
|
public bool IsPressureLt20 { get; set; }
|
|
|
|
|
|
2022-01-05 17:50:45 +05:00
|
|
|
|
[Column("is_pressure_gt_20"), Comment("Давление более 20")]
|
2021-07-19 15:31:50 +05:00
|
|
|
|
public bool IsPressureGt20 { get; set; }
|
|
|
|
|
|
|
|
|
|
[Column("is_hook_weight_not_changes"), Comment("Вес на крюке не меняется")]
|
|
|
|
|
public bool IsHookWeightNotChanges { get; set; }
|
|
|
|
|
|
|
|
|
|
[Column("is_hook_weight_lt_3"), Comment("Вес на крюке менее 3т")]
|
|
|
|
|
public bool IsHookWeightLt3 { get; set; }
|
|
|
|
|
}
|
|
|
|
|
}
|