63 lines
1.7 KiB
PHP
63 lines
1.7 KiB
PHP
<?php
|
|
|
|
namespace App\Services;
|
|
|
|
use App\Helpers\BoardHelper;
|
|
use App\Models\BoardModel;
|
|
|
|
class BoardService extends CommonService
|
|
{
|
|
public function __construct()
|
|
{
|
|
parent::__construct(new BoardModel(), new BoardHelper());
|
|
$this->addClassName('Board');
|
|
}
|
|
public function getFormFields(): array
|
|
{
|
|
return [
|
|
'category',
|
|
'title',
|
|
'content',
|
|
'status',
|
|
];
|
|
}
|
|
public function getFormFilters(): array
|
|
{
|
|
return [
|
|
'user_uid',
|
|
'category',
|
|
'status',
|
|
];
|
|
}
|
|
public function getIndexFields(): array
|
|
{
|
|
return [
|
|
'category',
|
|
'title',
|
|
'user_uid',
|
|
'status',
|
|
'created_at',
|
|
];
|
|
}
|
|
public function getBatchjobFields(): array
|
|
{
|
|
return ['user_uid', 'category', 'status'];
|
|
}
|
|
public function latest(array $where, int $limit = 3): array
|
|
{
|
|
//관리자정보
|
|
$userEntities = $this->getUserService()->getEntities();
|
|
$this->getModel()->limit($limit);
|
|
$datas = [];
|
|
foreach ($this->getEntities($where) as $entity) {
|
|
$datas[] = [
|
|
'title' => "<label for=\"view\" data-src=\"/admin/board/view/{$entity->getPK()}\" data-bs-toggle=\"modal\" data-bs-target=\" #modal_action_form\" class=\"text-primary form-label-sm\">{$entity->getTitle()}</label>",
|
|
'created_at' => date('Y-m-d H:m', strtotime($entity->getCreatedAT())),
|
|
'user' => $userEntities[$entity->getUserUID()]->getTitle(),
|
|
];
|
|
}
|
|
return $datas;
|
|
}
|
|
//기본 기능부분
|
|
}
|