if ($lineItem->
getPriceDefinition() !== null
&&
$lineItem->
hasExtension(self::CUSTOM_PRICE
) &&
$behavior->
hasPermission(self::ALLOW_PRODUCT_PRICE_OVERWRITES
)) { return false;
} if ($lineItem->
getPriceDefinition() !== null
&&
$behavior->
hasPermission(self::SKIP_PRODUCT_RECALCULATION
)) { return false;
} if ($lineItem->
getPriceDefinition() !== null &&
$lineItem->
isModifiedByApp()) { return false;
} return true;
} private function fixQuantity(int
$min, int
$current, int
$steps): int
{ return (int) (floor(($current -
$min) /
$steps) *
$steps +
$min);
}