public void ShouldGetItemAdjustmentByDate() { var testDate = new DateTime(2016, 5, 8); var itemProxy = new ItemProxy(); var item = _itemHelper.GetTestInventoryItem(); var result = itemProxy.InsertItem(item); var newItem = itemProxy.GetItem(result.DataObject.InsertedItemId); var adjustmentItem = _adjustmentHelper.GetAdjustmentItem(newItem.DataObject.Id.Value, 1, newItem.DataObject.AssetAccountId.Value, 1, 1); var detail = _adjustmentHelper.GetAdjustmentDetail(new List <AdjustmentItem>() { adjustmentItem }); detail.Date = testDate; var adjustmentProxy = new ItemAdjustmentProxy(); var insertResponse = adjustmentProxy.InsertItemAdjustment(detail); var response = new ItemAdjustmentsProxy().GetItemAdjustments(null, null, testDate.AddDays(-1), testDate.AddDays(1)); Assert.IsNotNull(response); Assert.IsTrue(response.IsSuccessfull); Assert.IsNotNull(response.DataObject); Assert.IsNotNull(response.DataObject.ItemAdjustments); Assert.IsTrue(response.DataObject.ItemAdjustments.Count > 0); }
private void CreateTestItems() { //Create Item. var item = _itemHelper.GetTestInventoryItem(); var proxy = new ItemProxy(); var response = new ItemProxy().InsertItem(item); _item = proxy.GetItem(response.DataObject.InsertedItemId).DataObject; //set SOH for item. var adjustment = new Core.Models.ItemAdjustments.AdjustmentDetail { AdjustmentItems = new List <Core.Models.ItemAdjustments.AdjustmentItem> { new Core.Models.ItemAdjustments.AdjustmentItem { ItemId = (int)_item.Id, AccountId = (int)item.AssetAccountId, Quantity = 20, UnitPrice = (decimal)item.BuyingPrice, TotalPrice = (20 * (decimal)item.BuyingPrice) } }, Date = DateTime.Now }; //Insert adjustment so there is enough Stock on hand for tests. var adjustmentResponse = new ItemAdjustmentProxy().InsertItemAdjustment(adjustment); }
public void ShouldGetItemAdjustments() { var itemProxy = new ItemProxy(); var item = _itemHelper.GetTestInventoryItem(); var result = itemProxy.InsertItem(item); var newItem = itemProxy.GetItem(result.DataObject.InsertedItemId); var adjustmentItem = _adjustmentHelper.GetAdjustmentItem(newItem.DataObject.Id.Value, 1, newItem.DataObject.AssetAccountId.Value, 1, 1); var detail = _adjustmentHelper.GetAdjustmentDetail(new List <AdjustmentItem>() { adjustmentItem }); detail.Date = detail.Date.AddDays(-1); var adjustmentProxy = new ItemAdjustmentProxy(); var insertResponse = adjustmentProxy.InsertItemAdjustment(detail); var response = new ItemAdjustmentsProxy().GetItemAdjustments(); Assert.IsNotNull(response); Assert.IsTrue(response.IsSuccessfull); Assert.IsNotNull(response.DataObject); Assert.IsNotNull(response.DataObject.ItemAdjustments); Assert.IsTrue(response.DataObject.ItemAdjustments.Count > 0); //Assert.IsTrue(response.DataObject.ItemAdjustments.Exists(x => x.Id == insertResponse.DataObject.InsertedEntityId)); }
public void ShouldFailGetItemAdjustmentWithBadId() { var adjustmentProxy = new ItemAdjustmentProxy(); var response = adjustmentProxy.GetItemAdjustment(-1); Assert.IsFalse(response.IsSuccessfull); Assert.IsNull(response.DataObject); }
public void ShouldFailGetItemAdjustment() { var adjustmentProxy = new ItemAdjustmentProxy(); var response = adjustmentProxy.GetItemAdjustment(99999999); Assert.IsFalse(response.IsSuccessfull); Assert.IsNull(response.DataObject); Assert.IsTrue(response.RawResponse.Contains("The requested transaction is not found.")); }
public void ShouldFailOnInsertWithNoAdjustmentItems() { var detail = _adjustmentHelper.GetAdjustmentDetail(new List <AdjustmentItem>()); var adjustmentProxy = new ItemAdjustmentProxy(); var response = adjustmentProxy.InsertItemAdjustment(detail); Assert.IsFalse(response.IsSuccessfull); Assert.AreEqual(HttpStatusCode.BadRequest, response.StatusCode); Assert.IsNull(response.DataObject); Assert.IsTrue(response.RawResponse.Contains("Please specify AdjustmentItems for this transaction.")); }
public void ShouldUpdateExistingItemAdjustment() { var itemProxy = new ItemProxy(); var item = _itemHelper.GetTestInventoryItem(); var result = itemProxy.InsertItem(item); var newItem = itemProxy.GetItem(result.DataObject.InsertedItemId); var adjustmentItem = _adjustmentHelper.GetAdjustmentItem(newItem.DataObject.Id.Value, 1, newItem.DataObject.AssetAccountId.Value, 1, 1); var detail = _adjustmentHelper.GetAdjustmentDetail(new List <AdjustmentItem>() { adjustmentItem }); var adjustmentProxy = new ItemAdjustmentProxy(); var insertResponse = adjustmentProxy.InsertItemAdjustment(detail); detail.LastUpdatedId = insertResponse.DataObject.LastUpdatedId; detail.Summary = "Updated the summary."; detail.AdjustmentItems[0].Quantity = 5; detail.Notes = "Updated the notes."; detail.Tags = new List <string>() { "Updated" }; detail.RequiresFollowUp = true; var updateDate = DateTime.Now.Date; detail.Date = updateDate; var response = adjustmentProxy.UpdateItemAdjustment(detail, insertResponse.DataObject.InsertedEntityId); Assert.IsTrue(response.IsSuccessfull); var updatedAdjustment = adjustmentProxy.GetItemAdjustment(insertResponse.DataObject.InsertedEntityId).DataObject; Assert.IsTrue(updatedAdjustment.AdjustmentItems[0].Quantity == 5); Assert.IsTrue(updatedAdjustment.Summary.Equals("Updated the summary.")); Assert.IsTrue(updatedAdjustment.Notes.Equals("Updated the notes.")); //Assert.IsTrue(updatedAdjustment.Tags[0] == "Updated"); Assert.IsTrue(updateDate == updatedAdjustment.Date); Assert.IsTrue(updatedAdjustment.RequiresFollowUp.Value); }
public void ShouldDeleteItemAdjustment() { var itemProxy = new ItemProxy(); var item = _itemHelper.GetTestInventoryItem(); var result = itemProxy.InsertItem(item); var newItem = itemProxy.GetItem(result.DataObject.InsertedItemId); var adjustmentItem = _adjustmentHelper.GetAdjustmentItem(newItem.DataObject.Id.Value, 1, newItem.DataObject.AssetAccountId.Value, 1, 1); var detail = _adjustmentHelper.GetAdjustmentDetail(new List <AdjustmentItem>() { adjustmentItem }); var adjustmentProxy = new ItemAdjustmentProxy(); var insertResponse = adjustmentProxy.InsertItemAdjustment(detail); var response = adjustmentProxy.DeleteItemAdjustment(insertResponse.DataObject.InsertedEntityId); Assert.IsTrue(response.IsSuccessfull); }
public void ShouldInsertItemAdjustment() { //var itemCode = "test_w1"; var itemProxy = new ItemProxy(); var item = _itemHelper.GetTestInventoryItem(); var result = itemProxy.InsertItem(item); var newItem = itemProxy.GetItem(result.DataObject.InsertedItemId); var adjustmentItem = _adjustmentHelper.GetAdjustmentItem(newItem.DataObject.Id.Value, 1, newItem.DataObject.AssetAccountId.Value, 1, 1); var detail = _adjustmentHelper.GetAdjustmentDetail(new List <AdjustmentItem>() { adjustmentItem }); var adjustmentProxy = new ItemAdjustmentProxy(); var response = adjustmentProxy.InsertItemAdjustment(detail); Assert.IsTrue(response.IsSuccessfull); Assert.IsNotNull(response.DataObject); Assert.IsTrue(response.DataObject.InsertedEntityId > 0); Assert.GreaterOrEqual(response.DataObject.UtcLastModified, DateTime.Today.AddMinutes(-10).ToUniversalTime()); }
public void InventoryAdjustments(List <Tuple <BuildItem, decimal> > itemQuantityList) { var proxy = new ItemAdjustmentProxy(); var items = new List <AdjustmentItem>(); itemQuantityList.ForEach(iq => { items.Add(new AdjustmentItem() { AccountId = _inventoryAccountId, ItemId = iq.Item1.Id, Quantity = iq.Item2, TotalPrice = 1, UnitPrice = 10 }); }); proxy.InsertItemAdjustment(new AdjustmentDetail() { AdjustmentItems = items, Date = DateTime.Now }); }