Рефакторинг исключений, новые константы ограничений
Описывать все слишком долго, TLDR:
- упрощены корневые AtolException, {BasicTooLongException => TooLongException}, {BasicTooManyException => TooManyException}
- InvalidSnoException заменён на InvalidEnumValueException
- добавлены новые константы, общий порядок изменён в соответствии с порядком упоминания в документации, ссылки на которую тоже добавлены с указанием страниц
Помимо этого, в enum-ах теперь должен быть предусмотрен метод getFfdTags()
This commit is contained in:
@@ -36,40 +36,89 @@ final class Constraints
|
||||
*/
|
||||
const MAX_LENGTH_PASSWORD = 100;
|
||||
|
||||
/**
|
||||
* Максимальная длина имени покупателя
|
||||
*/
|
||||
const MAX_LENGTH_CLIENT_NAME = 256;
|
||||
|
||||
/**
|
||||
* Максимальная длина телефона покупателя
|
||||
*/
|
||||
const MAX_LENGTH_CLIENT_PHONE = 64;
|
||||
|
||||
/**
|
||||
* Максимальная длина адреса места расчётов
|
||||
*/
|
||||
const MAX_LENGTH_PAYMENT_ADDRESS = 256;
|
||||
|
||||
|
||||
/**
|
||||
* Максимальная длина имени кассира
|
||||
* Максимальная длина наименования покупателя (1227)
|
||||
* @see https://online.atol.ru/files/API_atol_online_v4.pdf Документация, стр 17
|
||||
*/
|
||||
const MAX_LENGTH_CASHIER_NAME = 64;
|
||||
|
||||
const MAX_LENGTH_CLIENT_NAME = 256;
|
||||
|
||||
/**
|
||||
* Максимальная длина наименования предмета расчётов
|
||||
* Максимальная длина наименования предмета расчёта (1030)
|
||||
* @see https://online.atol.ru/files/API_atol_online_v4.pdf Документация, стр 21
|
||||
*/
|
||||
const MAX_LENGTH_ITEM_NAME = 128;
|
||||
|
||||
|
||||
/**
|
||||
* Максимальная цена за единицу предмета расчёта (1079)
|
||||
* @see https://online.atol.ru/files/API_atol_online_v4.pdf Документация, стр 21
|
||||
*/
|
||||
const MAX_COUNT_ITEM_PRICE = 42949672.95;
|
||||
|
||||
/**
|
||||
* Максимальное количество (вес) единицы предмета расчёта (1023)
|
||||
* @see https://online.atol.ru/files/API_atol_online_v4.pdf Документация, стр 21
|
||||
*/
|
||||
const MAX_COUNT_ITEM_QUANTITY = 99999.999;
|
||||
|
||||
/**
|
||||
* Максимальная стоимость всех предметов расчёта в документе прихода, расхода,
|
||||
* возврата прихода, возврата расхода (1043)
|
||||
* @see https://online.atol.ru/files/API_atol_online_v4.pdf Документация, стр 21
|
||||
*/
|
||||
const MAX_COUNT_ITEM_SUM = 42949672.95;
|
||||
|
||||
/**
|
||||
* Максимальная длина телефона или email покупателя (1008)
|
||||
* @see https://online.atol.ru/files/API_atol_online_v4.pdf Документация, стр 17
|
||||
*/
|
||||
const MAX_LENGTH_CLIENT_CONTACT = 64;
|
||||
|
||||
/**
|
||||
* Длина операции для платёжного агента (1044)
|
||||
* @see https://online.atol.ru/files/API_atol_online_v4.pdf Документация, стр 19
|
||||
*/
|
||||
const MAX_LENGTH_PAYING_AGENT_OPERATION = 24;
|
||||
|
||||
/**
|
||||
* Максимальное количество предметов расчёта в документе прихода, расхода, возврата прихода, возврата расхода
|
||||
* @see https://online.atol.ru/files/API_atol_online_v4.pdf Документация, стр 21
|
||||
*/
|
||||
const MAX_COUNT_DOC_ITEMS = 100;
|
||||
|
||||
/**
|
||||
* Максимальная длина единицы измерения предмета расчётов
|
||||
* @see https://online.atol.ru/files/API_atol_online_v4.pdf Документация, стр 21
|
||||
*/
|
||||
const MAX_LENGTH_MEASUREMENT_UNIT = 16;
|
||||
|
||||
|
||||
/**
|
||||
* Максимальная длина пользовательских данных для предмета расчётов
|
||||
* Максимальная длина пользовательских данных для предмета расчётов (1191)
|
||||
* @see https://online.atol.ru/files/API_atol_online_v4.pdf Документация, стр 29
|
||||
*/
|
||||
const MAX_LENGTH_USER_DATA = 64;
|
||||
|
||||
/**
|
||||
* Максимальное количество платежей в любом документе
|
||||
* @see https://online.atol.ru/files/API_atol_online_v4.pdf Документация, стр 30 и 35
|
||||
*/
|
||||
const MAX_COUNT_DOC_PAYMENTS = 10;
|
||||
|
||||
/**
|
||||
* Максимальное количество ставок НДС в любом документе
|
||||
* @see https://online.atol.ru/files/API_atol_online_v4.pdf Документация, стр 31 и 36
|
||||
*/
|
||||
const MAX_COUNT_DOC_VATS = 6;
|
||||
|
||||
/**
|
||||
* Максимальная длина имени кассира (1021)
|
||||
* @see https://online.atol.ru/files/API_atol_online_v4.pdf Документация, стр 32
|
||||
*/
|
||||
const MAX_LENGTH_CASHIER_NAME = 64;
|
||||
|
||||
/**
|
||||
* Регулярное выражание для валидации строки ИНН
|
||||
|
||||
Reference in New Issue
Block a user