Новая сущность Kkt для ответов мониторинга (#8) + мелкий рефакторинг
- enum-константы перенесены в своё пространство Enums - новые исключения EmptyMonitorDataException + NotEnoughMonitorDataException - KktMonitor::getAll() теперь возвращает коллекцию объектов Kkt - KktMonitor::getOne() теперь возвращает объект Kkt - местами актуализированы return types + phpdoc Покрытие тестами: - 61% исключений - 98% AtolClient (пока хз как покрыть 208-ую строку) - 100% KktMonitor - 100% Kkt - 100% Client - 100% Company - 100% Entity
This commit is contained in:
34
src/Enums/CorrectionTypes.php
Normal file
34
src/Enums/CorrectionTypes.php
Normal file
@@ -0,0 +1,34 @@
|
||||
<?php
|
||||
/*
|
||||
* Copyright (c) 2020-2021 Антон Аксенов (Anthony Axenov)
|
||||
*
|
||||
* This code is licensed under MIT.
|
||||
* Этот код распространяется по лицензии MIT.
|
||||
* https://github.com/anthonyaxenov/atol-online/blob/master/LICENSE
|
||||
*/
|
||||
|
||||
declare(strict_types = 1);
|
||||
|
||||
namespace AtolOnline\Enums;
|
||||
|
||||
use MyCLabs\Enum\Enum;
|
||||
|
||||
/**
|
||||
* Константы, определяющие типы документов коррекции
|
||||
*
|
||||
* Тег ФФД - 1173
|
||||
*
|
||||
* @see https://online.atol.ru/files/API_atol_online_v4.pdf Документация, стр 35 (correction_info)
|
||||
*/
|
||||
final class CorrectionTypes extends Enum
|
||||
{
|
||||
/**
|
||||
* Самостоятельно
|
||||
*/
|
||||
const SELF = 'self';
|
||||
|
||||
/**
|
||||
* По предписанию
|
||||
*/
|
||||
const INSTRUCTION = 'instruction';
|
||||
}
|
||||
30
src/Enums/DocumentTypes.php
Normal file
30
src/Enums/DocumentTypes.php
Normal file
@@ -0,0 +1,30 @@
|
||||
<?php
|
||||
/*
|
||||
* Copyright (c) 2020-2021 Антон Аксенов (Anthony Axenov)
|
||||
*
|
||||
* This code is licensed under MIT.
|
||||
* Этот код распространяется по лицензии MIT.
|
||||
* https://github.com/anthonyaxenov/atol-online/blob/master/LICENSE
|
||||
*/
|
||||
|
||||
declare(strict_types = 1);
|
||||
|
||||
namespace AtolOnline\Enums;
|
||||
|
||||
use MyCLabs\Enum\Enum;
|
||||
|
||||
/**
|
||||
* Константы, определяющие типы документов
|
||||
*/
|
||||
final class DocumentTypes extends Enum
|
||||
{
|
||||
/**
|
||||
* Чек прихода, возврата прихода, расхода, возврата расхода
|
||||
*/
|
||||
const RECEIPT = 'receipt';
|
||||
|
||||
/**
|
||||
* Чек коррекции
|
||||
*/
|
||||
const CORRECTION = 'correction';
|
||||
}
|
||||
59
src/Enums/PaymentMethods.php
Normal file
59
src/Enums/PaymentMethods.php
Normal file
@@ -0,0 +1,59 @@
|
||||
<?php
|
||||
/*
|
||||
* Copyright (c) 2020-2021 Антон Аксенов (Anthony Axenov)
|
||||
*
|
||||
* This code is licensed under MIT.
|
||||
* Этот код распространяется по лицензии MIT.
|
||||
* https://github.com/anthonyaxenov/atol-online/blob/master/LICENSE
|
||||
*/
|
||||
|
||||
declare(strict_types = 1);
|
||||
|
||||
namespace AtolOnline\Enums;
|
||||
|
||||
use MyCLabs\Enum\Enum;
|
||||
|
||||
/**
|
||||
* Константы, определяющие признаки способов расчёта
|
||||
*
|
||||
* Тег ФФД - 1214
|
||||
*
|
||||
* @see https://online.atol.ru/files/API_atol_online_v4.pdf Документация, стр 22 (payment_method)
|
||||
*/
|
||||
final class PaymentMethods extends Enum
|
||||
{
|
||||
/**
|
||||
* Предоплата 100% до передачи предмета расчёта
|
||||
*/
|
||||
const FULL_PREPAYMENT = 'full_prepayment';
|
||||
|
||||
/**
|
||||
* Частичная предоплата до передачи предмета расчёта
|
||||
*/
|
||||
const PREPAYMENT = 'prepayment';
|
||||
|
||||
/**
|
||||
* Аванс
|
||||
*/
|
||||
const ADVANCE = 'advance';
|
||||
|
||||
/**
|
||||
* Полная оплата с учётом аванса/предоплаты в момент передачи предмета расчёта
|
||||
*/
|
||||
const FULL_PAYMENT = 'full_payment';
|
||||
|
||||
/**
|
||||
* Частичный расчёт в момент передачи предмета расчёта (дальнейшая оплата в кредит)
|
||||
*/
|
||||
const PARTIAL_PAYMENT = 'partial_payment';
|
||||
|
||||
/**
|
||||
* Передача предмета расчёта в кредит
|
||||
*/
|
||||
const CREDIT = 'credit';
|
||||
|
||||
/**
|
||||
* Оплата кредита
|
||||
*/
|
||||
const CREDIT_PAYMENT = 'credit_payment';
|
||||
}
|
||||
161
src/Enums/PaymentObjects.php
Normal file
161
src/Enums/PaymentObjects.php
Normal file
@@ -0,0 +1,161 @@
|
||||
<?php
|
||||
/*
|
||||
* Copyright (c) 2020-2021 Антон Аксенов (Anthony Axenov)
|
||||
*
|
||||
* This code is licensed under MIT.
|
||||
* Этот код распространяется по лицензии MIT.
|
||||
* https://github.com/anthonyaxenov/atol-online/blob/master/LICENSE
|
||||
*/
|
||||
|
||||
declare(strict_types = 1);
|
||||
|
||||
namespace AtolOnline\Enums;
|
||||
|
||||
use MyCLabs\Enum\Enum;
|
||||
|
||||
/**
|
||||
* Константы, определяющие признаки предметов расчёта
|
||||
*
|
||||
* Тег ФФД - 1212
|
||||
*
|
||||
* @see https://online.atol.ru/files/API_atol_online_v4.pdf Документация, стр 23 (payment_object)
|
||||
*/
|
||||
final class PaymentObjects extends Enum
|
||||
{
|
||||
/**
|
||||
* Товар, кроме подакцизного
|
||||
*/
|
||||
const COMMODITY = 'commodity';
|
||||
|
||||
/**
|
||||
* Товар подакцизный
|
||||
*/
|
||||
const EXCISE = 'excise';
|
||||
|
||||
/**
|
||||
* Работа
|
||||
*/
|
||||
const JOB = 'job';
|
||||
|
||||
/**
|
||||
* Услуга
|
||||
*/
|
||||
const SERVICE = 'service';
|
||||
|
||||
/**
|
||||
* Ставка азартной игры
|
||||
*/
|
||||
const GAMBLING_BET = 'gambling_bet';
|
||||
|
||||
/**
|
||||
* Выигрыш азартной игры
|
||||
*/
|
||||
const GAMBLING_PRIZE = 'gambling_prize';
|
||||
|
||||
/**
|
||||
* Лотерея
|
||||
*/
|
||||
const LOTTERY = 'lottery';
|
||||
|
||||
/**
|
||||
* Выигрыш лотереи
|
||||
*/
|
||||
const LOTTERY_PRIZE = 'lottery_prize';
|
||||
|
||||
/**
|
||||
* Предоставление результатов интеллектуальной деятельности
|
||||
*/
|
||||
const INTELLECTUAL_ACTIVITY = 'intellectual_activity';
|
||||
|
||||
/**
|
||||
* Платёж (задаток, кредит, аванс, предоплата, пеня, штраф, бонус и пр.)
|
||||
*/
|
||||
const PAYMENT = 'payment';
|
||||
|
||||
/**
|
||||
* Агентское вознаграждение
|
||||
*/
|
||||
const AGENT_COMMISSION = 'agent_commission';
|
||||
|
||||
/**
|
||||
* Составной предмет расчёта
|
||||
* @deprecated Более не используется согласно ФФД 1.05
|
||||
* @see https://online.atol.ru/files/API_atol_online_v4.pdf Документация, стр 25 (payment_object)
|
||||
*/
|
||||
const COMPOSITE = 'composite';
|
||||
|
||||
/**
|
||||
* Другой предмет расчёта
|
||||
*/
|
||||
const ANOTHER = 'another';
|
||||
|
||||
/**
|
||||
* Имущественное право
|
||||
*/
|
||||
const PROPERTY_RIGHT = 'property_right';
|
||||
|
||||
/**
|
||||
* Внереализационный доход
|
||||
*/
|
||||
const NON_OPERATING_GAIN = 'non-operating_gain';
|
||||
|
||||
/**
|
||||
* Страховые взносы
|
||||
*/
|
||||
const INSURANCE_PREMIUM = 'insurance_premium';
|
||||
|
||||
/**
|
||||
* Торговый сбор
|
||||
*/
|
||||
const SALES_TAX = 'sales_tax';
|
||||
|
||||
/**
|
||||
* Курортный сбор
|
||||
*/
|
||||
const RESORT_FEE = 'resort_fee';
|
||||
|
||||
/**
|
||||
* Взнос в счёт оплаты пени, штрафе, вознаграждении, бонусе и ином аналогичном предмете расчета
|
||||
*/
|
||||
const AWARD = 'award';
|
||||
|
||||
/**
|
||||
* Залог
|
||||
*/
|
||||
const DEPOSIT = 'deposit';
|
||||
|
||||
/**
|
||||
* Расход, уменьшающий доход (в соответствии со статьей 346.16 НК РФ)
|
||||
*/
|
||||
const EXPENSE = 'expense';
|
||||
|
||||
/**
|
||||
* Взнос на ОПС ИП
|
||||
*/
|
||||
const PEN_INSURANCE_IP = 'pension_insurance_ip';
|
||||
|
||||
/**
|
||||
* Взнос на ОПС
|
||||
*/
|
||||
const PEN_INSURANCE = 'pension_insurance';
|
||||
|
||||
/**
|
||||
* Взнос на ОМС ИП
|
||||
*/
|
||||
const MED_INSURANCE_IP = 'medical_insurance_ip';
|
||||
|
||||
/**
|
||||
* Взнос на ОМС
|
||||
*/
|
||||
const MED_INSURANCE = 'medical_insurance';
|
||||
|
||||
/**
|
||||
* Взнос на ОСС
|
||||
*/
|
||||
const SOC_INSURANCE = 'social_insurance';
|
||||
|
||||
/**
|
||||
* Платёж казино
|
||||
*/
|
||||
const CASINO_PAYMENT = 'casino_payment';
|
||||
}
|
||||
77
src/Enums/PaymentTypes.php
Normal file
77
src/Enums/PaymentTypes.php
Normal file
@@ -0,0 +1,77 @@
|
||||
<?php
|
||||
/*
|
||||
* Copyright (c) 2020-2021 Антон Аксенов (Anthony Axenov)
|
||||
*
|
||||
* This code is licensed under MIT.
|
||||
* Этот код распространяется по лицензии MIT.
|
||||
* https://github.com/anthonyaxenov/atol-online/blob/master/LICENSE
|
||||
*/
|
||||
|
||||
declare(strict_types = 1);
|
||||
|
||||
namespace AtolOnline\Enums;
|
||||
|
||||
use MyCLabs\Enum\Enum;
|
||||
|
||||
/**
|
||||
* Константы, определяющие виды оплат
|
||||
*
|
||||
* Теги ФФД: 1031, 1081, 1215, 1216, 1217
|
||||
*/
|
||||
final class PaymentTypes extends Enum
|
||||
{
|
||||
/**
|
||||
* Расчёт наличными. Тег ФФД - 1031.
|
||||
*/
|
||||
const CASH = 0;
|
||||
|
||||
/**
|
||||
* Расчёт безналичными. Тег ФФД - 1081.
|
||||
*/
|
||||
const ELECTRON = 1;
|
||||
|
||||
/**
|
||||
* Предварительная оплата (зачёт аванса). Тег ФФД - 1215.
|
||||
*/
|
||||
const PRE_PAID = 2;
|
||||
|
||||
/**
|
||||
* Предварительная оплата (кредит). Тег ФФД - 1216.
|
||||
*/
|
||||
const CREDIT = 3;
|
||||
|
||||
/**
|
||||
* Иная форма оплаты (встречное предоставление). Тег ФФД - 1217.
|
||||
*/
|
||||
const OTHER = 4;
|
||||
|
||||
/**
|
||||
* Расширенный типы оплаты (5)
|
||||
* Для каждого фискального типа оплаты можно указать расширенный тип оплаты
|
||||
*/
|
||||
const ADD_5 = 5;
|
||||
|
||||
/**
|
||||
* Расширенный типы оплаты (6)
|
||||
* Для каждого фискального типа оплаты можно указать расширенный тип оплаты
|
||||
*/
|
||||
const ADD_6 = 6;
|
||||
|
||||
/**
|
||||
* Расширенный типы оплаты (7)
|
||||
* Для каждого фискального типа оплаты можно указать расширенный тип оплаты
|
||||
*/
|
||||
const ADD_7 = 7;
|
||||
|
||||
/**
|
||||
* Расширенный типы оплаты (8)
|
||||
* Для каждого фискального типа оплаты можно указать расширенный тип оплаты
|
||||
*/
|
||||
const ADD_8 = 8;
|
||||
|
||||
/**
|
||||
* Расширенный типы оплаты (9)
|
||||
* Для каждого фискального типа оплаты можно указать расширенный тип оплаты
|
||||
*/
|
||||
const ADD_9 = 9;
|
||||
}
|
||||
50
src/Enums/ReceiptOperationTypes.php
Normal file
50
src/Enums/ReceiptOperationTypes.php
Normal file
@@ -0,0 +1,50 @@
|
||||
<?php
|
||||
/*
|
||||
* Copyright (c) 2020-2021 Антон Аксенов (Anthony Axenov)
|
||||
*
|
||||
* This code is licensed under MIT.
|
||||
* Этот код распространяется по лицензии MIT.
|
||||
* https://github.com/anthonyaxenov/atol-online/blob/master/LICENSE
|
||||
*/
|
||||
|
||||
declare(strict_types = 1);
|
||||
|
||||
namespace AtolOnline\Enums;
|
||||
|
||||
use MyCLabs\Enum\Enum;
|
||||
|
||||
/**
|
||||
* Константы, определяющие типы операций (чеков)
|
||||
*/
|
||||
final class ReceiptOperationTypes extends Enum
|
||||
{
|
||||
/**
|
||||
* Приход (мы продали)
|
||||
*/
|
||||
const SELL = 'sell';
|
||||
|
||||
/**
|
||||
* Возврат прихода (нам вернули предмет расчёта, мы вернули средства)
|
||||
*/
|
||||
const SELL_REFUND = 'sell_refund';
|
||||
|
||||
/**
|
||||
* Коррекция прихода
|
||||
*/
|
||||
const SELL_CORRECTION = 'sell_correction';
|
||||
|
||||
/**
|
||||
* Расход (мы купили)
|
||||
*/
|
||||
const BUY = 'buy';
|
||||
|
||||
/**
|
||||
* Возврат расхода (мы вернули предмет расчёта, нам вернули средства)
|
||||
*/
|
||||
const BUY_REFUND = 'buy_refund';
|
||||
|
||||
/**
|
||||
* Коррекция прихода (догоняем неучтённые средства)
|
||||
*/
|
||||
const BUY_CORRECTION = 'buy_correction';
|
||||
}
|
||||
52
src/Enums/SnoTypes.php
Normal file
52
src/Enums/SnoTypes.php
Normal file
@@ -0,0 +1,52 @@
|
||||
<?php
|
||||
/*
|
||||
* Copyright (c) 2020-2021 Антон Аксенов (Anthony Axenov)
|
||||
*
|
||||
* This code is licensed under MIT.
|
||||
* Этот код распространяется по лицензии MIT.
|
||||
* https://github.com/anthonyaxenov/atol-online/blob/master/LICENSE
|
||||
*/
|
||||
|
||||
declare(strict_types = 1);
|
||||
|
||||
namespace AtolOnline\Enums;
|
||||
|
||||
use MyCLabs\Enum\Enum;
|
||||
|
||||
/**
|
||||
* Константы, определяющие типы налогообложения
|
||||
*
|
||||
* Тег ФДД - 1055
|
||||
*/
|
||||
final class SnoTypes extends Enum
|
||||
{
|
||||
/**
|
||||
* Общая СН
|
||||
*/
|
||||
const OSN = 'osn';
|
||||
|
||||
/**
|
||||
* Упрощенная СН (доходы)
|
||||
*/
|
||||
const USN_INCOME = 'usn_income';
|
||||
|
||||
/**
|
||||
* Упрощенная СН (доходы минус расходы)
|
||||
*/
|
||||
const USN_INCOME_OUTCOME = 'usn_income_outcome';
|
||||
|
||||
/**
|
||||
* Единый налог на вмененный доход
|
||||
*/
|
||||
const ENDV = 'envd';
|
||||
|
||||
/**
|
||||
* Единый сельскохозяйственный налог
|
||||
*/
|
||||
const ESN = 'esn';
|
||||
|
||||
/**
|
||||
* Патентная СН
|
||||
*/
|
||||
const PATENT = 'patent';
|
||||
}
|
||||
62
src/Enums/VatTypes.php
Normal file
62
src/Enums/VatTypes.php
Normal file
@@ -0,0 +1,62 @@
|
||||
<?php
|
||||
/*
|
||||
* Copyright (c) 2020-2021 Антон Аксенов (Anthony Axenov)
|
||||
*
|
||||
* This code is licensed under MIT.
|
||||
* Этот код распространяется по лицензии MIT.
|
||||
* https://github.com/anthonyaxenov/atol-online/blob/master/LICENSE
|
||||
*/
|
||||
|
||||
declare(strict_types = 1);
|
||||
|
||||
namespace AtolOnline\Enums;
|
||||
|
||||
use MyCLabs\Enum\Enum;
|
||||
|
||||
/**
|
||||
* Константы, определяющие типы ставок НДС
|
||||
*
|
||||
* Теги ФФД: 1199, 1105, 1104, 1103, 1102, 1107, 1106
|
||||
*/
|
||||
final class VatTypes extends Enum
|
||||
{
|
||||
/**
|
||||
* Без НДС
|
||||
*/
|
||||
const NONE = 'none';
|
||||
|
||||
/**
|
||||
* НДС 0%
|
||||
*/
|
||||
const VAT0 = 'vat0';
|
||||
|
||||
/**
|
||||
* НДС 10%
|
||||
*/
|
||||
const VAT10 = 'vat10';
|
||||
|
||||
/**
|
||||
* НДС 18%
|
||||
*/
|
||||
const VAT18 = 'vat18';
|
||||
|
||||
/**
|
||||
* НДС 20%
|
||||
*/
|
||||
const VAT20 = 'vat20';
|
||||
|
||||
/**
|
||||
* НДС 10/110%
|
||||
*/
|
||||
const VAT110 = 'vat110';
|
||||
|
||||
/**
|
||||
* НДС 18/118%
|
||||
*/
|
||||
const VAT118 = 'vat118';
|
||||
|
||||
/**
|
||||
* НДС 20/120%
|
||||
*/
|
||||
const VAT120 = 'vat120';
|
||||
}
|
||||
Reference in New Issue
Block a user