diff options
Diffstat (limited to 'src/views')
-rw-r--r-- | src/views/Logs/PostCodeLogs/PostCodeLogs.vue | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/src/views/Logs/PostCodeLogs/PostCodeLogs.vue b/src/views/Logs/PostCodeLogs/PostCodeLogs.vue index d116d2ed..a68047b3 100644 --- a/src/views/Logs/PostCodeLogs/PostCodeLogs.vue +++ b/src/views/Logs/PostCodeLogs/PostCodeLogs.vue @@ -22,6 +22,13 @@ <b-row> <b-col xl="12" class="text-right"> <b-button + variant="link" + :disabled="allLogs.length === 0" + @click="deleteAllLogs" + > + <icon-delete /> {{ $t('global.action.deleteAll') }} + </b-button> + <b-button variant="primary" :disabled="allLogs.length === 0" :download="exportFileNameByDate()" @@ -148,6 +155,7 @@ </template> <script> +import IconDelete from '@carbon/icons-vue/es/trash-can/20'; import IconDownload from '@carbon/icons-vue/es/download/20'; import IconExport from '@carbon/icons-vue/es/document--export/20'; import { omit } from 'lodash'; @@ -181,6 +189,7 @@ import SearchFilterMixin, { export default { components: { + IconDelete, IconExport, IconDownload, PageTitle, @@ -305,6 +314,23 @@ export default { }); }, methods: { + deleteAllLogs() { + this.$bvModal + .msgBoxConfirm(this.$t('pageEventLogs.modal.deleteAllMessage'), { + title: this.$t('pageEventLogs.modal.deleteAllTitle'), + okTitle: this.$t('global.action.delete'), + okVariant: 'danger', + cancelTitle: this.$t('global.action.cancel'), + }) + .then((deleteConfirmed) => { + if (deleteConfirmed) { + this.$store + .dispatch('postCodeLogs/deleteAllPostCodeLogs', this.allLogs) + .then((message) => this.successToast(message)) + .catch(({ message }) => this.errorToast(message)); + } + }); + }, exportAllLogsString() { { return this.$store.getters['postCodeLogs/allPostCodes'].map( |