初始化-安装依赖
This commit is contained in:
114
server/plugin/saiadmin/app/functions.php
Normal file
114
server/plugin/saiadmin/app/functions.php
Normal file
@@ -0,0 +1,114 @@
|
||||
<?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);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user