public function getFields()
{
$result = [
'ID' => [
'TYPE' => DataType::TYPE_INT,
'ATTRIBUTES' => [
Attributes::READONLY,
],
],
'DOC_TYPE' => [
'TYPE' => DataType::TYPE_CHAR,
'ATTRIBUTES' => [
Attributes::IMMUTABLE,
Attributes::REQUIRED,
],
],
'SITE_ID' => [
'TYPE' => DataType::TYPE_CHAR,
],
'RESPONSIBLE_ID' => [
'TYPE' => DataType::TYPE_INT,
'ATTRIBUTES' => [
Attributes::REQUIRED_ADD,
],
],
'DATE_MODIFY' => [
'TYPE' => DataType::TYPE_DATETIME,
],
'DATE_CREATE' => [
'TYPE' => DataType::TYPE_DATETIME,
'ATTRIBUTES' => [
Attributes::IMMUTABLE,
],
],
'CREATED_BY' => [
'TYPE' => DataType::TYPE_INT,
'ATTRIBUTES' => [
Attributes::IMMUTABLE,
],
],
'MODIFIED_BY' => [
'TYPE' => DataType::TYPE_INT,
],
'CURRENCY' => [
'TYPE' => DataType::TYPE_CHAR,
'ATTRIBUTES' => [
Attributes::REQUIRED,
Attributes::IMMUTABLE,
],
],
'STATUS' => [
'TYPE' => DataType::TYPE_CHAR,
'ATTRIBUTES' => [
Attributes::READONLY,
],
],
'DATE_STATUS' => [
'TYPE' => DataType::TYPE_DATETIME,
'ATTRIBUTES' => [
Attributes::READONLY,
],
],
'DATE_DOCUMENT' => [
'TYPE' => DataType::TYPE_DATETIME,
],
'STATUS_BY' => [
'TYPE' => DataType::TYPE_INT,
],
'TOTAL' => [
'TYPE' => DataType::TYPE_FLOAT,
],
'COMMENTARY' => [
'TYPE' => DataType::TYPE_CHAR,
],
'TITLE' => [
'TYPE' => DataType::TYPE_STRING,
],
'DOC_NUMBER' => [
'TYPE' => DataType::TYPE_STRING,
],
];
if (!Manager::isActiveProviderExists())
{
$result['CONTRACTOR_ID'] = [
'TYPE' => DataType::TYPE_INT,
];
}
return $result;
}