|
@@ -39,6 +39,22 @@
|
|
</td>
|
|
</td>
|
|
</template>
|
|
</template>
|
|
</shared-logs-table>
|
|
</shared-logs-table>
|
|
|
|
+ <div class="flex items-center justify-between mt-4">
|
|
|
|
+ <div>
|
|
|
|
+ Showing
|
|
|
|
+ <select v-model="pagination.perPage" class="p-1 rounded-md bg-input">
|
|
|
|
+ <option v-for="num in [10, 15, 25, 50, 100]" :key="num" :value="num">
|
|
|
|
+ {{ num }}
|
|
|
|
+ </option>
|
|
|
|
+ </select>
|
|
|
|
+ items out of {{ filteredLogs.length }}
|
|
|
|
+ </div>
|
|
|
|
+ <ui-pagination
|
|
|
|
+ v-model="pagination.currentPage"
|
|
|
|
+ :per-page="pagination.perPage"
|
|
|
|
+ :records="filteredLogs.length"
|
|
|
|
+ />
|
|
|
|
+ </div>
|
|
<ui-card
|
|
<ui-card
|
|
v-if="selectedLogs.length !== 0"
|
|
v-if="selectedLogs.length !== 0"
|
|
class="fixed right-0 bottom-0 m-5 shadow-xl space-x-2"
|
|
class="fixed right-0 bottom-0 m-5 shadow-xl space-x-2"
|
|
@@ -73,6 +89,10 @@ const store = useStore();
|
|
const dialog = useDialog();
|
|
const dialog = useDialog();
|
|
|
|
|
|
const selectedLogs = ref([]);
|
|
const selectedLogs = ref([]);
|
|
|
|
+const pagination = shallowReactive({
|
|
|
|
+ perPage: 10,
|
|
|
|
+ currentPage: 1,
|
|
|
|
+});
|
|
const filtersBuilder = shallowReactive({
|
|
const filtersBuilder = shallowReactive({
|
|
query: '',
|
|
query: '',
|
|
byDate: 0,
|
|
byDate: 0,
|
|
@@ -87,7 +107,7 @@ const exportDataModal = shallowReactive({
|
|
log: {},
|
|
log: {},
|
|
});
|
|
});
|
|
|
|
|
|
-const logs = computed(() =>
|
|
|
|
|
|
+const filteredLogs = computed(() =>
|
|
Log.query()
|
|
Log.query()
|
|
.where(({ name, status, startedAt }) => {
|
|
.where(({ name, status, startedAt }) => {
|
|
let statusFilter = true;
|
|
let statusFilter = true;
|
|
@@ -111,6 +131,12 @@ const logs = computed(() =>
|
|
.orderBy(sortsBuilder.by, sortsBuilder.order)
|
|
.orderBy(sortsBuilder.by, sortsBuilder.order)
|
|
.get()
|
|
.get()
|
|
);
|
|
);
|
|
|
|
+const logs = computed(() =>
|
|
|
|
+ filteredLogs.value.slice(
|
|
|
|
+ (pagination.currentPage - 1) * pagination.perPage,
|
|
|
|
+ pagination.currentPage * pagination.perPage
|
|
|
|
+ )
|
|
|
|
+);
|
|
|
|
|
|
function deleteLog(id) {
|
|
function deleteLog(id) {
|
|
Log.delete(id).then(() => {
|
|
Log.delete(id).then(() => {
|