| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 |
- <?php
- // +----------------------------------------------------------------------
- // | saiadmin [ saiadmin快速开发框架 ]
- // +----------------------------------------------------------------------
- // | Author: sai <1430792918@qq.com>
- // +----------------------------------------------------------------------
- use Webman\Route;
- use support\Response;
- use Tinywan\Jwt\JwtToken;
- use plugin\saiadmin\exception\ApiException;
- use plugin\saiadmin\app\cache\ConfigCache;
- use plugin\saiadmin\app\cache\DictCache;
- if (!function_exists('getCurrentInfo')) {
- /**
- * 获取当前登录用户
- */
- function getCurrentInfo(): bool|array
- {
- if (!request()) {
- return false;
- }
- try {
- $token = JwtToken::getExtend();
- } catch (\Throwable $e) {
- return false;
- }
- return $token;
- }
- }
- if (!function_exists('fastRoute')) {
- /**
- * 快速注册路由[index|save|update|read|destroy|import|export]
- * @param string $name
- * @param string $controller
- * @return void
- */
- function fastRoute(string $name, string $controller): void
- {
- $name = trim($name, '/');
- if (method_exists($controller, 'index'))
- Route::get("/$name/index", [$controller, 'index']);
- if (method_exists($controller, 'save'))
- Route::post("/$name/save", [$controller, 'save']);
- if (method_exists($controller, 'update'))
- Route::put("/$name/update", [$controller, 'update']);
- if (method_exists($controller, 'read'))
- Route::get("/$name/read", [$controller, 'read']);
- if (method_exists($controller, 'destroy'))
- Route::delete("/$name/destroy", [$controller, 'destroy']);
- if (method_exists($controller, 'import'))
- Route::post("/$name/import", [$controller, 'import']);
- if (method_exists($controller, 'export'))
- Route::post("/$name/export", [$controller, 'export']);
- }
- }
- if (!function_exists('downloadFile')) {
- /**
- * 下载模板
- * @param $file_name
- * @return Response
- */
- function downloadFile($file_name): Response
- {
- $base_dir = config('plugin.saiadmin.saithink.template', base_path() . '/public/template');
- if (file_exists($base_dir . DIRECTORY_SEPARATOR . $file_name)) {
- return response()->download($base_dir . DIRECTORY_SEPARATOR . $file_name, urlencode($file_name));
- } else {
- throw new ApiException('模板不存在');
- }
- }
- }
- if (!function_exists('formatBytes')) {
- /**
- * 根据字节计算大小
- * @param $bytes
- * @return string
- */
- function formatBytes($bytes): string
- {
- $units = ['B', 'KB', 'MB', 'GB', 'TB'];
- for ($i = 0; $bytes > 1024; $i++) {
- $bytes /= 1024;
- }
- return round($bytes, 2) . ' ' . $units[$i];
- }
- }
- if (!function_exists('getConfigGroup')) {
- /**
- * 读取配置组
- * @param $group
- * @return array
- */
- function getConfigGroup($group): array
- {
- return ConfigCache::getConfig($group);
- }
- }
- if (!function_exists('dictDataList')) {
- /**
- * 根据字典编码获取字典列表
- * @param string $code 字典编码
- * @return array
- */
- function dictDataList(string $code): array
- {
- return DictCache::getDict($code);
- }
- }
|