Introduced the RecordState property to manage the state of prospects, enabling soft deletion and restoration. Updated related database migrations, UI interactions, and filtering logic to accommodate this addition. Also included automatic database migration at runtime to ensure schema compatibility.
206 lines
6.6 KiB
C#
206 lines
6.6 KiB
C#
// <auto-generated />
|
|
using System;
|
|
using FoodsharingSiegen.Server.Data;
|
|
using Microsoft.EntityFrameworkCore;
|
|
using Microsoft.EntityFrameworkCore.Infrastructure;
|
|
using Microsoft.EntityFrameworkCore.Migrations;
|
|
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
|
|
|
#nullable disable
|
|
|
|
namespace FoodsharingSiegen.Server.Migrations
|
|
{
|
|
[DbContext(typeof(FsContext))]
|
|
[Migration("20250329121239_Proposal-RecordState")]
|
|
partial class ProposalRecordState
|
|
{
|
|
/// <inheritdoc />
|
|
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
|
{
|
|
#pragma warning disable 612, 618
|
|
modelBuilder.HasAnnotation("ProductVersion", "9.0.3");
|
|
|
|
modelBuilder.Entity("FoodsharingSiegen.Contracts.Entity.Audit", b =>
|
|
{
|
|
b.Property<Guid>("Id")
|
|
.ValueGeneratedOnAdd()
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<DateTime>("Created")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<string>("Data1")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<string>("Data2")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<int>("Type")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.Property<Guid?>("UserID")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.HasKey("Id");
|
|
|
|
b.HasIndex("UserID");
|
|
|
|
b.ToTable("Audits");
|
|
});
|
|
|
|
modelBuilder.Entity("FoodsharingSiegen.Contracts.Entity.Interaction", b =>
|
|
{
|
|
b.Property<Guid>("Id")
|
|
.ValueGeneratedOnAdd()
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<bool>("Alert")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.Property<DateTime>("Created")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<DateTime>("Date")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<string>("Info")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<bool>("NotNeeded")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.Property<Guid>("ProspectID")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<int>("Type")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.Property<Guid>("UserID")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.HasKey("Id");
|
|
|
|
b.HasIndex("ProspectID");
|
|
|
|
b.HasIndex("UserID");
|
|
|
|
b.ToTable("Interactions");
|
|
});
|
|
|
|
modelBuilder.Entity("FoodsharingSiegen.Contracts.Entity.Prospect", b =>
|
|
{
|
|
b.Property<Guid>("Id")
|
|
.ValueGeneratedOnAdd()
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<DateTime>("Created")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<int>("FsId")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.Property<string>("Memo")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<string>("Name")
|
|
.IsRequired()
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<int>("RecordState")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.Property<bool>("Warning")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.HasKey("Id");
|
|
|
|
b.ToTable("Prospects");
|
|
});
|
|
|
|
modelBuilder.Entity("FoodsharingSiegen.Contracts.Entity.User", b =>
|
|
{
|
|
b.Property<Guid>("Id")
|
|
.ValueGeneratedOnAdd()
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<DateTime>("Created")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<string>("EncryptedPassword")
|
|
.IsRequired()
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<bool>("ForceLogout")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.Property<string>("Groups")
|
|
.IsRequired()
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<string>("Mail")
|
|
.IsRequired()
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<string>("Memo")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<string>("Name")
|
|
.IsRequired()
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<int>("Network")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.Property<int>("Type")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.Property<bool>("Verified")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.HasKey("Id");
|
|
|
|
b.ToTable("Users");
|
|
});
|
|
|
|
modelBuilder.Entity("FoodsharingSiegen.Contracts.Entity.Audit", b =>
|
|
{
|
|
b.HasOne("FoodsharingSiegen.Contracts.Entity.User", "User")
|
|
.WithMany()
|
|
.HasForeignKey("UserID");
|
|
|
|
b.Navigation("User");
|
|
});
|
|
|
|
modelBuilder.Entity("FoodsharingSiegen.Contracts.Entity.Interaction", b =>
|
|
{
|
|
b.HasOne("FoodsharingSiegen.Contracts.Entity.Prospect", "Prospect")
|
|
.WithMany("Interactions")
|
|
.HasForeignKey("ProspectID")
|
|
.OnDelete(DeleteBehavior.Cascade)
|
|
.IsRequired();
|
|
|
|
b.HasOne("FoodsharingSiegen.Contracts.Entity.User", "User")
|
|
.WithMany("Interactions")
|
|
.HasForeignKey("UserID")
|
|
.OnDelete(DeleteBehavior.Cascade)
|
|
.IsRequired();
|
|
|
|
b.Navigation("Prospect");
|
|
|
|
b.Navigation("User");
|
|
});
|
|
|
|
modelBuilder.Entity("FoodsharingSiegen.Contracts.Entity.Prospect", b =>
|
|
{
|
|
b.Navigation("Interactions");
|
|
});
|
|
|
|
modelBuilder.Entity("FoodsharingSiegen.Contracts.Entity.User", b =>
|
|
{
|
|
b.Navigation("Interactions");
|
|
});
|
|
#pragma warning restore 612, 618
|
|
}
|
|
}
|
|
}
|