From e48ac7e295cdceca81ddaa095671927411ba4567 Mon Sep 17 00:00:00 2001 From: Prashant Singh Date: Tue, 15 Jan 2019 18:55:50 +0530 Subject: [PATCH 01/47] datagrid sort and filter fixes --- config/datagrid.php | 2 +- .../Admin/src/DataGrids/AttributeDataGrid.php | 8 +++++ .../src/DataGrids/AttributeFamilyDataGrid.php | 3 ++ .../Admin/src/DataGrids/CategoryDataGrid.php | 19 +++++++----- .../Admin/src/DataGrids/ChannelDataGrid.php | 4 +++ .../Admin/src/DataGrids/CurrencyDataGrid.php | 3 ++ .../Admin/src/DataGrids/CustomerDataGrid.php | 29 ++++++++++--------- .../src/DataGrids/CustomerGroupDataGrid.php | 2 ++ .../src/DataGrids/CustomerReviewDataGrid.php | 19 +++++++----- .../src/DataGrids/ExchangeRatesDataGrid.php | 13 +++++---- .../DataGrids/InventorySourcesDataGrid.php | 5 ++++ .../Admin/src/DataGrids/LocalesDataGrid.php | 3 ++ .../src/DataGrids/NewsLetterDataGrid.php | 3 ++ .../Admin/src/DataGrids/OrderDataGrid.php | 7 +++++ .../src/DataGrids/OrderInvoicesDataGrid.php | 4 +++ .../src/DataGrids/OrderShipmentsDataGrid.php | 23 ++++++++++----- .../Admin/src/DataGrids/ProductDataGrid.php | 23 ++++++++++----- .../Admin/src/DataGrids/RolesDataGrid.php | 3 ++ .../Admin/src/DataGrids/SliderDataGrid.php | 13 +++++---- .../src/DataGrids/TaxCategoryDataGrid.php | 3 ++ .../Admin/src/DataGrids/TaxRateDataGrid.php | 5 ++++ .../Admin/src/DataGrids/UserDataGrid.php | 26 +++++++++++++---- .../Admin/src/Resources/lang/en/app.php | 5 ++-- packages/Webkul/Ui/src/DataGrid/DataGrid.php | 2 +- .../Resources/views/datagrid/body.blade.php | 4 ++- .../Resources/views/datagrid/table.blade.php | 26 ++++++++--------- 26 files changed, 179 insertions(+), 78 deletions(-) diff --git a/config/datagrid.php b/config/datagrid.php index aeaf51a57..44fd576ba 100644 --- a/config/datagrid.php +++ b/config/datagrid.php @@ -30,7 +30,7 @@ return [ * * Accepted Value = integer */ - 'paginate' => false, + 'paginate' => true, 'operators' => [ 'eq' => "=", diff --git a/packages/Webkul/Admin/src/DataGrids/AttributeDataGrid.php b/packages/Webkul/Admin/src/DataGrids/AttributeDataGrid.php index 029bf80b4..db88cf252 100755 --- a/packages/Webkul/Admin/src/DataGrids/AttributeDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/AttributeDataGrid.php @@ -29,6 +29,7 @@ class AttributeDataGrid extends DataGrid { $this->addColumn([ 'index' => 'id', + 'identifier' => 'attribute_id', 'label' => trans('admin::app.datagrid.id'), 'type' => 'number', 'searchable' => false, @@ -38,6 +39,7 @@ class AttributeDataGrid extends DataGrid $this->addColumn([ 'index' => 'code', + 'identifier' => 'attribute_code', 'label' => trans('admin::app.datagrid.code'), 'type' => 'string', 'searchable' => true, @@ -47,6 +49,7 @@ class AttributeDataGrid extends DataGrid $this->addColumn([ 'index' => 'admin_name', + 'identifier' => 'attribute_name', 'label' => trans('admin::app.datagrid.admin-name'), 'type' => 'string', 'searchable' => true, @@ -56,6 +59,7 @@ class AttributeDataGrid extends DataGrid $this->addColumn([ 'index' => 'type', + 'identifier' => 'attribute_type', 'label' => trans('admin::app.datagrid.type'), 'type' => 'string', 'sortable' => true, @@ -65,6 +69,7 @@ class AttributeDataGrid extends DataGrid $this->addColumn([ 'index' => 'is_required', + 'identifier' => 'attribute_is_required', 'label' => trans('admin::app.datagrid.required'), 'type' => 'boolean', 'sortable' => true, @@ -80,6 +85,7 @@ class AttributeDataGrid extends DataGrid $this->addColumn([ 'index' => 'is_unique', + 'identifier' => 'attribute_is_unique', 'label' => trans('admin::app.datagrid.unique'), 'type' => 'boolean', 'sortable' => true, @@ -95,6 +101,7 @@ class AttributeDataGrid extends DataGrid $this->addColumn([ 'index' => 'value_per_locale', + 'identifier' => 'attribute_value_per_locale', 'label' => trans('admin::app.datagrid.per-locale'), 'type' => 'boolean', 'sortable' => true, @@ -110,6 +117,7 @@ class AttributeDataGrid extends DataGrid $this->addColumn([ 'index' => 'value_per_channel', + 'identifier' => 'attribute_value_per_channel', 'label' => trans('admin::app.datagrid.per-channel'), 'type' => 'boolean', 'sortable' => true, diff --git a/packages/Webkul/Admin/src/DataGrids/AttributeFamilyDataGrid.php b/packages/Webkul/Admin/src/DataGrids/AttributeFamilyDataGrid.php index a5c728b26..6463532b7 100755 --- a/packages/Webkul/Admin/src/DataGrids/AttributeFamilyDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/AttributeFamilyDataGrid.php @@ -28,6 +28,7 @@ class AttributeFamilyDataGrid extends DataGrid { $this->addColumn([ 'index' => 'id', + 'identifier' => 'id', 'label' => trans('admin::app.datagrid.id'), 'type' => 'number', 'searchable' => false, @@ -37,6 +38,7 @@ class AttributeFamilyDataGrid extends DataGrid $this->addColumn([ 'index' => 'code', + 'identifier' => 'code', 'label' => trans('admin::app.datagrid.code'), 'type' => 'string', 'searchable' => true, @@ -46,6 +48,7 @@ class AttributeFamilyDataGrid extends DataGrid $this->addColumn([ 'index' => 'name', + 'identifier' => 'name', 'label' => trans('admin::app.datagrid.name'), 'type' => 'string', 'searchable' => true, diff --git a/packages/Webkul/Admin/src/DataGrids/CategoryDataGrid.php b/packages/Webkul/Admin/src/DataGrids/CategoryDataGrid.php index a46398285..f3f8407d6 100755 --- a/packages/Webkul/Admin/src/DataGrids/CategoryDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/CategoryDataGrid.php @@ -13,11 +13,11 @@ use DB; */ class CategoryDataGrid extends DataGrid { - protected $index = 'category_id'; //the column that needs to be treated as index column + protected $index = 'id'; //the column that needs to be treated as index column public function prepareQueryBuilder() { - $queryBuilder = DB::table('categories as cat')->select('cat.id as category_id', 'ct.name as category_name', 'cat.position as category_position', 'cat.status as category_status', 'ct.locale as category_locale')->leftJoin('category_translations as ct', 'cat.id', '=', 'ct.category_id'); + $queryBuilder = DB::table('categories as cat')->select('cat.id', 'ct.name', 'cat.position', 'cat.status', 'ct.locale')->leftJoin('category_translations as ct', 'cat.id', '=', 'ct.category_id'); $this->setQueryBuilder($queryBuilder); } @@ -25,7 +25,8 @@ class CategoryDataGrid extends DataGrid public function addColumns() { $this->addColumn([ - 'index' => 'category_id', + 'index' => 'cat.id', + 'identifier' => 'category_id', 'label' => trans('admin::app.datagrid.id'), 'type' => 'number', 'searchable' => false, @@ -34,7 +35,8 @@ class CategoryDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'category_name', + 'index' => 'ct.name', + 'identifier' => 'category_name', 'label' => trans('admin::app.datagrid.name'), 'type' => 'string', 'searchable' => true, @@ -43,7 +45,8 @@ class CategoryDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'category_position', + 'index' => 'cat.position', + 'identifier' => 'category_position', 'label' => trans('admin::app.datagrid.position'), 'type' => 'string', 'searchable' => true, @@ -52,7 +55,8 @@ class CategoryDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'category_status', + 'index' => 'cat.status', + 'identifier' => 'category_status', 'label' => trans('admin::app.datagrid.status'), 'type' => 'boolean', 'sortable' => true, @@ -67,7 +71,8 @@ class CategoryDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'category_locale', + 'index' => 'ct.position', + 'identifier' => 'category_locale', 'label' => trans('admin::app.datagrid.locale'), 'type' => 'boolean', 'sortable' => true, diff --git a/packages/Webkul/Admin/src/DataGrids/ChannelDataGrid.php b/packages/Webkul/Admin/src/DataGrids/ChannelDataGrid.php index 4c25f82da..7b4f82be1 100755 --- a/packages/Webkul/Admin/src/DataGrids/ChannelDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/ChannelDataGrid.php @@ -26,6 +26,7 @@ class ChannelDataGrid extends DataGrid { $this->addColumn([ 'index' => 'id', + 'identifier' => 'id', 'label' => trans('admin::app.datagrid.id'), 'type' => 'number', 'searchable' => false, @@ -35,6 +36,7 @@ class ChannelDataGrid extends DataGrid $this->addColumn([ 'index' => 'code', + 'identifier' => 'code', 'label' => trans('admin::app.datagrid.code'), 'type' => 'string', 'searchable' => true, @@ -44,6 +46,7 @@ class ChannelDataGrid extends DataGrid $this->addColumn([ 'index' => 'name', + 'identifier' => 'name', 'label' => trans('admin::app.datagrid.name'), 'type' => 'string', 'searchable' => true, @@ -53,6 +56,7 @@ class ChannelDataGrid extends DataGrid $this->addColumn([ 'index' => 'hostname', + 'identifier' => 'hostname', 'label' => trans('admin::app.datagrid.hostname'), 'type' => 'string', 'sortable' => true, diff --git a/packages/Webkul/Admin/src/DataGrids/CurrencyDataGrid.php b/packages/Webkul/Admin/src/DataGrids/CurrencyDataGrid.php index 02652f0b1..a74a6756d 100755 --- a/packages/Webkul/Admin/src/DataGrids/CurrencyDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/CurrencyDataGrid.php @@ -26,6 +26,7 @@ class CurrencyDataGrid extends DataGrid { $this->addColumn([ 'index' => 'id', + 'identifier' => 'id', 'label' => trans('admin::app.datagrid.id'), 'type' => 'number', 'searchable' => false, @@ -35,6 +36,7 @@ class CurrencyDataGrid extends DataGrid $this->addColumn([ 'index' => 'name', + 'identifier' => 'name', 'label' => trans('admin::app.datagrid.name'), 'type' => 'string', 'searchable' => true, @@ -44,6 +46,7 @@ class CurrencyDataGrid extends DataGrid $this->addColumn([ 'index' => 'code', + 'identifier' => 'code', 'label' => trans('admin::app.datagrid.code'), 'type' => 'string', 'searchable' => true, diff --git a/packages/Webkul/Admin/src/DataGrids/CustomerDataGrid.php b/packages/Webkul/Admin/src/DataGrids/CustomerDataGrid.php index 4b7869173..646258ac2 100755 --- a/packages/Webkul/Admin/src/DataGrids/CustomerDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/CustomerDataGrid.php @@ -15,11 +15,11 @@ class CustomerDataGrid extends DataGrid { protected $itemsPerPage = 5; - protected $index = 'customer_id'; //the column that needs to be treated as index column + protected $index = 'id'; //the column that needs to be treated as index column public function prepareQueryBuilder() { - $queryBuilder = DB::table('customers')->addSelect('customers.id as customer_id', 'customers.email as customer_email', 'customer_groups.name as customer_group_name')->addSelect(DB::raw('CONCAT(customers.first_name, " ", customers.last_name) as customer_full_name'))->leftJoin('customer_groups', 'customers.customer_group_id', '=', 'customer_groups.id'); + $queryBuilder = DB::table('customers as custs')->addSelect('custs.id', 'custs.email', 'cg.name')->leftJoin('customer_groups as cg', 'custs.customer_group_id', '=', 'cg.id'); $this->setQueryBuilder($queryBuilder); } @@ -27,7 +27,8 @@ class CustomerDataGrid extends DataGrid public function addColumns() { $this->addColumn([ - 'index' => 'customer_id', + 'index' => 'custs.id', + 'identifier' => 'customer_id', 'label' => trans('admin::app.datagrid.id'), 'type' => 'number', 'searchable' => false, @@ -35,17 +36,18 @@ class CustomerDataGrid extends DataGrid 'width' => '40px' ]); - $this->addColumn([ - 'index' => 'customer_full_name', - 'label' => trans('admin::app.datagrid.name'), - 'type' => 'string', - 'searchable' => true, - 'sortable' => true, - 'width' => '100px' - ]); + // $this->addColumn([ + // 'index' => 'full_name', + // 'label' => trans('admin::app.datagrid.name'), + // 'type' => 'string', + // 'searchable' => true, + // 'sortable' => true, + // 'width' => '100px' + // ]); $this->addColumn([ - 'index' => 'customer_email', + 'index' => 'custs.email', + 'identifier' => 'customer_email', 'label' => trans('admin::app.datagrid.email'), 'type' => 'string', 'searchable' => true, @@ -54,7 +56,8 @@ class CustomerDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'customer_group_name', + 'index' => 'cg.name', + 'identifier' => 'customer_group_name', 'label' => trans('admin::app.datagrid.group'), 'type' => 'string', 'searchable' => false, diff --git a/packages/Webkul/Admin/src/DataGrids/CustomerGroupDataGrid.php b/packages/Webkul/Admin/src/DataGrids/CustomerGroupDataGrid.php index 746333d90..e5b97f39e 100755 --- a/packages/Webkul/Admin/src/DataGrids/CustomerGroupDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/CustomerGroupDataGrid.php @@ -26,6 +26,7 @@ class CustomerGroupDataGrid extends DataGrid { $this->addColumn([ 'index' => 'id', + 'identifier' => 'id', 'label' => 'ID', 'type' => 'number', 'searchable' => false, @@ -35,6 +36,7 @@ class CustomerGroupDataGrid extends DataGrid $this->addColumn([ 'index' => 'name', + 'identifier' => 'name', 'label' => 'Name', 'type' => 'string', 'searchable' => true, diff --git a/packages/Webkul/Admin/src/DataGrids/CustomerReviewDataGrid.php b/packages/Webkul/Admin/src/DataGrids/CustomerReviewDataGrid.php index ad4a43e04..dda9e58c7 100755 --- a/packages/Webkul/Admin/src/DataGrids/CustomerReviewDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/CustomerReviewDataGrid.php @@ -13,11 +13,11 @@ use DB; */ class CustomerReviewDataGrid extends DataGrid { - protected $index = 'product_review_id'; //the column that needs to be treated as index column + protected $index = 'id'; //the column that needs to be treated as index column public function prepareQueryBuilder() { - $queryBuilder = DB::table('product_reviews as pr')->addSelect('pr.id as product_review_id', 'pr.title as product_review_title', 'pr.comment as product_review_comment', 'pg.name as product_review_name', 'pr.status as product_review_status')->leftjoin('products_grid as pg', 'pr.product_id', '=', 'pg.id'); + $queryBuilder = DB::table('product_reviews as pr')->addSelect('pr.id', 'pr.title', 'pr.comment', 'pg.name', 'pr.status')->leftjoin('products_grid as pg', 'pr.product_id', '=', 'pg.id'); $this->setQueryBuilder($queryBuilder); } @@ -25,7 +25,8 @@ class CustomerReviewDataGrid extends DataGrid public function addColumns() { $this->addColumn([ - 'index' => 'product_review_id', + 'index' => 'pr.id', + 'identifier' => 'product_review_id', 'label' => trans('admin::app.datagrid.id'), 'type' => 'number', 'searchable' => false, @@ -34,7 +35,8 @@ class CustomerReviewDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'product_review_title', + 'index' => 'pr.title', + 'identifier' => 'product_review_title', 'label' => trans('admin::app.datagrid.title'), 'type' => 'string', 'searchable' => true, @@ -43,7 +45,8 @@ class CustomerReviewDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'product_review_comment', + 'index' => 'pr.comment', + 'identifier' => 'product_review_comment', 'label' => trans('admin::app.datagrid.comment'), 'type' => 'string', 'searchable' => true, @@ -52,7 +55,8 @@ class CustomerReviewDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'product_review_name', + 'index' => 'pg.name', + 'identifier' => 'product_name', 'label' => trans('admin::app.datagrid.product-name'), 'type' => 'string', 'searchable' => true, @@ -61,7 +65,8 @@ class CustomerReviewDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'product_review_status', + 'index' => 'pr.status', + 'identifier' => 'product_review_status', 'label' => trans('admin::app.datagrid.status'), 'type' => 'boolean', 'searchable' => true, diff --git a/packages/Webkul/Admin/src/DataGrids/ExchangeRatesDataGrid.php b/packages/Webkul/Admin/src/DataGrids/ExchangeRatesDataGrid.php index 7d6bd7234..fe53f3793 100755 --- a/packages/Webkul/Admin/src/DataGrids/ExchangeRatesDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/ExchangeRatesDataGrid.php @@ -13,11 +13,11 @@ use DB; */ class ExchangeRatesDataGrid extends DataGrid { - protected $index = 'currency_exch_id'; + protected $index = 'id'; public function prepareQueryBuilder() { - $queryBuilder = DB::table('currency_exchange_rates as cer')->addSelect('cer.id as currency_exch_id', 'curr.name as currency_exch_name', 'cer.rate as currency_exch_rate')->leftJoin('currencies as curr', 'cer.target_currency', '=', 'curr.id'); + $queryBuilder = DB::table('currency_exchange_rates as cer')->addSelect('cer.id', 'curr.name', 'cer.rate')->leftJoin('currencies as curr', 'cer.target_currency', '=', 'curr.id'); $this->setQueryBuilder($queryBuilder); } @@ -25,7 +25,8 @@ class ExchangeRatesDataGrid extends DataGrid public function addColumns() { $this->addColumn([ - 'index' => 'currency_exch_id', + 'index' => 'cer.id', + 'identifier' => 'currency_exch_id', 'label' => trans('admin::app.datagrid.id'), 'type' => 'number', 'searchable' => false, @@ -34,7 +35,8 @@ class ExchangeRatesDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'currency_exch_name', + 'index' => 'curr.name', + 'identifier' => 'currency_exch_name', 'label' => trans('admin::app.datagrid.currency-name'), 'type' => 'string', 'searchable' => true, @@ -43,7 +45,8 @@ class ExchangeRatesDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'currency_exch_rate', + 'index' => 'cer.rate', + 'identifier' => 'currency_exch_rate', 'label' => trans('admin::app.datagrid.exch-rate'), 'type' => 'string', 'searchable' => true, diff --git a/packages/Webkul/Admin/src/DataGrids/InventorySourcesDataGrid.php b/packages/Webkul/Admin/src/DataGrids/InventorySourcesDataGrid.php index 0d899faa4..aacaf0349 100755 --- a/packages/Webkul/Admin/src/DataGrids/InventorySourcesDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/InventorySourcesDataGrid.php @@ -26,6 +26,7 @@ class InventorySourcesDataGrid extends DataGrid { $this->addColumn([ 'index' => 'id', + 'identifier' => 'id', 'label' => trans('admin::app.datagrid.id'), 'type' => 'number', 'searchable' => false, @@ -35,6 +36,7 @@ class InventorySourcesDataGrid extends DataGrid $this->addColumn([ 'index' => 'code', + 'identifier' => 'code', 'label' => trans('admin::app.datagrid.code'), 'type' => 'string', 'searchable' => true, @@ -44,6 +46,7 @@ class InventorySourcesDataGrid extends DataGrid $this->addColumn([ 'index' => 'name', + 'identifier' => 'name', 'label' => trans('admin::app.datagrid.name'), 'type' => 'string', 'searchable' => true, @@ -53,6 +56,7 @@ class InventorySourcesDataGrid extends DataGrid $this->addColumn([ 'index' => 'priority', + 'identifier' => 'priority', 'label' => trans('admin::app.datagrid.priority'), 'type' => 'string', 'searchable' => true, @@ -62,6 +66,7 @@ class InventorySourcesDataGrid extends DataGrid $this->addColumn([ 'index' => 'status', + 'identifier' => 'status', 'label' => trans('admin::app.datagrid.status'), 'type' => 'boolean', 'searchable' => true, diff --git a/packages/Webkul/Admin/src/DataGrids/LocalesDataGrid.php b/packages/Webkul/Admin/src/DataGrids/LocalesDataGrid.php index 09900efbe..d40cb26a9 100755 --- a/packages/Webkul/Admin/src/DataGrids/LocalesDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/LocalesDataGrid.php @@ -26,6 +26,7 @@ class LocalesDataGrid extends DataGrid { $this->addColumn([ 'index' => 'id', + 'identifier' => 'id', 'label' => trans('admin::app.datagrid.id'), 'type' => 'number', 'searchable' => false, @@ -35,6 +36,7 @@ class LocalesDataGrid extends DataGrid $this->addColumn([ 'index' => 'code', + 'identifier' => 'code', 'label' => trans('admin::app.datagrid.code'), 'type' => 'string', 'searchable' => true, @@ -44,6 +46,7 @@ class LocalesDataGrid extends DataGrid $this->addColumn([ 'index' => 'name', + 'identifier' => 'name', 'label' => trans('admin::app.datagrid.name'), 'type' => 'string', 'searchable' => true, diff --git a/packages/Webkul/Admin/src/DataGrids/NewsLetterDataGrid.php b/packages/Webkul/Admin/src/DataGrids/NewsLetterDataGrid.php index d733fa510..e8ca146ce 100755 --- a/packages/Webkul/Admin/src/DataGrids/NewsLetterDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/NewsLetterDataGrid.php @@ -26,6 +26,7 @@ class NewsLetterDataGrid extends DataGrid { $this->addColumn([ 'index' => 'id', + 'identifier' => 'id', 'label' => trans('admin::app.datagrid.id'), 'type' => 'number', 'searchable' => false, @@ -35,6 +36,7 @@ class NewsLetterDataGrid extends DataGrid $this->addColumn([ 'index' => 'is_subscribed', + 'identifier' => 'is_subscribed', 'label' => trans('admin::app.datagrid.subscribed'), 'type' => 'string', 'searchable' => true, @@ -50,6 +52,7 @@ class NewsLetterDataGrid extends DataGrid $this->addColumn([ 'index' => 'email', + 'identifier' => 'email', 'label' => trans('admin::app.datagrid.email'), 'type' => 'string', 'searchable' => true, diff --git a/packages/Webkul/Admin/src/DataGrids/OrderDataGrid.php b/packages/Webkul/Admin/src/DataGrids/OrderDataGrid.php index 205fac3ac..b66c7c4b6 100755 --- a/packages/Webkul/Admin/src/DataGrids/OrderDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/OrderDataGrid.php @@ -26,6 +26,7 @@ class OrderDataGrid extends DataGrid { $this->addColumn([ 'index' => 'id', + 'identifier' => 'id', 'label' => trans('admin::app.datagrid.id'), 'type' => 'number', 'searchable' => false, @@ -35,6 +36,7 @@ class OrderDataGrid extends DataGrid $this->addColumn([ 'index' => 'base_grand_total', + 'identifier' => 'base_grand_total', 'label' => trans('admin::app.datagrid.base-total'), 'type' => 'string', 'searchable' => true, @@ -47,6 +49,7 @@ class OrderDataGrid extends DataGrid $this->addColumn([ 'index' => 'grand_total', + 'identifier' => 'grand_total', 'label' => trans('admin::app.datagrid.grand-total'), 'type' => 'string', 'searchable' => true, @@ -59,6 +62,7 @@ class OrderDataGrid extends DataGrid $this->addColumn([ 'index' => 'created_at', + 'identifier' => 'created_at', 'label' => trans('admin::app.datagrid.order-date'), 'type' => 'string', 'sortable' => true, @@ -68,6 +72,7 @@ class OrderDataGrid extends DataGrid $this->addColumn([ 'index' => 'channel_name', + 'identifier' => 'channel_name', 'label' => trans('admin::app.datagrid.channel-name'), 'type' => 'string', 'sortable' => true, @@ -77,6 +82,7 @@ class OrderDataGrid extends DataGrid $this->addColumn([ 'index' => 'status', + 'identifier' => 'status', 'label' => trans('admin::app.datagrid.status'), 'type' => 'string', 'sortable' => true, @@ -103,6 +109,7 @@ class OrderDataGrid extends DataGrid $this->addColumn([ 'index' => 'full_name', + 'identifier' => 'full_name', 'label' => trans('admin::app.datagrid.billed-to'), 'type' => 'string', 'searchable' => false, diff --git a/packages/Webkul/Admin/src/DataGrids/OrderInvoicesDataGrid.php b/packages/Webkul/Admin/src/DataGrids/OrderInvoicesDataGrid.php index d3fb5a42c..cb696db4e 100755 --- a/packages/Webkul/Admin/src/DataGrids/OrderInvoicesDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/OrderInvoicesDataGrid.php @@ -26,6 +26,7 @@ class OrderInvoicesDataGrid extends DataGrid { $this->addColumn([ 'index' => 'id', + 'identifier' => 'id', 'label' => trans('admin::app.datagrid.id'), 'type' => 'number', 'searchable' => false, @@ -35,6 +36,7 @@ class OrderInvoicesDataGrid extends DataGrid $this->addColumn([ 'index' => 'order_id', + 'identifier' => 'order_id', 'label' => trans('admin::app.datagrid.order-id'), 'type' => 'number', 'searchable' => false, @@ -44,6 +46,7 @@ class OrderInvoicesDataGrid extends DataGrid $this->addColumn([ 'index' => 'grand_total', + 'identifier' => 'grand_total', 'label' => trans('admin::app.datagrid.grand-total'), 'type' => 'string', 'searchable' => true, @@ -53,6 +56,7 @@ class OrderInvoicesDataGrid extends DataGrid $this->addColumn([ 'index' => 'created_at', + 'identifier' => 'created_at', 'label' => trans('admin::app.datagrid.invoice-date'), 'type' => 'datetime', 'searchable' => true, diff --git a/packages/Webkul/Admin/src/DataGrids/OrderShipmentsDataGrid.php b/packages/Webkul/Admin/src/DataGrids/OrderShipmentsDataGrid.php index b1a1b8b46..ac272abcc 100755 --- a/packages/Webkul/Admin/src/DataGrids/OrderShipmentsDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/OrderShipmentsDataGrid.php @@ -13,11 +13,11 @@ use DB; */ class OrderShipmentsDataGrid extends DataGrid { - protected $index = 'shipment_id'; + protected $index = 'id'; public function prepareQueryBuilder() { - $queryBuilder = DB::table('shipments as ship')->select('ship.id as shipment_id', 'ship.order_id as shipment_order_id', 'ship.total_qty as shipment_total_qty', 'is.name as inventory_source_name', 'ors.created_at as orderdate', 'ship.created_at as shipment_created_at')->addSelect(DB::raw('CONCAT(ors.customer_first_name, " ", ors.customer_last_name) as custname'))->leftJoin('orders as ors', 'ship.order_id', '=', 'ors.id')->leftJoin('inventory_sources as is', 'ship.inventory_source_id', '=', 'is.id'); + $queryBuilder = DB::table('shipments as ship')->select('ship.id', 'ship.order_id', 'ship.total_qty', 'is.name', 'ors.created_at', 'ship.created_at')->addSelect(DB::raw('CONCAT(ors.customer_first_name, " ", ors.customer_last_name) as custname'))->leftJoin('orders as ors', 'ship.order_id', '=', 'ors.id')->leftJoin('inventory_sources as is', 'ship.inventory_source_id', '=', 'is.id'); $this->setQueryBuilder($queryBuilder); } @@ -25,7 +25,8 @@ class OrderShipmentsDataGrid extends DataGrid public function addColumns() { $this->addColumn([ - 'index' => 'shipment_id', + 'index' => 'ship.id', + 'identifier' => 'shipment_id', 'label' => trans('admin::app.datagrid.id'), 'type' => 'number', 'searchable' => false, @@ -34,7 +35,8 @@ class OrderShipmentsDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'shipment_order_id', + 'index' => 'ship.order_id', + 'identifier' => 'shipment_order_id', 'label' => trans('admin::app.datagrid.order-id'), 'type' => 'number', 'searchable' => false, @@ -43,7 +45,8 @@ class OrderShipmentsDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'shipment_total_qty', + 'index' => 'ship.total_qty', + 'identifier' => 'shipment_total_qty', 'label' => trans('admin::app.datagrid.total-qty'), 'type' => 'number', 'searchable' => true, @@ -52,7 +55,8 @@ class OrderShipmentsDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'inventory_source_name', + 'index' => 'is.name', + 'identifier' => 'inventory_source_name', 'label' => trans('admin::app.datagrid.inventory-source'), 'type' => 'string', 'searchable' => true, @@ -61,7 +65,8 @@ class OrderShipmentsDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'orderdate', + 'index' => 'ors.created_at', + 'identifier' => 'orderdate', 'label' => trans('admin::app.datagrid.order-date'), 'type' => 'datetime', 'sortable' => true, @@ -70,7 +75,8 @@ class OrderShipmentsDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'shipment_created_at', + 'index' => 'ship.created_at', + 'identifier' => 'shipment_created_at', 'label' => trans('admin::app.datagrid.shipment-date'), 'type' => 'datetime', 'sortable' => true, @@ -80,6 +86,7 @@ class OrderShipmentsDataGrid extends DataGrid $this->addColumn([ 'index' => 'custname', + 'identifier' => 'custname', 'label' => trans('admin::app.datagrid.shipment-to'), 'type' => 'string', 'sortable' => true, diff --git a/packages/Webkul/Admin/src/DataGrids/ProductDataGrid.php b/packages/Webkul/Admin/src/DataGrids/ProductDataGrid.php index bf939e6a0..237d460e4 100644 --- a/packages/Webkul/Admin/src/DataGrids/ProductDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/ProductDataGrid.php @@ -17,7 +17,7 @@ class ProductDataGrid extends DataGrid public function prepareQueryBuilder() { - $queryBuilder = DB::table('products_grid')->addSelect('products_grid.product_id as product_id', 'products_grid.sku as product_sku', 'products_grid.name as product_name', 'products.type as product_type', 'products_grid.status as product_status', 'products_grid.price as product_price', 'products_grid.quantity as product_quantity')->leftJoin('products', 'products_grid.product_id', '=', 'products.id'); + $queryBuilder = DB::table('products_grid as pg')->addSelect('pg.product_id', 'pg.sku', 'pg.name', 'pr.type', 'pg.status', 'pg.price', 'pg.quantity')->leftJoin('products as pr', 'pg.product_id', '=', 'pr.id'); $this->setQueryBuilder($queryBuilder); } @@ -25,7 +25,8 @@ class ProductDataGrid extends DataGrid public function addColumns() { $this->addColumn([ - 'index' => 'product_id', + 'index' => 'pg.product_id', + 'identifier' => 'product_id', 'label' => trans('admin::app.datagrid.id'), 'type' => 'number', 'searchable' => false, @@ -34,7 +35,8 @@ class ProductDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'product_sku', + 'index' => 'pg.sku', + 'identifier' => 'product_sku', 'label' => trans('admin::app.datagrid.sku'), 'type' => 'string', 'searchable' => true, @@ -43,7 +45,8 @@ class ProductDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'product_name', + 'index' => 'pg.name', + 'identifier' => 'product_name', 'label' => trans('admin::app.datagrid.name'), 'type' => 'string', 'searchable' => true, @@ -52,7 +55,8 @@ class ProductDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'product_type', + 'index' => 'pr.type', + 'identifier' => 'product_type', 'label' => trans('admin::app.datagrid.type'), 'type' => 'string', 'sortable' => true, @@ -61,7 +65,8 @@ class ProductDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'product_status', + 'index' => 'pg.status', + 'identifier' => 'product_status', 'label' => trans('admin::app.datagrid.status'), 'type' => 'boolean', 'sortable' => true, @@ -76,7 +81,8 @@ class ProductDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'product_price', + 'index' => 'pg.price', + 'identifier' => 'product_price', 'label' => trans('admin::app.datagrid.price'), 'type' => 'number', 'sortable' => true, @@ -88,7 +94,8 @@ class ProductDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'product_quantity', + 'index' => 'pg.quantity', + 'identifier' => 'product_quantity', 'label' => trans('admin::app.datagrid.qty'), 'type' => 'number', 'sortable' => true, diff --git a/packages/Webkul/Admin/src/DataGrids/RolesDataGrid.php b/packages/Webkul/Admin/src/DataGrids/RolesDataGrid.php index 88814b9f1..cec088746 100755 --- a/packages/Webkul/Admin/src/DataGrids/RolesDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/RolesDataGrid.php @@ -26,6 +26,7 @@ class RolesDataGrid extends DataGrid { $this->addColumn([ 'index' => 'id', + 'identifier' => 'id', 'label' => trans('admin::app.datagrid.id'), 'type' => 'number', 'searchable' => false, @@ -35,6 +36,7 @@ class RolesDataGrid extends DataGrid $this->addColumn([ 'index' => 'name', + 'identifier' => 'name', 'label' => trans('admin::app.datagrid.name'), 'type' => 'string', 'searchable' => true, @@ -44,6 +46,7 @@ class RolesDataGrid extends DataGrid $this->addColumn([ 'index' => 'permission_type', + 'identifier' => 'permission_type', 'label' => trans('admin::app.datagrid.permission-type'), 'type' => 'string', 'searchable' => true, diff --git a/packages/Webkul/Admin/src/DataGrids/SliderDataGrid.php b/packages/Webkul/Admin/src/DataGrids/SliderDataGrid.php index 74aef6d05..9072d47ba 100755 --- a/packages/Webkul/Admin/src/DataGrids/SliderDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/SliderDataGrid.php @@ -13,11 +13,11 @@ use DB; */ class SliderDataGrid extends DataGrid { - protected $index = 'slider_id'; + protected $index = 'id'; public function prepareQueryBuilder() { - $queryBuilder = DB::table('sliders as sl')->addSelect('sl.id as slider_id', 'sl.title as slider_title', 'ch.name as channel_name')->leftJoin('channels as ch', 'sl.channel_id', '=', 'ch.id'); + $queryBuilder = DB::table('sliders as sl')->addSelect('sl.id', 'sl.title', 'ch.name')->leftJoin('channels as ch', 'sl.channel_id', '=', 'ch.id'); $this->setQueryBuilder($queryBuilder); } @@ -25,7 +25,8 @@ class SliderDataGrid extends DataGrid public function addColumns() { $this->addColumn([ - 'index' => 'slider_id', + 'index' => 'sl.id', + 'identifier' => 'slider_id', 'label' => trans('admin::app.datagrid.id'), 'type' => 'number', 'searchable' => false, @@ -34,7 +35,8 @@ class SliderDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'slider_title', + 'index' => 'sl.title', + 'identifier' => 'slider_title', 'label' => trans('admin::app.datagrid.title'), 'type' => 'string', 'searchable' => true, @@ -43,7 +45,8 @@ class SliderDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'channel_name', + 'index' => 'ch.name', + 'identifier' => 'channel_name', 'label' => trans('admin::app.datagrid.channel-name'), 'type' => 'string', 'searchable' => true, diff --git a/packages/Webkul/Admin/src/DataGrids/TaxCategoryDataGrid.php b/packages/Webkul/Admin/src/DataGrids/TaxCategoryDataGrid.php index 0098a80e6..588bc43d1 100755 --- a/packages/Webkul/Admin/src/DataGrids/TaxCategoryDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/TaxCategoryDataGrid.php @@ -26,6 +26,7 @@ class TaxCategoryDataGrid extends DataGrid { $this->addColumn([ 'index' => 'id', + 'identifier' => 'id', 'label' => trans('admin::app.datagrid.id'), 'type' => 'number', 'searchable' => false, @@ -35,6 +36,7 @@ class TaxCategoryDataGrid extends DataGrid $this->addColumn([ 'index' => 'name', + 'identifier' => 'name', 'label' => trans('admin::app.datagrid.name'), 'type' => 'string', 'searchable' => true, @@ -44,6 +46,7 @@ class TaxCategoryDataGrid extends DataGrid $this->addColumn([ 'index' => 'code', + 'identifier' => 'code', 'label' => trans('admin::app.datagrid.code'), 'type' => 'string', 'searchable' => true, diff --git a/packages/Webkul/Admin/src/DataGrids/TaxRateDataGrid.php b/packages/Webkul/Admin/src/DataGrids/TaxRateDataGrid.php index 7beca667c..1c79aa446 100755 --- a/packages/Webkul/Admin/src/DataGrids/TaxRateDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/TaxRateDataGrid.php @@ -26,6 +26,7 @@ class TaxRateDataGrid extends DataGrid { $this->addColumn([ 'index' => 'id', + 'identifier' => 'id', 'label' => trans('admin::app.datagrid.id'), 'type' => 'number', 'searchable' => false, @@ -35,6 +36,7 @@ class TaxRateDataGrid extends DataGrid $this->addColumn([ 'index' => 'identifier', + 'identifier' => 'identifier', 'label' => trans('admin::app.datagrid.identifier'), 'type' => 'string', 'searchable' => true, @@ -44,6 +46,7 @@ class TaxRateDataGrid extends DataGrid $this->addColumn([ 'index' => 'state', + 'identifier' => 'state', 'label' => trans('admin::app.datagrid.state'), 'type' => 'string', 'searchable' => true, @@ -53,6 +56,7 @@ class TaxRateDataGrid extends DataGrid $this->addColumn([ 'index' => 'country', + 'identifier' => 'country', 'label' => trans('admin::app.datagrid.country'), 'type' => 'string', 'searchable' => true, @@ -62,6 +66,7 @@ class TaxRateDataGrid extends DataGrid $this->addColumn([ 'index' => 'tax_rate', + 'identifier' => 'tax_rate', 'label' => trans('admin::app.datagrid.tax-rate'), 'type' => 'string', 'searchable' => true, diff --git a/packages/Webkul/Admin/src/DataGrids/UserDataGrid.php b/packages/Webkul/Admin/src/DataGrids/UserDataGrid.php index 673f5937f..2db484c36 100755 --- a/packages/Webkul/Admin/src/DataGrids/UserDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/UserDataGrid.php @@ -13,11 +13,11 @@ use DB; */ class UserDataGrid extends DataGrid { - protected $index = 'user_id'; + protected $index = 'id'; public function prepareQueryBuilder() { - $queryBuilder = DB::table('admins as u')->addSelect('u.id as user_id', 'u.name as user_name', 'u.status as user_status', 'u.email as user_email', 'ro.name as role_name')->leftJoin('roles as ro', 'u.role_id', '=', 'ro.id'); + $queryBuilder = DB::table('admins as u')->addSelect('u.id', 'u.name', 'u.status', 'u.email', 'ro.name')->leftJoin('roles as ro', 'u.role_id', '=', 'ro.id'); $this->setQueryBuilder($queryBuilder); } @@ -25,7 +25,8 @@ class UserDataGrid extends DataGrid public function addColumns() { $this->addColumn([ - 'index' => 'user_id', + 'index' => 'u.id', + 'identifier' => 'user_id', 'label' => trans('admin::app.datagrid.id'), 'type' => 'number', 'searchable' => false, @@ -34,7 +35,8 @@ class UserDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'user_name', + 'index' => 'u.name', + 'identifier' => 'user_name', 'label' => trans('admin::app.datagrid.name'), 'type' => 'string', 'searchable' => true, @@ -43,7 +45,8 @@ class UserDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'user_status', + 'index' => 'u.status', + 'identifier' => 'user_status', 'label' => trans('admin::app.datagrid.status'), 'type' => 'boolean', 'searchable' => true, @@ -59,13 +62,24 @@ class UserDataGrid extends DataGrid ]); $this->addColumn([ - 'index' => 'user_email', + 'index' => 'u.email', + 'identifier' => 'user_email', 'label' => trans('admin::app.datagrid.email'), 'type' => 'string', 'searchable' => true, 'sortable' => true, 'width' => '100px' ]); + + $this->addColumn([ + 'index' => 'ro.name', + 'identifier' => 'role_name', + 'label' => trans('admin::app.datagrid.role'), + 'type' => 'string', + 'searchable' => true, + 'sortable' => true, + 'width' => '100px' + ]); } public function prepareActions() { diff --git a/packages/Webkul/Admin/src/Resources/lang/en/app.php b/packages/Webkul/Admin/src/Resources/lang/en/app.php index 4ec39b742..35af0b42a 100755 --- a/packages/Webkul/Admin/src/Resources/lang/en/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/en/app.php @@ -69,7 +69,7 @@ return [ 'sliders' => 'Sliders', 'taxes' => 'Taxes', 'tax-categories' => 'Tax Categories', - 'tax-rates' => 'Tax Rates' + 'tax-rates' => 'Tax Rates', ], 'dashboard' => [ @@ -143,7 +143,8 @@ return [ 'identifier' => 'Identifier', 'state' => 'State', 'country' => 'Country', - 'tax-rate' => 'Rate' + 'tax-rate' => 'Rate', + 'role' => 'Role' ], 'account' => [ diff --git a/packages/Webkul/Ui/src/DataGrid/DataGrid.php b/packages/Webkul/Ui/src/DataGrid/DataGrid.php index a8c579ef1..f07521917 100644 --- a/packages/Webkul/Ui/src/DataGrid/DataGrid.php +++ b/packages/Webkul/Ui/src/DataGrid/DataGrid.php @@ -111,7 +111,7 @@ abstract class DataGrid public function findColumnType($columnAlias) { foreach($this->completeColumnDetails as $column) { - if($column['index'] == $columnAlias) { + if($column['identifier'] == $columnAlias) { return [$column['type'], $column['index']]; } } diff --git a/packages/Webkul/Ui/src/Resources/views/datagrid/body.blade.php b/packages/Webkul/Ui/src/Resources/views/datagrid/body.blade.php index f6caa5f8b..c32028de4 100644 --- a/packages/Webkul/Ui/src/Resources/views/datagrid/body.blade.php +++ b/packages/Webkul/Ui/src/Resources/views/datagrid/body.blade.php @@ -17,6 +17,8 @@ $columnIndex = explode('.', $column['index']); $columnIndex = end($columnIndex); + + // dd($columnIndex); @endphp @if(isset($column['wrapper'])) @@ -45,7 +47,7 @@ @endforeach @else - {{$norecords}} + {{ $norecords }} @endif \ No newline at end of file diff --git a/packages/Webkul/Ui/src/Resources/views/datagrid/table.blade.php b/packages/Webkul/Ui/src/Resources/views/datagrid/table.blade.php index 5d02e4d63..c43af3276 100644 --- a/packages/Webkul/Ui/src/Resources/views/datagrid/table.blade.php +++ b/packages/Webkul/Ui/src/Resources/views/datagrid/table.blade.php @@ -35,7 +35,7 @@ @foreach($results['columns'] as $column) - @endforeach @@ -197,7 +197,7 @@ @endif @foreach($results['columns'] as $key => $column) - + {{ $column['label'] }} @endforeach @@ -268,7 +268,7 @@ this.columnOrAlias = columnOrAlias; for(column in this.columns) { - if (this.columns[column].identifier == this.columnOrAlias) { + if (this.columns[column].index == this.columnOrAlias) { this.type = this.columns[column].type; if (this.type == 'string') { @@ -315,7 +315,7 @@ label = ''; for(colIndex in this.columns) { - if(this.columns[colIndex].identifier == this.columnOrAlias) { + if(this.columns[colIndex].index == this.columnOrAlias) { label = this.columns[colIndex].label; } } @@ -335,7 +335,7 @@ label = ''; for(colIndex in this.columns) { - if(this.columns[colIndex].identifier == alias) { + if(this.columns[colIndex].index == alias) { matched = 0; label = this.columns[colIndex].label; } @@ -601,7 +601,7 @@ label = ''; for(colIndex in this.columns) { - if(this.columns[colIndex].identifier == obj.cond) { + if(this.columns[colIndex].index == obj.cond) { obj.label = this.columns[colIndex].label; } @@ -612,7 +612,7 @@ obj.label = ''; for(colIndex in this.columns) { - if(this.columns[colIndex].identifier == obj.column) { + if(this.columns[colIndex].index == obj.column) { obj.label = this.columns[colIndex].label; } } From 0776c8f331f5cf55985959368754eda0e3c9cc15 Mon Sep 17 00:00:00 2001 From: Prashant Singh Date: Wed, 16 Jan 2019 19:47:39 +0530 Subject: [PATCH 06/47] width parameter in datagrid will now run as optional --- packages/Webkul/Admin/src/DataGrids/OrderDataGrid.php | 2 +- packages/Webkul/Ui/src/Resources/views/datagrid/table.blade.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/Webkul/Admin/src/DataGrids/OrderDataGrid.php b/packages/Webkul/Admin/src/DataGrids/OrderDataGrid.php index f5c58c1f9..fac39d749 100755 --- a/packages/Webkul/Admin/src/DataGrids/OrderDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/OrderDataGrid.php @@ -38,7 +38,7 @@ class OrderDataGrid extends DataGrid $this->addColumn([ 'index' => 'base_grand_total', 'label' => trans('admin::app.datagrid.base-total'), - 'type' => 'string', + 'type' => 'price', 'searchable' => false, 'sortable' => true, 'width' => '100px', diff --git a/packages/Webkul/Ui/src/Resources/views/datagrid/table.blade.php b/packages/Webkul/Ui/src/Resources/views/datagrid/table.blade.php index f45e891a3..a69e69ddf 100644 --- a/packages/Webkul/Ui/src/Resources/views/datagrid/table.blade.php +++ b/packages/Webkul/Ui/src/Resources/views/datagrid/table.blade.php @@ -197,7 +197,7 @@ @endif @foreach($results['columns'] as $key => $column) - + {{ $column['label'] }} @endforeach From 31f6e62bd0423c0c6546bed81ee650c95b93b521 Mon Sep 17 00:00:00 2001 From: Prashant Singh Date: Wed, 16 Jan 2019 19:57:45 +0530 Subject: [PATCH 07/47] a new type of column for price added --- .../Webkul/Admin/src/DataGrids/OrderDataGrid.php | 15 ++++++++------- .../Admin/src/DataGrids/OrderInvoicesDataGrid.php | 3 ++- .../Admin/src/DataGrids/ProductDataGrid.php | 5 +---- .../src/Resources/views/datagrid/body.blade.php | 10 +++++++++- 4 files changed, 20 insertions(+), 13 deletions(-) diff --git a/packages/Webkul/Admin/src/DataGrids/OrderDataGrid.php b/packages/Webkul/Admin/src/DataGrids/OrderDataGrid.php index fac39d749..cc9fa1afb 100755 --- a/packages/Webkul/Admin/src/DataGrids/OrderDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/OrderDataGrid.php @@ -42,21 +42,22 @@ class OrderDataGrid extends DataGrid 'searchable' => false, 'sortable' => true, 'width' => '100px', - 'wrapper' => function ($value) { - return core()->formatBasePrice($value); - } + // 'wrapper' => function ($value) { + // return core()->formatBasePrice($value); + // } ]); $this->addColumn([ 'index' => 'grand_total', 'label' => trans('admin::app.datagrid.grand-total'), - 'type' => 'string', + 'type' => 'price', + 'currencyCode' => 'JOD', 'searchable' => false, 'sortable' => true, 'width' => '100px', - 'wrapper' => function ($value) { - return core()->formatBasePrice($value); - } + // 'wrapper' => function ($value) { + // return core()->formatBasePrice($value); + // } ]); $this->addColumn([ diff --git a/packages/Webkul/Admin/src/DataGrids/OrderInvoicesDataGrid.php b/packages/Webkul/Admin/src/DataGrids/OrderInvoicesDataGrid.php index d3fb5a42c..7b70429de 100755 --- a/packages/Webkul/Admin/src/DataGrids/OrderInvoicesDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/OrderInvoicesDataGrid.php @@ -45,7 +45,8 @@ class OrderInvoicesDataGrid extends DataGrid $this->addColumn([ 'index' => 'grand_total', 'label' => trans('admin::app.datagrid.grand-total'), - 'type' => 'string', + 'type' => 'price', + // 'currencyCode' => 'JOD', 'searchable' => true, 'sortable' => true, 'width' => '100px', diff --git a/packages/Webkul/Admin/src/DataGrids/ProductDataGrid.php b/packages/Webkul/Admin/src/DataGrids/ProductDataGrid.php index 4542cc006..544ed58ee 100644 --- a/packages/Webkul/Admin/src/DataGrids/ProductDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/ProductDataGrid.php @@ -86,13 +86,10 @@ class ProductDataGrid extends DataGrid $this->addColumn([ 'index' => 'product_price', 'label' => trans('admin::app.datagrid.price'), - 'type' => 'number', + 'type' => 'price', 'sortable' => true, 'searchable' => false, 'width' => '100px', - 'wrapper' => function($value) { - return core()->formatBasePrice($value); - } ]); $this->addColumn([ diff --git a/packages/Webkul/Ui/src/Resources/views/datagrid/body.blade.php b/packages/Webkul/Ui/src/Resources/views/datagrid/body.blade.php index 0d9874cea..b09641667 100644 --- a/packages/Webkul/Ui/src/Resources/views/datagrid/body.blade.php +++ b/packages/Webkul/Ui/src/Resources/views/datagrid/body.blade.php @@ -28,7 +28,15 @@ {{ $column['wrapper']($record->{$columnIndex}) }} @endif @else - {{ $record->{$columnIndex} }} + @if($column['type'] == 'price') + @if(isset($column['currencyCode'])) + {{ core()->formatPrice($record->{$columnIndex}, $column['currencyCode']) }} + @else + {{ core()->formatBasePrice($record->{$columnIndex}) }} + @endif + @else + {{ $record->{$columnIndex} }} + @endif @endif @endforeach From 342cbd54597448171b6dbdb0d0d6163fe9ec94b3 Mon Sep 17 00:00:00 2001 From: Prashant Singh Date: Wed, 16 Jan 2019 20:02:00 +0530 Subject: [PATCH 08/47] New filters type for price column added as numeric type --- packages/Webkul/Ui/src/DataGrid/DataGrid.php | 2 +- .../Ui/src/Resources/views/datagrid/table.blade.php | 11 ++++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/packages/Webkul/Ui/src/DataGrid/DataGrid.php b/packages/Webkul/Ui/src/DataGrid/DataGrid.php index 1272e4611..67ba0ac34 100644 --- a/packages/Webkul/Ui/src/DataGrid/DataGrid.php +++ b/packages/Webkul/Ui/src/DataGrid/DataGrid.php @@ -204,7 +204,7 @@ abstract class DataGrid ); } } else { - if ($this->enableFilterMap && isset($this->filterMap[$column['index']])) { + if ($this->enableFilterMap && isset($this->filterMap[$columnName])) { return $collection->where( $this->filterMap[$columnName], config("datagrid.operators.{$condition}"), diff --git a/packages/Webkul/Ui/src/Resources/views/datagrid/table.blade.php b/packages/Webkul/Ui/src/Resources/views/datagrid/table.blade.php index a69e69ddf..9b4e7a368 100644 --- a/packages/Webkul/Ui/src/Resources/views/datagrid/table.blade.php +++ b/packages/Webkul/Ui/src/Resources/views/datagrid/table.blade.php @@ -136,7 +136,7 @@
- + @{{ filter.label }} Search @{{ filter.label }} @@ -298,6 +298,13 @@ this.datetimeConditionSelect = false; this.stringConditionSelect = false; + this.nullify(); + } else if (this.type == 'price') { + this.numberConditionSelect = true; + this.booleanConditionSelect = false; + this.datetimeConditionSelect = false; + this.stringConditionSelect = false; + this.nullify(); } } @@ -328,6 +335,8 @@ this.formURL(this.columnOrAlias, this.booleanCondition, this.booleanValue, label); } else if (this.type == 'datetime') { this.formURL(this.columnOrAlias, this.datetimeCondition, this.datetimeValue, label); + } else if (this.type == 'price') { + this.formURL(this.columnOrAlias, this.numberCondition, this.numberValue, label); } }, From fb6a16596a6857428381ad01aac31aa0a2d3b581 Mon Sep 17 00:00:00 2001 From: jitendra Date: Wed, 16 Jan 2019 20:07:48 +0530 Subject: [PATCH 09/47] Now config field label will be tranlate --- .../src/Resources/views/configuration/field-type.blade.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/Webkul/Admin/src/Resources/views/configuration/field-type.blade.php b/packages/Webkul/Admin/src/Resources/views/configuration/field-type.blade.php index ef3cdb890..e692f34fe 100755 --- a/packages/Webkul/Admin/src/Resources/views/configuration/field-type.blade.php +++ b/packages/Webkul/Admin/src/Resources/views/configuration/field-type.blade.php @@ -40,7 +40,7 @@
- {{--
+
{{ __('admin::app.export.export') }} -
--}} +
{{ __('admin::app.customers.customers.add-title') }} @@ -25,32 +25,36 @@
-
@inject('customer','Webkul\Admin\DataGrids\CustomerDataGrid') {!! $customer->render() !!}
- {{-- +

{{ __('admin::app.export.download') }}

-
--}} +
@stop @push('scripts') -{{-- --}} + @endpush diff --git a/packages/Webkul/Admin/src/Resources/views/export/export.blade.php b/packages/Webkul/Admin/src/Resources/views/export/export.blade.php index 659c27bc6..06a259808 100755 --- a/packages/Webkul/Admin/src/Resources/views/export/export.blade.php +++ b/packages/Webkul/Admin/src/Resources/views/export/export.blade.php @@ -2,15 +2,15 @@ @foreach ($columns as $column) - {{ $column->label }} + {{ $column['label'] }} @endforeach @foreach ($results as $result) - @foreach ($columns as $column) - {!! $column->render($result) !!} + @foreach ($result as $value) + {{ $value }} @endforeach @endforeach diff --git a/packages/Webkul/Admin/src/Resources/views/sales/invoices/index.blade.php b/packages/Webkul/Admin/src/Resources/views/sales/invoices/index.blade.php index b85fb7296..28d419d94 100755 --- a/packages/Webkul/Admin/src/Resources/views/sales/invoices/index.blade.php +++ b/packages/Webkul/Admin/src/Resources/views/sales/invoices/index.blade.php @@ -11,14 +11,14 @@

{{ __('admin::app.sales.invoices.title') }}

- {{--
+
{{ __('admin::app.export.export') }}
-
--}} +
@@ -27,25 +27,30 @@
- {{-- +

{{ __('admin::app.export.download') }}

-
--}} +
@stop @push('scripts') -{{-- --}} + @endpush \ No newline at end of file diff --git a/packages/Webkul/Admin/src/Resources/views/sales/orders/index.blade.php b/packages/Webkul/Admin/src/Resources/views/sales/orders/index.blade.php index 149b1eeff..994214274 100755 --- a/packages/Webkul/Admin/src/Resources/views/sales/orders/index.blade.php +++ b/packages/Webkul/Admin/src/Resources/views/sales/orders/index.blade.php @@ -11,14 +11,14 @@

{{ __('admin::app.sales.orders.title') }}

- {{--
+
{{ __('admin::app.export.export') }}
-
--}} +
@@ -27,25 +27,30 @@
- {{-- +

{{ __('admin::app.export.download') }}

-
--}} +
@stop @push('scripts') -{{-- --}} + - */ - public function sorting() - { - return $this->label; - if ($this->sortable) { - return vsprintf($this->sortHtml, [$this->sortingUrl(), $this->label]); - } else { - return $this->label; - } - } - - public function render($obj) - { - if (property_exists($obj, ($this->aliasing = $this->alias))) { - $this->value = $obj->{$this->aliasing}; - $this->wrap($obj); - } - return $this->value; - - } -} diff --git a/packages/Webkul/Ui/src/DataGrid/Helpers/Css.php b/packages/Webkul/Ui/src/DataGrid/Helpers/Css.php deleted file mode 100755 index c88a5fc47..000000000 --- a/packages/Webkul/Ui/src/DataGrid/Helpers/Css.php +++ /dev/null @@ -1,36 +0,0 @@ - @ysmnikhil - * @copyright 2018 Webkul Software Pvt Ltd (http://www.webkul.com) - */ - -class Css extends AbstractFillable -{ - const NO_RESULT = 'no-class'; - - protected $datagrid = 'datagrid'; - protected $table = 'table'; - protected $thead = 'thead'; - protected $thead_td = 'thead_td'; - protected $tbody = 'tbody'; - protected $tbody_td = 'tbody_td'; - - public function __construct($args) { - parent::__construct($args); - } - - protected function setFillable() { - $this->fillable = [ - 'datagrid', - 'table', - 'thead', - 'thead_td', - 'tbody', - 'tbody_td', - ]; - } -} diff --git a/packages/Webkul/Ui/src/DataGrid/Helpers/MassAction.php b/packages/Webkul/Ui/src/DataGrid/Helpers/MassAction.php deleted file mode 100755 index 924446e92..000000000 --- a/packages/Webkul/Ui/src/DataGrid/Helpers/MassAction.php +++ /dev/null @@ -1,36 +0,0 @@ - @prashant-webkul - * @copyright 2018 Webkul Software Pvt Ltd (http://www.webkul.com) - */ - -class MassAction -{ - public function validateSchemaMassAction($attributes) - { - $operations_validated = false; - $columns_validated = true; - foreach ($attributes['operations'] as $operation) { - if (array_key_exists('route', $operation) && array_key_exists('method', $operation) && array_key_exists('label', $operation) && array_key_exists('columns', $operation)) { - $operations_validated = true; - } - if ($operations_validated) { - foreach ($operation['columns'] as $column) { - if (array_key_exists('name', $operation) && array_key_exists('label', $operation) && array_key_exists('type', $operation)) { - $columns_validated = true; - } - } - } - } - if ($columns_validated && $operations_validated) { - return true; - } else { - throw new \Exception('Schema is invalid for mass actions'); - } - } -} diff --git a/packages/Webkul/Ui/src/DataGrid/Helpers/Pagination.php b/packages/Webkul/Ui/src/DataGrid/Helpers/Pagination.php deleted file mode 100755 index 003a42e9c..000000000 --- a/packages/Webkul/Ui/src/DataGrid/Helpers/Pagination.php +++ /dev/null @@ -1,37 +0,0 @@ - @ysmnikhil - * & - * @author Prashant Singh @prashant-webkul - * - * @copyright 2018 Webkul Software Pvt Ltd (http://www.webkul.com) - */ - -class Pagination extends Paginator -{ - const LIMIT = 10; - const OFFSET = 0; - const VIEW = ''; - - public function __construct( - int $limit = null, - int $offset = null, - int $view = null - ) { - $this->limit = $limit ?: self::LIMIT; - $this->offset = $offset ?: self::OFFSET; - $this->view = $view ?: self::VIEW; - - parent::__construct([ - - ], 20); - } -} diff --git a/packages/Webkul/Ui/src/Resources/views/datagrid/body.blade.php b/packages/Webkul/Ui/src/Resources/views/datagrid/body.blade.php index b09641667..8645199b4 100644 --- a/packages/Webkul/Ui/src/Resources/views/datagrid/body.blade.php +++ b/packages/Webkul/Ui/src/Resources/views/datagrid/body.blade.php @@ -17,15 +17,13 @@ $columnIndex = explode('.', $column['index']); $columnIndex = end($columnIndex); - - // dd($columnIndex); @endphp @if (isset($column['wrapper'])) @if (isset($column['closure']) && $column['closure'] == true) - {!! $column['wrapper']($record->{$columnIndex}) !!} + {!! $column['wrapper']($record) !!} @else - {{ $column['wrapper']($record->{$columnIndex}) }} + {{ $column['wrapper']($record) }} @endif @else @if($column['type'] == 'price') diff --git a/packages/Webkul/Ui/src/Resources/views/datagrid/head.blade.php b/packages/Webkul/Ui/src/Resources/views/datagrid/head.blade.php deleted file mode 100644 index d88375d15..000000000 --- a/packages/Webkul/Ui/src/Resources/views/datagrid/head.blade.php +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - @foreach ($columns as $key => $column) - {{ $column['label'] }} - @endforeach - - \ No newline at end of file diff --git a/packages/Webkul/Ui/src/Resources/views/datagrid/table.blade.php b/packages/Webkul/Ui/src/Resources/views/datagrid/table.blade.php index 5869dc75c..8033cf583 100644 --- a/packages/Webkul/Ui/src/Resources/views/datagrid/table.blade.php +++ b/packages/Webkul/Ui/src/Resources/views/datagrid/table.blade.php @@ -1,15 +1,15 @@
- + @if (config('datagrid.paginate')) @include('ui::datagrid.pagination', ['results' => $results['records']]) @endif @push('scripts') -