public function rules()
{
return array_merge(parent::rules(), [[['created_by', 'updated_by', 'created_at', 'updated_at', 'property_id', 'element_id'], 'integer'], [['description'], 'string', 'max' => 255], [['value'], 'string'], ['value_enum', 'filter', 'filter' => function ($value) {
$value = (int) $value;
$filter_options = ['options' => ['default' => 0, 'min_range' => -2147483648.0, 'max_range' => 2147483647]];
return filter_var($value, FILTER_VALIDATE_INT, $filter_options);
}], ['value_enum', 'integer'], ['value_num', 'filter', 'filter' => function ($value) {
$value = (double) $value;
$min_range = -100000000000000.0;
$max_range = 100000000000000.0;
if ($value <= $min_range || $value >= $max_range) {
return 0.0;
}
return $value;
}], ['value_num', 'number']]);
}