mirror of
https://github.com/anthonyaxenov/atol-online.git
synced 2024-09-27 15:57:27 +00:00
AnthonyAxenov
058ce5ed3d
- `EntityCollection` сильно упрощён, добавлен выброс исключений при пустом содержимом - `Receipt::setItems(), setPayments() и setVats()` получили одинаковые проверки входящих данных - округление в `Vat::setSum()` - доработаны тесты коллекций
42 lines
1.3 KiB
PHP
42 lines
1.3 KiB
PHP
<?php
|
|
/*
|
|
* Copyright (c) 2020-2021 Антон Аксенов (Anthony Axenov)
|
|
*
|
|
* This code is licensed under MIT.
|
|
* Этот код распространяется по лицензии MIT.
|
|
* https://github.com/anthonyaxenov/atol-online/blob/master/LICENSE
|
|
*/
|
|
|
|
namespace AtolOnline\Collections;
|
|
|
|
use AtolOnline\Constants\Constraints;
|
|
use AtolOnline\Entities\Vat;
|
|
use AtolOnline\Exceptions\EmptyVatsException;
|
|
use AtolOnline\Exceptions\TooManyVatsException;
|
|
|
|
/**
|
|
* Класс, описывающий коллекцию ставок НДС для документа
|
|
*/
|
|
final class Vats extends EntityCollection
|
|
{
|
|
/**
|
|
* Класс объектов, находящихся в коллекции
|
|
*/
|
|
protected const ENTITY_CLASS = Vat::class;
|
|
|
|
/**
|
|
* Максмальное количество объектов в коллекции
|
|
*/
|
|
protected const MAX_COUNT = Constraints::MAX_COUNT_DOC_VATS;
|
|
|
|
/**
|
|
* Класс исключения для выброса при пустой коллекции
|
|
*/
|
|
protected const EMPTY_EXCEPTION_CLASS = EmptyVatsException::class;
|
|
|
|
/**
|
|
* Класс-наследник TooManyException для выброса при превышении количества
|
|
*/
|
|
protected const TOO_MANY_EXCEPTION_CLASS = TooManyVatsException::class;
|
|
}
|