2namespace Bitrix\Catalog;
4use Bitrix\Main\Localization\Loc;
46 return 'b_catalog_vat';
61 'autocomplete' =>
true,
62 'title' => Loc::getMessage(
'VAT_ENTITY_ID_FIELD'),
69 'default_value' =>
function()
73 'title' => Loc::getMessage(
'VAT_ENTITY_TIMESTAMP_X_FIELD'),
83 'default_value' =>
'Y',
84 'title' => Loc::getMessage(
'VAT_ENTITY_ACTIVE_FIELD'),
90 'column_name' =>
'C_SORT',
91 'default_value' => 100,
92 'title' => Loc::getMessage(
'VAT_ENTITY_SORT_FIELD'),
99 'validation' =>
function()
105 'title' => Loc::getMessage(
'VAT_ENTITY_NAME_FIELD'),
112 'title' => Loc::getMessage(
'VAT_ENTITY_RATE_FIELD'),
122 'default_value' =>
'N',
123 'title' => Loc::getMessage(
'VAT_ENTITY_ACTIVE_FIELD'),
130 'validation' =>
function()
136 'title' => Loc::getMessage(
'VAT_ENTITY_XML_ID_FIELD'),
153 if (isset(
$fields[
'EXCLUDE_VAT']) &&
$fields[
'EXCLUDE_VAT'] ===
'Y')
155 if (static::isExistsExcludeVat())
158 new ORM\
EntityError(Loc::getMessage(
'VAT_ENTITY_ERR_EXCLUDE_VAT_ALREADY_EXISTS'))
183 if (isset(
$fields[
'EXCLUDE_VAT']) &&
$fields[
'EXCLUDE_VAT'] ===
'Y')
185 $id = (int)
$event->getParameter(
'primary')[
'ID'];
187 $excludeId = static::getExcludeVatId();
189 if ($excludeId !==
null && $excludeId !== $id)
192 new ORM\
EntityError(Loc::getMessage(
'VAT_ENTITY_ERR_EXCLUDE_VAT_ALREADY_EXISTS'))
217 && ($rate < 0 || $rate > 100)
222 $row = static::getList([
233 return (
int)$row[
'ID'];
240 'NAME' => $rate .
'%',
257 return (static::getExcludeVatId() !==
null);
272 '=EXCLUDE_VAT' =>
'Y',
279 return (!empty($row) ? (
int)$row[
'ID'] :
null);
static onBeforeAdd(ORM\Event $event)
static getActiveVatIdByRate(?float $rate, bool $create=false)
static onBeforeUpdate(ORM\Event $event)
static isExistsExcludeVat()
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)