//
using System;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Migrations;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
using UnivateProperties_API.Context;
namespace UnivateProperties_API.Migrations
{
[DbContext(typeof(DataContext))]
[Migration("20190905084739_AddedSellPrice")]
partial class AddedSellPrice
{
protected override void BuildTargetModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder
.HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.SerialColumn)
.HasAnnotation("ProductVersion", "2.2.4-servicing-10062")
.HasAnnotation("Relational:MaxIdentifierLength", 63);
modelBuilder.Entity("UnivateProperties_API.Model.Communication.Email", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("BCC");
b.Property("Body");
b.Property("CC");
b.Property("Comment");
b.Property("Created");
b.Property("IsBodyHtml");
b.Property("Modified");
b.Property("ModifiedBy");
b.Property("SenderId");
b.Property("Subject");
b.Property("To");
b.Property("ToDisplay");
b.HasKey("Id");
b.HasIndex("SenderId");
b.ToTable("Emails");
});
modelBuilder.Entity("UnivateProperties_API.Model.Communication.SMTPAccount", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("Address");
b.Property("Created");
b.Property("DisplayName");
b.Property("Modified");
b.Property("ModifiedBy");
b.Property("SMTPHostId");
b.HasKey("Id");
b.HasIndex("SMTPHostId");
b.ToTable("Accounts");
});
modelBuilder.Entity("UnivateProperties_API.Model.Communication.SMTPHost", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("Created");
b.Property("Host");
b.Property("Modified");
b.Property("ModifiedBy");
b.Property("NeedsAuthorize");
b.Property("Password");
b.Property("UseSSL");
b.Property("User");
b.HasKey("Id");
b.ToTable("Hosts");
});
modelBuilder.Entity("UnivateProperties_API.Model.Property.Property", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("AddressLine1");
b.Property("AddressLine2");
b.Property("AddressLine3");
b.Property("CityId");
b.Property("Created");
b.Property("CreatedBy");
b.Property("Description");
b.Property("IsSale");
b.Property("Modified");
b.Property("ModifiedBy");
b.Property("OperationalCosts");
b.Property("Price");
b.Property("PricePer");
b.Property("PropertyName");
b.Property("PropertyTypeId");
b.Property("ProvinceId");
b.Property("Published");
b.Property("ShortDescription");
b.Property("SuburbId");
b.Property("Unit");
b.HasKey("Id");
b.HasIndex("CityId");
b.HasIndex("PropertyTypeId");
b.HasIndex("ProvinceId");
b.HasIndex("SuburbId");
b.ToTable("Properties");
});
modelBuilder.Entity("UnivateProperties_API.Model.Property.PropertyImage", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("Created");
b.Property("Image");
b.Property("IsDefault");
b.Property("Modified");
b.Property("ModifiedBy");
b.Property("PropertyId");
b.HasKey("Id");
b.HasIndex("PropertyId");
b.ToTable("PropertyImages");
});
modelBuilder.Entity("UnivateProperties_API.Model.Property.PropertyType", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("Created");
b.Property("Description");
b.Property("Modified");
b.Property("ModifiedBy");
b.Property("UsageType");
b.HasKey("Id");
b.ToTable("PropertyTypes");
});
modelBuilder.Entity("UnivateProperties_API.Model.Property.PropertyUserField", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("Created");
b.Property("Description");
b.Property("Modified");
b.Property("ModifiedBy");
b.Property("PropertyId");
b.Property("UserDefinedFieldId");
b.Property("Value");
b.HasKey("Id");
b.HasIndex("PropertyId");
b.HasIndex("UserDefinedFieldId");
b.ToTable("PropertyUserFields");
});
modelBuilder.Entity("UnivateProperties_API.Model.Property.UserDefinedField", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("Created");
b.Property("FieldName");
b.Property("FieldType");
b.Property("GroupId");
b.Property("Modified");
b.Property("ModifiedBy");
b.Property("Rank");
b.HasKey("Id");
b.HasIndex("GroupId");
b.ToTable("UserDefinedFields");
});
modelBuilder.Entity("UnivateProperties_API.Model.Property.UserDefinedGroup", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("Created");
b.Property("Description");
b.Property("Modified");
b.Property("ModifiedBy");
b.Property("Rank");
b.Property("UsageType");
b.HasKey("Id");
b.ToTable("UserDefinedGroups");
});
modelBuilder.Entity("UnivateProperties_API.Model.Region.City", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("Code");
b.Property("Created");
b.Property("Description");
b.Property("Modified");
b.Property("ModifiedBy");
b.Property("ProvinceId");
b.HasKey("Id");
b.HasIndex("ProvinceId");
b.ToTable("Cities");
});
modelBuilder.Entity("UnivateProperties_API.Model.Region.Province", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("Code");
b.Property("Created");
b.Property("Description");
b.Property("Modified");
b.Property("ModifiedBy");
b.HasKey("Id");
b.ToTable("Provinces");
});
modelBuilder.Entity("UnivateProperties_API.Model.Region.Suburb", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("CityId");
b.Property("Created");
b.Property("Description");
b.Property("Modified");
b.Property("ModifiedBy");
b.Property("PostalCode");
b.HasKey("Id");
b.HasIndex("CityId");
b.ToTable("Suburbs");
});
modelBuilder.Entity("UnivateProperties_API.Model.Timeshare.Season", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("Created");
b.Property("Modified");
b.Property("ModifiedBy");
b.Property("Name");
b.HasKey("Id");
b.ToTable("Seasons");
});
modelBuilder.Entity("UnivateProperties_API.Model.Timeshare.Status", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("Code");
b.Property("Created");
b.Property("Description");
b.Property("Modified");
b.Property("ModifiedBy");
b.Property("StatusType");
b.HasKey("Id");
b.ToTable("Status");
});
modelBuilder.Entity("UnivateProperties_API.Model.Timeshare.TimeshareWeek", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("AgencyId");
b.Property("AgentAsRep");
b.Property("AgentId");
b.Property("ArrivalDate");
b.Property("BankedWith");
b.Property("Bedrooms");
b.Property("Created");
b.Property("CurrentYearBanked");
b.Property("DepartureDate");
b.Property("LeviesPaidInFull");
b.Property("LevyAmount");
b.Property("MaxSleep");
b.Property("Modified");
b.Property("ModifiedBy");
b.Property("Module");
b.Property("OriginalPurchaseDate");
b.Property("OriginalPurchasePrice");
b.Property("OtherResort");
b.Property("OwnerId");
b.Property("ReferedByAgent");
b.Property("RegionId");
b.Property("ResortCode");
b.Property("ResortName");
b.Property("Season");
b.Property("SellPrice");
b.Property("StatusId");
b.Property("WeekNumber");
b.Property("WeekPlacedForRental");
b.HasKey("Id");
b.HasIndex("AgencyId");
b.HasIndex("AgentId");
b.HasIndex("OwnerId");
b.HasIndex("RegionId");
b.HasIndex("StatusId");
b.ToTable("Weeks");
});
modelBuilder.Entity("UnivateProperties_API.Model.Timeshare.UnitConfiguration", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("Adults");
b.Property("Bedrooms");
b.Property("Children");
b.Property("Code");
b.Property("Created");
b.Property("Modified");
b.Property("ModifiedBy");
b.HasKey("Id");
b.HasIndex("Code")
.IsUnique();
b.ToTable("UnitConfigurations");
});
modelBuilder.Entity("UnivateProperties_API.Model.Timeshare.UnitConfigurationType", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("Created");
b.Property("Description");
b.Property("Modified");
b.Property("ModifiedBy");
b.Property("UnitConfigurationId");
b.HasKey("Id");
b.HasIndex("UnitConfigurationId");
b.ToTable("UnitConfigurationTypes");
});
modelBuilder.Entity("UnivateProperties_API.Model.Users.Agency", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("AgencyName");
b.Property("CompanyRegNumber");
b.Property("Created");
b.Property("EAABEFFCNumber");
b.Property("Modified");
b.Property("ModifiedBy");
b.HasKey("Id");
b.ToTable("Agencies");
});
modelBuilder.Entity("UnivateProperties_API.Model.Users.Agent", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("AgencyId");
b.Property("CellNumber");
b.Property("Created");
b.Property("Email");
b.Property("Modified");
b.Property("ModifiedBy");
b.Property("Name");
b.Property("Surname");
b.Property("Telephone");
b.Property("UserId");
b.HasKey("Id");
b.HasIndex("AgencyId");
b.HasIndex("UserId");
b.ToTable("Agents");
});
modelBuilder.Entity("UnivateProperties_API.Model.Users.Individual", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("CellNumber");
b.Property("Created");
b.Property("Email");
b.Property("Modified");
b.Property("ModifiedBy");
b.Property("Name");
b.Property("Surname");
b.Property("Telephone");
b.Property("UserId");
b.HasKey("Id");
b.HasIndex("UserId");
b.ToTable("Individuals");
});
modelBuilder.Entity("UnivateProperties_API.Model.Users.User", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("Created");
b.Property("Modified");
b.Property("ModifiedBy");
b.Property("PasswordHash");
b.Property("PasswordSalt");
b.Property("Role");
b.Property("Token");
b.Property("Username");
b.Property("Verified");
b.HasKey("Id");
b.ToTable("Users");
});
modelBuilder.Entity("UnivateProperties_API.Model.Communication.Email", b =>
{
b.HasOne("UnivateProperties_API.Model.Communication.SMTPAccount", "Sender")
.WithMany("Emails")
.HasForeignKey("SenderId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("UnivateProperties_API.Model.Communication.SMTPAccount", b =>
{
b.HasOne("UnivateProperties_API.Model.Communication.SMTPHost", "SMTPHost")
.WithMany("SMTPAccounts")
.HasForeignKey("SMTPHostId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("UnivateProperties_API.Model.Property.Property", b =>
{
b.HasOne("UnivateProperties_API.Model.Region.City", "City")
.WithMany()
.HasForeignKey("CityId")
.OnDelete(DeleteBehavior.Cascade);
b.HasOne("UnivateProperties_API.Model.Property.PropertyType", "PropertyType")
.WithMany()
.HasForeignKey("PropertyTypeId")
.OnDelete(DeleteBehavior.Cascade);
b.HasOne("UnivateProperties_API.Model.Region.Province", "Province")
.WithMany()
.HasForeignKey("ProvinceId")
.OnDelete(DeleteBehavior.Cascade);
b.HasOne("UnivateProperties_API.Model.Region.Suburb", "Suburb")
.WithMany()
.HasForeignKey("SuburbId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("UnivateProperties_API.Model.Property.PropertyImage", b =>
{
b.HasOne("UnivateProperties_API.Model.Property.Property", "Property")
.WithMany("PropertyImages")
.HasForeignKey("PropertyId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("UnivateProperties_API.Model.Property.PropertyUserField", b =>
{
b.HasOne("UnivateProperties_API.Model.Property.Property", "Property")
.WithMany("PropertyUserFields")
.HasForeignKey("PropertyId")
.OnDelete(DeleteBehavior.Cascade);
b.HasOne("UnivateProperties_API.Model.Property.UserDefinedField", "UserDefinedField")
.WithMany()
.HasForeignKey("UserDefinedFieldId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("UnivateProperties_API.Model.Property.UserDefinedField", b =>
{
b.HasOne("UnivateProperties_API.Model.Property.UserDefinedGroup", "Group")
.WithMany("Fields")
.HasForeignKey("GroupId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("UnivateProperties_API.Model.Region.City", b =>
{
b.HasOne("UnivateProperties_API.Model.Region.Province", "Province")
.WithMany()
.HasForeignKey("ProvinceId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("UnivateProperties_API.Model.Region.Suburb", b =>
{
b.HasOne("UnivateProperties_API.Model.Region.City", "City")
.WithMany()
.HasForeignKey("CityId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("UnivateProperties_API.Model.Timeshare.TimeshareWeek", b =>
{
b.HasOne("UnivateProperties_API.Model.Users.Agency", "Agency")
.WithMany()
.HasForeignKey("AgencyId");
b.HasOne("UnivateProperties_API.Model.Users.Agent", "Agent")
.WithMany()
.HasForeignKey("AgentId");
b.HasOne("UnivateProperties_API.Model.Users.Individual", "Owner")
.WithMany()
.HasForeignKey("OwnerId")
.OnDelete(DeleteBehavior.Cascade);
b.HasOne("UnivateProperties_API.Model.Region.Province", "Region")
.WithMany()
.HasForeignKey("RegionId")
.OnDelete(DeleteBehavior.Cascade);
b.HasOne("UnivateProperties_API.Model.Timeshare.Status", "Status")
.WithMany()
.HasForeignKey("StatusId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("UnivateProperties_API.Model.Timeshare.UnitConfigurationType", b =>
{
b.HasOne("UnivateProperties_API.Model.Timeshare.UnitConfiguration", "UnitConfiguration")
.WithMany("Types")
.HasForeignKey("UnitConfigurationId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("UnivateProperties_API.Model.Users.Agent", b =>
{
b.HasOne("UnivateProperties_API.Model.Users.Agency", "Agency")
.WithMany("Agents")
.HasForeignKey("AgencyId");
b.HasOne("UnivateProperties_API.Model.Users.User", "User")
.WithMany()
.HasForeignKey("UserId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("UnivateProperties_API.Model.Users.Individual", b =>
{
b.HasOne("UnivateProperties_API.Model.Users.User", "User")
.WithMany()
.HasForeignKey("UserId")
.OnDelete(DeleteBehavior.Cascade);
});
#pragma warning restore 612, 618
}
}
}