From 3f38fef8454b9a3bf50ebc8742c871a8fcfdd3e3 Mon Sep 17 00:00:00 2001 From: lonetrinity Date: Fri, 10 Aug 2018 17:45:01 +0800 Subject: [PATCH] fixPaginationAdmin_and_user --- app/Http/Controllers/BookingController.php | 2 +- resources/assets/js/pages/admin/home.vue | 57 +++++++++++++++------ resources/assets/js/pages/home.vue | 59 ++++++++++++++++------ routes/api.php | 2 +- 4 files changed, 87 insertions(+), 33 deletions(-) diff --git a/app/Http/Controllers/BookingController.php b/app/Http/Controllers/BookingController.php index 109657b9..4b9042ee 100644 --- a/app/Http/Controllers/BookingController.php +++ b/app/Http/Controllers/BookingController.php @@ -209,7 +209,7 @@ class BookingController extends Controller return $bookings; } - public function Bookcomplete(){ + public function bookcomplete(){ $user = Auth::user(); $bookings = Booking::select('user_id', 'id', 'created_at', 'status', 'rate', 'term', 'amount', 'bia', 'verification_status') ->where('status', '=', '7') diff --git a/resources/assets/js/pages/admin/home.vue b/resources/assets/js/pages/admin/home.vue index 6ffbbeba..37e074a3 100644 --- a/resources/assets/js/pages/admin/home.vue +++ b/resources/assets/js/pages/admin/home.vue @@ -46,6 +46,15 @@ --> +
+ + Previous + + Page {{pagination.current_page}} of {{pagination.last_page}} + + Next + +


@@ -88,21 +97,22 @@ --> +
+ + Previous + + Page {{completePagination.current_page}} of {{completePagination.last_page}} + + Next + +


-
- - Previous - - Page {{pagination.current_page}} of {{pagination.last_page}} - - Next - -
+ @@ -126,27 +136,30 @@ export default { bookingTable: [], bookingTableComplete: [], url: 'api/admin/booking', - pagination: {prev_page_url: null}, + completeBookingurl : "api/complete_booking", + pagination: [], + completePagination: [], + loading_btn: false, } }, mounted () { this.getBooking(); - this.getbookingTableComplete(); + this.getBookingTableComplete(); }, methods: { getBooking(){ let $this = this axios.get(this.url).then(response => { this.bookingTable = response.data.data; - $this.makePagination(this.bookingTable); + $this.makePagination(response.data); }) }, - getbookingTableComplete(){ + getBookingTableComplete(){ let $this = this - axios.get('api/complete_booking').then(response => { + axios.get(this.completeBookingurl).then(response => { this.bookingTableComplete = response.data.data - $this.makePagination(response.data) + $this.makeCompletePagination(response.data) }) }, RefreshBooking() { @@ -171,11 +184,25 @@ export default { prev_page_url: data.prev_page_url } this.pagination = pagination + }, + makeCompletePagination(data){ + let pagination ={ + current_page: data.current_page, + last_page: data.last_page, + next_page_url: data.next_page_url, + prev_page_url: data.prev_page_url + } + this.completePagination = pagination }, fetchPaginateBooking(url) { this.url = url this.getBooking() + }, + fetchCompletePaginateBooking(url) { + this.completeBookingurl = url + this.getBookingTableComplete() + }, filterHandlerStatus (value, row, column) { const status = row.track_status; if(value ==="Success") diff --git a/resources/assets/js/pages/home.vue b/resources/assets/js/pages/home.vue index ec8dad36..2647ede5 100644 --- a/resources/assets/js/pages/home.vue +++ b/resources/assets/js/pages/home.vue @@ -317,7 +317,17 @@ Cancel --> + +
+ + Previous + + Page {{pagination.current_page}} of {{pagination.last_page}} + + Next + +


@@ -359,24 +369,22 @@ Cancel --> + +
+ + Previous + + Page {{completePagination.current_page}} of {{completePagination.last_page}} + + Next + +


- -
- - Previous - - Page {{pagination.current_page}} of {{pagination.last_page}} - - Next - -
- - @@ -492,7 +500,9 @@ export default { bookingTable: [], bookingTableComplete: [], url: 'api/booking', + completeBookingurl : "api/complete-booking", pagination: [], + completePagination: [], bookingConfirmTable: { date: 'undefined', marking: 'undefined', @@ -510,7 +520,7 @@ export default { this.getBooking(); this.initBooking(); this.getRate(); - this.getbookingTableComplete(); + this.getCompleteBooking(); }, methods: { getBooking(){ @@ -520,11 +530,11 @@ export default { $this.makePagination(response.data) }) }, - getbookingTableComplete(){ + getCompleteBooking(){ let $this = this - axios.get('api/complete-booking').then(response => { + axios.get(this.completeBookingurl).then(response => { this.bookingTableComplete = response.data.data - $this.makePagination(response.data) + $this.makeCompletePagination(response.data) }) }, getRate() { @@ -576,10 +586,27 @@ export default { } this.pagination = pagination }, + + makeCompletePagination(data){ + let pagination ={ + current_page: data.current_page, + last_page: data.last_page, + next_page_url: data.next_page_url, + prev_page_url: data.prev_page_url + } + this.completePagination = pagination + }, fetchPaginateBooking(url) { this.url = url this.getBooking() + }, + fetchCompletePaginateBooking(url) { + this.completeBookingurl = url + this.getCompleteBooking() + }, + + // TODO fetch booking data on load formatter (row, column) { return row.address diff --git a/routes/api.php b/routes/api.php index 73480338..74008041 100644 --- a/routes/api.php +++ b/routes/api.php @@ -70,7 +70,7 @@ Route::group(['middleware' => 'guest:api'], function () { Route::group(['middleware' => ['role:admin']], function() { Route::get('admin/booking/', 'BookingController@adminIndex'); - Route::get('complete_booking', 'BookingController@Bookcomplete'); + Route::get('complete_booking', 'BookingController@bookcomplete'); Route::get('admin/booking/{id}', 'BookingController@adminShow'); Route::post('update-rate', 'RateController@store'); Route::put('update-rate/{rate}', 'RateController@update');