From 034e104104212fba5b44574ce888326c8bd0e94d 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 Signed-off-by: Brendan Gallagher --- .../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 643bb0acc4..39876a5dea 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 5c4bbbf012..257e1a79e8 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 af4feeaf37..61785e71fc 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 bfa548840c..97daf68301 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.39.5