using System; using System.Collections.Generic; using Volo.Abp.Domain.Entities; using Volo.Abp.Domain.Entities.Auditing; namespace Kurs.Platform.Orders; public class Order : FullAuditedAggregateRoot { public Guid? TenantId { get; set; } public string InstitutionName { get; set; } public string Founder { get; set; } public long VknTckn { get; set; } public string TaxOffice { get; set; } public string Address { get; set; } public string Address2 { get; set; } public string District { get; set; } public string Country { get; set; } public string City { get; set; } public string PostalCode { get; set; } public long Phone { get; set; } public long Mobile { get; set; } public long Fax { get; set; } public string Email { get; set; } public string Website { get; set; } public List Items { get; set; } = new(); public decimal Subtotal { get; set; } public decimal Commission { get; set; } public decimal Total { get; set; } public string PaymentMethod { get; set; } public int? Installments { get; set; } public string? InstallmentName { get; set; } public string PaymentDataJson { get; set; } // JSON olarak saklanacak public Order() { } } public class OrderItem : FullAuditedAggregateRoot { public Guid OrderId { get; set; } public Order Order { get; set; } public Guid ProductId { get; set; } public string ProductName { get; set; } public string BillingCycle { get; set; } public int Quantity { get; set; } public decimal TotalPrice { get; set; } public OrderItem() { Id = Guid.NewGuid(); } }