diff --git a/PyroFetes/Endpoints/PurchaseOrders/GetAllPurchaseOrderEndpoint.cs b/PyroFetes/Endpoints/PurchaseOrders/GetAllPurchaseOrderEndpoint.cs index 8a3dd58..09d7dcb 100644 --- a/PyroFetes/Endpoints/PurchaseOrders/GetAllPurchaseOrderEndpoint.cs +++ b/PyroFetes/Endpoints/PurchaseOrders/GetAllPurchaseOrderEndpoint.cs @@ -1,6 +1,7 @@ using FastEndpoints; using PyroFetes.DTO.PurchaseOrder.Response; using PyroFetes.Repositories; +using PyroFetes.Specifications.PurchaseOrders; namespace PyroFetes.Endpoints.PurchaseOrders; @@ -14,6 +15,6 @@ public class GetAllPurchaseOrderEndpoint(PurchaseOrdersRepository purchaseOrders public override async Task HandleAsync(CancellationToken ct) { - await Send.OkAsync(await purchaseOrdersRepository.ProjectToListAsync(ct), ct); + await Send.OkAsync(await purchaseOrdersRepository.ProjectToListAsync(new GetAllPurchaseOrderSpec(), ct), ct); } } \ No newline at end of file diff --git a/PyroFetes/Endpoints/Quotations/GetAllQuotationEndpoint.cs b/PyroFetes/Endpoints/Quotations/GetAllQuotationEndpoint.cs index 9d7059d..bccafd3 100644 --- a/PyroFetes/Endpoints/Quotations/GetAllQuotationEndpoint.cs +++ b/PyroFetes/Endpoints/Quotations/GetAllQuotationEndpoint.cs @@ -1,6 +1,7 @@ using FastEndpoints; using PyroFetes.DTO.Quotation.Response; using PyroFetes.Repositories; +using PyroFetes.Specifications.Quotations; namespace PyroFetes.Endpoints.Quotations; @@ -14,6 +15,6 @@ public class GetAllQuotationEndpoint(QuotationsRepository quotationsRepository) public override async Task HandleAsync(CancellationToken ct) { - await Send.OkAsync(await quotationsRepository.ProjectToListAsync(ct), ct); + await Send.OkAsync(await quotationsRepository.ProjectToListAsync(new GetAllQuotationSpec(), ct), ct); } } \ No newline at end of file diff --git a/PyroFetes/Specifications/Products/GetProductsUnderLimitSpec.cs b/PyroFetes/Specifications/Products/GetProductsUnderLimitSpec.cs index 5b3c1f4..df57b0c 100644 --- a/PyroFetes/Specifications/Products/GetProductsUnderLimitSpec.cs +++ b/PyroFetes/Specifications/Products/GetProductsUnderLimitSpec.cs @@ -9,6 +9,7 @@ public sealed class GetProductsUnderLimitSpec : Specification { Query .Include(x => x.WarehouseProducts) - .Where(x => x.WarehouseProducts != null && x.WarehouseProducts.Sum(p => p.Quantity) < x.MinimalQuantity); + .Where(x => x.WarehouseProducts != null && x.WarehouseProducts.Sum(p => p.Quantity) < x.MinimalQuantity + && !x.ProductDeliveries!.Any(d => d.DeliveryNote!.RealDeliveryDate == null)); } } \ No newline at end of file diff --git a/PyroFetes/Specifications/PurchaseOrders/GetAllPurchaseOrderSpec.cs b/PyroFetes/Specifications/PurchaseOrders/GetAllPurchaseOrderSpec.cs new file mode 100644 index 0000000..827d952 --- /dev/null +++ b/PyroFetes/Specifications/PurchaseOrders/GetAllPurchaseOrderSpec.cs @@ -0,0 +1,14 @@ +using Ardalis.Specification; +using PyroFetes.Models; + +namespace PyroFetes.Specifications.PurchaseOrders; + +public class GetAllPurchaseOrderSpec : Specification +{ + public GetAllPurchaseOrderSpec() + { + Query + .Where(x => true) + .OrderByDescending(x => x.Id); + } +} \ No newline at end of file diff --git a/PyroFetes/Specifications/Quotations/GetAllQuotationSpec.cs b/PyroFetes/Specifications/Quotations/GetAllQuotationSpec.cs new file mode 100644 index 0000000..e386950 --- /dev/null +++ b/PyroFetes/Specifications/Quotations/GetAllQuotationSpec.cs @@ -0,0 +1,14 @@ +using Ardalis.Specification; +using PyroFetes.Models; + +namespace PyroFetes.Specifications.Quotations; + +public class GetAllQuotationSpec : Specification +{ + public GetAllQuotationSpec() + { + Query + .Where(x => true) + .OrderByDescending(x => x.Id); + } +} \ No newline at end of file