| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- <?php
- namespace hd\models\homePageConfig;
- use bizHd\homePageConfig\classes\HomePageModuleClass;
- use hd\models\BaseForm;
- /**
- * 保存热门推荐 / 今日上新 / 下拉商品配置
- */
- class SaveGoodsSectionForm extends BaseForm
- {
- public $enabled;
- public $name;
- public $type;
- public $value;
- public $sort;
- public function rules()
- {
- return [
- ['enabled', 'default', 'value' => 0],
- ['sort', 'default', 'value' => HomePageModuleClass::SORT_PRODUCT],
- ['name', 'trim'],
- ['value', 'trim'],
- ['name', 'required', 'message' => '请输入首页展示名称'],
- ['name', 'string', 'max' => 20, 'tooLong' => '展示名称不能超过20字'],
- ['type', 'required', 'message' => '关联类型无效'],
- ['type', 'in', 'range' => [
- HomePageModuleClass::LINK_GOODS,
- HomePageModuleClass::LINK_CATEGORY,
- HomePageModuleClass::LINK_USE_CASE,
- ], 'message' => '关联类型无效'],
- ['value', 'required', 'message' => '请选择关联内容'],
- ['sort', 'in', 'range' => [
- HomePageModuleClass::SORT_PRODUCT,
- HomePageModuleClass::SORT_SALES,
- HomePageModuleClass::SORT_NEW,
- ], 'message' => '排序规则无效'],
- ['enabled', 'filter', 'filter' => function ($value) {
- return !empty($value) ? 1 : 0;
- }],
- ];
- }
- public function attributeLabels()
- {
- return [
- 'enabled' => '开关',
- 'name' => '展示名称',
- 'type' => '关联类型',
- 'value' => '关联内容',
- 'sort' => '排序规则',
- ];
- }
- /**
- * @return array
- */
- public function getPayload()
- {
- return [
- 'name' => trim(strval($this->name)),
- 'type' => intval($this->type),
- 'value' => trim(strval($this->value)),
- 'sort' => intval($this->sort),
- ];
- }
- /**
- * @return int
- */
- public function getEnabled()
- {
- return !empty($this->enabled) ? 1 : 0;
- }
- }
|