Можно ли расширять стандартную модель-cущность d7 (как правильно не уверен)?
Есть класс UserGroupTable ( \bitrix\modules\main\lib\usergroup.php ) позволяет получить только USER_ID, GROUP_ID, DATE_ACTIVE_FROM, DATE_ACTIVE_TO необходимо сделать join-ы чтобы можно было получать все поля пользователя (Имя и т.п.).
- Вынес этот класс в свой, можно ли как-то расширить, т.е. добавить в модель связи с другими таблицами (join-ы) пока не разобрался как.
- Какова вероятность что такая модель после обновления bitrix-a может перестать работать? Может ли поменяться структура таблиц?
Буду благодарен за любые подсказки.
Код стандартного класса-сущности:
Есть класс UserGroupTable ( \bitrix\modules\main\lib\usergroup.php ) позволяет получить только USER_ID, GROUP_ID, DATE_ACTIVE_FROM, DATE_ACTIVE_TO необходимо сделать join-ы чтобы можно было получать все поля пользователя (Имя и т.п.).
- Вынес этот класс в свой, можно ли как-то расширить, т.е. добавить в модель связи с другими таблицами (join-ы) пока не разобрался как.
- Какова вероятность что такая модель после обновления bitrix-a может перестать работать? Может ли поменяться структура таблиц?
Буду благодарен за любые подсказки.
Код стандартного класса-сущности:
| Код |
|---|
namespace Bitrix\Main;
use Bitrix\Main\Entity;
use Bitrix\Main\Localization\Loc;
Loc::loadMessages(__FILE__);
class UserGroupTable extends Entity\DataManager
{
public static function getTableName()
{
return 'b_user_group';
}
public static function getMap()
{
return array(
'USER_ID' => array(
'data_type' => 'integer',
'primary' => true
),
'USER' => array(
'data_type' => 'User',
'reference' => array('=this.USER_ID' => 'ref.ID')
),
'GROUP_ID' => array(
'data_type' => 'integer',
'primary' => true
),
'GROUP' => array(
'data_type' => 'Group',
'reference' => array('=this.GROUP_ID' => 'ref.ID')
),
'DATE_ACTIVE_FROM' => array(
'data_type' => 'datetime',
),
'DATE_ACTIVE_TO' => array(
'data_type' => 'datetime',
),
);
}
} |