getModel()::getDb() // 当类型条件存在且不为空时,添加到查询中 ->when(isset($where['type']) && $where['type'] != '', function ($query) use ($where) { $query->where('type', $where['type']); }) // 当类别条件存在且不为空时,添加到查询中 ->when(isset($where['category']) && $where['category'] != '', function ($query) use ($where) { $query->where('category', $where['category']); }) // 当相关性标题条件存在且不为空时,以LIKE形式添加到查询中 ->when(isset($where['relevance_title']) && $where['relevance_title'] != '', function ($query) use ($where) { $query->whereLike('relevance_title', "%{$where['relevance_title']}%"); }) // 当操作者昵称条件存在且不为空时,以LIKE形式添加到查询中 ->when(isset($where['operator_nickname']) && $where['operator_nickname'] != '', function ($query) use ($where) { $query->whereLike('operator_nickname', "%{$where['operator_nickname']}%"); }) // 当商家ID条件存在且不为空时,添加到查询中 ->when(isset($where['mer_id']) && $where['mer_id'] != '', function ($query) use ($where) { $query->where('mer_id', $where['mer_id']); }) // 当日期条件存在且不为空时,调用外部函数处理时间范围查询 ->when(isset($where['date']) && $where['date'] != '', function ($query) use ($where) { getModelTime($query, $where['date']); }) // 当相关性ID条件存在且不为空时,添加到查询中 ->when(isset($where['relevance_id']) && $where['relevance_id'] != '', function ($query) use ($where) { $query->where('relevance_id', $where['relevance_id']); }) // 当相关性类型条件存在且不为空时,如果条件为数组,则使用whereIn查询,否则直接等于查询 ->when(isset($where['relevance_type']) && $where['relevance_type'] != '', function ($query) use ($where) { if (is_array($where['relevance_type'])) { $query->whereIn('relevance_id', $where['relevance_id']); } else { $query->where('relevance_id', $where['relevance_id']); } }) // 当相关性标题条件存在且不为空时,添加到查询中(此段代码可能为重复或错误,因前面已处理过相同条件) ->when(isset($where['relevance_title']) && $where['relevance_title'] != '', function ($query) use ($where) { $query->where('relevance_title', $where['relevance_title']); }); } }