You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
1.5 KiB
52 lines
1.5 KiB
1 year ago
|
<?php
|
||
|
|
||
|
namespace Plugins\Notebook\Service\Admin;
|
||
|
|
||
|
|
||
|
use App\Service\Admin\AbstractAdminService;
|
||
|
use App\Service\Admin\Traits\DestroyServiceTrait;
|
||
|
use App\Service\Admin\Traits\StoreServiceTrait;
|
||
|
use App\Service\Admin\Traits\UpdateServiceTrait;
|
||
|
use App\Service\Admin\Traits\SwitchServiceTrait;
|
||
|
use App\Util\AdminAuth;
|
||
|
use Plugins\Notebook\Model\Notebook;
|
||
|
use App\Util\EasySearch;
|
||
|
|
||
|
/**
|
||
|
* Class NotebookService
|
||
|
*/
|
||
|
class NotebookService extends AbstractAdminService
|
||
|
{
|
||
|
use StoreServiceTrait, UpdateServiceTrait, DestroyServiceTrait, SwitchServiceTrait;
|
||
|
|
||
|
public function __construct()
|
||
|
{
|
||
|
$this->model = new Notebook();
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @return array
|
||
|
*/
|
||
|
public function lists(): array
|
||
|
{
|
||
|
$query = $this->model
|
||
|
->leftJoin('administrators as a1', 'a1.id', '=', 'notebook.administrators_id')
|
||
|
->leftJoin('administrators as a2', 'a2.id', '=', 'notebook.latest_administrators_id')
|
||
|
->select(["notebook.id","notebook.title","a1.name as create_name","a2.name as latest_name","notebook.create_time"]);
|
||
|
|
||
|
return EasySearch::create($query)->getData();
|
||
|
}
|
||
|
|
||
|
public function beforeStore(&$data): void
|
||
|
{
|
||
|
$data['administrators_id'] = AdminAuth::getInfo()->id;
|
||
|
var_dump($data['administrators_id']);
|
||
|
}
|
||
|
|
||
|
public function beforeWrite(&$data, $id = null): void
|
||
|
{
|
||
|
$data['latest_administrators_id'] = AdminAuth::getInfo()->id;
|
||
|
var_dump($data['latest_administrators_id']);
|
||
|
}
|
||
|
}
|