diff --git a/app/Http/Controllers/Admin/OperationLogController.php b/app/Http/Controllers/Admin/OperationLogController.php index cc22b02..133a1d6 100644 --- a/app/Http/Controllers/Admin/OperationLogController.php +++ b/app/Http/Controllers/Admin/OperationLogController.php @@ -115,6 +115,25 @@ class OperationLogController extends Controller } } + if ($request->has('sub_directory')) { + $sub_directory = $request->input('sub_directory'); + if (!empty($sub_directory)) { + $query->where('sub_directory', '=', $sub_directory); + } + } + + if ($request->has('main_directory')) { + $main_directory = $request->input('main_directory'); + if (!empty($main_directory)) { + $main_directory_arr = AdminMenu::getChildIds($main_directory); + if ($main_directory_arr) { + $query->whereIn('sub_directory', $main_directory_arr); + } else { + $query->where('id', 0); + } + } + } + // 分页 $page = $request->input('page', 1); $perPage = $request->input('per_page', 10); diff --git a/app/Models/AdminMenu.php b/app/Models/AdminMenu.php index 2b4b4d1..e099da2 100644 --- a/app/Models/AdminMenu.php +++ b/app/Models/AdminMenu.php @@ -82,6 +82,11 @@ class AdminMenu extends Model return $value['title']; } + public static function getChildIds($id) + { + return self::query()->whereNull('deleted_at')->where('parent_id', $id)->pluck('id'); + } + /** * @param $value * @return string