Titel und Kurzbeschreibung hinzugefügt

This commit is contained in:
2026-02-19 14:41:35 +01:00
parent b51b37a6e8
commit eda0ad794d
7 changed files with 90 additions and 25 deletions

View File

@@ -0,0 +1,32 @@
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Migrations;
using Oqtane.Databases.Interfaces;
using Oqtane.Migrations;
using SZUAbsolventenverein.Module.PremiumArea.Migrations.EntityBuilders;
using SZUAbsolventenverein.Module.PremiumArea.Repository;
namespace SZUAbsolventenverein.Module.PremiumArea.Migrations
{
[DbContext(typeof(PremiumAreaContext))]
[Migration("SZUAbsolventenverein.Module.PremiumArea.01.00.00.03")]
public class AddTitleAndDescription : MultiDatabaseMigration
{
public AddTitleAndDescription(IDatabase database) : base(database)
{
}
protected override void Up(MigrationBuilder migrationBuilder)
{
var table = new EngineerApplicationEntityBuilder(migrationBuilder, ActiveDatabase);
table.AddStringColumn("Title", 256, true);
table.AddMaxStringColumn("ShortDescription", true);
}
protected override void Down(MigrationBuilder migrationBuilder)
{
var table = new EngineerApplicationEntityBuilder(migrationBuilder, ActiveDatabase);
table.DropColumn("Title");
table.DropColumn("ShortDescription");
}
}
}

View File

@@ -11,10 +11,16 @@ namespace SZUAbsolventenverein.Module.PremiumArea.Migrations.EntityBuilders
public class EngineerApplicationEntityBuilder : AuditableBaseEntityBuilder<EngineerApplicationEntityBuilder>
{
private const string _entityTableName = "SZUAbsolventenvereinEngineerApplications";
private readonly PrimaryKey<EngineerApplicationEntityBuilder> _primaryKey = new("PK_SZUAbsolventenvereinEngineerApplications", x => x.ApplicationId);
private readonly ForeignKey<EngineerApplicationEntityBuilder> _moduleForeignKey = new("FK_SZUAbsolventenvereinEngineerApplications_Module", x => x.ModuleId, "Module", "ModuleId", ReferentialAction.Cascade);
public EngineerApplicationEntityBuilder(MigrationBuilder migrationBuilder, IDatabase database) : base(migrationBuilder, database)
private readonly PrimaryKey<EngineerApplicationEntityBuilder> _primaryKey =
new("PK_SZUAbsolventenvereinEngineerApplications", x => x.ApplicationId);
private readonly ForeignKey<EngineerApplicationEntityBuilder> _moduleForeignKey =
new("FK_SZUAbsolventenvereinEngineerApplications_Module", x => x.ModuleId, "Module", "ModuleId",
ReferentialAction.Cascade);
public EngineerApplicationEntityBuilder(MigrationBuilder migrationBuilder, IDatabase database) : base(
migrationBuilder, database)
{
EntityTableName = _entityTableName;
PrimaryKey = _primaryKey;
@@ -27,6 +33,8 @@ namespace SZUAbsolventenverein.Module.PremiumArea.Migrations.EntityBuilders
UserId = AddIntegerColumn(table, "UserId");
ModuleId = AddIntegerColumn(table, "ModuleId");
FileId = AddIntegerColumn(table, "FileId", true);
Title = AddStringColumn(table, "Title", 256, true);
ShortDescription = AddMaxStringColumn(table, "ShortDescription", true);
PdfFileName = AddStringColumn(table, "PdfFileName", 256);
Status = AddStringColumn(table, "Status", 50);
AdminReviewedBy = AddIntegerColumn(table, "AdminReviewedBy", true);
@@ -42,11 +50,12 @@ namespace SZUAbsolventenverein.Module.PremiumArea.Migrations.EntityBuilders
}
public OperationBuilder<AddColumnOperation> ApplicationId { get; set; }
public OperationBuilder<AddColumnOperation> UserId { get; set; }
public OperationBuilder<AddColumnOperation> ModuleId { get; set; }
public OperationBuilder<AddColumnOperation> FileId { get; set; }
public OperationBuilder<AddColumnOperation> Title { get; set; }
public OperationBuilder<AddColumnOperation> ShortDescription { get; set; }
public OperationBuilder<AddColumnOperation> PdfFileName { get; set; }
public OperationBuilder<AddColumnOperation> Status { get; set; }
public OperationBuilder<AddColumnOperation> AdminReviewedBy { get; set; }

View File

@@ -90,6 +90,8 @@ namespace SZUAbsolventenverein.Module.PremiumArea.Repository
if (existing != null)
{
existing.FileId = EngineerApplication.FileId;
existing.Title = EngineerApplication.Title;
existing.ShortDescription = EngineerApplication.ShortDescription;
existing.Status = EngineerApplication.Status;
existing.SubmittedOn = EngineerApplication.SubmittedOn;
existing.ApprovedOn = EngineerApplication.ApprovedOn;