orderByDesc orderBy

This commit is contained in:
Benjamin Takats
2023-01-19 13:58:52 +01:00
parent 0c0b51ede7
commit 14ce3385ee
9 changed files with 32 additions and 24 deletions

View File

@@ -30,6 +30,9 @@ class Meetups extends Component
}
$this->meetups = Meetup::query()
->with([
'city',
])
->where('name', 'ilike', '%'.$this->search.'%')
->orderBy('name')
->limit(10)

View File

@@ -33,7 +33,6 @@ class BookCaseTable extends DataTableComponent
{
$this->setPrimaryKey('id')
->setAdditionalSelects(['id', 'homepage'])
->setDefaultSort('orange_pills_count', 'desc')
->setThAttributes(function (Column $column) {
return [
'class' => 'px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider dark:bg-gray-800 dark:text-gray-400',
@@ -125,7 +124,9 @@ class BookCaseTable extends DataTableComponent
])
->withCount([
'orangePills',
]);
])
->orderByDesc('orange_pills_count')
->orderBy('book_cases.id');
}
public function viewHistoryModal($modelId): void

View File

@@ -21,7 +21,6 @@ class CityTable extends DataTableComponent
public function configure(): void
{
$this->setPrimaryKey('id')
->setDefaultSort('course_events_count', 'desc')
->setAdditionalSelects(['id'])
->setThAttributes(function (Column $column) {
return [
@@ -79,7 +78,9 @@ class CityTable extends DataTableComponent
'venues',
'courseEvents',
])
->whereHas('country', fn($query) => $query->where('code', $this->country));
->whereHas('country', fn($query) => $query->where('code', $this->country))
->orderByDesc('course_events_count')
->orderBy('cities.id');
}
public function proximitySearch($id)
@@ -116,7 +117,7 @@ class CityTable extends DataTableComponent
return to_route('bookCases.table.bookcases', [
'#table',
'country' => $this->country,
'table' => [
'table' => [
'filters' => [
'byids' => $ids->implode(',')
],

View File

@@ -95,7 +95,9 @@ class CourseTable extends DataTableComponent
'courseEvents',
])
->whereHas('courseEvents.venue.city.country',
fn($query) => $query->where('countries.code', $this->country));
fn($query) => $query->where('countries.code', $this->country))
->orderByDesc('course_events_count')
->orderBy('courses.id');
}
public function courseSearch($id)

View File

@@ -18,7 +18,6 @@ class LecturerTable extends DataTableComponent
{
$this->setPrimaryKey('id')
->setAdditionalSelects(['id'])
->setDefaultSort('courses_events_count', 'desc')
->setThAttributes(function (Column $column) {
return [
'class' => 'px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider dark:bg-gray-800 dark:text-gray-400',
@@ -77,7 +76,6 @@ class LecturerTable extends DataTableComponent
return Lecturer::query()
->withCount([
'courses',
'coursesEvents',
'libraryItems',
]);
}

View File

@@ -3,8 +3,6 @@
namespace App\Http\Livewire\Tables;
use App\Models\Meetup;
use App\Models\MeetupEvent;
use App\Models\MeetupUser;
use Illuminate\Database\Eloquent\Builder;
use Rappasoft\LaravelLivewireTables\DataTableComponent;
use Rappasoft\LaravelLivewireTables\Views\Column;
@@ -18,7 +16,7 @@ class MeetupTable extends DataTableComponent
public function configure(): void
{
$this->setPrimaryKey('id')
//->setDebugEnabled()
->setDebugEnabled()
->setAdditionalSelects(['id', 'slug'])
->setThAttributes(function (Column $column) {
return [
@@ -82,17 +80,11 @@ class MeetupTable extends DataTableComponent
'users',
'meetupEvents' => fn($query) => $query->where('start', '>=',
now()),
]);
// ->when(!$this->country, fn($query) => $query->orderBy(
// MeetupUser::select('meetup_id')
// ->whereColumn('meetup_id', 'meetups.id')
// ))
// ->when($this->country, fn($query) => $query->orderBy(
// MeetupEvent::select('start')
// ->whereColumn('meetup_id', 'meetups.id')
// ->where('start', '>=', now())
// ->orderBy('start')
// ));
])
->when(!$this->country, fn($query) => $query->orderByDesc('users_count')
->orderBy('meetups.id'))
->when($this->country, fn($query) => $query->orderByDesc('meetup_events_count')
->orderBy('meetups.id'));
}
public function meetupEventSearch($id)

View File

@@ -18,7 +18,6 @@ class VenueTable extends DataTableComponent
{
$this->setPrimaryKey('id')
->setAdditionalSelects(['id'])
->setDefaultSort('course_events_count', 'desc')
->setThAttributes(function (Column $column) {
return [
'class' => 'px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider dark:bg-gray-800 dark:text-gray-400',
@@ -70,7 +69,9 @@ class VenueTable extends DataTableComponent
->withCount([
'courseEvents',
])
->whereHas('city.country', fn($query) => $query->where('code', $this->country));
->whereHas('city.country', fn($query) => $query->where('code', $this->country))
->orderByDesc('course_events_count')
->orderBy('venues.id');
}
public function venueSearch($id)

View File

@@ -36,6 +36,11 @@ class Meetup extends Resource
'city.name',
];
public static $with = [
'city',
'createdBy',
];
public static function afterCreate(NovaRequest $request, Model $model)
{
auth()

View File

@@ -35,6 +35,11 @@ class MeetupEvent extends Resource
'meetup.name',
];
public static $with = [
'meetup',
'createdBy',
];
public static function label()
{
return __('Meetup Event');