Skip to content

Commit 1cdb11b

Browse files
committed
refactor: update product queries to use GetAllProductsWithoutSellerListing and add response headers for data source
1 parent 2733247 commit 1cdb11b

File tree

4 files changed

+24
-8
lines changed

4 files changed

+24
-8
lines changed

Source/Ecommerce.Api/Controllers/MeController.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ namespace Ecommerce.Api.Controllers;
66
using Ecommerce.Api.Utilities;
77
using Ecommerce.Application.Common.Models;
88
using Ecommerce.Application.Common.Utilities;
9-
using Ecommerce.Application.UseCases.Products.Queries.GetAllProducts;
9+
using Ecommerce.Application.UseCases.Products.Queries.GetAllProductsWithoutSellerListing;
1010
using Ecommerce.Application.UseCases.Products.Queries.GetFilteredProducts;
1111
using Ecommerce.Application.UseCases.Users.Commands.AddToCart;
1212
using Ecommerce.Application.UseCases.Users.Commands.ChangePassword;
@@ -235,6 +235,8 @@ public async Task<IActionResult> GetMyProducts(
235235
return new ObjectResult(result);
236236
}
237237

238+
Response.Headers.Add("X-Data-Source", result.Value.DataSourceType.ToString());
239+
Response.Headers.Add("X-Data-SourceId", result.Value.DataSourceId.ToString());
238240
return Ok(result.Value);
239241
}
240242

Source/Ecommerce.Api/Controllers/OrderController.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,6 @@ public async Task<IActionResult> GetOrders()
3434
if (result.IsFailed)
3535
return new ObjectResult(result);
3636

37-
LogPretty.Log(result);
38-
3937
return Ok(result.Value);
4038
}
4139
}

Source/Ecommerce.Api/Controllers/ProductController.cs

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
using Ecommerce.Application.UseCases.Products.Commands.CreateReview;
88
using Ecommerce.Application.UseCases.Products.Commands.DeleteProduct;
99
using Ecommerce.Application.UseCases.Products.CreateUser.Commands;
10-
using Ecommerce.Application.UseCases.Products.Queries.GetAllProducts;
10+
using Ecommerce.Application.UseCases.Products.Queries.GetAllProductsWithoutSellerListing;
1111
using Ecommerce.Application.UseCases.Products.Queries.GetCategories;
1212
using Ecommerce.Application.UseCases.Products.Queries.GetFilteredProducts;
1313
using Ecommerce.Application.UseCases.Products.Queries.GetProductBySlug;
@@ -57,18 +57,34 @@ [FromForm] CreateProductRequest createProductRequest
5757

5858
[AllowAnonymous]
5959
[HttpGet]
60-
public async Task<IActionResult> GetProducts([FromQuery] PaginationParams paginationParams)
60+
public async Task<IActionResult> GetProducts(
61+
[FromQuery] PaginationParams paginationParams,
62+
[FromQuery] FilterProductsQuery? filterBy = null
63+
)
6164
{
6265
var result = await _mediator.Send(
63-
new GetAllProductsQuery(paginationParams.PageNumber, paginationParams.PageSize)
66+
new GetAllProductsWithoutSellerListingQuery()
67+
{
68+
FilterQuery = filterBy is null
69+
? filterBy
70+
: filterBy with
71+
{
72+
PaginationParameters = new PaginationParameters
73+
{
74+
PageNumber = paginationParams.PageNumber,
75+
PageSize = paginationParams.PageSize,
76+
},
77+
},
78+
}
6479
);
6580

6681
if (result.IsFailed)
6782
{
6883
_logger.LogError("Failed to get all products: {@result}", result);
6984
return new ObjectResult(result);
7085
}
71-
86+
Response.Headers.Add("X-Data-Source", result.Value.DataSourceType.ToString());
87+
Response.Headers.Add("X-Data-SourceId", result.Value.DataSourceId.ToString());
7288
return Ok(result.Value);
7389
}
7490

Source/Ecommerce.Api/Controllers/UserController.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ namespace Ecommerce.Api.Controllers;
77
using Ecommerce.Api.Attributes;
88
using Ecommerce.Api.Utilities;
99
using Ecommerce.Application.Common.Models;
10-
using Ecommerce.Application.UseCases.Products.Queries.GetAllProducts;
10+
using Ecommerce.Application.UseCases.Products.Queries.GetAllProductsWithoutSellerListing;
1111
using Ecommerce.Application.UseCases.Products.Queries.GetFilteredProducts;
1212
using Ecommerce.Application.UseCases.Users.Commands.AddToCart;
1313
using Ecommerce.Application.UseCases.Users.Commands.ChangePassword;

0 commit comments

Comments
 (0)