This commit is contained in:
masoodafar-web
2025-11-17 20:39:31 +03:30
parent 12bb40e0ee
commit 76321f4297
4 changed files with 1004 additions and 670 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +1,6 @@
using CMSMicroservice.Protobuf.Protos.OtpToken; using CMSMicroservice.Protobuf.Protos.OtpToken;
using CMSMicroservice.Protobuf.Protos.Package; using CMSMicroservice.Protobuf.Protos.Package;
using CMSMicroservice.Protobuf.Protos.Products;
using CMSMicroservice.Protobuf.Protos.User; using CMSMicroservice.Protobuf.Protos.User;
using CMSMicroservice.Protobuf.Protos.UserAddress; using CMSMicroservice.Protobuf.Protos.UserAddress;
using CMSMicroservice.Protobuf.Protos.UserContract; using CMSMicroservice.Protobuf.Protos.UserContract;
@@ -18,6 +19,7 @@ public interface IApplicationContractContext
#region CMS #region CMS
PackageContract.PackageContractClient Package { get; } PackageContract.PackageContractClient Package { get; }
ProductsContract.ProductsContractClient Product { get; }
UserContract.UserContractClient User { get; } UserContract.UserContractClient User { get; }
UserContractContract.UserContractContractClient UserContract { get; } UserContractContract.UserContractContractClient UserContract { get; }
UserAddressContract.UserAddressContractClient UserAddress { get; } UserAddressContract.UserAddressContractClient UserAddress { get; }

View File

@@ -1,3 +1,6 @@
using CMSMicroservice.Protobuf.Protos.Package;
using CMSMicroservice.Protobuf.Protos.Products;
namespace FrontOffice.BFF.Application.ProductsCQ.Queries.GetAllProductsByFilter; namespace FrontOffice.BFF.Application.ProductsCQ.Queries.GetAllProductsByFilter;
public class GetAllProductsByFilterQueryHandler : IRequestHandler<GetAllProductsByFilterQuery, GetAllProductsByFilterResponseDto> public class GetAllProductsByFilterQueryHandler : IRequestHandler<GetAllProductsByFilterQuery, GetAllProductsByFilterResponseDto>
{ {
@@ -10,19 +13,7 @@ public class GetAllProductsByFilterQueryHandler : IRequestHandler<GetAllProducts
public async Task<GetAllProductsByFilterResponseDto> Handle(GetAllProductsByFilterQuery request, CancellationToken cancellationToken) public async Task<GetAllProductsByFilterResponseDto> Handle(GetAllProductsByFilterQuery request, CancellationToken cancellationToken)
{ {
var query = _context.Productss await _context.Package.GetAllPackageByFilterAsync(request.Adapt<GetAllPackageByFilterRequest>(), cancellationToken: cancellationToken);
.ApplyOrder(sortBy: request.SortBy) return new GetAllProductsByFilterResponseDto();
.AsNoTracking()
.AsQueryable();
if (request.Filter is not null)
{
}
return new GetAllProductsByFilterResponseDto
{
MetaData = await query.GetMetaData(request.PaginationState, cancellationToken),
Models = await query.PaginatedListAsync(paginationState: request.PaginationState)
.ProjectToType<GetAllProductsByFilterResponseModel>().ToListAsync(cancellationToken)
};
} }
} }

View File

@@ -1,5 +1,6 @@
using CMSMicroservice.Protobuf.Protos.OtpToken; using CMSMicroservice.Protobuf.Protos.OtpToken;
using CMSMicroservice.Protobuf.Protos.Package; using CMSMicroservice.Protobuf.Protos.Package;
using CMSMicroservice.Protobuf.Protos.Products;
using CMSMicroservice.Protobuf.Protos.User; using CMSMicroservice.Protobuf.Protos.User;
using CMSMicroservice.Protobuf.Protos.UserAddress; using CMSMicroservice.Protobuf.Protos.UserAddress;
using CMSMicroservice.Protobuf.Protos.UserContract; using CMSMicroservice.Protobuf.Protos.UserContract;
@@ -42,6 +43,7 @@ public class ApplicationContractContext : IApplicationContractContext
#region CMS #region CMS
public PackageContract.PackageContractClient Package => GetService<PackageContract.PackageContractClient>(); public PackageContract.PackageContractClient Package => GetService<PackageContract.PackageContractClient>();
public ProductsContract.ProductsContractClient Product => GetService<ProductsContract.ProductsContractClient>();
public UserContract.UserContractClient User => GetService<UserContract.UserContractClient>(); public UserContract.UserContractClient User => GetService<UserContract.UserContractClient>();
public UserContractContract.UserContractContractClient UserContract => GetService<UserContractContract.UserContractContractClient>(); public UserContractContract.UserContractContractClient UserContract => GetService<UserContractContract.UserContractContractClient>();