fix phpstan/phpcs

This commit is contained in:
Dennis Eichhorn 2021-06-26 14:38:08 +02:00
parent ebf32e9cc1
commit 40043f26ac
7 changed files with 125 additions and 95 deletions

View File

@ -0,0 +1,28 @@
<?php
/**
* Orange Management
*
* PHP Version 8.0
*
* @package Modules\Purchase\Models
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link https://orange-management.org
*/
declare(strict_types=1);
namespace Modules\Purchase\Models;
/**
* Order suggestion interface.
*
* @package Modules\Purchase\Models
* @license OMS License 1.0
* @link https://orange-management.org
* @since 1.0.0
*/
interface OrderSuggestionInterface
{
}

View File

@ -14,107 +14,109 @@ declare(strict_types=1);
namespace Modules\Purchase\OrderSuggestion; namespace Modules\Purchase\OrderSuggestion;
use Modules\Purchase\Models\OrderSuggestionInterface;
/** /**
* OMS order suggestion class * OMS order suggestion class
* *
* @package Modules\Purchase\Models\OrderSuggestion * @package Modules\Purchase\OrderSuggestion
* @license OMS License 1.0 * @license OMS License 1.0
* @link https://orange-management.org * @link https://orange-management.org
* @since 1.0.0 * @since 1.0.0
*/ */
final class DefaultOrderSuggestion implements OrderSuggestionInterface final class DefaultOrderSuggestion implements OrderSuggestionInterface
{ {
/** /**
* Which data should be used to create the order suggestion? * Which data should be used to create the order suggestion?
* *
* @var int * @var int
* @since 1.0.0 * @since 1.0.0
*/ */
public int $suggestionType = OrderSuggestionType::HISTORIC; public int $suggestionType = OrderSuggestionType::HISTORIC;
/** /**
* Comparison duration type. * Comparison duration type.
* *
* @var int * @var int
* @since 1.0.0 * @since 1.0.0
*/ */
public int $historicComparisonDurationType = OrderSuggestionComparisonDurationType::ANNUAL; public int $historicComparisonDurationType = OrderSuggestionComparisonDurationType::ANNUALY;
/** /**
* How many years should used for the analysis. * How many years should used for the analysis.
* *
* @var int * @var int
* @since 1.0.0 * @since 1.0.0
*/ */
public int $historicComparisonDuration = 1; public int $historicComparisonDuration = 1;
/** /**
* Which averaging method should be used? * Which averaging method should be used?
* *
* @var int * @var int
* @since 1.0.0 * @since 1.0.0
*/ */
public int $historicAveragingMethod = OrderSuggestionAveragingMethod::MEAN; public int $historicAveragingMethod = OrderSuggestionAveragingMethod::MEAN;
/** /**
* What should the focus of the order suggestion be? * What should the focus of the order suggestion be?
* *
* @var int * @var int
* @since 1.0.0 * @since 1.0.0
*/ */
public int $optimizationType = OrderSuggestionOptimizationType::PRICE; public int $optimizationType = OrderSuggestionOptimizationType::PRICE;
/** /**
* How greedy should the algorithm be? * How greedy should the algorithm be?
* *
* The number represents how many items in % can be bought in additon to the optimal stock quantity. * The number represents how many items in % can be bought in additon to the optimal stock quantity.
* *
* Higher means more room for adjustments. * Higher means more room for adjustments.
* *
* @var int * @var int
* @since 1.0.0 * @since 1.0.0
*/ */
public int $optimizationGreediness = 10; public int $optimizationGreediness = 10;
/** /**
* For how many days would you like to have stock? * For how many days would you like to have stock?
* *
* Or in other words, higher means you need to order less often per year. * Or in other words, higher means you need to order less often per year.
* *
* Only relevant if OptimizationType::AVAILABILITY * Only relevant if OptimizationType::AVAILABILITY
* *
* @var int * @var int
* @since 1.0.0 * @since 1.0.0
*/ */
public int $optimizationDays = 0; public int $optimizationDays = 0;
/** /**
* Maximum available budget. * Maximum available budget.
* *
* 0 = infinite budget * 0 = infinite budget
* *
* If a budget is defined and the optimal order is > than the available budget, * If a budget is defined and the optimal order is > than the available budget,
* the algorithm will try to order as many different items as possible. * the algorithm will try to order as many different items as possible.
* *
* If not all items can be ordered will try to order the items with the highest profit. * If not all items can be ordered will try to order the items with the highest profit.
* *
* @var int * @var int
* @since 1.0.0 * @since 1.0.0
*/ */
public int $maxAvailableBudget = 0; public int $maxAvailableBudget = 0;
/** /**
* item data for algorithm: * item data for algorithm:
* number * number
* name * name
* purchase price per volume * purchase price per volume
* minimum quantity per volume * minimum quantity per volume
* delivery time / lead time * delivery time / lead time
* in-house processing time (e.g. qs time, labelling, packaging) * in-house processing time (e.g. qs time, labelling, packaging)
* ordered (order confirmations) * ordered (order confirmations)
* stock available * stock available
* offers * offers
* avg. profit * avg. profit
* demand in period N * demand in period N
*/ */
} }

View File

@ -4,7 +4,7 @@
* *
* PHP Version 8.0 * PHP Version 8.0
* *
* @package Modules\Purchase\Models\OrderSuggestion * @package Modules\Purchase\OrderSuggestion
* @copyright Dennis Eichhorn * @copyright Dennis Eichhorn
* @license OMS License 1.0 * @license OMS License 1.0
* @version 1.0.0 * @version 1.0.0
@ -19,7 +19,7 @@ use phpOMS\Stdlib\Base\Enum;
/** /**
* Suggestion type enum. * Suggestion type enum.
* *
* @package Modules\Purchase\Models\OrderSuggestion * @package Modules\Purchase\OrderSuggestion
* @license OMS License 1.0 * @license OMS License 1.0
* @link https://orange-management.org * @link https://orange-management.org
* @since 1.0.0 * @since 1.0.0

View File

@ -4,7 +4,7 @@
* *
* PHP Version 8.0 * PHP Version 8.0
* *
* @package Modules\Purchase\Models\OrderSuggestion * @package Modules\Purchase\OrderSuggestion
* @copyright Dennis Eichhorn * @copyright Dennis Eichhorn
* @license OMS License 1.0 * @license OMS License 1.0
* @version 1.0.0 * @version 1.0.0
@ -19,7 +19,7 @@ use phpOMS\Stdlib\Base\Enum;
/** /**
* Suggestion type enum. * Suggestion type enum.
* *
* @package Modules\Purchase\Models\OrderSuggestion * @package Modules\Purchase\OrderSuggestion
* @license OMS License 1.0 * @license OMS License 1.0
* @link https://orange-management.org * @link https://orange-management.org
* @since 1.0.0 * @since 1.0.0

View File

@ -4,7 +4,7 @@
* *
* PHP Version 8.0 * PHP Version 8.0
* *
* @package Modules\Purchase\Models\OrderSuggestion * @package Modules\Purchase\OrderSuggestion
* @copyright Dennis Eichhorn * @copyright Dennis Eichhorn
* @license OMS License 1.0 * @license OMS License 1.0
* @version 1.0.0 * @version 1.0.0
@ -19,7 +19,7 @@ use phpOMS\Stdlib\Base\Enum;
/** /**
* Suggestion type enum. * Suggestion type enum.
* *
* @package Modules\Purchase\Models\OrderSuggestion * @package Modules\Purchase\OrderSuggestion
* @license OMS License 1.0 * @license OMS License 1.0
* @link https://orange-management.org * @link https://orange-management.org
* @since 1.0.0 * @since 1.0.0

View File

@ -4,7 +4,7 @@
* *
* PHP Version 8.0 * PHP Version 8.0
* *
* @package Modules\Purchase\Models\OrderSuggestion * @package Modules\Purchase\OrderSuggestion
* @copyright Dennis Eichhorn * @copyright Dennis Eichhorn
* @license OMS License 1.0 * @license OMS License 1.0
* @version 1.0.0 * @version 1.0.0
@ -19,7 +19,7 @@ use phpOMS\Stdlib\Base\Enum;
/** /**
* Suggestion type enum. * Suggestion type enum.
* *
* @package Modules\Purchase\Models\OrderSuggestion * @package Modules\Purchase\OrderSuggestion
* @license OMS License 1.0 * @license OMS License 1.0
* @link https://orange-management.org * @link https://orange-management.org
* @since 1.0.0 * @since 1.0.0

View File

@ -9,7 +9,7 @@
], ],
"require-dev": { "require-dev": {
"phpunit/phpunit": ">=9.4", "phpunit/phpunit": ">=9.4",
"friendsofphp/php-cs-fixer": ">=2.18", "friendsofphp/php-cs-fixer": ">=3.0",
"squizlabs/php_codesniffer": ">=3.5", "squizlabs/php_codesniffer": ">=3.5",
"phpmd/phpmd": ">=2.9", "phpmd/phpmd": ">=2.9",
"phpstan/phpstan": ">=0.12.58", "phpstan/phpstan": ">=0.12.58",