forked from ddrilling/AsbCloudServer
Added t_daily_report table and related migrations
This commit is contained in:
parent
92371eaaf5
commit
76ee379785
5807
AsbCloudDb/Migrations/20220420124920_Add_DailyReport_Table.Designer.cs
generated
Normal file
5807
AsbCloudDb/Migrations/20220420124920_Add_DailyReport_Table.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,40 @@
|
|||||||
|
using System;
|
||||||
|
using AsbCloudDb.Model;
|
||||||
|
using Microsoft.EntityFrameworkCore.Migrations;
|
||||||
|
|
||||||
|
#nullable disable
|
||||||
|
|
||||||
|
namespace AsbCloudDb.Migrations
|
||||||
|
{
|
||||||
|
public partial class Add_DailyReport_Table : Migration
|
||||||
|
{
|
||||||
|
protected override void Up(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.CreateTable(
|
||||||
|
name: "t_daily_report",
|
||||||
|
columns: table => new
|
||||||
|
{
|
||||||
|
id_well = table.Column<int>(type: "integer", nullable: false, comment: "ID скважины"),
|
||||||
|
start_date = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false, comment: "Дата отчёта"),
|
||||||
|
info = table.Column<DailyReportInfo>(type: "jsonb", nullable: true, comment: "Список параметров для отчёта")
|
||||||
|
},
|
||||||
|
constraints: table =>
|
||||||
|
{
|
||||||
|
table.PrimaryKey("t_id_well_date_start_pk", x => new { x.id_well, x.start_date });
|
||||||
|
table.ForeignKey(
|
||||||
|
name: "FK_t_daily_report_t_well_id_well",
|
||||||
|
column: x => x.id_well,
|
||||||
|
principalTable: "t_well",
|
||||||
|
principalColumn: "id",
|
||||||
|
onDelete: ReferentialAction.Cascade);
|
||||||
|
},
|
||||||
|
comment: "Ежедневные отчёты");
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override void Down(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.DropTable(
|
||||||
|
name: "t_daily_report");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -137,6 +137,31 @@ namespace AsbCloudDb.Migrations
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("AsbCloudDb.Model.DailyReport", b =>
|
||||||
|
{
|
||||||
|
b.Property<int>("IdWell")
|
||||||
|
.HasColumnType("integer")
|
||||||
|
.HasColumnName("id_well")
|
||||||
|
.HasComment("ID скважины");
|
||||||
|
|
||||||
|
b.Property<DateTimeOffset>("StartDate")
|
||||||
|
.HasColumnType("timestamp with time zone")
|
||||||
|
.HasColumnName("start_date")
|
||||||
|
.HasComment("Дата отчёта");
|
||||||
|
|
||||||
|
b.Property<DailyReportInfo>("Info")
|
||||||
|
.HasColumnType("jsonb")
|
||||||
|
.HasColumnName("info")
|
||||||
|
.HasComment("Список параметров для отчёта");
|
||||||
|
|
||||||
|
b.HasKey("IdWell", "StartDate")
|
||||||
|
.HasName("t_id_well_date_start_pk");
|
||||||
|
|
||||||
|
b.ToTable("t_daily_report");
|
||||||
|
|
||||||
|
b.HasComment("Ежедневные отчёты");
|
||||||
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("AsbCloudDb.Model.Deposit", b =>
|
modelBuilder.Entity("AsbCloudDb.Model.Deposit", b =>
|
||||||
{
|
{
|
||||||
b.Property<int>("Id")
|
b.Property<int>("Id")
|
||||||
@ -5142,6 +5167,17 @@ namespace AsbCloudDb.Migrations
|
|||||||
b.Navigation("CompanyType");
|
b.Navigation("CompanyType");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("AsbCloudDb.Model.DailyReport", b =>
|
||||||
|
{
|
||||||
|
b.HasOne("AsbCloudDb.Model.Well", "Well")
|
||||||
|
.WithMany()
|
||||||
|
.HasForeignKey("IdWell")
|
||||||
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
|
.IsRequired();
|
||||||
|
|
||||||
|
b.Navigation("Well");
|
||||||
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("AsbCloudDb.Model.DrillFlowChart", b =>
|
modelBuilder.Entity("AsbCloudDb.Model.DrillFlowChart", b =>
|
||||||
{
|
{
|
||||||
b.HasOne("AsbCloudDb.Model.Well", "Well")
|
b.HasOne("AsbCloudDb.Model.Well", "Well")
|
||||||
|
@ -43,6 +43,7 @@ namespace AsbCloudDb.Model
|
|||||||
public virtual DbSet<RelationUserRolePermission> RelationUserRolePermissions { get; set; }
|
public virtual DbSet<RelationUserRolePermission> RelationUserRolePermissions { get; set; }
|
||||||
public virtual DbSet<RelationUserRoleUserRole> RelationUserRoleUserRoles { get; set; }
|
public virtual DbSet<RelationUserRoleUserRole> RelationUserRoleUserRoles { get; set; }
|
||||||
public virtual DbSet<RelationUserDrillingProgramPart> RelationDrillingProgramPartUsers { get; set; }
|
public virtual DbSet<RelationUserDrillingProgramPart> RelationDrillingProgramPartUsers { get; set; }
|
||||||
|
public virtual DbSet<DailyReport> DailyReport { get; set; }
|
||||||
|
|
||||||
// WITS
|
// WITS
|
||||||
public DbSet<WITS.Record1> Record1 { get; set; }
|
public DbSet<WITS.Record1> Record1 { get; set; }
|
||||||
@ -299,6 +300,12 @@ namespace AsbCloudDb.Model
|
|||||||
.IsRequired();
|
.IsRequired();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity<DailyReport>(entity =>
|
||||||
|
{
|
||||||
|
entity.HasKey(e => new { e.IdWell, e.StartDate })
|
||||||
|
.HasName("t_id_well_date_start_pk");
|
||||||
|
});
|
||||||
|
|
||||||
FillData(modelBuilder);
|
FillData(modelBuilder);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
28
AsbCloudDb/Model/DailyReport.cs
Normal file
28
AsbCloudDb/Model/DailyReport.cs
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using Microsoft.EntityFrameworkCore;
|
||||||
|
using System.ComponentModel.DataAnnotations;
|
||||||
|
using System.ComponentModel.DataAnnotations.Schema;
|
||||||
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
|
namespace AsbCloudDb.Model
|
||||||
|
{
|
||||||
|
[Table("t_daily_report"), Comment("Ежедневные отчёты")]
|
||||||
|
public class DailyReport
|
||||||
|
{
|
||||||
|
[Column("id_well"), Comment("ID скважины")]
|
||||||
|
public int IdWell { get; set; }
|
||||||
|
|
||||||
|
[Column("start_date", TypeName = "timestamp with time zone"), Comment("Дата отчёта")]
|
||||||
|
public DateTimeOffset StartDate { get; set; }
|
||||||
|
|
||||||
|
[Column("info", TypeName = "jsonb"), Comment("Список параметров для отчёта")]
|
||||||
|
public DailyReportInfo Info { get; set; }
|
||||||
|
|
||||||
|
[ForeignKey(nameof(IdWell))]
|
||||||
|
public virtual Well Well { get; set; }
|
||||||
|
}
|
||||||
|
}
|
216
AsbCloudDb/Model/DailyReportInfo.cs
Normal file
216
AsbCloudDb/Model/DailyReportInfo.cs
Normal file
@ -0,0 +1,216 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace AsbCloudDb.Model
|
||||||
|
{
|
||||||
|
public class DailyReportInfo
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
///название скважины
|
||||||
|
/// <summary>
|
||||||
|
public string WellName { get; set; }
|
||||||
|
|
||||||
|
///<summary>
|
||||||
|
///название куста
|
||||||
|
///<summary>
|
||||||
|
public string ClusterName { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///заказчик
|
||||||
|
///<summary>
|
||||||
|
public string Customer { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///подрядчик
|
||||||
|
///<summary>
|
||||||
|
public string Contractor { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///дата рапорта
|
||||||
|
///<summary>
|
||||||
|
public DateTime ReportDate { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///глубина забоя на дату начала интервала
|
||||||
|
///<summary>
|
||||||
|
public double? WellDepthIntervalStartDate { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///глубина забоя на дату окончания интервала
|
||||||
|
///<summary>
|
||||||
|
public double? WellDepthIntervalFinishDate { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///Глубина забоя по стволу на окончание отчетного периода
|
||||||
|
///<summary>
|
||||||
|
public double? BottomholeDepth { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///Глубина забоя по вертикали на дату окончания отчетного периода
|
||||||
|
///<summary>
|
||||||
|
public double? VerticalDepth { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///Зeнитный угол на дату окончания отчетного периода
|
||||||
|
///<summary>
|
||||||
|
public double? ZenithAngle { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///Азимутальный угол на дату окончания отчетного периода
|
||||||
|
///<summary>
|
||||||
|
public double? AzimuthAngle { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///ФИО бурильщиков
|
||||||
|
///<summary>
|
||||||
|
public string FirstDriller { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///ФИО бурильщиков
|
||||||
|
///<summary>
|
||||||
|
public string SecondDriller { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///Время работы АПД
|
||||||
|
///<summary>
|
||||||
|
public double? WorkTimeSAUB { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///Время работы спин мастер
|
||||||
|
///<summary>
|
||||||
|
public double? WorkTimeSpinMaster { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///Время работы торк мастер
|
||||||
|
///<summary>
|
||||||
|
public double? WorkTimeTorkMaster { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///количество метров пробуренных с включенным АПД
|
||||||
|
///<summary>
|
||||||
|
public double? PenetrationSAUB { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///количество метров пробуренных с включенным Спин мастер
|
||||||
|
///<summary>
|
||||||
|
public double? PenetrationSpinMaster { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///количество метров пробуренных с включенным торк мастер
|
||||||
|
///<summary>
|
||||||
|
public double? PenetrationTorkMaster { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///Количество запусков МСЕ
|
||||||
|
///<summary>
|
||||||
|
public int CountLaunchesMSE { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///КНБК описание
|
||||||
|
///<summary>
|
||||||
|
public string BHADescription { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///Нормативное время на одну операцию по подготовке ствола скважины к наращиванию
|
||||||
|
///<summary>
|
||||||
|
public double? StandardTimeBarrelPreparation { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///Нормативное время на одну операцию по наращиванию
|
||||||
|
///<summary>
|
||||||
|
public double? StandardTimeExtension { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///Фактическое время проработок при подготовке ствола скважины к наращиванию.
|
||||||
|
///<summary>
|
||||||
|
public double? ActualTimeBarrelPreparation { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///Фактическое время наращиваний
|
||||||
|
///<summary>
|
||||||
|
public double? ActualTimeExtension { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///Режимы бурения в роторе
|
||||||
|
///<summary>
|
||||||
|
public IEnumerable<string> RotorDrillingModes { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///режимы бурения в слайде
|
||||||
|
///<summary>
|
||||||
|
public IEnumerable<string> SlideDrillingModes { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///Количество метров пробуренных в роторе за отчетный период
|
||||||
|
///<summary>
|
||||||
|
public double? PenetrationInRotor { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///Количество часов бурения в роторе за отчетный период
|
||||||
|
///<summary>
|
||||||
|
public double? NumberDrillingHours { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///средний диф перепад в роторе за отчетный период
|
||||||
|
///<summary>
|
||||||
|
public double? AVGDiffDropRotor { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///количество метров пробуренных в слайде за отчетный период
|
||||||
|
///<summary>
|
||||||
|
public double? PenetrationInSlide { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///время бурения в роторе за отчетный период
|
||||||
|
///<summary>
|
||||||
|
public double? DrillingTimeInRotor { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///средний диф перепад в слайде за отчетный период
|
||||||
|
///<summary>
|
||||||
|
public double? AVGDiffPressureSlide { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///Плановая МСП за секцию
|
||||||
|
///<summary>
|
||||||
|
public double? SectionROPPlan { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///Общее время бурения за секцию
|
||||||
|
///<summary>
|
||||||
|
public double? SectionDrillingTimeTotal { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///Общая проходка за секцию
|
||||||
|
///<summary>
|
||||||
|
public double? SectionPenetrationTotal { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///Количество наращиваний за отчетный период
|
||||||
|
///<summary>
|
||||||
|
public int ExtensionsCount { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///Отклонение относительно ГГД
|
||||||
|
///<summary>
|
||||||
|
public double? DeviationFromTVD { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///указываются все причины, которые влияют на снижение МСП.
|
||||||
|
///<summary>
|
||||||
|
public string DeclinesReasonsROP { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///ФИО Мастера буровой
|
||||||
|
///<summary>
|
||||||
|
public string DrillingMaster { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///ФИО супервайзера
|
||||||
|
///<summary>
|
||||||
|
public string Supervisor { get; set; }
|
||||||
|
}
|
||||||
|
}
|
@ -42,6 +42,7 @@ namespace AsbCloudDb.Model
|
|||||||
DbSet<DrillingProgramPart> DrillingProgramParts { get; set; }
|
DbSet<DrillingProgramPart> DrillingProgramParts { get; set; }
|
||||||
DbSet<RelationUserDrillingProgramPart> RelationDrillingProgramPartUsers { get; set; }
|
DbSet<RelationUserDrillingProgramPart> RelationDrillingProgramPartUsers { get; set; }
|
||||||
DbSet<RelationCompanyWell> RelationCompaniesWells { get; set; }
|
DbSet<RelationCompanyWell> RelationCompaniesWells { get; set; }
|
||||||
|
DbSet<DailyReport> DailyReport { get; set; }
|
||||||
|
|
||||||
int SaveChanges();
|
int SaveChanges();
|
||||||
int SaveChanges(bool acceptAllChangesOnSuccess);
|
int SaveChanges(bool acceptAllChangesOnSuccess);
|
||||||
|
@ -32,6 +32,7 @@ namespace AsbCloudWebApi.Controllers
|
|||||||
var dto = new DailyReportDto
|
var dto = new DailyReportDto
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
|
||||||
var result = new List<DailyReportDto> { dto };
|
var result = new List<DailyReportDto> { dto };
|
||||||
return Ok(result);
|
return Ok(result);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user