ProjectLib/ProjectLibrary/Entites/Orders.cs

63 lines
1.8 KiB
C#

using DocumentFormat.OpenXml.Office2010.Excel;
using Microsoft.VisualBasic;
using ProjectLibrary.Entities;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ProjectLibrary.Entites
{
public class Orders
{
public int Id { get; private set; }
[DisplayName("Дата взятия книги")]
public DateTime OrderDate { get; private set; }
[DisplayName("Дата зврата книги")]
public DateTime ReturnDate { get; private set; }
[Browsable(false)]
public int ReaderID { get; private set; }
[DisplayName("ФИО читателя")]
public string ReaderName { get; private set; }
public string BookName { get; set; }
[Browsable(false)]
public IEnumerable<Book_Orders> BookOrders
{
get;
private set;
} = [];
[DisplayName("Отданные книги")]
public string BookOrdersing => BookOrders != null ?
string.Join(", ", BookOrders.Select(x => $"{x.BookID}({x.Count})")) :
string.Empty;
public static Orders CreateEntity(int id, DateTime returnDate, int readerID, IEnumerable<Book_Orders> bookOrders)
{
return new Orders
{
Id = id,
OrderDate = DateTime.Now,
ReturnDate = returnDate,
ReaderID = readerID,
BookOrders = bookOrders
};
}
public void SetOrdersOfBooks(IEnumerable<Book_Orders> book_Orders)
{
if (book_Orders != null && book_Orders.Any())
{
BookOrders = book_Orders;
}
}
}
}