From 1078244eebf8dfb26cd6ca6d315f1d9a723ddd24 Mon Sep 17 00:00:00 2001 From: sanchezvem Date: Fri, 26 Sep 2025 16:18:22 +0100 Subject: [PATCH] Creating all entities for subject 2 --- PyroFetes/Models/Deliverer.cs | 11 +++++++++++ PyroFetes/Models/DeliveryNote.cs | 15 +++++++++++++++ PyroFetes/Models/Price.cs | 15 +++++++++++++++ PyroFetes/Models/ProductDelivery.cs | 16 ++++++++++++++++ PyroFetes/Models/PurchaseOrder.cs | 9 +++++++++ PyroFetes/Models/PurchaseProduct.cs | 16 ++++++++++++++++ PyroFetes/Models/Quotation.cs | 10 ++++++++++ PyroFetes/Models/QuotationProduct.cs | 15 +++++++++++++++ PyroFetes/Models/Setting.cs | 10 ++++++++++ PyroFetes/Models/Supplier.cs | 16 ++++++++++++++++ PyroFetes/Models/User.cs | 13 +++++++++++++ PyroFetes/PyroFetes.csproj | 4 ---- 12 files changed, 146 insertions(+), 4 deletions(-) create mode 100644 PyroFetes/Models/Deliverer.cs create mode 100644 PyroFetes/Models/DeliveryNote.cs create mode 100644 PyroFetes/Models/Price.cs create mode 100644 PyroFetes/Models/ProductDelivery.cs create mode 100644 PyroFetes/Models/PurchaseOrder.cs create mode 100644 PyroFetes/Models/PurchaseProduct.cs create mode 100644 PyroFetes/Models/Quotation.cs create mode 100644 PyroFetes/Models/QuotationProduct.cs create mode 100644 PyroFetes/Models/Setting.cs create mode 100644 PyroFetes/Models/Supplier.cs create mode 100644 PyroFetes/Models/User.cs diff --git a/PyroFetes/Models/Deliverer.cs b/PyroFetes/Models/Deliverer.cs new file mode 100644 index 0000000..2897ef9 --- /dev/null +++ b/PyroFetes/Models/Deliverer.cs @@ -0,0 +1,11 @@ +using System.ComponentModel.DataAnnotations; + +namespace PyroFetes.Models; + +public class Deliverer +{ + [Key] public int Id { get; set; } + [Required] public string? Transporter { get; set; } + + public List? DeliveryNotes { get; set; } +} \ No newline at end of file diff --git a/PyroFetes/Models/DeliveryNote.cs b/PyroFetes/Models/DeliveryNote.cs new file mode 100644 index 0000000..eb7e70a --- /dev/null +++ b/PyroFetes/Models/DeliveryNote.cs @@ -0,0 +1,15 @@ +using System.ComponentModel.DataAnnotations; + +namespace PyroFetes.Models; + +public class DeliveryNote +{ + [Key] public int Id { get; set; } + [Required] public string? TrackingNumber { get; set; } + public int DelivererId { get; set; } + [Required] public DateOnly EstimateDeliveryDate { get; set; } + [Required] public DateOnly ExpeditionDate { get; set; } + [Required] public DateOnly RealDeliveryDate { get; set; } + + public Deliverer? Deliverer { get; set; } +} \ No newline at end of file diff --git a/PyroFetes/Models/Price.cs b/PyroFetes/Models/Price.cs new file mode 100644 index 0000000..7c787bb --- /dev/null +++ b/PyroFetes/Models/Price.cs @@ -0,0 +1,15 @@ +using System.ComponentModel.DataAnnotations; +using Microsoft.EntityFrameworkCore; + +namespace PyroFetes.Models; + +[PrimaryKey(nameof(ProductId), nameof(SupplierId))] +public class Price +{ + [Required] public int ProductId { get; set; } + [Required] public int SupplierId { get; set; } + [Required] public decimal SellingPrice { get; set; } + + public Product? Product { get; set; } + public Supplier? Supplier { get; set; } +} \ No newline at end of file diff --git a/PyroFetes/Models/ProductDelivery.cs b/PyroFetes/Models/ProductDelivery.cs new file mode 100644 index 0000000..1151585 --- /dev/null +++ b/PyroFetes/Models/ProductDelivery.cs @@ -0,0 +1,16 @@ +using System.ComponentModel.DataAnnotations; +using Microsoft.EntityFrameworkCore; + +namespace PyroFetes.Models; + +[PrimaryKey(nameof(ProductId), nameof(DeliveryNoteId))] +public class ProductDelivery +{ + [Required] public int ProductId { get; set; } + [Required] public int DeliveryNoteId { get; set; } + [Required] public int Quantity { get; set; } + + public Product? Product { get; set; } + public DeliveryNote? DeliveryNote { get; set; } +} + \ No newline at end of file diff --git a/PyroFetes/Models/PurchaseOrder.cs b/PyroFetes/Models/PurchaseOrder.cs new file mode 100644 index 0000000..3c997e9 --- /dev/null +++ b/PyroFetes/Models/PurchaseOrder.cs @@ -0,0 +1,9 @@ +using System.ComponentModel.DataAnnotations; + +namespace PyroFetes.Models; + +public class PurchaseOrder +{ + [Key] public int Id { get; set; } + [Required] public string? PurchaseConditions { get; set; } +} \ No newline at end of file diff --git a/PyroFetes/Models/PurchaseProduct.cs b/PyroFetes/Models/PurchaseProduct.cs new file mode 100644 index 0000000..c335ede --- /dev/null +++ b/PyroFetes/Models/PurchaseProduct.cs @@ -0,0 +1,16 @@ +using System.ComponentModel.DataAnnotations; +using Microsoft.EntityFrameworkCore; + +namespace PyroFetes.Models; + +[PrimaryKey(nameof(ProductId), nameof(PurchaseOrderId))] +public class PurchaseProduct +{ + public Product? Product { get; set; } + [Required] public int ProductId { get; set; } + + public PurchaseOrder? PurchaseOrder { get; set; } + [Required] public int PurchaseOrderId { get; set; } + + [Required] public int Quantity { get; set; } +} \ No newline at end of file diff --git a/PyroFetes/Models/Quotation.cs b/PyroFetes/Models/Quotation.cs new file mode 100644 index 0000000..aadf24f --- /dev/null +++ b/PyroFetes/Models/Quotation.cs @@ -0,0 +1,10 @@ +using System.ComponentModel.DataAnnotations; + +namespace PyroFetes.Models; + +public class Quotation +{ + [Key] public int Id { get; set; } + [Required] public string? Message { get; set; } + [Required] public string? ConditionsSale { get; set; } +} \ No newline at end of file diff --git a/PyroFetes/Models/QuotationProduct.cs b/PyroFetes/Models/QuotationProduct.cs new file mode 100644 index 0000000..8e2f3bb --- /dev/null +++ b/PyroFetes/Models/QuotationProduct.cs @@ -0,0 +1,15 @@ +using System.ComponentModel.DataAnnotations; +using Microsoft.EntityFrameworkCore; + +namespace PyroFetes.Models; + +[PrimaryKey(nameof(ProductId), nameof(QuotationId))] +public class QuotationProduct +{ + [Required] public int ProductId { get; set; } + [Required] public int QuotationId { get; set; } + [Required] public int Quantity { get; set; } + + public Product? Product { get; set; } + public Quotation? Quotation { get; set; } +} \ No newline at end of file diff --git a/PyroFetes/Models/Setting.cs b/PyroFetes/Models/Setting.cs new file mode 100644 index 0000000..0759032 --- /dev/null +++ b/PyroFetes/Models/Setting.cs @@ -0,0 +1,10 @@ +using System.ComponentModel.DataAnnotations; + +namespace PyroFetes.Models; + +public class Setting +{ + [Key] public int Id { get; set; } + [Required] public string? Logo { get; set; } + [Required] public string? ElectronicSignature { get; set; } +} \ No newline at end of file diff --git a/PyroFetes/Models/Supplier.cs b/PyroFetes/Models/Supplier.cs new file mode 100644 index 0000000..fc68d5b --- /dev/null +++ b/PyroFetes/Models/Supplier.cs @@ -0,0 +1,16 @@ +using System.ComponentModel.DataAnnotations; +using Microsoft.EntityFrameworkCore.Metadata.Internal; + +namespace PyroFetes.Models; + +public class Supplier +{ + [Key] public int Id { get; set; } + [Required, MaxLength(100)] public string? Name { get; set; } + [Required] public string? Email { get; set; } + [Required] public string? Phone { get; set; } + [Required] public string? Address { get; set; } + [Required] public int ZipCode { get; set; } + [Required] public string? City { get; set; } + [Required] public int DeliveryDelay { get; set; } +} \ No newline at end of file diff --git a/PyroFetes/Models/User.cs b/PyroFetes/Models/User.cs new file mode 100644 index 0000000..a768a48 --- /dev/null +++ b/PyroFetes/Models/User.cs @@ -0,0 +1,13 @@ +using System.ComponentModel.DataAnnotations; + +namespace PyroFetes.Models; + +public class User +{ + [Key] public int Id { get; set; } + [Required, MaxLength(100)] public string? Name { get; set; } + [Required, MinLength(12)] public string? Password { get; set; } + [Required] public string? Salt { get; set; } + [Required] public string? Email { get; set; } + [Required] public string? Fonction { get; set; } +} \ No newline at end of file diff --git a/PyroFetes/PyroFetes.csproj b/PyroFetes/PyroFetes.csproj index f2a584c..60e4770 100644 --- a/PyroFetes/PyroFetes.csproj +++ b/PyroFetes/PyroFetes.csproj @@ -17,8 +17,4 @@ - - - -