Add people by book.

This commit is contained in:
2019-06-17 03:02:47 +01:00
parent c9c88351e2
commit df5d28d6a4
8 changed files with 12763 additions and 6879 deletions

View File

@@ -12,11 +12,12 @@ namespace Cicm.Database.Models
public long? PreviousId { get; set; }
public long? SourceId { get; set; }
public virtual Book Previous { get; set; }
public virtual Book Source { get; set; }
public virtual Book Next { get; set; }
public virtual Iso31661Numeric Country { get; set; }
public virtual ICollection<Book> Derivates { get; set; }
public virtual Book Previous { get; set; }
public virtual Book Source { get; set; }
public virtual Book Next { get; set; }
public virtual Iso31661Numeric Country { get; set; }
public virtual ICollection<Book> Derivates { get; set; }
public virtual ICollection<CompaniesByBook> Companies { get; set; }
public virtual ICollection<PeopleByBook> People { get; set; }
}
}

View File

@@ -14,6 +14,7 @@ namespace Cicm.Database.Models
public virtual Person Person { get; set; }
public virtual ICollection<PeopleByDocument> Documents { get; set; }
public virtual ICollection<PeopleByBook> Books { get; set; }
[NotMapped]
public string FullName => $"{Name} {Surname}";

View File

@@ -0,0 +1,18 @@
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Cicm.Database.Models
{
public class PeopleByBook : BaseModel<long>
{
public int PersonId { get; set; }
public long BookId { get; set; }
[Column(TypeName = "char(3)")]
[Required]
public string RoleId { get; set; }
public virtual DocumentPerson Person { get; set; }
public virtual Book Book { get; set; }
public virtual DocumentRole Role { get; set; }
}
}

View File

@@ -86,7 +86,8 @@ namespace Cicm.Database.Models
public virtual DbSet<CompaniesByDocument> CompaniesByDocuments { get; set; }
public virtual DbSet<DocumentsByMachine> DocumentsByMachines { get; set; }
public virtual DbSet<Book> Books { get; set; }
public virtual DbSet<CompaniesByBook> CompaniesByBooks { get; set; }
public virtual DbSet<CompaniesByBook> CompaniesByBooks { get; set; }
public virtual DbSet<PeopleByBook> PeopleByBooks { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
@@ -215,7 +216,7 @@ namespace Cicm.Database.Models
entity.HasOne(d => d.Company).WithMany(p => p.Books).HasForeignKey(d => d.CompanyId);
});
modelBuilder.Entity<CompaniesByDocument>(entity =>
{
entity.HasIndex(e => e.DocumentId);
@@ -909,6 +910,17 @@ namespace Cicm.Database.Models
entity.Property(e => e.Type).HasColumnName("type").HasColumnType("int(11)").HasDefaultValueSql("'0'");
});
modelBuilder.Entity<PeopleByBook>(entity =>
{
entity.HasIndex(e => e.PersonId);
entity.HasIndex(e => e.BookId);
entity.HasOne(d => d.Person).WithMany(p => p.Books).HasForeignKey(d => d.PersonId);
entity.HasOne(d => d.Book).WithMany(p => p.People).HasForeignKey(d => d.BookId);
});
modelBuilder.Entity<PeopleByCompany>(entity =>
{
entity.HasIndex(e => e.PersonId);