// +---------------------------------------------------------------------- namespace app\dao\work; use app\dao\BaseDao; use app\model\work\WorkWelcome; use crmeb\basic\BaseAuth; use crmeb\traits\SearchDaoTrait; /** * Class WorkWelcomeDao * @package app\dao\wechat\work */ class WorkWelcomeDao extends BaseDao { use SearchDaoTrait; /** * @return string */ protected function setModel(): string { return WorkWelcome::class; } /** * 搜索 * @param array $where * @param bool $authWhere * @return \crmeb\basic\BaseModel */ public function searchWhere(array $where, bool $authWhere = true) { [$with] = app()->make(BaseAuth::class)->________(array_keys($where), $this->setModel()); return $this->getModel()->withSearch($with, $where)->when(!empty($where['userids']), function ($query) use ($where) { $query->whereIn('id', function ($query) use ($where) { $query->name('wechat_work_welcome_relation')->whereIn('userid', $where['userids'])->field(['welcome_id']); }); })->when(!empty($where['id']), function ($query) use ($where) { if (is_array($where['id'])) { $query->whereIn('id', $where['id']); } else { $query->where('id', $where['id']); } }); } }