From 9901096a45c9bda51438dcc91d5feb8a590df0c3 Mon Sep 17 00:00:00 2001 From: Sukanya Pandey Date: Mon, 27 Jul 2020 21:44:47 +0530 Subject: Show total and filtered number of items in a table -The total number of items and the filtered items will be shown in the EventLogs, Sensors and HardwareStatus table. Signed-off-by: Sukanya Pandey Change-Id: I0ee6410bf675038a350a71a02ec076f9e8baf004 --- src/components/Global/TableCellCount.vue | 35 ++++++++++++++++++++++ src/locales/en-US.json | 2 ++ src/views/Health/EventLogs/EventLogs.vue | 29 +++++++++++++----- .../HardwareStatus/HardwareStatusTableDimmSlot.vue | 22 ++++++++++++-- .../HardwareStatus/HardwareStatusTableFans.vue | 21 +++++++++++-- .../HardwareStatusTablePowerSupplies.vue | 21 +++++++++++-- .../HardwareStatusTableProcessors.vue | 21 +++++++++++-- src/views/Health/Sensors/Sensors.vue | 24 +++++++++++++-- 8 files changed, 156 insertions(+), 19 deletions(-) create mode 100644 src/components/Global/TableCellCount.vue (limited to 'src') diff --git a/src/components/Global/TableCellCount.vue b/src/components/Global/TableCellCount.vue new file mode 100644 index 00000000..4f44ec29 --- /dev/null +++ b/src/components/Global/TableCellCount.vue @@ -0,0 +1,35 @@ + + + diff --git a/src/locales/en-US.json b/src/locales/en-US.json index f3eb3e2f..54f726ad 100644 --- a/src/locales/en-US.json +++ b/src/locales/en-US.json @@ -63,7 +63,9 @@ "emptyMessage": "No items available", "emptySearchMessage": "No items match the search query", "fromDate": "From date", + "items": "%{count} items", "itemsPerPage": "Items per page", + "selectedItems":"%{filterCount} of %{count} items", "toDate": "To date", "viewAll": "View all" } diff --git a/src/views/Health/EventLogs/EventLogs.vue b/src/views/Health/EventLogs/EventLogs.vue index dcede596..e7d4895a 100644 --- a/src/views/Health/EventLogs/EventLogs.vue +++ b/src/views/Health/EventLogs/EventLogs.vue @@ -2,18 +2,19 @@ - + - + + + + @@ -57,6 +58,7 @@ :per-page="perPage" :current-page="currentPage" :filter="searchFilter" + @filtered="onFiltered" @row-selected="onRowSelected($event, filteredLogs.length)" > @@ -145,6 +147,7 @@ import { omit } from 'lodash'; import PageTitle from '@/components/Global/PageTitle'; import StatusIcon from '@/components/Global/StatusIcon'; import Search from '@/components/Global/Search'; +import TableCellCount from '@/components/Global/TableCellCount'; import TableDateFilter from '@/components/Global/TableDateFilter'; import TableFilter from '@/components/Global/TableFilter'; import TableRowAction from '@/components/Global/TableRowAction'; @@ -166,6 +169,7 @@ export default { PageTitle, Search, StatusIcon, + TableCellCount, TableFilter, TableRowAction, TableToolbar, @@ -235,10 +239,16 @@ export default { ], filterStartDate: null, filterEndDate: null, - searchFilter: null + searchFilter: null, + searchTotalFilteredRows: 0 }; }, computed: { + filteredRows() { + return this.searchFilter + ? this.searchTotalFilteredRows + : this.filteredLogs.length; + }, allLogs() { return this.$store.getters['eventLog/allEvents'].map(event => { return { @@ -346,6 +356,9 @@ export default { onChangeSearchInput(searchValue) { this.searchFilter = searchValue; }, + onFiltered(filteredItems) { + this.searchTotalFilteredRows = filteredItems.length; + }, // Create export file name based on date exportFileNameByDate() { let date = new Date(); diff --git a/src/views/Health/HardwareStatus/HardwareStatusTableDimmSlot.vue b/src/views/Health/HardwareStatus/HardwareStatusTableDimmSlot.vue index 4fd077ba..97116ca2 100644 --- a/src/views/Health/HardwareStatus/HardwareStatusTableDimmSlot.vue +++ b/src/views/Health/HardwareStatus/HardwareStatusTableDimmSlot.vue @@ -4,6 +4,12 @@ + + +