| | |
| | | foreach (var detail in materielCalc.Details) |
| | | { |
| | | if (remainingToLock <= 0) break; |
| | | decimal maxLockableQty = detail.OrderQuantity - detail.OverOutQuantity-detail.LockQuantity; |
| | | decimal maxLockableQty = 0; |
| | | if (detail.LockQuantity > detail.OverOutQuantity && detail.OverOutQuantity > 0) |
| | | { |
| | | maxLockableQty = detail.OrderQuantity - detail.LockQuantity; |
| | | } |
| | | else if(detail.OverOutQuantity > 0) |
| | | { |
| | | maxLockableQty = detail.OrderQuantity - detail.OverOutQuantity; |
| | | } |
| | | else |
| | | { |
| | | maxLockableQty = detail.OrderQuantity - detail.OverOutQuantity - detail.LockQuantity; |
| | | } |
| | | if (maxLockableQty <= 0) continue; |
| | | decimal currentLockQty = Math.Min(remainingToLock, maxLockableQty); |
| | | detail.LockQuantity += currentLockQty; |