diff --git a/MP.MONO.Data/DbModels/CodEventModel.cs b/MP.MONO.Data/DbModels/CodEventModel.cs index 37ea469..5bd6360 100644 --- a/MP.MONO.Data/DbModels/CodEventModel.cs +++ b/MP.MONO.Data/DbModels/CodEventModel.cs @@ -1,10 +1,5 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel.DataAnnotations; +using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; -using System.Linq; -using System.Text; -using System.Threading.Tasks; // // This is here so CodeMaid doesn't reorganize this document diff --git a/MP.MONO.Data/DbModels/CodStatusModel.cs b/MP.MONO.Data/DbModels/CodStatusModel.cs new file mode 100644 index 0000000..c72e1cd --- /dev/null +++ b/MP.MONO.Data/DbModels/CodStatusModel.cs @@ -0,0 +1,44 @@ +using System.ComponentModel.DataAnnotations; +using System.ComponentModel.DataAnnotations.Schema; + + +// +// This is here so CodeMaid doesn't reorganize this document +// +namespace MP.MONO.Data.DbModels +{ + /// + /// Tabella Codifica Stati + /// + [Table("CodStatus")] + public class CodStatusModel + { + #region Public Properties + + /// + /// UID + /// + [Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)] + public int CodStatusId { get; set; } + + /// + /// Descrizione Stato + /// + [MaxLength(250)] + public string Description { get; set; } = ""; + + /// + /// Classe css associata + /// + [MaxLength(50)] + public string CssClass { get; set; } = ""; + + /// + /// Gruppo di classificazione + /// + [MaxLength(50)] + public string Group { get; set; } = ""; + + #endregion Public Properties + } +} diff --git a/MP.MONO.Data/DbModels/DataLogModel.cs b/MP.MONO.Data/DbModels/DataLogModel.cs index 22001fe..6a9291f 100644 --- a/MP.MONO.Data/DbModels/DataLogModel.cs +++ b/MP.MONO.Data/DbModels/DataLogModel.cs @@ -1,10 +1,6 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel.DataAnnotations; +using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; -using System.Linq; -using System.Text; -using System.Threading.Tasks; + // // This is here so CodeMaid doesn't reorganize this document @@ -26,7 +22,7 @@ namespace MP.MONO.Data.DbModels /// /// DataOra evento registrato /// - public DateTime DtEvent { get; set; } = DateTime.Now; + public DateTime DtRif { get; set; } = DateTime.Now; /// /// Tipologia di Flusso dati (per poter salvare "ultimo di ogni flusso" come "current status") diff --git a/MP.MONO.Data/DbModels/DataStAgModel.cs b/MP.MONO.Data/DbModels/DataStAgModel.cs index 6335b58..c334614 100644 --- a/MP.MONO.Data/DbModels/DataStAgModel.cs +++ b/MP.MONO.Data/DbModels/DataStAgModel.cs @@ -1,11 +1,10 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel.DataAnnotations; +using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; -using System.Linq; -using System.Text; -using System.Threading.Tasks; + +// +// This is here so CodeMaid doesn't reorganize this document +// namespace MP.MONO.Data.DbModels { /// @@ -23,7 +22,7 @@ namespace MP.MONO.Data.DbModels /// /// DataOra riferimento /// - public DateTime DtEvent { get; set; } = DateTime.Now; + public DateTime DtRif { get; set; } = DateTime.Now; /// /// Tipologia di Flusso dati (per poter salvare "ultimo di ogni flusso" come "current status") diff --git a/MP.MONO.Data/DbModels/EventLogModel.cs b/MP.MONO.Data/DbModels/EventLogModel.cs index 53059db..7eb5156 100644 --- a/MP.MONO.Data/DbModels/EventLogModel.cs +++ b/MP.MONO.Data/DbModels/EventLogModel.cs @@ -1,10 +1,5 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel.DataAnnotations; +using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; -using System.Linq; -using System.Text; -using System.Threading.Tasks; // // This is here so CodeMaid doesn't reorganize this document @@ -26,7 +21,7 @@ namespace MP.MONO.Data.DbModels /// /// DataOra evento registrato /// - public DateTime DtEvent { get; set; } = DateTime.Now; + public DateTime DtRif { get; set; } = DateTime.Now; /// /// Macchina cui è riferito il valore diff --git a/MP.MONO.Data/DbModels/LogStatusModel.cs b/MP.MONO.Data/DbModels/LogStatusModel.cs deleted file mode 100644 index b499176..0000000 --- a/MP.MONO.Data/DbModels/LogStatusModel.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace MP.MONO.Data.DbModels -{ - public class LogStatusModel - { - } -} diff --git a/MP.MONO.Data/DbModels/StatsStatusModel.cs b/MP.MONO.Data/DbModels/StatsStatusModel.cs deleted file mode 100644 index dc847f3..0000000 --- a/MP.MONO.Data/DbModels/StatsStatusModel.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace MP.MONO.Data.DbModels -{ - public class StatsStatusModel - { - } -} diff --git a/MP.MONO.Data/DbModels/StatusLogModel.cs b/MP.MONO.Data/DbModels/StatusLogModel.cs new file mode 100644 index 0000000..a0b89e5 --- /dev/null +++ b/MP.MONO.Data/DbModels/StatusLogModel.cs @@ -0,0 +1,59 @@ +using System.ComponentModel.DataAnnotations; +using System.ComponentModel.DataAnnotations.Schema; + +// +// This is here so CodeMaid doesn't reorganize this document +// +namespace MP.MONO.Data.DbModels +{ + /// + /// Tabella eventi Dati registrati (log storico esteso/puntuale) + /// + [Table("StatusLog")] + public class StatusLogModel + { + /// + /// UID + /// + [Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)] + public int EventLogId { get; set; } + + /// + /// DataOra evento registrato + /// + public DateTime DtRif { get; set; } = DateTime.Now; + + /// + /// Macchina cui è riferito il valore + /// + public int MachineId { get; set; } + + /// + /// Tipologia di evento registrato + /// + public int CodStatusId { get; set; } + + /// + /// Durata evento in minuti (decimali) + /// + public float Duration { get; set; } = 0; + + /// + /// Valore opzionale associato + /// + [MaxLength(250)] + public string ValStr { get; set; } = ""; + + /// + /// Navigazione oggetto Machine + /// + [ForeignKey("MachineId")] + public virtual MachineModel MachineNav { get; set; } = null!; + + /// + /// Navigazione oggetto Stato + /// + [ForeignKey("CodStatusId")] + public virtual CodStatusModel CodStatusNav { get; set; } = null!; + } +} diff --git a/MP.MONO.Data/DbModels/StatusStAgModel.cs b/MP.MONO.Data/DbModels/StatusStAgModel.cs new file mode 100644 index 0000000..1e514af --- /dev/null +++ b/MP.MONO.Data/DbModels/StatusStAgModel.cs @@ -0,0 +1,59 @@ +using System.ComponentModel.DataAnnotations; +using System.ComponentModel.DataAnnotations.Schema; + +// +// This is here so CodeMaid doesn't reorganize this document +// +namespace MP.MONO.Data.DbModels +{ + /// + /// Tabella Dati in formato Statistiche Aggregate + /// + [Table("StatusStAg")] + public class StatusStAgModel + { + /// + /// UID + /// + [Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)] + public int DataStAgId { get; set; } + + /// + /// DataOra riferimento + /// + public DateTime DtRif { get; set; } = DateTime.Now; + + /// + /// Macchina cui è riferito il valore + /// + public int MachineId { get; set; } + + /// + /// Tipologia di evento registrato + /// + public int CodStatusId { get; set; } + + /// + /// Durata evento in minuti (decimali) + /// + public float Duration { get; set; } = 0; + + /// + /// Valore opzionale associato + /// + [MaxLength(250)] + public string ValStr { get; set; } = ""; + + /// + /// Navigazione oggetto Machine + /// + [ForeignKey("MachineId")] + public virtual MachineModel MachineNav { get; set; } = null!; + + /// + /// Navigazione oggetto Stato + /// + [ForeignKey("CodStatusId")] + public virtual CodStatusModel CodStatusNav { get; set; } = null!; + } +} \ No newline at end of file diff --git a/MP.MONO.Data/MapoMonoContext.cs b/MP.MONO.Data/MapoMonoContext.cs index 20087c3..fd53f2a 100644 --- a/MP.MONO.Data/MapoMonoContext.cs +++ b/MP.MONO.Data/MapoMonoContext.cs @@ -76,6 +76,19 @@ namespace MP.MONO.Data /// DbSet elenco eventi registrati /// public virtual DbSet DbSetEventLog { get; set; } = null!; + /// + /// DbSet tipi di stati + /// + public virtual DbSet DbSetCodStatus { get; set; } = null!; + + /// + /// DbSet elenco stati registrati + /// + public virtual DbSet DbSetStatusLog { get; set; } = null!; + /// + /// DbSet elenco stati formato statistiche aggregate + /// + public virtual DbSet DbSetStatusStAg { get; set; } = null!; #if false diff --git a/MP.MONO.Data/Migrations/20220211111627_AddStatus.Designer.cs b/MP.MONO.Data/Migrations/20220211111627_AddStatus.Designer.cs new file mode 100644 index 0000000..887bb2c --- /dev/null +++ b/MP.MONO.Data/Migrations/20220211111627_AddStatus.Designer.cs @@ -0,0 +1,369 @@ +// +using System; +using MP.MONO.Data; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; + +#nullable disable + +namespace MP.MONO.Data.Migrations +{ + [DbContext(typeof(MapoMonoContext))] + [Migration("20220211111627_AddStatus")] + partial class AddStatus + { + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "6.0.2") + .HasAnnotation("Relational:MaxIdentifierLength", 64); + + modelBuilder.Entity("MP.MONO.Data.DbModels.AnKeyValModel", b => + { + b.Property("KeyName") + .HasMaxLength(50) + .HasColumnType("varchar(50)"); + + b.Property("Descript") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.Property("ValFloat") + .HasColumnType("int"); + + b.Property("ValInt") + .HasColumnType("int"); + + b.Property("ValString") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.HasKey("KeyName"); + + b.ToTable("AnKeyVal"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.CodEventModel", b => + { + b.Property("CodEventId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.Property("IsHw") + .HasColumnType("tinyint(1)"); + + b.HasKey("CodEventId"); + + b.ToTable("CodEvent"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.CodStatusModel", b => + { + b.Property("CodStatusId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("CssClass") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.Property("Group") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)"); + + b.HasKey("CodStatusId"); + + b.ToTable("CodStatus"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.ConfigModel", b => + { + b.Property("KeyName") + .HasMaxLength(50) + .HasColumnType("varchar(50)"); + + b.Property("Note") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("varchar(500)"); + + b.Property("Val") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.Property("ValStd") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.HasKey("KeyName"); + + b.ToTable("Config"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.DataLogModel", b => + { + b.Property("DataLogId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("DtRif") + .HasColumnType("datetime(6)"); + + b.Property("FluxType") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.Property("MachineId") + .HasColumnType("int"); + + b.Property("ValNum") + .HasColumnType("double"); + + b.Property("ValStr") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.HasKey("DataLogId"); + + b.HasIndex("MachineId"); + + b.ToTable("DataLog"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.DataStAgModel", b => + { + b.Property("DataStAgId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("DtRif") + .HasColumnType("datetime(6)"); + + b.Property("FluxType") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.Property("MachineId") + .HasColumnType("int"); + + b.Property("NumRec") + .HasColumnType("double"); + + b.Property("ValNumAvg") + .HasColumnType("double"); + + b.Property("ValNumMax") + .HasColumnType("double"); + + b.Property("ValNumMin") + .HasColumnType("double"); + + b.Property("ValStr") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.HasKey("DataStAgId"); + + b.HasIndex("MachineId"); + + b.ToTable("DataStAg"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.EventLogModel", b => + { + b.Property("EventLogId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("CodEventId") + .HasColumnType("int"); + + b.Property("DtRif") + .HasColumnType("datetime(6)"); + + b.Property("MachineId") + .HasColumnType("int"); + + b.Property("ValStr") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.HasKey("EventLogId"); + + b.HasIndex("CodEventId"); + + b.HasIndex("MachineId"); + + b.ToTable("EventLog"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.MachineModel", b => + { + b.Property("MachineId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("BuildYear") + .HasColumnType("int"); + + b.Property("Code") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.Property("Model") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.Property("Serial") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.HasKey("MachineId"); + + b.ToTable("Machine"); + + b.HasData( + new + { + MachineId = 1, + BuildYear = 2022, + Code = "", + Description = "Default SIM Machine", + Model = "Egalware SIM", + Name = "EGW-SIM-Machine", + Serial = "SN-0000-0000-0000" + }); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.StatusLogModel", b => + { + b.Property("EventLogId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("CodStatusId") + .HasColumnType("int"); + + b.Property("DtRif") + .HasColumnType("datetime(6)"); + + b.Property("Duration") + .HasColumnType("float"); + + b.Property("MachineId") + .HasColumnType("int"); + + b.Property("ValStr") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.HasKey("EventLogId"); + + b.HasIndex("CodStatusId"); + + b.HasIndex("MachineId"); + + b.ToTable("StatusLog"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.DataLogModel", b => + { + b.HasOne("MP.MONO.Data.DbModels.MachineModel", "MachineNav") + .WithMany() + .HasForeignKey("MachineId") + .OnDelete(DeleteBehavior.Restrict) + .IsRequired(); + + b.Navigation("MachineNav"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.DataStAgModel", b => + { + b.HasOne("MP.MONO.Data.DbModels.MachineModel", "MachineNav") + .WithMany() + .HasForeignKey("MachineId") + .OnDelete(DeleteBehavior.Restrict) + .IsRequired(); + + b.Navigation("MachineNav"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.EventLogModel", b => + { + b.HasOne("MP.MONO.Data.DbModels.CodEventModel", "CodEventNav") + .WithMany() + .HasForeignKey("CodEventId") + .OnDelete(DeleteBehavior.Restrict) + .IsRequired(); + + b.HasOne("MP.MONO.Data.DbModels.MachineModel", "MachineNav") + .WithMany() + .HasForeignKey("MachineId") + .OnDelete(DeleteBehavior.Restrict) + .IsRequired(); + + b.Navigation("CodEventNav"); + + b.Navigation("MachineNav"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.StatusLogModel", b => + { + b.HasOne("MP.MONO.Data.DbModels.CodStatusModel", "CodStatusNav") + .WithMany() + .HasForeignKey("CodStatusId") + .OnDelete(DeleteBehavior.Restrict) + .IsRequired(); + + b.HasOne("MP.MONO.Data.DbModels.MachineModel", "MachineNav") + .WithMany() + .HasForeignKey("MachineId") + .OnDelete(DeleteBehavior.Restrict) + .IsRequired(); + + b.Navigation("CodStatusNav"); + + b.Navigation("MachineNav"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/MP.MONO.Data/Migrations/20220211111627_AddStatus.cs b/MP.MONO.Data/Migrations/20220211111627_AddStatus.cs new file mode 100644 index 0000000..068b8e1 --- /dev/null +++ b/MP.MONO.Data/Migrations/20220211111627_AddStatus.cs @@ -0,0 +1,113 @@ +using System; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace MP.MONO.Data.Migrations +{ + public partial class AddStatus : Migration + { + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.RenameColumn( + name: "DtEvent", + table: "EventLog", + newName: "DtRif"); + + migrationBuilder.RenameColumn( + name: "DtEvent", + table: "DataStAg", + newName: "DtRif"); + + migrationBuilder.RenameColumn( + name: "DtEvent", + table: "DataLog", + newName: "DtRif"); + + migrationBuilder.CreateTable( + name: "CodStatus", + columns: table => new + { + CodStatusId = table.Column(type: "int", nullable: false) + .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), + Description = table.Column(type: "varchar(250)", maxLength: 250, nullable: false) + .Annotation("MySql:CharSet", "utf8mb4"), + CssClass = table.Column(type: "varchar(50)", maxLength: 50, nullable: false) + .Annotation("MySql:CharSet", "utf8mb4"), + Group = table.Column(type: "varchar(50)", maxLength: 50, nullable: false) + .Annotation("MySql:CharSet", "utf8mb4") + }, + constraints: table => + { + table.PrimaryKey("PK_CodStatus", x => x.CodStatusId); + }) + .Annotation("MySql:CharSet", "utf8mb4"); + + migrationBuilder.CreateTable( + name: "StatusLog", + columns: table => new + { + EventLogId = table.Column(type: "int", nullable: false) + .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), + DtRif = table.Column(type: "datetime(6)", nullable: false), + MachineId = table.Column(type: "int", nullable: false), + CodStatusId = table.Column(type: "int", nullable: false), + Duration = table.Column(type: "float", nullable: false), + ValStr = table.Column(type: "varchar(250)", maxLength: 250, nullable: false) + .Annotation("MySql:CharSet", "utf8mb4") + }, + constraints: table => + { + table.PrimaryKey("PK_StatusLog", x => x.EventLogId); + table.ForeignKey( + name: "FK_StatusLog_CodStatus_CodStatusId", + column: x => x.CodStatusId, + principalTable: "CodStatus", + principalColumn: "CodStatusId", + onDelete: ReferentialAction.Restrict); + table.ForeignKey( + name: "FK_StatusLog_Machine_MachineId", + column: x => x.MachineId, + principalTable: "Machine", + principalColumn: "MachineId", + onDelete: ReferentialAction.Restrict); + }) + .Annotation("MySql:CharSet", "utf8mb4"); + + migrationBuilder.CreateIndex( + name: "IX_StatusLog_CodStatusId", + table: "StatusLog", + column: "CodStatusId"); + + migrationBuilder.CreateIndex( + name: "IX_StatusLog_MachineId", + table: "StatusLog", + column: "MachineId"); + } + + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "StatusLog"); + + migrationBuilder.DropTable( + name: "CodStatus"); + + migrationBuilder.RenameColumn( + name: "DtRif", + table: "EventLog", + newName: "DtEvent"); + + migrationBuilder.RenameColumn( + name: "DtRif", + table: "DataStAg", + newName: "DtEvent"); + + migrationBuilder.RenameColumn( + name: "DtRif", + table: "DataLog", + newName: "DtEvent"); + } + } +} diff --git a/MP.MONO.Data/Migrations/20220211111758_AddStatusStAg.Designer.cs b/MP.MONO.Data/Migrations/20220211111758_AddStatusStAg.Designer.cs new file mode 100644 index 0000000..40afa05 --- /dev/null +++ b/MP.MONO.Data/Migrations/20220211111758_AddStatusStAg.Designer.cs @@ -0,0 +1,420 @@ +// +using System; +using MP.MONO.Data; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; + +#nullable disable + +namespace MP.MONO.Data.Migrations +{ + [DbContext(typeof(MapoMonoContext))] + [Migration("20220211111758_AddStatusStAg")] + partial class AddStatusStAg + { + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "6.0.2") + .HasAnnotation("Relational:MaxIdentifierLength", 64); + + modelBuilder.Entity("MP.MONO.Data.DbModels.AnKeyValModel", b => + { + b.Property("KeyName") + .HasMaxLength(50) + .HasColumnType("varchar(50)"); + + b.Property("Descript") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.Property("ValFloat") + .HasColumnType("int"); + + b.Property("ValInt") + .HasColumnType("int"); + + b.Property("ValString") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.HasKey("KeyName"); + + b.ToTable("AnKeyVal"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.CodEventModel", b => + { + b.Property("CodEventId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.Property("IsHw") + .HasColumnType("tinyint(1)"); + + b.HasKey("CodEventId"); + + b.ToTable("CodEvent"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.CodStatusModel", b => + { + b.Property("CodStatusId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("CssClass") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.Property("Group") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)"); + + b.HasKey("CodStatusId"); + + b.ToTable("CodStatus"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.ConfigModel", b => + { + b.Property("KeyName") + .HasMaxLength(50) + .HasColumnType("varchar(50)"); + + b.Property("Note") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("varchar(500)"); + + b.Property("Val") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.Property("ValStd") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.HasKey("KeyName"); + + b.ToTable("Config"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.DataLogModel", b => + { + b.Property("DataLogId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("DtRif") + .HasColumnType("datetime(6)"); + + b.Property("FluxType") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.Property("MachineId") + .HasColumnType("int"); + + b.Property("ValNum") + .HasColumnType("double"); + + b.Property("ValStr") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.HasKey("DataLogId"); + + b.HasIndex("MachineId"); + + b.ToTable("DataLog"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.DataStAgModel", b => + { + b.Property("DataStAgId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("DtRif") + .HasColumnType("datetime(6)"); + + b.Property("FluxType") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.Property("MachineId") + .HasColumnType("int"); + + b.Property("NumRec") + .HasColumnType("double"); + + b.Property("ValNumAvg") + .HasColumnType("double"); + + b.Property("ValNumMax") + .HasColumnType("double"); + + b.Property("ValNumMin") + .HasColumnType("double"); + + b.Property("ValStr") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.HasKey("DataStAgId"); + + b.HasIndex("MachineId"); + + b.ToTable("DataStAg"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.EventLogModel", b => + { + b.Property("EventLogId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("CodEventId") + .HasColumnType("int"); + + b.Property("DtRif") + .HasColumnType("datetime(6)"); + + b.Property("MachineId") + .HasColumnType("int"); + + b.Property("ValStr") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.HasKey("EventLogId"); + + b.HasIndex("CodEventId"); + + b.HasIndex("MachineId"); + + b.ToTable("EventLog"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.MachineModel", b => + { + b.Property("MachineId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("BuildYear") + .HasColumnType("int"); + + b.Property("Code") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.Property("Model") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.Property("Serial") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.HasKey("MachineId"); + + b.ToTable("Machine"); + + b.HasData( + new + { + MachineId = 1, + BuildYear = 2022, + Code = "", + Description = "Default SIM Machine", + Model = "Egalware SIM", + Name = "EGW-SIM-Machine", + Serial = "SN-0000-0000-0000" + }); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.StatusLogModel", b => + { + b.Property("EventLogId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("CodStatusId") + .HasColumnType("int"); + + b.Property("DtRif") + .HasColumnType("datetime(6)"); + + b.Property("Duration") + .HasColumnType("float"); + + b.Property("MachineId") + .HasColumnType("int"); + + b.Property("ValStr") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.HasKey("EventLogId"); + + b.HasIndex("CodStatusId"); + + b.HasIndex("MachineId"); + + b.ToTable("StatusLog"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.StatusStAgModel", b => + { + b.Property("DataStAgId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("CodStatusId") + .HasColumnType("int"); + + b.Property("DtRif") + .HasColumnType("datetime(6)"); + + b.Property("Duration") + .HasColumnType("float"); + + b.Property("MachineId") + .HasColumnType("int"); + + b.Property("ValStr") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.HasKey("DataStAgId"); + + b.HasIndex("CodStatusId"); + + b.HasIndex("MachineId"); + + b.ToTable("StatusStAg"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.DataLogModel", b => + { + b.HasOne("MP.MONO.Data.DbModels.MachineModel", "MachineNav") + .WithMany() + .HasForeignKey("MachineId") + .OnDelete(DeleteBehavior.Restrict) + .IsRequired(); + + b.Navigation("MachineNav"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.DataStAgModel", b => + { + b.HasOne("MP.MONO.Data.DbModels.MachineModel", "MachineNav") + .WithMany() + .HasForeignKey("MachineId") + .OnDelete(DeleteBehavior.Restrict) + .IsRequired(); + + b.Navigation("MachineNav"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.EventLogModel", b => + { + b.HasOne("MP.MONO.Data.DbModels.CodEventModel", "CodEventNav") + .WithMany() + .HasForeignKey("CodEventId") + .OnDelete(DeleteBehavior.Restrict) + .IsRequired(); + + b.HasOne("MP.MONO.Data.DbModels.MachineModel", "MachineNav") + .WithMany() + .HasForeignKey("MachineId") + .OnDelete(DeleteBehavior.Restrict) + .IsRequired(); + + b.Navigation("CodEventNav"); + + b.Navigation("MachineNav"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.StatusLogModel", b => + { + b.HasOne("MP.MONO.Data.DbModels.CodStatusModel", "CodStatusNav") + .WithMany() + .HasForeignKey("CodStatusId") + .OnDelete(DeleteBehavior.Restrict) + .IsRequired(); + + b.HasOne("MP.MONO.Data.DbModels.MachineModel", "MachineNav") + .WithMany() + .HasForeignKey("MachineId") + .OnDelete(DeleteBehavior.Restrict) + .IsRequired(); + + b.Navigation("CodStatusNav"); + + b.Navigation("MachineNav"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.StatusStAgModel", b => + { + b.HasOne("MP.MONO.Data.DbModels.CodStatusModel", "CodStatusNav") + .WithMany() + .HasForeignKey("CodStatusId") + .OnDelete(DeleteBehavior.Restrict) + .IsRequired(); + + b.HasOne("MP.MONO.Data.DbModels.MachineModel", "MachineNav") + .WithMany() + .HasForeignKey("MachineId") + .OnDelete(DeleteBehavior.Restrict) + .IsRequired(); + + b.Navigation("CodStatusNav"); + + b.Navigation("MachineNav"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/MP.MONO.Data/Migrations/20220211111758_AddStatusStAg.cs b/MP.MONO.Data/Migrations/20220211111758_AddStatusStAg.cs new file mode 100644 index 0000000..eb4cb21 --- /dev/null +++ b/MP.MONO.Data/Migrations/20220211111758_AddStatusStAg.cs @@ -0,0 +1,61 @@ +using System; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace MP.MONO.Data.Migrations +{ + public partial class AddStatusStAg : Migration + { + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.CreateTable( + name: "StatusStAg", + columns: table => new + { + DataStAgId = table.Column(type: "int", nullable: false) + .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), + DtRif = table.Column(type: "datetime(6)", nullable: false), + MachineId = table.Column(type: "int", nullable: false), + CodStatusId = table.Column(type: "int", nullable: false), + Duration = table.Column(type: "float", nullable: false), + ValStr = table.Column(type: "varchar(250)", maxLength: 250, nullable: false) + .Annotation("MySql:CharSet", "utf8mb4") + }, + constraints: table => + { + table.PrimaryKey("PK_StatusStAg", x => x.DataStAgId); + table.ForeignKey( + name: "FK_StatusStAg_CodStatus_CodStatusId", + column: x => x.CodStatusId, + principalTable: "CodStatus", + principalColumn: "CodStatusId", + onDelete: ReferentialAction.Restrict); + table.ForeignKey( + name: "FK_StatusStAg_Machine_MachineId", + column: x => x.MachineId, + principalTable: "Machine", + principalColumn: "MachineId", + onDelete: ReferentialAction.Restrict); + }) + .Annotation("MySql:CharSet", "utf8mb4"); + + migrationBuilder.CreateIndex( + name: "IX_StatusStAg_CodStatusId", + table: "StatusStAg", + column: "CodStatusId"); + + migrationBuilder.CreateIndex( + name: "IX_StatusStAg_MachineId", + table: "StatusStAg", + column: "MachineId"); + } + + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "StatusStAg"); + } + } +} diff --git a/MP.MONO.Data/Migrations/MapoMonoContextModelSnapshot.cs b/MP.MONO.Data/Migrations/MapoMonoContextModelSnapshot.cs index 5fbe15a..3157d55 100644 --- a/MP.MONO.Data/Migrations/MapoMonoContextModelSnapshot.cs +++ b/MP.MONO.Data/Migrations/MapoMonoContextModelSnapshot.cs @@ -65,6 +65,32 @@ namespace MP.MONO.Data.Migrations b.ToTable("CodEvent"); }); + modelBuilder.Entity("MP.MONO.Data.DbModels.CodStatusModel", b => + { + b.Property("CodStatusId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("CssClass") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.Property("Group") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)"); + + b.HasKey("CodStatusId"); + + b.ToTable("CodStatus"); + }); + modelBuilder.Entity("MP.MONO.Data.DbModels.ConfigModel", b => { b.Property("KeyName") @@ -97,7 +123,7 @@ namespace MP.MONO.Data.Migrations .ValueGeneratedOnAdd() .HasColumnType("int"); - b.Property("DtEvent") + b.Property("DtRif") .HasColumnType("datetime(6)"); b.Property("FluxType") @@ -129,7 +155,7 @@ namespace MP.MONO.Data.Migrations .ValueGeneratedOnAdd() .HasColumnType("int"); - b.Property("DtEvent") + b.Property("DtRif") .HasColumnType("datetime(6)"); b.Property("FluxType") @@ -173,7 +199,7 @@ namespace MP.MONO.Data.Migrations b.Property("CodEventId") .HasColumnType("int"); - b.Property("DtEvent") + b.Property("DtRif") .HasColumnType("datetime(6)"); b.Property("MachineId") @@ -244,6 +270,70 @@ namespace MP.MONO.Data.Migrations }); }); + modelBuilder.Entity("MP.MONO.Data.DbModels.StatusLogModel", b => + { + b.Property("EventLogId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("CodStatusId") + .HasColumnType("int"); + + b.Property("DtRif") + .HasColumnType("datetime(6)"); + + b.Property("Duration") + .HasColumnType("float"); + + b.Property("MachineId") + .HasColumnType("int"); + + b.Property("ValStr") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.HasKey("EventLogId"); + + b.HasIndex("CodStatusId"); + + b.HasIndex("MachineId"); + + b.ToTable("StatusLog"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.StatusStAgModel", b => + { + b.Property("DataStAgId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("CodStatusId") + .HasColumnType("int"); + + b.Property("DtRif") + .HasColumnType("datetime(6)"); + + b.Property("Duration") + .HasColumnType("float"); + + b.Property("MachineId") + .HasColumnType("int"); + + b.Property("ValStr") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("varchar(250)"); + + b.HasKey("DataStAgId"); + + b.HasIndex("CodStatusId"); + + b.HasIndex("MachineId"); + + b.ToTable("StatusStAg"); + }); + modelBuilder.Entity("MP.MONO.Data.DbModels.DataLogModel", b => { b.HasOne("MP.MONO.Data.DbModels.MachineModel", "MachineNav") @@ -282,6 +372,44 @@ namespace MP.MONO.Data.Migrations b.Navigation("CodEventNav"); + b.Navigation("MachineNav"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.StatusLogModel", b => + { + b.HasOne("MP.MONO.Data.DbModels.CodStatusModel", "CodStatusNav") + .WithMany() + .HasForeignKey("CodStatusId") + .OnDelete(DeleteBehavior.Restrict) + .IsRequired(); + + b.HasOne("MP.MONO.Data.DbModels.MachineModel", "MachineNav") + .WithMany() + .HasForeignKey("MachineId") + .OnDelete(DeleteBehavior.Restrict) + .IsRequired(); + + b.Navigation("CodStatusNav"); + + b.Navigation("MachineNav"); + }); + + modelBuilder.Entity("MP.MONO.Data.DbModels.StatusStAgModel", b => + { + b.HasOne("MP.MONO.Data.DbModels.CodStatusModel", "CodStatusNav") + .WithMany() + .HasForeignKey("CodStatusId") + .OnDelete(DeleteBehavior.Restrict) + .IsRequired(); + + b.HasOne("MP.MONO.Data.DbModels.MachineModel", "MachineNav") + .WithMany() + .HasForeignKey("MachineId") + .OnDelete(DeleteBehavior.Restrict) + .IsRequired(); + + b.Navigation("CodStatusNav"); + b.Navigation("MachineNav"); }); #pragma warning restore 612, 618