From a18e3f97fe9aa818a82be4c7d34dbeb914166e0c Mon Sep 17 00:00:00 2001 From: Pedro Amorim Date: Thu, 17 Oct 2024 11:48:23 +0000 Subject: [PATCH] Bug 37301: Apply changes to eHoldings local packages --- .../ERM/EHoldingsLocalPackageResource.vue | 30 +++++++++ .../ERM/EHoldingsLocalPackagesList.vue | 63 +++---------------- .../ERM/EHoldingsLocalPackagesShow.vue | 56 +++-------------- 3 files changed, 49 insertions(+), 100 deletions(-) create mode 100644 koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsLocalPackageResource.vue diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsLocalPackageResource.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsLocalPackageResource.vue new file mode 100644 index 0000000000..65713bc92a --- /dev/null +++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsLocalPackageResource.vue @@ -0,0 +1,30 @@ + diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsLocalPackagesList.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsLocalPackagesList.vue index 29f446bb49..71b2389bd3 100644 --- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsLocalPackagesList.vue +++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsLocalPackagesList.vue @@ -4,8 +4,8 @@
@@ -17,9 +17,9 @@
@@ -36,8 +36,10 @@ import { inject, ref, reactive } from "vue" import { storeToRefs } from "pinia" import { APIClient } from "../../fetch/api-client.js" import KohaTable from "../KohaTable.vue" +import EHoldingsLocalPackageResource from "./EHoldingsLocalPackageResource.vue" export default { + extends: EHoldingsLocalPackageResource, setup() { const vendorStore = inject("vendorStore") const { vendors } = storeToRefs(vendorStore) @@ -45,8 +47,6 @@ export default { const AVStore = inject("AVStore") const { get_lib_from_av, map_av_dt_filter } = AVStore - const { setConfirmationDialog, setMessage } = inject("mainStore") - const table = ref() const filters = reactive({ package_name: "", @@ -54,13 +54,12 @@ export default { }) return { + ...EHoldingsLocalPackageResource.setup(), vendors, get_lib_from_av, map_av_dt_filter, table, filters, - setConfirmationDialog, - setMessage, escape_str, eholdings_packages_table_settings, } @@ -76,7 +75,7 @@ export default { initialized: false, tableOptions: { columns: this.getTableColumns(), - url: "/api/v1/erm/eholdings/local/packages", + url: this.getResourceTableUrl(), options: { embed: "resources+count,vendor.name", searchCols: [ @@ -122,46 +121,6 @@ export default { error => {} ) }, - doShow: function ({ package_id }, dt, event) { - event.preventDefault() - this.$router.push({ - name: "EHoldingsLocalPackagesShow", - params: { package_id }, - }) - }, - doEdit: function ({ package_id }, dt, event) { - this.$router.push({ - name: "EHoldingsLocalPackagesFormAddEdit", - params: { package_id }, - }) - }, - doDelete: function (erm_package, dt, event) { - this.setConfirmationDialog( - { - title: this.$__( - "Are you sure you want to remove this package?" - ), - message: erm_package.name, - accept_label: this.$__("Yes, delete"), - cancel_label: this.$__("No, do not delete"), - }, - () => { - const client = APIClient.erm - client.localPackages.delete(erm_package.package_id).then( - success => { - this.setMessage( - this.$__("Local package %s deleted").format( - erm_package.name - ), - true - ) - dt.draw() - }, - error => {} - ) - } - ) - }, getTableColumns: function () { let get_lib_from_av = this.get_lib_from_av let escape_str = this.escape_str @@ -173,9 +132,7 @@ export default { orderable: true, render: function (data, type, row, meta) { return ( - '' + + '' + escape_str(`${row.name} (#${row.package_id})`) + "" ) diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsLocalPackagesShow.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsLocalPackagesShow.vue index b864affc4e..ace5ac8c76 100644 --- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsLocalPackagesShow.vue +++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsLocalPackagesShow.vue @@ -3,21 +3,13 @@
+ - {{ $__("Delete") }}

@@ -120,21 +112,20 @@ import EHoldingsPackageTitlesList from "./EHoldingsLocalPackageTitlesList.vue" import { APIClient } from "../../fetch/api-client.js" import Toolbar from "../Toolbar.vue" import ToolbarButton from "../ToolbarButton.vue" +import EHoldingsLocalPackageResource from "./EHoldingsLocalPackageResource.vue" export default { + extends: EHoldingsLocalPackageResource, setup() { const format_date = $date - const { setConfirmationDialog, setMessage } = inject("mainStore") - const AVStore = inject("AVStore") const { get_lib_from_av } = AVStore return { + ...EHoldingsLocalPackageResource.setup(), format_date, get_lib_from_av, - setConfirmationDialog, - setMessage, } }, data() { @@ -172,35 +163,6 @@ export default { error => {} ) }, - delete_package: function (package_id, package_name) { - this.setConfirmationDialog( - { - title: this.$__( - "Are you sure you want to remove this package?" - ), - message: package_name, - accept_label: this.$__("Yes, delete"), - cancel_label: this.$__("No, do not delete"), - }, - () => { - const client = APIClient.erm - client.localPackages.delete(package_id).then( - success => { - this.setMessage( - this.$__("Local package %s deleted").format( - package_name - ), - true - ) - this.$router.push({ - name: "EHoldingsLocalPackagesList", - }) - }, - error => {} - ) - } - ) - }, }, components: { EHoldingsPackageTitlesList, -- 2.39.5