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; } }