This commit is contained in:
MeysamMoghaddam
2025-10-13 07:43:24 +03:30
parent f77e1957ee
commit a9335c6de1
5 changed files with 33 additions and 12 deletions

View File

@@ -1,16 +1,23 @@
using CMSMicroservice.Protobuf.Protos.UserAddress;
namespace FrontOffice.BFF.Application.UserAddressCQ.Commands.CreateNewUserAddress;
public class CreateNewUserAddressCommandHandler : IRequestHandler<CreateNewUserAddressCommand, CreateNewUserAddressResponseDto>
{
private readonly IApplicationContractContext _context;
private readonly ICurrentUserService _currentUserService;
public CreateNewUserAddressCommandHandler(IApplicationContractContext context)
public CreateNewUserAddressCommandHandler(IApplicationContractContext context, ICurrentUserService currentUserService)
{
_context = context;
_currentUserService = currentUserService;
}
public async Task<CreateNewUserAddressResponseDto> Handle(CreateNewUserAddressCommand request, CancellationToken cancellationToken)
{
//TODO: Implement your business logic
return new CreateNewUserAddressResponseDto();
var userId = _currentUserService.UserId ?? throw new ForbiddenAccessException();
var req = request.Adapt<CreateNewUserAddressRequest>();
req.UserId = long.Parse(userId);
var response = await _context.UserAddress.CreateNewUserAddressAsync(request: req, cancellationToken: cancellationToken);
return response.Adapt<CreateNewUserAddressResponseDto>();
}
}

View File

@@ -1,3 +1,5 @@
using CMSMicroservice.Protobuf.Protos.UserAddress;
namespace FrontOffice.BFF.Application.UserAddressCQ.Commands.DeleteUserAddress;
public class DeleteUserAddressCommandHandler : IRequestHandler<DeleteUserAddressCommand, Unit>
{
@@ -10,7 +12,7 @@ public class DeleteUserAddressCommandHandler : IRequestHandler<DeleteUserAddress
public async Task<Unit> Handle(DeleteUserAddressCommand request, CancellationToken cancellationToken)
{
//TODO: Implement your business logic
return new Unit();
await _context.UserAddress.DeleteUserAddressAsync(request: request.Adapt<DeleteUserAddressRequest>(), cancellationToken: cancellationToken);
return Unit.Value;
}
}

View File

@@ -1,3 +1,5 @@
using CMSMicroservice.Protobuf.Protos.UserAddress;
namespace FrontOffice.BFF.Application.UserAddressCQ.Commands.UpdateUserAddress;
public class UpdateUserAddressCommandHandler : IRequestHandler<UpdateUserAddressCommand, Unit>
{
@@ -10,7 +12,7 @@ public class UpdateUserAddressCommandHandler : IRequestHandler<UpdateUserAddress
public async Task<Unit> Handle(UpdateUserAddressCommand request, CancellationToken cancellationToken)
{
//TODO: Implement your business logic
return new Unit();
await _context.UserAddress.UpdateUserAddressAsync(request: request.Adapt<UpdateUserAddressRequest>(), cancellationToken: cancellationToken);
return Unit.Value;
}
}

View File

@@ -1,16 +1,24 @@
using CMSMicroservice.Protobuf.Protos.UserAddress;
namespace FrontOffice.BFF.Application.UserAddressCQ.Queries.GetAllUserAddressByFilter;
public class GetAllUserAddressByFilterQueryHandler : IRequestHandler<GetAllUserAddressByFilterQuery, GetAllUserAddressByFilterResponseDto>
{
private readonly IApplicationContractContext _context;
private readonly ICurrentUserService _currentUserService;
public GetAllUserAddressByFilterQueryHandler(IApplicationContractContext context)
public GetAllUserAddressByFilterQueryHandler(IApplicationContractContext context, ICurrentUserService currentUserService)
{
_context = context;
_currentUserService = currentUserService;
}
public async Task<GetAllUserAddressByFilterResponseDto> Handle(GetAllUserAddressByFilterQuery request, CancellationToken cancellationToken)
{
//TODO: Implement your business logic
return new GetAllUserAddressByFilterResponseDto();
var userId = _currentUserService.UserId ?? throw new ForbiddenAccessException();
var req = request.Adapt<GetAllUserAddressByFilterRequest>();
req.Filter ??= new();
req.Filter.UserId = long.Parse(userId);
var response = await _context.UserAddress.GetAllUserAddressByFilterAsync(request: req, cancellationToken: cancellationToken);
return response.Adapt<GetAllUserAddressByFilterResponseDto>();
}
}

View File

@@ -1,3 +1,5 @@
using CMSMicroservice.Protobuf.Protos.UserAddress;
namespace FrontOffice.BFF.Application.UserAddressCQ.Queries.GetUserAddress;
public class GetUserAddressQueryHandler : IRequestHandler<GetUserAddressQuery, GetUserAddressResponseDto>
{
@@ -10,7 +12,7 @@ public class GetUserAddressQueryHandler : IRequestHandler<GetUserAddressQuery, G
public async Task<GetUserAddressResponseDto> Handle(GetUserAddressQuery request, CancellationToken cancellationToken)
{
//TODO: Implement your business logic
return new GetUserAddressResponseDto();
var response = await _context.UserAddress.GetUserAddressAsync(request: request.Adapt<GetUserAddressRequest>(), cancellationToken: cancellationToken);
return response.Adapt<GetUserAddressResponseDto>();
}
}