hasOne(UserDoctor::class, 'doctor_id','doctor_id'); } /** * 获取信息-单条 * @param array $params * @param array $fields * @return object|null */ public static function getOne(array $params, array $fields = ['*']): object|null { return self::where($params)->first($fields); } /** * 获取数据-多 * @param array $params * @param array $fields * @return Collection|array */ public static function getList(array $params = [], array $fields = ['*']): Collection|array { return self::where($params)->get($fields); } /** * 获取是否存在 * @param array $params * @return bool */ public static function getExists(array $params): bool { return self::where($params)->exists(); } /** * 获取数据-多 * 关联医生表 * @param array $params * @param array $user_doctor_params * @param array $fields * @return array|Collection */ public static function getWithDoctorList(array $params = [],array $user_doctor_params = [], array $fields = ['*']): array|Collection { return self::whereHas('UserDoctor' , function($query) use ($user_doctor_params){ $query->where($user_doctor_params); }) ->where($params) ->get($fields); } /** * 获取数据-多 * 关联医生表 * @param array $params * @param array $user_doctor_params * @param array $user_doctor_not_in_params * @param array $fields * @return array|Collection */ public static function getWithDoctorNotInList(array $params = [],array $user_doctor_params = [], array $user_doctor_not_in_params = [], array $fields = ['*']): array|Collection { return self::whereHas('UserDoctor' , function($query) use ($user_doctor_params,$user_doctor_not_in_params){ $query->where($user_doctor_params)->whereNotIn('doctor_id',$user_doctor_not_in_params); }) ->where($params) ->get($fields); } public static function add(array $data): \Hyperf\Database\Model\Model|DoctorInquiryTime { return self::create($data); } }