Case_accounting/CaseAccounting/CaseAccountingContracts/BindingModels/LawyerBindingModel.cs

48 lines
1.4 KiB
C#

using CaseAccountingContracts.ViewModels;
using CaseAccountingDataModels.Models;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading.Tasks;
namespace CaseAccountingContracts.BindingModels
{
public class LawyerBindingModel : ILawyerModel
{
public string Name { get; set; } = string.Empty;
public string Surname { get; set; } = string.Empty;
public string Patronymic { get; set; } = string.Empty;
public int Experience { get; set; }
public int? SpecializationId { get; set; }
public int UserId { get; set; }
public int Id { get; set; }
public Dictionary<int, ICaseModel> Cases { get; set; } = new();
public List<CaseViewModel> CaseViewModels { get; set; } = new();
public Dictionary<int, IContractModel> Contracts { get; set; } = new();
public List<ContractViewModel> ContractViewModels { get; set; } = new();
public LawyerBindingModel() { }
[JsonConstructor]
public LawyerBindingModel(Dictionary<int, ContractViewModel> Contracts, Dictionary<int, CaseViewModel> Cases)
{
this.Contracts = Contracts.ToDictionary(x => x.Key, x => (IContractModel)x.Value);
this.Cases = Cases.ToDictionary(x => x.Key, x => (ICaseModel)x.Value);
}
}
}