Files
huangjingfen/pro_v3.5.1/app/dao/user/label/UserLabelExtendDao.php

86 lines
2.3 KiB
PHP
Raw Normal View History

<?php
// +----------------------------------------------------------------------
// | Author: ScottPan Team
// +----------------------------------------------------------------------
declare (strict_types=1);
namespace app\dao\user\label;
use app\dao\BaseDao;
use app\model\user\label\UserLabelExtend;
/**
* 标签规则关联表
* Class UserLabelExtendDao
* @package app\dao\user\label
*/
class UserLabelExtendDao extends BaseDao
{
/**
* 设置模型
* @return string
*/
protected function setModel(): string
{
return UserLabelExtend::class;
}
/**
* 获取列表
* @param int $page
* @param int $limit
* @param array $where
* @param array|string[] $field
* @return array
* @throws \think\db\exception\DataNotFoundException
* @throws \think\db\exception\DbException
* @throws \think\db\exception\ModelNotFoundException
*/
public function getList(int $page = 0, int $limit = 0, array $where = [], array $field = ['*']): array
{
return $this->search($where)->when($page && $limit, function ($query) use ($page, $limit) {
$query->page($page, $limit);
})->field($field)->order('id desc')->select()->toArray();
}
/**
* 根据标签ID获取扩展规则
* @param int $labelId
* @return array
* @throws \think\db\exception\DataNotFoundException
* @throws \think\db\exception\DbException
* @throws \think\db\exception\ModelNotFoundException
*/
public function getByLabelId(int $labelId): array
{
return $this->search(['label_id' => $labelId])->select()->toArray();
}
/**
* 根据规则类型获取扩展规则
* @param int $ruleType
* @param array $where
* @return array
* @throws \think\db\exception\DataNotFoundException
* @throws \think\db\exception\DbException
* @throws \think\db\exception\ModelNotFoundException
*/
public function getByRuleType(int $ruleType, array $where = []): array
{
$where['rule_type'] = $ruleType;
return $this->search($where)->select()->toArray();
}
/**
* 根据条件批量删除
* @param array $where 删除条件
* @return int
*/
public function searchDel(array $where)
{
return $this->search($where)->delete();
}
}