hasMany(CommunityRelevance::class,'left_id','id')->where('type',CommunityRelevanceServices::TYPE_COMMUNITY_PRODUCT); } public function topic() { return $this->hasMany(CommunityRelevance::class,'left_id','id')->where('type',CommunityRelevanceServices::TYPE_COMMUNITY_TOPIC); } public function relevance() { return $this->hasMany(CommunityRelevance::class,'left_id','id')->whereIn('type',[CommunityRelevanceServices::TYPE_COMMUNITY_PRODUCT,CommunityRelevanceServices::TYPE_COMMUNITY_TOPIC]); } /** * 轮播图获取器 * @param $value * @return array|mixed */ public function getSliderImageAttr($value) { return is_string($value) ? json_decode($value, true) : []; } public function searchIdAttr($query, $value) { if (is_array($value)) { if ($value) $query->whereIn('id', $value); } else { if ($value !== '') $query->where('id', $value); } } /** * 商户搜索器 * @param Model $query * @param $value */ public function searchTypeAttr($query, $value) { if (is_array($value)) { if ($value) $query->whereIn('type', $value); } else { if ($value !== '') $query->where('type', $value); } } /** * 关联门店ID、供应商ID搜索器 * @param Model $query * @param $value */ public function searchRelationIdAttr($query, $value) { if (is_array($value)) { if ($value) $query->whereIn('relation_id', $value); } else { if ($value !== '') $query->where('relation_id', $value); } } /** * 内容类型搜索器 * @param Model $query * @param $value */ public function searchContentTypeAttr($query, $value) { if (is_array($value)) { if ($value) $query->whereIn('content_type', $value); } else { if ($value !== '') $query->where('content_type', $value); } } /** * 推荐指数搜索器 * @param Model $query * @param $value * @param $data */ public function searchStarAttr($query, $value, $data) { if ($value !== '') $query->where('star', $value ?? 1); } /** * 状态搜索器 * @param Model $query * @param $value * @param $data */ public function searchStatusAttr($query, $value, $data) { if ($value !== '') $query->where('status', $value ?? 1); } /** * 推荐搜索器 * @param Model $query * @param $value * @param $data */ public function searchIsRecommendAttr($query, $value, $data) { if ($value !== '') $query->where('is_recommend', $value ?? 1); } /** * 是否审核搜索器 * @param $query * @param $value */ public function searchIsVerifyAttr($query, $value) { if ($value !== ''){ $query->where('is_verify', $value); } } /** * 是否删除搜索器 * @param Model $query * @param $value * @param $data */ public function searchIsDelAttr($query, $value, $data) { if ($value !== '') $query->where('is_del', $value ?? 0); } }