* @copyright By CatchAdmin * @license https://github.com/yanwenwu/catch-admin/blob/master/LICENSE.txt */ namespace catchAdmin\wechat\model\search; use \think\facade\Db; trait NoticeSearchTrait { /** * 标题搜索 * @time 2020年06月21日 * @param $query * @param $value * @param $data * @return mixed */ public function searchTitleAttr($query, $value, $data) { return $query->whereLike('title', $value); } /** * 学校 * * @time 2020年06月21日 * @param $query * @param $value * @param $data * @return mixed */ public function searchSchoolIdAttr($query, $value, $data) { return $query->where('school_id', $value); } /** * 年级 * * @time 2020年06月21日 * @param $query * @param $value * @param $data * @return mixed */ public function searchGradeIdAttr($query, $value, $data) { return $query->where('grade_id', $value); } /** * 班级 * * @time 2020年06月21日 * @param $query * @param $value * @param $data * @return mixed */ public function searchClassIdAttr($query, $value, $data) { return $query->where('class_id', '=', $value); } /** * 学校部门 */ public function searchDepartmentIdAttr($query, $value, $data) { if ($value) { // var_dump($value); if (count($value) > 1) { $id = end($value); return $query->where('school_id|class_id|grade_id', '=', $id); } else { //选中的是运营商部门 $sch_ids = Db::table('departments')->where('parent_id', $value[0])->column('id'); return $query->where('school_id', 'in', $sch_ids); } } } }