public void UpsertInventoryStatus(InventoryStatus inventoryStatus)
        {
            var stockItemRecord = _inventoryRepository.RetreiveStockItem(inventoryStatus.InventoryID);

            var existing =
                _inventoryRepository
                .RetrieveInventory(inventoryStatus.InventoryID, inventoryStatus.WarehouseID);

            if (existing == null)
            {
                var warehouse = _inventoryRepository.RetrieveWarehouse(inventoryStatus.WarehouseID);

                var inventory = new AcumaticaInventory();
                inventory.ParentMonsterId      = stockItemRecord.MonsterId;
                inventory.AcumaticaWarehouseId = inventoryStatus.WarehouseID;
                inventory.AcumaticaAvailQty    = inventoryStatus.QtyAvailable;
                inventory.WarehouseMonsterId   = warehouse.Id;
                inventory.IsInventorySynced    = false;
                inventory.DateCreated          = DateTime.UtcNow;
                inventory.LastUpdated          = DateTime.UtcNow;

                _inventoryRepository.InsertInventory(inventory);
            }
            else
            {
                existing.AcumaticaAvailQty = inventoryStatus.QtyAvailable;
                existing.IsInventorySynced = false;
                existing.LastUpdated       = DateTime.UtcNow;
                _inventoryRepository.SaveChanges();
            }
        }
Пример #2
0
 public void InsertInventory(AcumaticaInventory inventory)
 {
     Entities.AcumaticaInventories.Add(inventory);
     Entities.SaveChanges();
 }