예제 #1
0
 // Updates that must be applied last. Default behaviour defined
 protected virtual void ApplyPostUpdates(FinestGood finestGood)
 {
     // 1. Verify minimum Quality
     finestGood.Quality = InventoryManagementRules.GetMinimumAdjustedQuality(finestGood.Quality);
     // 2. Verify Maxium Quality
     finestGood.Quality = InventoryManagementRules.GetMaximumAdjustedQuality(finestGood.Quality);
 }
예제 #2
0
        protected override void ApplyGeneralUpdates(FinestGood finestGood)
        {
            var sellInPassed = InventoryManagementRules.HasSellInPassed(finestGood.SellIn);

            finestGood.Quality = InventoryManagementRules.GetDegradedQuality(finestGood.Quality, sellInPassed);
        }
예제 #3
0
 protected override void ApplyGeneralUpdates(FinestGood finestGood)
 {
     finestGood.Quality = InventoryManagementRules.GetEventQuality(finestGood.Quality, finestGood.SellIn);
 }
예제 #4
0
 protected override void ApplyGeneralUpdates(FinestGood finestGood)
 {
     finestGood.Quality = InventoryManagementRules.GetMaturedQuality(finestGood.Quality);
 }
예제 #5
0
 // Updates that must be applied first. Default behaviour defined
 protected virtual void ApplyPreUpdates(FinestGood finestGood)
 {
     // 1. Daily SellIn Adjustment
     finestGood.SellIn = InventoryManagementRules.GetUpdatedSellIn(finestGood.SellIn);
 }