Files
orico-official-website/app/admin/model/v1/SysBannerItemModel.php
2025-03-12 13:48:40 +08:00

57 lines
1.3 KiB
PHP

<?php
declare (strict_types = 1);
namespace app\admin\model\v1;
use app\common\model\SysBannerItemBaseModel;
use think\model\concern\SoftDelete;
/**
* 横幅数据项模型
* @mixin \think\Model
*/
class SysBannerItemModel extends SysBannerItemBaseModel
{
// 启用软删除
use SoftDelete;
// 软删除字段
protected $deleteTime = 'deleted_at';
// 关联分类
public function banner()
{
return $this->belongsTo(SysBannerModel::class, 'banner_id', 'id');
}
// 按横幅标题搜索
public function searchTitleAttr($query, $value, $data)
{
if (empty($value)) {
return;
}
$query->where('title', 'like', "%{$value}%");
}
// 按添加时间搜索
public function searchCreatedAtAttr($query, $value, $data)
{
if (empty($value)) {
return;
}
if (is_array($value)) {
if (count($value) > 1) {
$query->whereBetweenTime ('created_at', $value[0], $value[1]);
} else {
$query->whereTime('created_at', '>=', $value[0]);
}
}
}
// 根据横幅id查询
public function scopeBannerId($query, $value)
{
if (is_null($value)) return;
$query->where('banner_id', '=', $value);
}
}