using Contracts.BindingModels; using Contracts.ViewModels; using DataModels.Models; using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations.Schema; namespace DataBase; /// <summary> /// Таблица компаний-заказчиков /// </summary> public partial class Company : ICompany { /// <summary> /// Айди компании /// </summary> public int Id { get; set; } /// <summary> /// Наимнование компании /// </summary> public string Title { get; set; } = null!; /// <summary> /// Статус компании /// </summary> public int? StatusId { get; set; } public virtual Status? Status { get; set; } public virtual ICollection<Voyage> Voyages { get; set; } = new List<Voyage>(); [NotMapped] public string? StatusTitle { get; set; } = string.Empty; public static Company Create(LogisticContext context, CompanyBM model) { return new Company() { Id = model.Id, Title = model.Title, StatusId = model.StatusId, StatusTitle=model.StatusTitle }; } public void Update(CompanyBM model) { Title = model.Title; StatusTitle = model.StatusTitle; StatusId = model.StatusId; } public CompanyVM GetViewModel => new() { Id = Id, Title = Title, StatusId = StatusId, StatusTitle = Status?.Title }; }