This commit is contained in:
@@ -377,9 +377,6 @@ namespace AyaNova.Biz
|
|||||||
//BUT *only* if the woitempartrequest still exists and isn't completed already
|
//BUT *only* if the woitempartrequest still exists and isn't completed already
|
||||||
|
|
||||||
|
|
||||||
//todo: BizActionsAsync - VendorPartNumber automatically set this if teh vendorid has changed from the list of parts there is
|
|
||||||
//todo: if vendorid has changed, need to update all part values into poitems
|
|
||||||
|
|
||||||
//Get inventory object for updating
|
//Get inventory object for updating
|
||||||
PartInventoryBiz pib = new PartInventoryBiz(ct, UserId, UserTranslationId, CurrentUserRoles);
|
PartInventoryBiz pib = new PartInventoryBiz(ct, UserId, UserTranslationId, CurrentUserRoles);
|
||||||
|
|
||||||
@@ -391,14 +388,14 @@ namespace AyaNova.Biz
|
|||||||
var inventoryAffectingItems = oldObj.Items.Where(z => z.QuantityReceived > 0).ToList();
|
var inventoryAffectingItems = oldObj.Items.Where(z => z.QuantityReceived > 0).ToList();
|
||||||
foreach (var poItem in inventoryAffectingItems)
|
foreach (var poItem in inventoryAffectingItems)
|
||||||
{
|
{
|
||||||
//make reversing inventory adjustment here
|
//make reversing inventory adjustment
|
||||||
dtPOPartInventory i = new dtPOPartInventory();
|
dtPOPartInventory i = new dtPOPartInventory();
|
||||||
i.PartId = poItem.PartId;
|
i.PartId = poItem.PartId;
|
||||||
i.PartWarehouseId = poItem.PartWarehouseId;
|
i.PartWarehouseId = poItem.PartWarehouseId;
|
||||||
i.Quantity = poItem.QuantityReceived *= -1;
|
i.Quantity = poItem.QuantityReceived *= -1;
|
||||||
i.SourceType = AyaType.PurchaseOrder;
|
i.SourceType = AyaType.PurchaseOrder;
|
||||||
i.SourceId = newObj.Id;
|
i.SourceId = oldObj.Id;
|
||||||
i.Description = await Translate("PurchaseOrderEdit");
|
i.Description = await Translate("PurchaseOrderEdit") + ":" + await Translate("EventDeleted");
|
||||||
await pib.CreateAsync(i);
|
await pib.CreateAsync(i);
|
||||||
|
|
||||||
//MIGRATE_OUTSTANDING - update workorderitempart here if applicable
|
//MIGRATE_OUTSTANDING - update workorderitempart here if applicable
|
||||||
@@ -425,7 +422,7 @@ namespace AyaNova.Biz
|
|||||||
i.Quantity = poItem.QuantityReceived;
|
i.Quantity = poItem.QuantityReceived;
|
||||||
i.SourceType = AyaType.PurchaseOrder;
|
i.SourceType = AyaType.PurchaseOrder;
|
||||||
i.SourceId = newObj.Id;
|
i.SourceId = newObj.Id;
|
||||||
i.Description = await Translate("PurchaseOrderEdit");
|
i.Description = await Translate("PurchaseOrderEdit") + ":" + await Translate("EventCreated");
|
||||||
await pib.CreateAsync(i);
|
await pib.CreateAsync(i);
|
||||||
|
|
||||||
//MIGRATE_OUTSTANDING - update workorderitempart here if applicable
|
//MIGRATE_OUTSTANDING - update workorderitempart here if applicable
|
||||||
@@ -440,6 +437,29 @@ namespace AyaNova.Biz
|
|||||||
//MODIFIED
|
//MODIFIED
|
||||||
if (ayaEvent == AyaEvent.Modified)
|
if (ayaEvent == AyaEvent.Modified)
|
||||||
{
|
{
|
||||||
|
//any old po items deleted?
|
||||||
|
foreach (var oldItem in oldObj.Items)
|
||||||
|
{
|
||||||
|
//get the matching new item
|
||||||
|
var newItem = newObj.Items.FirstOrDefault(z => z.Id == oldItem.Id);
|
||||||
|
if (newItem == null)
|
||||||
|
{
|
||||||
|
//an old item with received stock was deleted, fixup inventory
|
||||||
|
if (oldItem.QuantityReceived > 0)
|
||||||
|
{
|
||||||
|
//make reversing inventory adjustment
|
||||||
|
dtPOPartInventory i = new dtPOPartInventory();
|
||||||
|
i.PartId = oldItem.PartId;
|
||||||
|
i.PartWarehouseId = oldItem.PartWarehouseId;
|
||||||
|
i.Quantity = oldItem.QuantityReceived *= -1;
|
||||||
|
i.SourceType = AyaType.PurchaseOrder;
|
||||||
|
i.SourceId = oldObj.Id;
|
||||||
|
i.Description = await Translate("PurchaseOrderEdit") + ":" + await Translate("EventDeleted");
|
||||||
|
await pib.CreateAsync(i);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
foreach (var newItem in newObj.Items)
|
foreach (var newItem in newObj.Items)
|
||||||
{
|
{
|
||||||
//get the matching currentPoItem
|
//get the matching currentPoItem
|
||||||
@@ -457,7 +477,7 @@ namespace AyaNova.Biz
|
|||||||
i.Quantity = newItem.QuantityReceived;
|
i.Quantity = newItem.QuantityReceived;
|
||||||
i.SourceType = AyaType.PurchaseOrder;
|
i.SourceType = AyaType.PurchaseOrder;
|
||||||
i.SourceId = newObj.Id;
|
i.SourceId = newObj.Id;
|
||||||
i.Description = await Translate("PurchaseOrderEdit");
|
i.Description = await Translate("PurchaseOrderEdit") + ":" + await Translate("EventCreated");
|
||||||
await pib.CreateAsync(i);
|
await pib.CreateAsync(i);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -479,8 +499,8 @@ namespace AyaNova.Biz
|
|||||||
i.PartWarehouseId = oldItem.PartWarehouseId;
|
i.PartWarehouseId = oldItem.PartWarehouseId;
|
||||||
i.Quantity = oldItem.QuantityReceived *= -1;
|
i.Quantity = oldItem.QuantityReceived *= -1;
|
||||||
i.SourceType = AyaType.PurchaseOrder;
|
i.SourceType = AyaType.PurchaseOrder;
|
||||||
i.SourceId = newObj.Id;
|
i.SourceId = oldObj.Id;
|
||||||
i.Description = await Translate("PurchaseOrderEdit");
|
i.Description = await Translate("PurchaseOrderEdit") + ":" + await Translate("EventModified") + ":" + await Translate("Part") + "/" + await Translate("PartWarehouse");
|
||||||
await pib.CreateAsync(i);
|
await pib.CreateAsync(i);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -493,7 +513,7 @@ namespace AyaNova.Biz
|
|||||||
i.Quantity = newItem.QuantityReceived;
|
i.Quantity = newItem.QuantityReceived;
|
||||||
i.SourceType = AyaType.PurchaseOrder;
|
i.SourceType = AyaType.PurchaseOrder;
|
||||||
i.SourceId = newObj.Id;
|
i.SourceId = newObj.Id;
|
||||||
i.Description = await Translate("PurchaseOrderEdit");
|
i.Description = await Translate("PurchaseOrderEdit") + ":" + await Translate("EventModified") + ":" + await Translate("Part") + "/" + await Translate("PartWarehouse");
|
||||||
await pib.CreateAsync(i);
|
await pib.CreateAsync(i);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -520,7 +540,7 @@ namespace AyaNova.Biz
|
|||||||
i.Quantity = netChange;
|
i.Quantity = netChange;
|
||||||
i.SourceType = AyaType.PurchaseOrder;
|
i.SourceType = AyaType.PurchaseOrder;
|
||||||
i.SourceId = newObj.Id;
|
i.SourceId = newObj.Id;
|
||||||
i.Description = await Translate("PurchaseOrderEdit");
|
i.Description = await Translate("PurchaseOrderEdit") + ":" + await Translate("EventModified");
|
||||||
await pib.CreateAsync(i);
|
await pib.CreateAsync(i);
|
||||||
|
|
||||||
//MIGRATE_OUTSTANDING - update workorderitempart here if applicable
|
//MIGRATE_OUTSTANDING - update workorderitempart here if applicable
|
||||||
|
|||||||
Reference in New Issue
Block a user