feat: Add discount module with protobuf definitions and gRPC services
This commit is contained in:
+2
-2
@@ -1,9 +1,9 @@
|
||||
using BackOffice.BFF.UserOrder.Protobuf.Protos.UserOrder;
|
||||
using MediatR;
|
||||
using BffProto = BackOffice.BFF.UserOrder.Protobuf.Protos.UserOrder;
|
||||
|
||||
namespace BackOffice.BFF.Application.UserOrderCQ.Commands.ApplyDiscountToOrder;
|
||||
|
||||
public record ApplyDiscountToOrderCommand : IRequest<ApplyDiscountToOrderResponse>
|
||||
public record ApplyDiscountToOrderCommand : IRequest<BffProto.ApplyDiscountToOrderResponse>
|
||||
{
|
||||
public long OrderId { get; init; }
|
||||
public long DiscountAmount { get; init; }
|
||||
|
||||
+6
-6
@@ -1,12 +1,12 @@
|
||||
using BackOffice.BFF.Application.Common.Interfaces;
|
||||
using BackOffice.BFF.UserOrder.Protobuf.Protos.UserOrder;
|
||||
using CMSMicroservice.Protobuf.Protos.UserOrder;
|
||||
using MediatR;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using BffProto = BackOffice.BFF.UserOrder.Protobuf.Protos.UserOrder;
|
||||
using CmsProto = CMSMicroservice.Protobuf.Protos.UserOrder;
|
||||
|
||||
namespace BackOffice.BFF.Application.UserOrderCQ.Commands.ApplyDiscountToOrder;
|
||||
|
||||
public class ApplyDiscountToOrderCommandHandler : IRequestHandler<ApplyDiscountToOrderCommand, ApplyDiscountToOrderResponse>
|
||||
public class ApplyDiscountToOrderCommandHandler : IRequestHandler<ApplyDiscountToOrderCommand, BffProto.ApplyDiscountToOrderResponse>
|
||||
{
|
||||
private readonly IApplicationContractContext _context;
|
||||
private readonly ILogger<ApplyDiscountToOrderCommandHandler> _logger;
|
||||
@@ -19,9 +19,9 @@ public class ApplyDiscountToOrderCommandHandler : IRequestHandler<ApplyDiscountT
|
||||
_logger = logger;
|
||||
}
|
||||
|
||||
public async Task<ApplyDiscountToOrderResponse> Handle(ApplyDiscountToOrderCommand request, CancellationToken cancellationToken)
|
||||
public async Task<BffProto.ApplyDiscountToOrderResponse> Handle(ApplyDiscountToOrderCommand request, CancellationToken cancellationToken)
|
||||
{
|
||||
var grpcRequest = new ApplyDiscountToOrderRequest
|
||||
var grpcRequest = new CmsProto.ApplyDiscountToOrderRequest
|
||||
{
|
||||
OrderId = request.OrderId,
|
||||
DiscountAmount = request.DiscountAmount,
|
||||
@@ -37,7 +37,7 @@ public class ApplyDiscountToOrderCommandHandler : IRequestHandler<ApplyDiscountT
|
||||
response.DiscountAmount,
|
||||
response.FinalAmount);
|
||||
|
||||
return new ApplyDiscountToOrderResponse
|
||||
return new BffProto.ApplyDiscountToOrderResponse
|
||||
{
|
||||
Success = response.Success,
|
||||
Message = response.Message,
|
||||
|
||||
+2
-2
@@ -1,9 +1,9 @@
|
||||
using BackOffice.BFF.UserOrder.Protobuf.Protos.UserOrder;
|
||||
using MediatR;
|
||||
using BffProto = BackOffice.BFF.UserOrder.Protobuf.Protos.UserOrder;
|
||||
|
||||
namespace BackOffice.BFF.Application.UserOrderCQ.Commands.CancelOrder;
|
||||
|
||||
public record CancelOrderCommand : IRequest<CancelOrderResponse>
|
||||
public record CancelOrderCommand : IRequest<BffProto.CancelOrderResponse>
|
||||
{
|
||||
public long OrderId { get; init; }
|
||||
public string CancelReason { get; init; } = string.Empty;
|
||||
|
||||
+6
-6
@@ -1,12 +1,12 @@
|
||||
using BackOffice.BFF.Application.Common.Interfaces;
|
||||
using BackOffice.BFF.UserOrder.Protobuf.Protos.UserOrder;
|
||||
using CMSMicroservice.Protobuf.Protos.UserOrder;
|
||||
using MediatR;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using BffProto = BackOffice.BFF.UserOrder.Protobuf.Protos.UserOrder;
|
||||
using CmsProto = CMSMicroservice.Protobuf.Protos.UserOrder;
|
||||
|
||||
namespace BackOffice.BFF.Application.UserOrderCQ.Commands.CancelOrder;
|
||||
|
||||
public class CancelOrderCommandHandler : IRequestHandler<CancelOrderCommand, CancelOrderResponse>
|
||||
public class CancelOrderCommandHandler : IRequestHandler<CancelOrderCommand, BffProto.CancelOrderResponse>
|
||||
{
|
||||
private readonly IApplicationContractContext _context;
|
||||
private readonly ILogger<CancelOrderCommandHandler> _logger;
|
||||
@@ -19,9 +19,9 @@ public class CancelOrderCommandHandler : IRequestHandler<CancelOrderCommand, Can
|
||||
_logger = logger;
|
||||
}
|
||||
|
||||
public async Task<CancelOrderResponse> Handle(CancelOrderCommand request, CancellationToken cancellationToken)
|
||||
public async Task<BffProto.CancelOrderResponse> Handle(CancelOrderCommand request, CancellationToken cancellationToken)
|
||||
{
|
||||
var grpcRequest = new CMSMicroservice.Protobuf.Protos.UserOrder.CancelOrderRequest
|
||||
var grpcRequest = new CmsProto.CancelOrderRequest
|
||||
{
|
||||
OrderId = request.OrderId,
|
||||
CancelReason = request.CancelReason ?? string.Empty,
|
||||
@@ -36,7 +36,7 @@ public class CancelOrderCommandHandler : IRequestHandler<CancelOrderCommand, Can
|
||||
response.Status,
|
||||
response.RefundProcessed);
|
||||
|
||||
return new CancelOrderResponse
|
||||
return new BffProto.CancelOrderResponse
|
||||
{
|
||||
OrderId = response.OrderId,
|
||||
Status = (int)response.Status,
|
||||
|
||||
+2
-2
@@ -1,9 +1,9 @@
|
||||
using BackOffice.BFF.UserOrder.Protobuf.Protos.UserOrder;
|
||||
using MediatR;
|
||||
using BffProto = BackOffice.BFF.UserOrder.Protobuf.Protos.UserOrder;
|
||||
|
||||
namespace BackOffice.BFF.Application.UserOrderCQ.Commands.UpdateOrderStatus;
|
||||
|
||||
public record UpdateOrderStatusCommand : IRequest<UpdateOrderStatusResponse>
|
||||
public record UpdateOrderStatusCommand : IRequest<BffProto.UpdateOrderStatusResponse>
|
||||
{
|
||||
public long OrderId { get; init; }
|
||||
public int NewStatus { get; init; }
|
||||
|
||||
+6
-6
@@ -1,12 +1,12 @@
|
||||
using BackOffice.BFF.Application.Common.Interfaces;
|
||||
using BackOffice.BFF.UserOrder.Protobuf.Protos.UserOrder;
|
||||
using CMSMicroservice.Protobuf.Protos.UserOrder;
|
||||
using MediatR;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using BffProto = BackOffice.BFF.UserOrder.Protobuf.Protos.UserOrder;
|
||||
using CmsProto = CMSMicroservice.Protobuf.Protos.UserOrder;
|
||||
|
||||
namespace BackOffice.BFF.Application.UserOrderCQ.Commands.UpdateOrderStatus;
|
||||
|
||||
public class UpdateOrderStatusCommandHandler : IRequestHandler<UpdateOrderStatusCommand, UpdateOrderStatusResponse>
|
||||
public class UpdateOrderStatusCommandHandler : IRequestHandler<UpdateOrderStatusCommand, BffProto.UpdateOrderStatusResponse>
|
||||
{
|
||||
private readonly IApplicationContractContext _context;
|
||||
private readonly ILogger<UpdateOrderStatusCommandHandler> _logger;
|
||||
@@ -19,9 +19,9 @@ public class UpdateOrderStatusCommandHandler : IRequestHandler<UpdateOrderStatus
|
||||
_logger = logger;
|
||||
}
|
||||
|
||||
public async Task<UpdateOrderStatusResponse> Handle(UpdateOrderStatusCommand request, CancellationToken cancellationToken)
|
||||
public async Task<BffProto.UpdateOrderStatusResponse> Handle(UpdateOrderStatusCommand request, CancellationToken cancellationToken)
|
||||
{
|
||||
var grpcRequest = new UpdateOrderStatusRequest
|
||||
var grpcRequest = new CmsProto.UpdateOrderStatusRequest
|
||||
{
|
||||
OrderId = request.OrderId,
|
||||
NewStatus = request.NewStatus
|
||||
@@ -36,7 +36,7 @@ public class UpdateOrderStatusCommandHandler : IRequestHandler<UpdateOrderStatus
|
||||
response.NewStatus,
|
||||
response.Success);
|
||||
|
||||
return new UpdateOrderStatusResponse
|
||||
return new BffProto.UpdateOrderStatusResponse
|
||||
{
|
||||
Success = response.Success,
|
||||
Message = response.Message,
|
||||
|
||||
+2
-2
@@ -1,9 +1,9 @@
|
||||
using BackOffice.BFF.UserOrder.Protobuf.Protos.UserOrder;
|
||||
using MediatR;
|
||||
using BffProto = BackOffice.BFF.UserOrder.Protobuf.Protos.UserOrder;
|
||||
|
||||
namespace BackOffice.BFF.Application.UserOrderCQ.Queries.CalculateOrderPV;
|
||||
|
||||
public record CalculateOrderPVQuery : IRequest<CalculateOrderPVResponse>
|
||||
public record CalculateOrderPVQuery : IRequest<BffProto.CalculateOrderPVResponse>
|
||||
{
|
||||
public long OrderId { get; init; }
|
||||
}
|
||||
|
||||
+7
-7
@@ -1,11 +1,11 @@
|
||||
using BackOffice.BFF.Application.Common.Interfaces;
|
||||
using BackOffice.BFF.UserOrder.Protobuf.Protos.UserOrder;
|
||||
using CMSMicroservice.Protobuf.Protos.UserOrder;
|
||||
using MediatR;
|
||||
using BffProto = BackOffice.BFF.UserOrder.Protobuf.Protos.UserOrder;
|
||||
using CmsProto = CMSMicroservice.Protobuf.Protos.UserOrder;
|
||||
|
||||
namespace BackOffice.BFF.Application.UserOrderCQ.Queries.CalculateOrderPV;
|
||||
|
||||
public class CalculateOrderPVQueryHandler : IRequestHandler<CalculateOrderPVQuery, CalculateOrderPVResponse>
|
||||
public class CalculateOrderPVQueryHandler : IRequestHandler<CalculateOrderPVQuery, BffProto.CalculateOrderPVResponse>
|
||||
{
|
||||
private readonly IApplicationContractContext _context;
|
||||
|
||||
@@ -14,16 +14,16 @@ public class CalculateOrderPVQueryHandler : IRequestHandler<CalculateOrderPVQuer
|
||||
_context = context;
|
||||
}
|
||||
|
||||
public async Task<CalculateOrderPVResponse> Handle(CalculateOrderPVQuery request, CancellationToken cancellationToken)
|
||||
public async Task<BffProto.CalculateOrderPVResponse> Handle(CalculateOrderPVQuery request, CancellationToken cancellationToken)
|
||||
{
|
||||
var grpcRequest = new CalculateOrderPVRequest
|
||||
var grpcRequest = new CmsProto.CalculateOrderPVRequest
|
||||
{
|
||||
OrderId = request.OrderId
|
||||
};
|
||||
|
||||
var response = await _context.UserOrders.CalculateOrderPVAsync(grpcRequest, cancellationToken: cancellationToken);
|
||||
|
||||
var result = new CalculateOrderPVResponse
|
||||
var result = new BffProto.CalculateOrderPVResponse
|
||||
{
|
||||
OrderId = response.OrderId,
|
||||
TotalPv = response.TotalPv
|
||||
@@ -31,7 +31,7 @@ public class CalculateOrderPVQueryHandler : IRequestHandler<CalculateOrderPVQuer
|
||||
|
||||
foreach (var product in response.Products)
|
||||
{
|
||||
result.Products.Add(new ProductPVDto
|
||||
result.Products.Add(new BffProto.ProductPVDto
|
||||
{
|
||||
ProductId = product.ProductId,
|
||||
ProductTitle = product.ProductTitle,
|
||||
|
||||
+2
-2
@@ -1,9 +1,9 @@
|
||||
using BackOffice.BFF.UserOrder.Protobuf.Protos.UserOrder;
|
||||
using MediatR;
|
||||
using BffProto = BackOffice.BFF.UserOrder.Protobuf.Protos.UserOrder;
|
||||
|
||||
namespace BackOffice.BFF.Application.UserOrderCQ.Queries.GetOrdersByDateRange;
|
||||
|
||||
public record GetOrdersByDateRangeQuery : IRequest<GetOrdersByDateRangeResponse>
|
||||
public record GetOrdersByDateRangeQuery : IRequest<BffProto.GetOrdersByDateRangeResponse>
|
||||
{
|
||||
public DateTime StartDate { get; init; }
|
||||
public DateTime EndDate { get; init; }
|
||||
|
||||
+10
-10
@@ -1,12 +1,12 @@
|
||||
using BackOffice.BFF.Application.Common.Interfaces;
|
||||
using BackOffice.BFF.UserOrder.Protobuf.Protos.UserOrder;
|
||||
using CMSMicroservice.Protobuf.Protos.UserOrder;
|
||||
using Google.Protobuf.WellKnownTypes;
|
||||
using MediatR;
|
||||
using BffProto = BackOffice.BFF.UserOrder.Protobuf.Protos.UserOrder;
|
||||
using CmsProto = CMSMicroservice.Protobuf.Protos.UserOrder;
|
||||
|
||||
namespace BackOffice.BFF.Application.UserOrderCQ.Queries.GetOrdersByDateRange;
|
||||
|
||||
public class GetOrdersByDateRangeQueryHandler : IRequestHandler<GetOrdersByDateRangeQuery, GetOrdersByDateRangeResponse>
|
||||
public class GetOrdersByDateRangeQueryHandler : IRequestHandler<GetOrdersByDateRangeQuery, BffProto.GetOrdersByDateRangeResponse>
|
||||
{
|
||||
private readonly IApplicationContractContext _context;
|
||||
|
||||
@@ -15,9 +15,9 @@ public class GetOrdersByDateRangeQueryHandler : IRequestHandler<GetOrdersByDateR
|
||||
_context = context;
|
||||
}
|
||||
|
||||
public async Task<GetOrdersByDateRangeResponse> Handle(GetOrdersByDateRangeQuery request, CancellationToken cancellationToken)
|
||||
public async Task<BffProto.GetOrdersByDateRangeResponse> Handle(GetOrdersByDateRangeQuery request, CancellationToken cancellationToken)
|
||||
{
|
||||
var grpcRequest = new GetOrdersByDateRangeRequest
|
||||
var grpcRequest = new CmsProto.GetOrdersByDateRangeRequest
|
||||
{
|
||||
StartDate = Timestamp.FromDateTime(request.StartDate.ToUniversalTime()),
|
||||
EndDate = Timestamp.FromDateTime(request.EndDate.ToUniversalTime()),
|
||||
@@ -27,19 +27,19 @@ public class GetOrdersByDateRangeQueryHandler : IRequestHandler<GetOrdersByDateR
|
||||
|
||||
if (request.Status.HasValue)
|
||||
{
|
||||
grpcRequest.Status = new Int32Value { Value = request.Status.Value };
|
||||
grpcRequest.Status = request.Status.Value;
|
||||
}
|
||||
|
||||
if (request.UserId.HasValue)
|
||||
{
|
||||
grpcRequest.UserId = new Int64Value { Value = request.UserId.Value };
|
||||
grpcRequest.UserId = request.UserId.Value;
|
||||
}
|
||||
|
||||
var response = await _context.UserOrders.GetOrdersByDateRangeAsync(grpcRequest, cancellationToken: cancellationToken);
|
||||
|
||||
var result = new GetOrdersByDateRangeResponse
|
||||
var result = new BffProto.GetOrdersByDateRangeResponse
|
||||
{
|
||||
MetaData = new MetaData
|
||||
MetaData = new BffProto.MetaData
|
||||
{
|
||||
CurrentPage = response.MetaData.CurrentPage,
|
||||
TotalPage = response.MetaData.TotalPage,
|
||||
@@ -52,7 +52,7 @@ public class GetOrdersByDateRangeQueryHandler : IRequestHandler<GetOrdersByDateR
|
||||
|
||||
foreach (var order in response.Orders)
|
||||
{
|
||||
result.Orders.Add(new OrderSummaryDto
|
||||
result.Orders.Add(new BffProto.OrderSummaryDto
|
||||
{
|
||||
OrderId = order.OrderId,
|
||||
OrderNumber = order.OrderNumber,
|
||||
|
||||
Reference in New Issue
Block a user