key = $form_model->getItem('key'); $model->value = $form_model->getItem('value'); $model->label = $form_model->getItem('label'); $model->status = $form_model->getItem('status'); if ($model->save()) { return $model; } return false; } public function update(FormModel $form_model, Option $option): false|Option { $option->key = $form_model->getItem('key'); $option->value = $form_model->getItem('value'); $option->label = $form_model->getItem('label'); $option->status = $form_model->getItem('status'); if ($option->save()) { return $option; } return false; } public static function createFromParams(string $key, string $value, string $label): false|Option { $model = new Option(); $model->key = $key; $model->value = $value; $model->label = $label; if ($model->save()) { return $model; } return false; } /** * @param $key * @return false|array|string */ public static function getItem($key): false|array|string { $item = Option::where("key", $key)->first(); if ($item){ return getConst($item->value); } return false; } public static function removeOptionByKey(string $key): bool { $option = Option::where("key", $key)->first(); if (!$option){ return false; } $option->delete(); return true; } // public function createOptionArr(): array // { // foreach (Option::all()->toArray() as $option) { // $optionArr[$option['id']] = $option['key']; // } // if (!empty($optionArr)) { // return $optionArr; // } // return []; // } }