Преглед изворни кода

Fixed quantity calculations for purchase orders on ReservationManagement; (subject to Frank approval)

Kenric Nugteren пре 2 недеља
родитељ
комит
289c9c3308

+ 5 - 3
prs.desktop/Panels/Reservation Management/ReservationManagementItemGrid.cs

@@ -371,7 +371,7 @@ public class ReservationManagementItemGrid : DynamicDataGrid<JobRequisitionItem>
             }
 
             var _dimensions = jri.Dimensions;
-            var _qtyRequired = Math.Max(jri.Qty - jri.InStock - jri.OnOrder, 0.0);
+            var _qtyRequired = Math.Max(jri.Qty - jri.InStock - jri.OnOrder - jri.Issued, 0.0);
             var _cost = jri.UnitCost;
             
             DimensionUtils.ConvertDimensions(
@@ -424,7 +424,7 @@ public class ReservationManagementItemGrid : DynamicDataGrid<JobRequisitionItem>
                 var poItem = new PurchaseOrderItem
                 {
                     Description = jri.Product.Name,
-                    Qty = Math.Max(jri.Qty - (jri.InStock + jri.Issued), 0.0)
+                    Qty = Math.Max(jri.Qty - (jri.InStock + jri.OnOrder + jri.Issued), 0.0)
                 };
                 poItem.Product.ID = jri.Product.ID;
                 poItem.Product.Synchronise(jri.Product);
@@ -433,10 +433,12 @@ public class ReservationManagementItemGrid : DynamicDataGrid<JobRequisitionItem>
                 poItem.Style.Synchronise(jri.Style);
                 poItem.PurchaseOrderLink.ID = id;
 
+                var (qty, _) = DimensionUtils.ConvertDimensions(jri.Dimensions.Copy(), poItem.Qty, jri.UnitCost, Client<ProductDimensionUnit>.Provider);
+
                 var allocation = new PurchaseOrderItemAllocation();
                 allocation.Job.CopyFrom(jri.Job);
                 allocation.JobRequisitionItem.CopyFrom(jri);
-                allocation.Quantity = poItem.Qty;
+                allocation.Quantity = qty;
 
                 pois.Add((poItem, allocation));
             }