From 3fc5695579c2ebe404fa6b9af65f5f213607b8e3 Mon Sep 17 00:00:00 2001 From: liaofei <136327134@qq.com> Date: Fri, 14 Apr 2023 17:23:20 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=90=8E=E5=8F=B0=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E6=89=93=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/v1/setting/SystemCrud.php | 40 +++++++++++++++++++ .../middleware/AdminAuthTokenMiddleware.php | 3 ++ crmeb/app/adminapi/route/system.php | 2 + crmeb/crmeb/utils/Terminal.php | 2 +- 4 files changed, 46 insertions(+), 1 deletion(-) diff --git a/crmeb/app/adminapi/controller/v1/setting/SystemCrud.php b/crmeb/app/adminapi/controller/v1/setting/SystemCrud.php index 2a8210f2a..f22f1895d 100644 --- a/crmeb/app/adminapi/controller/v1/setting/SystemCrud.php +++ b/crmeb/app/adminapi/controller/v1/setting/SystemCrud.php @@ -18,8 +18,11 @@ use app\adminapi\controller\AuthController; use app\services\system\SystemCrudServices; use app\services\system\SystemMenusServices; use crmeb\services\crud\Make; +use crmeb\services\FileService; +use crmeb\utils\Terminal; use think\facade\App; use think\helper\Str; +use think\Response; /** * Class SystemCrud @@ -286,4 +289,41 @@ class SystemCrud extends AuthController return app('json')->success('删除成功'); } + + /** + * @return string + * @author 等风来 + * @email 136327134@qq.com + * @date 2023/4/14 + */ + public function npm() + { + $terminal = new Terminal(); + + $adminPath = $terminal->adminTemplatePath(); + + $adminPath = dirname($adminPath); + + $dir = $adminPath . DS . 'node_modules'; + if (!is_dir($dir)) { + $terminal->run('npm-install'); + } + + $terminal->run('npm-build'); + + if (!is_dir($adminPath . DS . 'dist')) { + return Response::create([ + 'message' => '打包失败', + ], 'json')->getContent(); + } + + $build = public_path() . config('app.admin_prefix'); + + $this->app->make(FileService::class)->copyDir($adminPath . DS . 'dist', $build); + + return Response::create([ + 'message' => '打包成功', + 'success' => 'ok' + ], 'json')->getContent(); + } } diff --git a/crmeb/app/adminapi/middleware/AdminAuthTokenMiddleware.php b/crmeb/app/adminapi/middleware/AdminAuthTokenMiddleware.php index 4ceb95ac6..8a30d907b 100644 --- a/crmeb/app/adminapi/middleware/AdminAuthTokenMiddleware.php +++ b/crmeb/app/adminapi/middleware/AdminAuthTokenMiddleware.php @@ -39,6 +39,9 @@ class AdminAuthTokenMiddleware implements MiddlewareInterface public function handle(Request $request, \Closure $next) { $token = trim(ltrim($request->header(Config::get('cookie.token_name', 'Authori-zation')), 'Bearer')); + if (!$token) { + $token = trim(ltrim($request->get('token'))); + } /** @var AdminAuthServices $service */ $service = app()->make(AdminAuthServices::class); $adminInfo = $service->parseToken($token); diff --git a/crmeb/app/adminapi/route/system.php b/crmeb/app/adminapi/route/system.php index 749e9dd26..77abb7dbb 100644 --- a/crmeb/app/adminapi/route/system.php +++ b/crmeb/app/adminapi/route/system.php @@ -133,6 +133,8 @@ Route::group('system', function () { 'delete' => '删除路由分类' ], ]); + //执行重新打包 + Route::get('crud/npm', 'v1.setting.SystemCrud/npm')->option(['real_name' => '执行重新打包']); //获取CRUD列表 Route::get('crud/column_type', 'v1.setting.SystemCrud/columnType')->option(['real_name' => '获取CRUD列表']); //获取菜单TREE形数据 diff --git a/crmeb/crmeb/utils/Terminal.php b/crmeb/crmeb/utils/Terminal.php index ad1dc306f..43ddaeb32 100644 --- a/crmeb/crmeb/utils/Terminal.php +++ b/crmeb/crmeb/utils/Terminal.php @@ -201,7 +201,7 @@ class Terminal private function output($data) { $data = [ - 'data' => $data, + 'message' => $data, ]; return Response::create($data, 'json')->getContent(); }