//
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Migrations;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
using kehati.Database;
#nullable disable
namespace kehati.Migrations
{
[DbContext(typeof(ApplicationDbContext))]
[Migration("20260721071042_LokasiFauna")]
partial class LokasiFauna
{
///
protected override void BuildTargetModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder
.HasAnnotation("ProductVersion", "9.0.1")
.HasAnnotation("Relational:MaxIdentifierLength", 63);
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
modelBuilder.Entity("kehati.Models.Entity.Master.Famili", b =>
{
b.Property("MsFamiliId")
.ValueGeneratedOnAdd()
.HasColumnType("integer");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("MsFamiliId"));
b.Property("Name")
.HasColumnType("text")
.HasColumnName("name");
b.HasKey("MsFamiliId");
b.ToTable("ms_famili");
});
modelBuilder.Entity("kehati.Models.Entity.Master.Fauna", b =>
{
b.Property("MsFaunaId")
.ValueGeneratedOnAdd()
.HasColumnType("integer");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("MsFaunaId"));
b.Property("Image")
.HasColumnType("text")
.HasColumnName("image");
b.Property("MsFamiliId")
.HasColumnType("text")
.HasColumnName("ms_famili_id");
b.Property("MsHabitusId")
.HasColumnType("text")
.HasColumnName("ms_habitus_id");
b.Property("NamaIlmiah")
.HasColumnType("text")
.HasColumnName("nama_ilmiah");
b.Property("Name")
.HasColumnType("text")
.HasColumnName("name");
b.Property("Slug")
.HasColumnType("text")
.HasColumnName("slug");
b.Property("Status")
.HasColumnType("text")
.HasColumnName("status");
b.HasKey("MsFaunaId");
b.ToTable("ms_fauna");
});
modelBuilder.Entity("kehati.Models.Entity.Master.Group", b =>
{
b.Property("MsGroupId")
.ValueGeneratedOnAdd()
.HasColumnType("integer");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("MsGroupId"));
b.Property("Alias")
.HasColumnType("text")
.HasColumnName("alias");
b.Property("CreatedBy")
.HasColumnType("integer")
.HasColumnName("created_by");
b.Property("Name")
.HasColumnType("text")
.HasColumnName("name");
b.Property("Status")
.HasColumnType("text")
.HasColumnName("status");
b.Property("UpdatedBy")
.HasColumnType("integer")
.HasColumnName("updated_by");
b.HasKey("MsGroupId");
b.ToTable("ms_group");
});
modelBuilder.Entity("kehati.Models.Entity.Master.Habitat", b =>
{
b.Property("MsHabitusId")
.ValueGeneratedOnAdd()
.HasColumnType("integer");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("MsHabitusId"));
b.Property("Name")
.HasColumnType("text")
.HasColumnName("name");
b.HasKey("MsHabitusId");
b.ToTable("ms_habitus");
});
modelBuilder.Entity("kehati.Models.Entity.Master.Lokasi", b =>
{
b.Property("MsLokasiId")
.ValueGeneratedOnAdd()
.HasColumnType("integer");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("MsLokasiId"));
b.Property("Area")
.HasColumnType("text")
.HasColumnName("area");
b.Property("Image")
.HasColumnType("text")
.HasColumnName("image");
b.Property("Kode")
.HasColumnType("integer")
.HasColumnName("kode");
b.Property("Lat")
.HasColumnType("text")
.HasColumnName("lat");
b.Property("Long")
.HasColumnType("text")
.HasColumnName("long");
b.Property("Name")
.IsRequired()
.HasColumnType("text")
.HasColumnName("name");
b.Property("Region")
.HasColumnType("text")
.HasColumnName("region");
b.Property("Slug")
.HasColumnType("text")
.HasColumnName("slug");
b.Property("Status")
.HasColumnType("text")
.HasColumnName("status");
b.HasKey("MsLokasiId");
b.ToTable("ms_lokasi");
});
modelBuilder.Entity("kehati.Models.Entity.Master.LokasiTumbuhan", b =>
{
b.Property("MsLokasiTumbuhanId")
.ValueGeneratedOnAdd()
.HasColumnType("integer");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("MsLokasiTumbuhanId"));
b.Property("MsLokasiId")
.HasColumnType("integer")
.HasColumnName("ms_lokasi_id");
b.Property("MsTumbuhanId")
.HasColumnType("integer")
.HasColumnName("ms_tumbuhan_id");
b.HasKey("MsLokasiTumbuhanId");
b.HasIndex("MsLokasiId");
b.HasIndex("MsTumbuhanId");
b.ToTable("ms_lokasi_tumbuhan");
});
modelBuilder.Entity("kehati.Models.Entity.Master.Menu", b =>
{
b.Property("MsMenuId")
.ValueGeneratedOnAdd()
.HasColumnType("integer");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("MsMenuId"));
b.Property("MenuIcon")
.HasColumnType("text")
.HasColumnName("menu_icon");
b.Property("MenuType")
.HasColumnType("text")
.HasColumnName("menu_type");
b.Property("Module")
.HasColumnType("text")
.HasColumnName("module");
b.Property("Ordering")
.HasColumnType("text")
.HasColumnName("ordering");
b.Property("ParentId")
.HasColumnType("integer")
.HasColumnName("parent_id");
b.Property("Status")
.HasColumnType("text")
.HasColumnName("status");
b.Property("Title")
.HasColumnType("text")
.HasColumnName("title");
b.Property("Url")
.HasColumnType("text")
.HasColumnName("url");
b.HasKey("MsMenuId");
b.ToTable("ms_menu");
});
modelBuilder.Entity("kehati.Models.Entity.Master.Tumbuhan", b =>
{
b.Property("MsTumbuhanId")
.ValueGeneratedOnAdd()
.HasColumnType("integer");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("MsTumbuhanId"));
b.Property("Cites")
.HasColumnType("text")
.HasColumnName("cites");
b.Property("Image")
.HasColumnType("text")
.HasColumnName("image");
b.Property("Iucn")
.HasColumnType("text")
.HasColumnName("iucn");
b.Property("MsFamiliId")
.HasColumnType("integer")
.HasColumnName("ms_famili_id");
b.Property("MsHabitatId")
.HasColumnType("integer")
.HasColumnName("ms_habitus_id");
b.Property("NamaIlmiah")
.HasColumnType("text")
.HasColumnName("name_ilmiah");
b.Property("Name")
.HasColumnType("text")
.HasColumnName("name");
b.Property("Slug")
.HasColumnType("text")
.HasColumnName("slug");
b.Property("StatusPerlindungan")
.HasColumnType("text")
.HasColumnName("status_perlindungan");
b.Property("TanamanKhasJakarta")
.HasColumnType("boolean")
.HasColumnName("tanaman_khas_jakarta");
b.HasKey("MsTumbuhanId");
b.ToTable("ms_tumbuhan");
});
modelBuilder.Entity("kehati.Models.Entity.User", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("Email")
.IsRequired()
.HasColumnType("text");
b.Property("MsGroupId")
.HasColumnType("integer")
.HasColumnName("ms_group_id");
b.Property("Name")
.IsRequired()
.HasColumnType("text");
b.Property("Password")
.IsRequired()
.HasColumnType("text");
b.Property("Username")
.IsRequired()
.HasColumnType("text");
b.HasKey("Id");
b.ToTable("users");
});
modelBuilder.Entity("kehati.Models.Entity.Master.LokasiTumbuhan", b =>
{
b.HasOne("kehati.Models.Entity.Master.Lokasi", "Lokasi")
.WithMany()
.HasForeignKey("MsLokasiId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("kehati.Models.Entity.Master.Tumbuhan", "Tumbuhan")
.WithMany()
.HasForeignKey("MsTumbuhanId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Lokasi");
b.Navigation("Tumbuhan");
});
#pragma warning restore 612, 618
}
}
}