From 678c4b719821d9cdedf45b61c07d6c09267d1400 Mon Sep 17 00:00:00 2001 From: gdlcf88 Date: Sun, 16 Apr 2023 00:30:01 +0800 Subject: [PATCH] Introduce `IOrderDiscount` --- .../Orders/Orders/Dtos/OrderDiscountDto.cs | 6 +++++- .../EShop/Orders/Orders/Dtos/OrderDto.cs | 13 +++++++----- .../OrdersApplicationAutoMapperProfile.cs | 4 ++-- .../EasyAbp/EShop/Orders/Orders/IOrder.cs | 2 ++ .../EShop/Orders/Orders/IOrderDiscount.cs | 13 ++++++++++++ .../EShop/Orders/Orders/OrderDiscountEto.cs | 21 +++++++++++++++++++ .../EasyAbp/EShop/Orders/Orders/OrderEto.cs | 3 +++ .../EasyAbp/EShop/Orders/Orders/Order.cs | 4 ++-- .../EShop/Orders/Orders/OrderDiscount.cs | 3 +-- .../Orders/OrdersDomainAutoMapperProfile.cs | 1 + 10 files changed, 58 insertions(+), 12 deletions(-) create mode 100644 modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain.Shared/EasyAbp/EShop/Orders/Orders/IOrderDiscount.cs create mode 100644 modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain.Shared/EasyAbp/EShop/Orders/Orders/OrderDiscountEto.cs diff --git a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application.Contracts/EasyAbp/EShop/Orders/Orders/Dtos/OrderDiscountDto.cs b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application.Contracts/EasyAbp/EShop/Orders/Orders/Dtos/OrderDiscountDto.cs index 5da4e150..233d969d 100644 --- a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application.Contracts/EasyAbp/EShop/Orders/Orders/Dtos/OrderDiscountDto.cs +++ b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application.Contracts/EasyAbp/EShop/Orders/Orders/Dtos/OrderDiscountDto.cs @@ -2,10 +2,14 @@ using System; namespace EasyAbp.EShop.Orders.Orders.Dtos; -public class OrderDiscountDto +public class OrderDiscountDto : IOrderDiscount { + public Guid OrderId { get; set; } + public Guid OrderLineId { get; set; } + public string EffectGroup { get; set; } + public string Name { get; set; } public string Key { get; set; } diff --git a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application.Contracts/EasyAbp/EShop/Orders/Orders/Dtos/OrderDto.cs b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application.Contracts/EasyAbp/EShop/Orders/Orders/Dtos/OrderDto.cs index 462871f2..be50e1f1 100644 --- a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application.Contracts/EasyAbp/EShop/Orders/Orders/Dtos/OrderDto.cs +++ b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application.Contracts/EasyAbp/EShop/Orders/Orders/Dtos/OrderDto.cs @@ -8,7 +8,7 @@ namespace EasyAbp.EShop.Orders.Orders.Dtos public class OrderDto : ExtensibleFullAuditedEntityDto, IOrder { public Guid StoreId { get; set; } - + public string OrderNumber { get; set; } public Guid CustomerUserId { get; set; } @@ -22,7 +22,7 @@ namespace EasyAbp.EShop.Orders.Orders.Dtos public decimal TotalDiscount { get; set; } public decimal TotalPrice { get; set; } - + public decimal ActualTotalPrice { get; set; } public decimal RefundAmount { get; set; } @@ -38,18 +38,21 @@ namespace EasyAbp.EShop.Orders.Orders.Dtos public DateTime? CompletionTime { get; set; } public DateTime? CanceledTime { get; set; } - + public string CancellationReason { get; set; } public DateTime? ReducedInventoryAfterPlacingTime { get; set; } - + public DateTime? ReducedInventoryAfterPaymentTime { get; set; } public DateTime? PaymentExpiration { get; set; } IEnumerable IOrder.OrderLines => OrderLines; public List OrderLines { get; set; } - + + IEnumerable IOrder.OrderDiscounts => OrderDiscounts; + public List OrderDiscounts { get; set; } + IEnumerable IOrder.OrderExtraFees => OrderExtraFees; public List OrderExtraFees { get; set; } } diff --git a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application/EasyAbp/EShop/Orders/OrdersApplicationAutoMapperProfile.cs b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application/EasyAbp/EShop/Orders/OrdersApplicationAutoMapperProfile.cs index f7427807..3b431128 100644 --- a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application/EasyAbp/EShop/Orders/OrdersApplicationAutoMapperProfile.cs +++ b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application/EasyAbp/EShop/Orders/OrdersApplicationAutoMapperProfile.cs @@ -14,8 +14,8 @@ namespace EasyAbp.EShop.Orders * into multiple profile classes for a better organization. */ CreateMap(); CreateMap(); - CreateMap(MemberList.Destination); - CreateMap(MemberList.Destination); + CreateMap(); + CreateMap(); } } } diff --git a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain.Shared/EasyAbp/EShop/Orders/Orders/IOrder.cs b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain.Shared/EasyAbp/EShop/Orders/Orders/IOrder.cs index 4b3ed8bf..a958e6b2 100644 --- a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain.Shared/EasyAbp/EShop/Orders/Orders/IOrder.cs +++ b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain.Shared/EasyAbp/EShop/Orders/Orders/IOrder.cs @@ -58,6 +58,8 @@ namespace EasyAbp.EShop.Orders.Orders IEnumerable OrderLines { get; } + IEnumerable OrderDiscounts { get; } + IEnumerable OrderExtraFees { get; } } } \ No newline at end of file diff --git a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain.Shared/EasyAbp/EShop/Orders/Orders/IOrderDiscount.cs b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain.Shared/EasyAbp/EShop/Orders/Orders/IOrderDiscount.cs new file mode 100644 index 00000000..288d2ac7 --- /dev/null +++ b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain.Shared/EasyAbp/EShop/Orders/Orders/IOrderDiscount.cs @@ -0,0 +1,13 @@ +using System; +using EasyAbp.EShop.Products.Products; + +namespace EasyAbp.EShop.Orders.Orders; + +public interface IOrderDiscount : IDiscountInfo +{ + Guid OrderId { get; } + + Guid OrderLineId { get; } + + decimal DiscountedAmount { get; } +} \ No newline at end of file diff --git a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain.Shared/EasyAbp/EShop/Orders/Orders/OrderDiscountEto.cs b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain.Shared/EasyAbp/EShop/Orders/Orders/OrderDiscountEto.cs new file mode 100644 index 00000000..53943fe2 --- /dev/null +++ b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain.Shared/EasyAbp/EShop/Orders/Orders/OrderDiscountEto.cs @@ -0,0 +1,21 @@ +using System; + +namespace EasyAbp.EShop.Orders.Orders; + +[Serializable] +public class OrderDiscountEto : IOrderDiscount +{ + public Guid OrderId { get; set; } + + public Guid OrderLineId { get; set; } + + public string EffectGroup { get; set; } + + public string Name { get; set; } + + public string Key { get; set; } + + public string DisplayName { get; set; } + + public decimal DiscountedAmount { get; set; } +} \ No newline at end of file diff --git a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain.Shared/EasyAbp/EShop/Orders/Orders/OrderEto.cs b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain.Shared/EasyAbp/EShop/Orders/Orders/OrderEto.cs index e9ea4c98..7532b433 100644 --- a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain.Shared/EasyAbp/EShop/Orders/Orders/OrderEto.cs +++ b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain.Shared/EasyAbp/EShop/Orders/Orders/OrderEto.cs @@ -57,6 +57,9 @@ namespace EasyAbp.EShop.Orders.Orders IEnumerable IOrder.OrderLines => OrderLines; public List OrderLines { get; set; } + IEnumerable IOrder.OrderDiscounts => OrderDiscounts; + public List OrderDiscounts { get; set; } + IEnumerable IOrder.OrderExtraFees => OrderExtraFees; public List OrderExtraFees { get; set; } diff --git a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain/EasyAbp/EShop/Orders/Orders/Order.cs b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain/EasyAbp/EShop/Orders/Orders/Order.cs index 53a168f4..c7c94e58 100644 --- a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain/EasyAbp/EShop/Orders/Orders/Order.cs +++ b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain/EasyAbp/EShop/Orders/Orders/Order.cs @@ -56,10 +56,10 @@ namespace EasyAbp.EShop.Orders.Orders IEnumerable IOrder.OrderLines => OrderLines; public virtual List OrderLines { get; protected set; } - IEnumerable IOrder.OrderExtraFees => OrderExtraFees; - + IEnumerable IOrder.OrderDiscounts => OrderDiscounts; public virtual List OrderDiscounts { get; protected set; } + IEnumerable IOrder.OrderExtraFees => OrderExtraFees; public virtual List OrderExtraFees { get; protected set; } protected Order() diff --git a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain/EasyAbp/EShop/Orders/Orders/OrderDiscount.cs b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain/EasyAbp/EShop/Orders/Orders/OrderDiscount.cs index 8558c8e6..35fc73c1 100644 --- a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain/EasyAbp/EShop/Orders/Orders/OrderDiscount.cs +++ b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain/EasyAbp/EShop/Orders/Orders/OrderDiscount.cs @@ -1,11 +1,10 @@ using System; -using EasyAbp.EShop.Products.Products; using JetBrains.Annotations; using Volo.Abp.Domain.Entities; namespace EasyAbp.EShop.Orders.Orders; -public class OrderDiscount : Entity, IDiscountInfo +public class OrderDiscount : Entity, IOrderDiscount { public virtual Guid OrderId { get; protected set; } diff --git a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain/EasyAbp/EShop/Orders/OrdersDomainAutoMapperProfile.cs b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain/EasyAbp/EShop/Orders/OrdersDomainAutoMapperProfile.cs index 3d74d29c..4b0cac9c 100644 --- a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain/EasyAbp/EShop/Orders/OrdersDomainAutoMapperProfile.cs +++ b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain/EasyAbp/EShop/Orders/OrdersDomainAutoMapperProfile.cs @@ -12,6 +12,7 @@ namespace EasyAbp.EShop.Orders * into multiple profile classes for a better organization. */ CreateMap(); CreateMap(); + CreateMap(); CreateMap(); } }