server test version
This commit is contained in:
55
kernel/app_modules/card/services/CardTemplateService.php
Normal file
55
kernel/app_modules/card/services/CardTemplateService.php
Normal file
@ -0,0 +1,55 @@
|
||||
<?php
|
||||
|
||||
namespace kernel\app_modules\card\services;
|
||||
|
||||
use kernel\app_modules\card\models\Card;
|
||||
use kernel\app_modules\card\models\CardTemplate;
|
||||
use kernel\FormModel;
|
||||
|
||||
class CardTemplateService
|
||||
{
|
||||
|
||||
public function create(FormModel $form_model): false|CardTemplate
|
||||
{
|
||||
$model = new CardTemplate();
|
||||
// Пример заполнения:
|
||||
$model->path = $form_model->getItem('path');
|
||||
$model->status = $form_model->getItem('status');
|
||||
$model->title = $form_model->getItem('title');
|
||||
// $model->slug = Slug::createSlug($form_model->getItem('title'), Card::class); // Генерация уникального slug
|
||||
|
||||
if ($model->save()) {
|
||||
return $model;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public function update(FormModel $form_model, CardTemplate $cardTemplate): false|CardTemplate
|
||||
{
|
||||
// Пример обновления:
|
||||
$cardTemplate->title = $form_model->getItem('title');
|
||||
$cardTemplate->path = $form_model->getItem('path') ?? $cardTemplate->path;
|
||||
$cardTemplate->status = $form_model->getItem('status');
|
||||
|
||||
if ($cardTemplate->save()) {
|
||||
return $cardTemplate;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public static function getTemplatesList(): array
|
||||
{
|
||||
$arr = [];
|
||||
foreach (CardTemplate::all()->toArray() as $cardTemplate){
|
||||
$arr[$cardTemplate['id']] = $cardTemplate['title'];
|
||||
}
|
||||
if (!empty($arr)) {
|
||||
return $arr;
|
||||
}
|
||||
|
||||
return [];
|
||||
}
|
||||
|
||||
}
|
Reference in New Issue
Block a user