From 9466f1095d51a68aba2a554179d80bb78d2a68d9 Mon Sep 17 00:00:00 2001 From: Matt Blenkinsop Date: Thu, 17 Oct 2024 11:34:23 +0000 Subject: [PATCH] Bug 37930: Modify AgreementsList and FormAdd to support new AV concept Test plan 1) Navigate to ERM module 2) Click into agreements, page should load as normal 3) Click New agreement, form should load as expected 4) Fill in the required fields - note that the Status field is correctly populated with authorised values 5) Save new agreeement 6) Note that the status column in the table is correctly populated --- .../vue/components/ERM/AgreementsFormAdd.vue | 46 +++++++++---------- .../js/vue/components/ERM/AgreementsList.vue | 13 +++--- .../prog/js/vue/components/ERM/Main.vue | 1 + .../intranet-tmpl/prog/js/vue/stores/main.js | 1 - 4 files changed, 29 insertions(+), 32 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsFormAdd.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsFormAdd.vue index f7e8d264127..02c9ef53b05 100644 --- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsFormAdd.vue +++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsFormAdd.vue @@ -51,7 +51,9 @@ v-model="agreement.status" label="description" :reduce="av => av.value" - :options="av_agreement_statuses" + :options=" + authorisedValues['av_agreement_statuses'] + " @option:selected="onStatusChanged" :required="!agreement.status" > @@ -75,7 +77,11 @@ v-model="agreement.closure_reason" label="description" :reduce="av => av.value" - :options="av_agreement_closure_reasons" + :options=" + authorisedValues[ + 'av_agreement_closure_reasons' + ] + " :disabled=" agreement.status == 'closed' ? false : true " @@ -117,7 +123,11 @@ v-model="agreement.renewal_priority" label="description" :reduce="av => av.value" - :options="av_agreement_renewal_priorities" + :options=" + authorisedValues[ + 'av_agreement_renewal_priorities' + ] + " />
  • @@ -141,21 +151,23 @@
    @@ -188,25 +200,11 @@ import { storeToRefs } from "pinia" export default { setup() { - const AVStore = inject("AVStore") - const { - av_agreement_statuses, - av_agreement_closure_reasons, - av_agreement_renewal_priorities, - av_user_roles, - av_agreement_license_statuses, - av_agreement_license_location, - av_agreement_relationships, - } = storeToRefs(AVStore) + const mainStore = inject("mainStore") + const { authorisedValues } = storeToRefs(mainStore) return { - av_agreement_statuses, - av_agreement_closure_reasons, - av_agreement_renewal_priorities, - av_user_roles, - av_agreement_license_statuses, - av_agreement_license_location, - av_agreement_relationships, + authorisedValues, max_allowed_packet, } }, diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsList.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsList.vue index e92bfeacc3b..5443a5f40d2 100644 --- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsList.vue +++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsList.vue @@ -72,13 +72,12 @@ export default { const vendorStore = inject("vendorStore") const { vendors } = storeToRefs(vendorStore) - const AVStore = inject("AVStore") - const { get_lib_from_av, map_av_dt_filter } = AVStore - - const { setConfirmationDialog, setMessage } = inject("mainStore") - - const { authorisedValues } = inject("ERMStore") - console.log(authorisedValues) + const { + setConfirmationDialog, + setMessage, + get_lib_from_av, + map_av_dt_filter, + } = inject("mainStore") const table = ref() diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/Main.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/Main.vue index b3c61e6c9a4..1d2a17eaa21 100644 --- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/Main.vue +++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/Main.vue @@ -91,6 +91,7 @@ export default { .then(config => { this.config = config if (this.config.settings.ERMModule != 1) { + this.loaded() return this.setError( this.$__( 'The e-resource management module is disabled, turn on ERMModule to use it' diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/stores/main.js b/koha-tmpl/intranet-tmpl/prog/js/vue/stores/main.js index bfa548840c8..97daf68301f 100644 --- a/koha-tmpl/intranet-tmpl/prog/js/vue/stores/main.js +++ b/koha-tmpl/intranet-tmpl/prog/js/vue/stores/main.js @@ -112,7 +112,6 @@ export const useMainStore = defineStore("main", { }); }, async loadAuthorisedValues(authorisedValues) { - console.log(authorisedValues); const AVsToFetch = Object.keys(authorisedValues).reduce( (acc, avKey) => { if (Array.isArray(authorisedValues[avKey])) return acc; -- 2.48.1