pushCriteria(app(RequestCriteria::class)); } /** * @param $uid * @return mixed */ public function getMemberInfo($uid) { return $this->model->where(['uid'=>$uid]) ->first(); } public function createInfo($data) { return $this->model->create($data); } public function updateInfo($data, $uid) { return $this->model->where(['uid'=>$uid])->update($data); } public function findMemberInfo($where) { return $this->model->where($where)->first(); } public function getCount($where, $subsite_id) { return $this->model->when($subsite_id,function ($query) use($subsite_id) { $query->whereHas('members', function ($query) use($subsite_id) { $query->where($subsite_id); }); })->where($where)->count(); } public function getMemberNumsByGroup($where, $member_where, $fields, $group_by, $order_by = '', $limit = '') { $rst = $this->model->select(DB::raw($fields))->where($where)->when($member_where, function ($query) use ($member_where) { $query->whereHas('members', function ($query) use ($member_where) { $query->where($member_where); }); }); if ($group_by) { $rst->groupBy($group_by); } if ($order_by) { $rst->orderByRaw($order_by); } if ($limit) { $rst->offset(0)->limit($limit); } return $rst->get(); } public function checkUniaue($key, $value) { if ($this->model->withTrashed()->where($key, $value)->first()) { return false; } return true; } }