using Microsoft.EntityFrameworkCore.Migrations; using Microsoft.EntityFrameworkCore.Migrations.Operations; using Microsoft.EntityFrameworkCore.Migrations.Operations.Builders; using Oqtane.Databases.Interfaces; using Oqtane.Migrations; using Oqtane.Migrations.EntityBuilders; namespace SZUAbsolventenverein.Module.AdminModules.Migrations.EntityBuilders; public class ReportingEntityBuilder : AuditableBaseEntityBuilder { private const string _entityTableName = "SZUAbsolventenvereinReportings"; private readonly PrimaryKey _primaryKey = new ("PK_ReportingEntityBuilder", x => x.ReportingID); public ReportingEntityBuilder(MigrationBuilder migrationBuilder, IDatabase database) : base(migrationBuilder, database) { EntityTableName = _entityTableName; PrimaryKey = _primaryKey; } protected override ReportingEntityBuilder BuildTable(ColumnsBuilder table) { ReportingID = AddAutoIncrementColumn(table, "ReportingID"); ModuleId = AddIntegerColumn(table, "ModuleId"); EntityId = AddIntegerColumn(table, "EntityId"); Note = AddMaxStringColumn(table, "Note"); Reason = AddMaxStringColumn(table, "Reason"); AddAuditableColumns(table); return this; } public OperationBuilder ReportingID { get; set; } public OperationBuilder ModuleId { get; set; } public OperationBuilder EntityId { get; set; } public OperationBuilder Note { get; set; } public OperationBuilder Reason { get; set; } }