From 64cadc744dd6b5c917176483b9cd5879c24a4b6a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E4=B8=96=E7=95=8C?= <642747453@qq.com> Date: Mon, 1 Aug 2022 17:19:36 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20#20220801=20=E6=97=A5=E5=BF=97=E7=B1=BB?= =?UTF-8?q?=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Controllers/Menu/MenusController.php | 15 +++++ .../Permission/PermissionsController.php | 2 + app/Models/Log.php | 55 +++++++++++++++++++ 3 files changed, 72 insertions(+) diff --git a/app/Http/Controllers/Menu/MenusController.php b/app/Http/Controllers/Menu/MenusController.php index ea6c683..ee53406 100644 --- a/app/Http/Controllers/Menu/MenusController.php +++ b/app/Http/Controllers/Menu/MenusController.php @@ -3,6 +3,7 @@ namespace App\Http\Controllers\Menu; use App\Http\Controllers\Controller; +use App\Models\Log as LogModel; use App\Models\Menu; use App\Http\Resources\MenusResource; use Illuminate\Http\Request; @@ -12,6 +13,15 @@ use App\Utils\FormatUtils; class MenusController extends Controller { + public function __construct(Request $request) + { + $this->log = new LogModel([ + 'module' => 'menu', + 'action' => $request->getMethod(), + 'target_type' => 'menu', + ]); + } + public function index() { $menus = Menu::query()->get(); @@ -39,6 +49,8 @@ class MenusController extends Controller $menu->parent_id = $request->parent_id; $menu->seq = $request->seq; $menu->save(); + $this->setAfterUpdate($menu->toArray()); + $this->addLog($menu->id, 'add'); return response($this->res, $this->res['httpCode']); } @@ -62,11 +74,14 @@ class MenusController extends Controller return response($this->res, $this->res['httpCode']); } $menu = Menu::query()->find($id); + $this->setBeforeUpdate($menu->toArray()); $menu->name = $request->name; $menu->code = $request->code; $menu->parent_id = $request->parent_id; $menu->seq = $request->seq; $menu->save(); + $this->setAfterUpdate($menu->toArray()); + $this->addLog($id, 'update'); return new MenusResource($menu); } diff --git a/app/Http/Controllers/Permission/PermissionsController.php b/app/Http/Controllers/Permission/PermissionsController.php index 629013d..7507489 100644 --- a/app/Http/Controllers/Permission/PermissionsController.php +++ b/app/Http/Controllers/Permission/PermissionsController.php @@ -41,6 +41,8 @@ class PermissionsController extends Controller $permission = new Permission(); $permission->name = $request->name; $permission->save(); + $this->setAfterUpdate($permission->name); + $this->addLog($permission->id, 'add'); return response($this->res, $this->res['httpCode']); } diff --git a/app/Models/Log.php b/app/Models/Log.php index 80338d9..763f164 100644 --- a/app/Models/Log.php +++ b/app/Models/Log.php @@ -30,6 +30,61 @@ class Log extends Model 'after_update', ]; + public function getModuleAttribute($value) + { + $map = [ + 'goods' => '商品', + 'menu' => '菜单', + 'permission' => '权限', + 'role' => '角色', + 'user' => '用户', + ]; + + return $map[$value]; + } + + public function getActionAttribute($value) + { + $map = [ + 'GET' => '查看', + 'POST' => '新增', + 'PATCH' => '更新', + 'DELETE' => '删除', + ]; + + return $map[$value]; + } + + public function getTargetTypeAttribute($value) + { + $map = [ + 'goods_sku' => '商品&规格', + 'goods_type' => '商品种类', + 'goods_brand' => '商品品牌', + 'permission' => '权限', + 'role' => '角色', + 'menu' => '菜单', + 'user' => '用户', + ]; + + return $map[$value]; + } + + public function getTargetFieldAttribute($value) + { + $map = [ + 'add' => '创建', + 'status' => '状态', + 'name' => '名称', + 'title' => '名称', + 'import' => '导入', + 'export' => '导出', + 'set' => '设置', + ]; + + return $map[$value]; + } + public function setUserIdAttribute($value) { $this->attributes['user_id'] = Auth::id();