1
0
mirror of synced 2025-01-08 10:27:09 +03:00
DeliveryModuleBundle/Model/DeliveryDataField.php
2020-02-19 19:00:09 +03:00

158 lines
4.6 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
namespace RetailCrm\DeliveryModuleBundle\Model;
use JMS\Serializer\Annotation as Serializer;
class DeliveryDataField
{
const TYPE_INTEGER = 'integer';
const TYPE_TEXT = 'text';
const TYPE_AUTOCOMPLETE = 'autocomplete';
const TYPE_CHECKBOX = 'checkbox';
const TYPE_CHOICE = 'choice';
const TYPE_DATE = 'date';
/**
* Код поля.
*
* @var string
*
* @Serializer\Groups({"get", "set"})
* @Serializer\SerializedName("code")
* @Serializer\Type("string")
*/
public $code;
/**
* Имя поля.
*
* @var string
*
* @Serializer\Groups({"get", "set"})
* @Serializer\SerializedName("label")
* @Serializer\Type("string")
*/
public $label;
/**
* Пояснение к полю.
*
* @var string
*
* @Serializer\Groups({"get", "set"})
* @Serializer\SerializedName("hint")
* @Serializer\Type("string")
*/
public $hint;
/**
* Тип поля. Возможны варианты (
* integer - числовое поле,
* text - текстовое поле,
* autocomplete - автокомплит поле,
* checkbox,
* choice - выпадающий список,
* date - поле с датой).
*
* @var string
*
* @Serializer\Groups({"get", "set"})
* @Serializer\SerializedName("type")
* @Serializer\Type("string")
*/
public $type;
/**
* Указывается для типа поля choice. Означает что можно выбирать несколько вариантов.
*
* @var bool
*
* @Serializer\Groups({"get", "set"})
* @Serializer\SerializedName("multiple")
* @Serializer\Type("boolean")
*/
public $multiple = false;
/**
* Указывается для типа поля choice. Список возможных вариантов в выпадающем списке. Обязателен если тип поля choice.
*
* @var array
*
* @Serializer\Groups({"get", "set"})
* @Serializer\SerializedName("choices")
* @Serializer\Type("array")
*/
public $choices;
/**
* Указывается для типа поля autocomplete. Адрес, по окторому можно получить данные для автокомплит поля.
*
* @var string
*
* @Serializer\Groups({"get", "set"})
* @Serializer\SerializedName("autocompleteUrl")
* @Serializer\Type("string")
*/
public $autocompleteUrl;
/**
* Указывается для типа поля autocomplete. Можно искать без указания строки поиска
* (при нажатии на поле сразу вывалится список с вариантами).
*
* @var bool
*
* @Serializer\Groups({"get", "set"})
* @Serializer\SerializedName("allowedEmptyTerm")
* @Serializer\Type("boolean")
*/
public $allowedEmptyTerm = false;
/**
* Видимость поля на форме.
*
* @var bool
*
* @Serializer\Groups({"get", "set"})
* @Serializer\SerializedName("visible")
* @Serializer\Type("boolean")
*/
public $isVisible = true;
/**
* Поле обязательно для заполнения.
*
* @var bool
*
* @Serializer\Groups({"get", "set"})
* @Serializer\SerializedName("required")
* @Serializer\Type("boolean")
*/
public $isRequired = false;
/**
* Поле влияет на стоимость доставки. Если true - значение поля используется в методе calculate.
*
* @var bool
*
* @Serializer\Groups({"get", "set"})
* @Serializer\SerializedName("affectsCost")
* @Serializer\Type("boolean")
*/
public $isAffectsCost = false;
/**
* Разрешено ли редактировать поле.
* Если false - поле информационное - заполняется только данными,
* полученными напрямую от службы доставки (
* например стоимость страховки - может заполняться после оформления доставки или при расчете стоимости).
*
* @var bool
*
* @Serializer\Groups({"get", "set"})
* @Serializer\SerializedName("editable")
* @Serializer\Type("boolean")
*/
public $isEditable = true;
}