DataMember

This commit is contained in:
maxnes3 2023-05-04 23:47:03 +04:00
parent 30d1082058
commit 55ab64bf1b
12 changed files with 95 additions and 40 deletions

View File

@ -8,20 +8,25 @@ using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Runtime.Serialization;
namespace ComputersShopDataBaseImplement.Models
{
[DataContract]
public class Client : IClientModel
{
[Required]
[DataMember]
public string ClientFIO { get; set; } = string.Empty;
[Required]
[DataMember]
public string Email { get; set; } = string.Empty;
[Required]
[DataMember]
public string Password { get; set; } = string.Empty;
[DataMember]
public int Id { get; set; }
[ForeignKey("ClientId")]

View File

@ -9,16 +9,21 @@ using System.Text;
using System.Threading.Tasks;
using ComputersShopContracts.BindingModels;
using ComputersShopContracts.ViewModels;
using System.Runtime.Serialization;
namespace ComputersShopDataBaseImplement.Models
{
public class Component : IComponentModel
[DataContract]
public class Component : IComponentModel
{
[DataMember]
public int Id { get; private set; }
[Required]
public string ComponentName { get; private set; } = string.Empty;
[DataMember]
public string ComponentName { get; private set; } = string.Empty;
[Required]
public double Cost { get; set; }
[DataMember]
public double Cost { get; set; }
[ForeignKey("ComponentId")]
public virtual List<ComputerComponent> ComputerComponents { get; set; } = new();
public static Component? Create(ComponentBindingModel model)

View File

@ -8,16 +8,21 @@ using System.Text;
using System.Threading.Tasks;
using ComputersShopContracts.BindingModels;
using ComputersShopContracts.ViewModels;
using System.Runtime.Serialization;
namespace ComputersShopDataBaseImplement.Models
{
[DataContract]
public class Computer : IComputerModel
{
public int Id { get; set; }
[DataMember]
public int Id { get; set; }
[Required]
public string ComputerName { get; set; } = string.Empty;
[DataMember]
public string ComputerName { get; set; } = string.Empty;
[Required]
public double Price { get; set; }
[DataMember]
public double Price { get; set; }
private Dictionary<int, (IComponentModel, int)>? _ComputerComponents = null;
[NotMapped]
public Dictionary<int, (IComponentModel, int)> ComputerComponents

View File

@ -8,24 +8,31 @@ using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Runtime.Serialization;
namespace ComputersShopDataBaseImplement.Models
{
[DataContract]
public class Implementer : IImplementerModel
{
public int Id { get; set; }
[DataMember]
public int Id { get; set; }
[Required]
public string ImplementerFIO { get; set; } = string.Empty;
[DataMember]
public string ImplementerFIO { get; set; } = string.Empty;
[Required]
public string Password { get; set; } = string.Empty;
[DataMember]
public string Password { get; set; } = string.Empty;
[Required]
public int WorkExperience { get; set; }
[DataMember]
public int WorkExperience { get; set; }
[Required]
public int Qualification { get; set; }
[DataMember]
public int Qualification { get; set; }
[ForeignKey("ImplementerId")]
public virtual List<Order> Orders { get; set; } = new();

View File

@ -5,6 +5,7 @@ using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
@ -13,7 +14,8 @@ namespace ComputersShopDataBaseImplement.Models
public class Message : IMessageInfoModel
{
[Key]
public string MessageId { get; private set; } = string.Empty;
[DataMember]
public string MessageId { get; private set; } = string.Empty;
public int? ClientId { get; private set; }

View File

@ -7,27 +7,36 @@ using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Reflection.Metadata;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace ComputersShopDataBaseImplement.Models
{
[DataContract]
public class Order : IOrderModel
{
[Required]
[DataMember]
public int ComputerId { get; set; }
[Required]
[DataMember]
public int ClientId { get; private set; }
public int? ImplementerId { get; set; }
[DataMember]
public int? ImplementerId { get; set; }
[Required]
[DataMember]
public int Count { get; set; }
[Required]
[DataMember]
public double Sum { get; set; }
[Required]
[DataMember]
public OrderStatus Status { get; set; }
[Required]
[DataMember]
public DateTime DateCreate { get; set; }
[DataMember]
public DateTime? DateImplement { get; set; }
public virtual Computer Computer { get; set; }
public virtual Client Client { get; set; }

View File

@ -4,20 +4,23 @@ using ComputersShopDataModels.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
using System.Xml.Linq;
namespace ComputersShopFileImplement.Models
{
[DataContract]
public class Client : IClientModel
{
[DataMember]
public string ClientFIO { get; private set; } = string.Empty;
[DataMember]
public string Email { get; private set; } = string.Empty;
[DataMember]
public string Password { get; private set; } = string.Empty;
[DataMember]
public int Id { get; private set; }
public static Client? Create(ClientBindingModel model)

View File

@ -4,16 +4,21 @@ using ComputersShopDataModels.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
using System.Xml.Linq;
namespace ComputersShopFileImplement.Models
{
[DataContract]
public class Component : IComponentModel
{
[DataMember]
public int Id { get; private set; }
[DataMember]
public string ComponentName { get; private set; } = string.Empty;
[DataMember]
public double Cost { get; set; }
public static Component? Create(ComponentBindingModel model)
{

View File

@ -4,16 +4,21 @@ using ComputersShopDataModels.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
using System.Xml.Linq;
namespace ComputersShopFileImplement.Models
{
[DataContract]
public class Computer : IComputerModel
{
[DataMember]
public int Id { get; private set; }
[DataMember]
public string ComputerName { get; private set; } = string.Empty;
[DataMember]
public double Price { get; private set; }
public Dictionary<int, int> Components { get; private set; } = new();
private Dictionary<int, (IComponentModel, int)>? _ComputerComponents = null;

View File

@ -4,23 +4,26 @@ using ComputersShopDataModels.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
using System.Xml.Linq;
namespace ComputersShopFileImplement.Models
{
[DataContract]
public class Implementer : IImplementerModel
{
[DataMember]
public string ImplementerFIO { get; set; } = string.Empty;
[DataMember]
public string Password { get; set; } = string.Empty;
public int WorkExperience { get; set; }
public int Qualification { get; set; }
public int Id { get; set; }
[DataMember]
public int WorkExperience { get; set; }
[DataMember]
public int Qualification { get; set; }
[DataMember]
public int Id { get; set; }
public static Implementer? Create(ImplementerBindingModel? model)
{

View File

@ -4,24 +4,27 @@ using ComputersShopDataModels.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
using System.Xml.Linq;
namespace ComputersShopFileImplement.Models
{
[DataContract]
public class Message : IMessageInfoModel
{
[DataMember]
public string MessageId { get; private set; } = string.Empty;
[DataMember]
public int? ClientId { get; private set; }
[DataMember]
public string SenderName { get; private set; } = string.Empty;
[DataMember]
public DateTime DateDelivery { get; private set; } = DateTime.Now;
[DataMember]
public string Subject { get; private set; } = string.Empty;
[DataMember]
public string Body { get; private set; } = string.Empty;
public int Id => throw new NotImplementedException();

View File

@ -5,30 +5,33 @@ using ComputersShopDataModels.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
using System.Xml.Linq;
namespace ComputersShopFileImplement.Models
{
[DataContract]
public class Order : IOrderModel
{
[DataMember]
public int ComputerId { get; private set; }
[DataMember]
public int ClientId { get; set; }
public int? ImplementerId { get; private set; }
public int Count { get; private set; }
[DataMember]
public int? ImplementerId { get; private set; }
[DataMember]
public int Count { get; private set; }
[DataMember]
public double Sum { get; private set; }
[DataMember]
public OrderStatus Status { get; private set; } = OrderStatus.Неизвестен;
[DataMember]
public DateTime DateCreate { get; private set; } = DateTime.SpecifyKind(DateTime.Now, DateTimeKind.Utc);
[DataMember]
public DateTime? DateImplement { get; private set; }
[DataMember]
public int Id { get; private set; }
public static Order? Create(OrderBindingModel? model)