|
@@ -40,28 +40,26 @@ namespace Comal.Stores
|
|
|
return true;
|
|
|
}
|
|
|
|
|
|
- private bool LoadRequisitionItems(Requisition entity, ref IEnumerable<RequisitionItem> requisitionitems)
|
|
|
+ private bool LoadRequisitionItems(Requisition entity, ref IList<RequisitionItem> requisitionitems)
|
|
|
{
|
|
|
- if (requisitionitems == null)
|
|
|
- requisitionitems = Provider.Query(
|
|
|
+ requisitionitems ??= Provider.Query(
|
|
|
new Filter<RequisitionItem>(x => x.RequisitionLink.ID).IsEqualTo(entity.ID)
|
|
|
- ).Rows.Select(x => x.ToObject<RequisitionItem>());
|
|
|
+ ).ToList<RequisitionItem>();
|
|
|
return requisitionitems.Any();
|
|
|
}
|
|
|
|
|
|
- private bool LoadDeliveryItems(Requisition entity, ref IEnumerable<DeliveryItem> deliveryitems)
|
|
|
+ private bool LoadDeliveryItems(Requisition entity, ref IList<DeliveryItem> deliveryitems)
|
|
|
{
|
|
|
- if (deliveryitems == null)
|
|
|
- deliveryitems = Provider.Query(
|
|
|
+ deliveryitems ??= Provider.Query(
|
|
|
new Filter<DeliveryItem>(x => x.RequisitionLink.ID).IsEqualTo(entity.ID),
|
|
|
new Columns<DeliveryItem>(x => x.ID, x => x.DeliveredDate)
|
|
|
- ).Rows.Select(x => x.ToObject<DeliveryItem>());
|
|
|
+ ).ToList<DeliveryItem>();
|
|
|
return deliveryitems.Any();
|
|
|
}
|
|
|
|
|
|
#region TakenBy
|
|
|
|
|
|
- private void UpdateTakenBy(Requisition entity, ref IEnumerable<RequisitionItem> items, ref IEnumerable<DeliveryItem> deliveryitems)
|
|
|
+ private void UpdateTakenBy(Requisition entity, ref IList<RequisitionItem> items, ref IList<DeliveryItem> deliveryitems)
|
|
|
{
|
|
|
Log("UpdateTakenBy() - starting");
|
|
|
|
|
@@ -116,8 +114,8 @@ namespace Comal.Stores
|
|
|
{
|
|
|
base.AfterSave(entity);
|
|
|
|
|
|
- IEnumerable<RequisitionItem> requisitionitems = null;
|
|
|
- IEnumerable<DeliveryItem> deliveryitems = null;
|
|
|
+ IList<RequisitionItem> requisitionitems = null;
|
|
|
+ IList<DeliveryItem> deliveryitems = null;
|
|
|
|
|
|
UpdateDeliveryItems(entity, ref requisitionitems, ref deliveryitems);
|
|
|
UpdateTakenBy(entity, ref requisitionitems, ref deliveryitems);
|
|
@@ -153,8 +151,8 @@ namespace Comal.Stores
|
|
|
|
|
|
#region Delivery Items
|
|
|
|
|
|
- private void CreateDeliveryItems(Requisition entity, ref IEnumerable<RequisitionItem> requisitionitems,
|
|
|
- ref IEnumerable<DeliveryItem> deliveryitems)
|
|
|
+ private void CreateDeliveryItems(Requisition entity, ref IList<RequisitionItem> requisitionitems,
|
|
|
+ ref IList<DeliveryItem> deliveryitems)
|
|
|
{
|
|
|
if (!LoadRequisitionItems(entity, ref requisitionitems))
|
|
|
{
|
|
@@ -172,7 +170,7 @@ namespace Comal.Stores
|
|
|
deliveryitems = updates;
|
|
|
}
|
|
|
|
|
|
- private void ClearDeliveryItems(Requisition entity, ref IEnumerable<DeliveryItem> deliveryitems)
|
|
|
+ private void ClearDeliveryItems(Requisition entity, ref IList<DeliveryItem> deliveryitems)
|
|
|
{
|
|
|
if (!LoadDeliveryItems(entity, ref deliveryitems))
|
|
|
{
|
|
@@ -185,8 +183,8 @@ namespace Comal.Stores
|
|
|
deliveryitems = new List<DeliveryItem>();
|
|
|
}
|
|
|
|
|
|
- private void UpdateDeliveryItems(Requisition entity, ref IEnumerable<RequisitionItem> requisitionitems,
|
|
|
- ref IEnumerable<DeliveryItem> deliveryitems)
|
|
|
+ private void UpdateDeliveryItems(Requisition entity, ref IList<RequisitionItem> requisitionitems,
|
|
|
+ ref IList<DeliveryItem> deliveryitems)
|
|
|
{
|
|
|
Log("UpdateDeliveryItems() - starting");
|
|
|
|
|
@@ -241,10 +239,9 @@ namespace Comal.Stores
|
|
|
return movement;
|
|
|
}
|
|
|
|
|
|
- private void CreateStockBatch(Requisition entity, ref IEnumerable<RequisitionItem> items)
|
|
|
+ private void CreateStockBatch(Requisition entity, ref IList<RequisitionItem> items)
|
|
|
{
|
|
|
- LoadRequisitionItems(entity, ref items);
|
|
|
- if (!items.Any())
|
|
|
+ if(!LoadRequisitionItems(entity, ref items))
|
|
|
{
|
|
|
Log("CreateStockBatch() - no items to update!");
|
|
|
return;
|
|
@@ -278,7 +275,7 @@ namespace Comal.Stores
|
|
|
new Filter<StockHolding>(x => x.Location.ID).IsEqualTo(locationid)
|
|
|
.And(x => x.Product.ID).IsEqualTo(productid)
|
|
|
.And(x => x.Style.ID).IsEqualTo(styleid)
|
|
|
- .And(x => x.Dimensions.UnitSize).IsEqualTo(unitsize)
|
|
|
+ .And(x => x.Dimensions).DimensionEquals(item.Dimensions)
|
|
|
.And(x => x.Job.ID).IsEqualTo(jobid)
|
|
|
.And(x => x.Qty).IsGreaterThan(0.0),
|
|
|
new Columns<StockHolding>(x => x.Qty)
|
|
@@ -339,7 +336,7 @@ namespace Comal.Stores
|
|
|
FindSubStore<StockMovementBatch>().Delete(batches, "");
|
|
|
}
|
|
|
|
|
|
- private void UpdateStockBatches(Requisition entity, ref IEnumerable<RequisitionItem> items)
|
|
|
+ private void UpdateStockBatches(Requisition entity, ref IList<RequisitionItem> items)
|
|
|
{
|
|
|
Log("UpdateStockBatch() - starting");
|
|
|
if (!NeedsUpdating(entity, x => x.StockUpdated))
|