input(Config('database.page.pageKey', 'page') . '/d', 0); $limit = $request->input(Config('database.page.limitKey', 'limit') . '/d', 0); } $limitMax = Config('database.page.limitMax'); $defaultLimit = Config('database.page.defaultLimit', 10); if ($limit > $limitMax && $isRelieve) { $limit = $limitMax; } return [(int)$page, (int)$limit, (int)$defaultLimit, (int)$limitMax]; } /** * 执行指定框架的事务 * * @param callable $closure * @param bool $isTran 是否启用事务 * @param string|null $connectionName * * @return mixed * @throws \Throwable */ public function transaction(callable $closure, bool $isTran = true, ?string $connectionName = null): mixed { $connectionName = !empty($connectionName) ? $connectionName : (!empty(request()->dataSource) ? request()->dataSource : config('database.default', 'default')); return $isTran ? LaravelDb::connection($connectionName)->transaction($closure) : $closure(); } /** * 密码hash加密 * * @param string $password * * @return string */ public function passwordHash(string $password): string { return password_hash($password, PASSWORD_BCRYPT); } /** * @param $name * @param $arguments * * @return mixed */ public function __call($name, $arguments) { return call_user_func_array([$this->dao, $name], $arguments); } }