Ugh
This commit is contained in:
@@ -42,8 +42,6 @@ public class CreateAddressHandler(
|
|||||||
var address = mapper.Map<Address>(request);
|
var address = mapper.Map<Address>(request);
|
||||||
|
|
||||||
address.UserId = userService.GetCurrentUserId()!;
|
address.UserId = userService.GetCurrentUserId()!;
|
||||||
address.CreatedAt = DateTime.UtcNow;
|
|
||||||
address.ModifiedAt = DateTime.UtcNow;
|
|
||||||
|
|
||||||
if (address.IsDefault)
|
if (address.IsDefault)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -9,10 +9,9 @@ namespace Imprink.Application.Commands.Orders;
|
|||||||
|
|
||||||
public class CreateOrderCommand : IRequest<OrderDto>
|
public class CreateOrderCommand : IRequest<OrderDto>
|
||||||
{
|
{
|
||||||
public decimal Amount { get; set; }
|
|
||||||
public int Quantity { get; set; }
|
public int Quantity { get; set; }
|
||||||
public Guid ProductId { get; set; }
|
public Guid ProductId { get; set; }
|
||||||
public Guid? ProductVariantId { get; set; }
|
public Guid ProductVariantId { get; set; }
|
||||||
public string? Notes { get; set; }
|
public string? Notes { get; set; }
|
||||||
public string? MerchantId { get; set; }
|
public string? MerchantId { get; set; }
|
||||||
public string? ComposingImageUrl { get; set; }
|
public string? ComposingImageUrl { get; set; }
|
||||||
@@ -41,6 +40,13 @@ public class CreateOrderHandler(IUnitOfWork uw, IMapper mapper, ICurrentUserServ
|
|||||||
order.OrderStatusId = 0;
|
order.OrderStatusId = 0;
|
||||||
order.ShippingStatusId = 0;
|
order.ShippingStatusId = 0;
|
||||||
|
|
||||||
|
var variant = uw.ProductVariantRepository.GetByIdAsync(request.ProductVariantId, cancellationToken).Result;
|
||||||
|
if (variant == null)
|
||||||
|
throw new NotFoundException("Product variant not found");
|
||||||
|
|
||||||
|
order.Amount = variant.Price * request.Quantity;
|
||||||
|
|
||||||
|
|
||||||
var createdOrder = await uw.OrderRepository.AddAsync(order, cancellationToken);
|
var createdOrder = await uw.OrderRepository.AddAsync(order, cancellationToken);
|
||||||
|
|
||||||
var orderAddress = new OrderAddress
|
var orderAddress = new OrderAddress
|
||||||
@@ -68,10 +74,10 @@ public class CreateOrderHandler(IUnitOfWork uw, IMapper mapper, ICurrentUserServ
|
|||||||
|
|
||||||
createdOrder.Product = (await uw.ProductRepository.GetByIdAsync(createdOrder.ProductId, cancellationToken))!;
|
createdOrder.Product = (await uw.ProductRepository.GetByIdAsync(createdOrder.ProductId, cancellationToken))!;
|
||||||
|
|
||||||
if (createdOrder.ProductVariantId.HasValue)
|
if (!createdOrder.ProductVariantId.HasValue)
|
||||||
{
|
throw new NotFoundException("Product variant not found");
|
||||||
createdOrder.ProductVariant = await uw.ProductVariantRepository.GetByIdAsync(createdOrder.ProductVariantId.Value, cancellationToken);
|
|
||||||
}
|
createdOrder.ProductVariant = await uw.ProductVariantRepository.GetByIdAsync(createdOrder.ProductVariantId.Value, cancellationToken);
|
||||||
|
|
||||||
await uw.SaveAsync(cancellationToken);
|
await uw.SaveAsync(cancellationToken);
|
||||||
|
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ namespace Imprink.Application.Commands.Orders;
|
|||||||
public class GetOrderByIdQuery : IRequest<OrderDto?>
|
public class GetOrderByIdQuery : IRequest<OrderDto?>
|
||||||
{
|
{
|
||||||
public Guid Id { get; set; }
|
public Guid Id { get; set; }
|
||||||
public bool IncludeDetails { get; set; } = false;
|
public bool IncludeDetails { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public class GetOrderByIdHandler(IUnitOfWork uw, IMapper mapper) : IRequestHandler<GetOrderByIdQuery, OrderDto?>
|
public class GetOrderByIdHandler(IUnitOfWork uw, IMapper mapper) : IRequestHandler<GetOrderByIdQuery, OrderDto?>
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ namespace Imprink.Application.Commands.Orders;
|
|||||||
public class GetOrdersByMerchantIdQuery : IRequest<IEnumerable<OrderDto>>
|
public class GetOrdersByMerchantIdQuery : IRequest<IEnumerable<OrderDto>>
|
||||||
{
|
{
|
||||||
public string MerchantId { get; set; } = null!;
|
public string MerchantId { get; set; } = null!;
|
||||||
public bool IncludeDetails { get; set; } = false;
|
public bool IncludeDetails { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public class GetOrdersByMerchantIdHandler(IUnitOfWork uw, IMapper mapper) : IRequestHandler<GetOrdersByMerchantIdQuery, IEnumerable<OrderDto>>
|
public class GetOrdersByMerchantIdHandler(IUnitOfWork uw, IMapper mapper) : IRequestHandler<GetOrdersByMerchantIdQuery, IEnumerable<OrderDto>>
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ namespace Imprink.Application.Commands.Orders;
|
|||||||
public class GetOrdersByUserIdQuery : IRequest<IEnumerable<OrderDto>>
|
public class GetOrdersByUserIdQuery : IRequest<IEnumerable<OrderDto>>
|
||||||
{
|
{
|
||||||
public string UserId { get; set; } = null!;
|
public string UserId { get; set; } = null!;
|
||||||
public bool IncludeDetails { get; set; } = false;
|
public bool IncludeDetails { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public class GetOrdersByUserIdHandler(IUnitOfWork uw, IMapper mapper) : IRequestHandler<GetOrdersByUserIdQuery, IEnumerable<OrderDto>>
|
public class GetOrdersByUserIdHandler(IUnitOfWork uw, IMapper mapper) : IRequestHandler<GetOrdersByUserIdQuery, IEnumerable<OrderDto>>
|
||||||
|
|||||||
Reference in New Issue
Block a user