Skip to content

Commit f66cf88

Browse files
committed
调整文件自然排序
1 parent 1f44f14 commit f66cf88

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

app/Http/Controllers/IndexController.php

+9-1
Original file line numberDiff line numberDiff line change
@@ -178,21 +178,29 @@ public function list(Request $request)
178178
@list($field, $sortBy) = explode(',', $order);
179179
$itemsBase = collect($originItems);
180180

181-
// 文件夹/文件夹 排序
181+
// 默认排序字段
182+
if ($field === '' || $sortBy === null) {
183+
$field = 'name';
184+
$sortBy = 'asc';
185+
}
186+
187+
// 筛选文件夹/文件夹
182188
$folders = $itemsBase->filter(static function ($value) {
183189
return Arr::has($value, 'folder');
184190
});
185191
$files = $itemsBase->filter(static function ($value) {
186192
return !Arr::has($value, 'folder');
187193
});
188194

195+
// 执行文件夹/文件夹 排序
189196
if (strtolower($sortBy) !== 'desc') {
190197
$folders = $folders->sortBy($field, $field === 'name' ? SORT_NATURAL : SORT_REGULAR)->toArray();
191198
$files = $files->sortBy($field, $field === 'name' ? SORT_NATURAL : SORT_REGULAR)->toArray();
192199
} else {
193200
$folders = $folders->sortByDesc($field, $field === 'name' ? SORT_NATURAL : SORT_REGULAR)->toArray();
194201
$files = $files->sortByDesc($field, $field === 'name' ? SORT_NATURAL : SORT_REGULAR)->toArray();
195202
}
203+
// 合并
196204
$originItems = collect($folders)->merge($files)->toArray();
197205

198206
$limit = $request->get('limit', 20);

0 commit comments

Comments
 (0)