gestalt_profile_id = $form_model->getItem('gestalt_profile_id'); $model->entity = $form_model->getItem('entity'); $model->entity_id = $form_model->getItem('entity_id'); if ($model->save()){ return $model; } return false; } public function update(FormModel $form_model, GestaltProfileRelationship $gestalt_profile_relationship): false|GestaltProfileRelationship { $gestalt_profile_relationship->gestalt_profile_id = $form_model->getItem('gestalt_profile_id'); $gestalt_profile_relationship->entity = $form_model->getItem('entity'); $gestalt_profile_relationship->entity_id = $form_model->getItem('entity_id'); if ($gestalt_profile_relationship->save()){ return $gestalt_profile_relationship; } return false; } public static function getProfileByEntity(string $entity, int $entity_id): array { $profiles = GestaltProfileRelationship::with('profile')->where("entity_id", $entity_id)->where("entity", $entity)->get(); $value = []; foreach ($profiles as $profile) { $value[$profile->gestalt_profile_id] = $profile->profile->fio; } return $value; } public static function getProfilesList(): array { return Gestalt_profile::pluck('fio', 'id')->all(); } }