// +---------------------------------------------------------------------- declare(strict_types=1); namespace app\dao\driver\email; use app\model\driver\email\EmailDriver; use crmeb\basic\BaseDao; /** * 邮件驱动数据访问层 * Class EmailDriverDao * @package app\dao\driver\email */ class EmailDriverDao extends BaseDao { protected function setModel(): string { return EmailDriver::class; } public function getAllEnabled() { return $this->getModel()->where('status', 1)->order('sort', 'desc')->select(); } public function getByDriverKey(string $driverKey): ?EmailDriver { return $this->getModel()->where('driver_key', $driverKey)->find(); } public function getActiveDriver(): ?EmailDriver { return $this->getModel()->where('status', 1)->order('sort', 'desc')->find(); } public function disableAllExcept(int $id): int { return $this->getModel()->where('id', '<>', $id)->update(['status' => 0]); } }