From 45be212a9bccf438eeba17b9b27cf11944f1ba36 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 643bb0acc46..39876a5deab 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 e75c769e9e1..73cf9f350c8 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 89c5f8f4219..80a8c4d9f61 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