From 65f1f20cc4e548a9258c201c6004e5a0d40087b6 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 bcbc9aeed01..45cb6d97033 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