From ce0dd15a3e6aa49f2b61d793b49455838ad2a049 Mon Sep 17 00:00:00 2001 From: Matt Blenkinsop Date: Wed, 17 Apr 2024 16:23:33 +0000 Subject: [PATCH] Bug 36627: Record who is importing sushi data This patch adds functionality for storing the patron (or cronjob) that triggers a harvest. Currently every counter log is stored as being imported by the cronjob Test plan: 1) In the usage statistics module in ERM, create a data provider (the details in the provider are not important) 2) Click into the provider and click into manual upload 3) Upload the file attached to this bug 4) Once the background job is completed click into the counter logs tab in the provider. The imported by columns should show a user with a clickable link Signed-off-by: Pedro Amorim --- Koha/ERM/EUsage/CounterFile.pm | 5 ++++- .../ERM/UsageStatisticsDataProvidersCounterLogs.vue | 11 +++++++---- misc/cronjobs/erm_run_harvester.pl | 2 +- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/Koha/ERM/EUsage/CounterFile.pm b/Koha/ERM/EUsage/CounterFile.pm index 0836455251b..2d5d80f15cd 100644 --- a/Koha/ERM/EUsage/CounterFile.pm +++ b/Koha/ERM/EUsage/CounterFile.pm @@ -35,6 +35,8 @@ use Koha::ERM::EUsage::UsageDataProvider; use Koha::ERM::EUsage::SushiCounter; use Koha::Exceptions::ERM::EUsage::CounterFile; +use C4::Context; + use base qw(Koha::Object); use Koha::ERM::EUsage::CounterLogs; @@ -558,10 +560,11 @@ Adds a erm_counter_logs database entry sub _add_counter_log_entry { my ($self) = @_; + my $user = C4::Context->userenv()->{'number'}; Koha::ERM::EUsage::CounterLog->new( { #TODO: borrowernumber only required for manual uploads or "harvest now" button clicks - borrowernumber => undef, + borrowernumber => $user, counter_files_id => $self->erm_counter_files_id, importdate => $self->date_uploaded, filename => $self->filename, diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/UsageStatisticsDataProvidersCounterLogs.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/UsageStatisticsDataProvidersCounterLogs.vue index 0a1fef8bf4c..79769dcdcac 100644 --- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/UsageStatisticsDataProvidersCounterLogs.vue +++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/UsageStatisticsDataProvidersCounterLogs.vue @@ -40,7 +40,9 @@ export default { building_table: false, tableOptions: { columns: this.getTableColumns(), - options: {}, + options: { + embed: "borrowernumber", + }, url: () => this.table_url(), table_settings: this.counter_log_table_settings, add_filters: true, @@ -137,9 +139,10 @@ export default { { title: __("Imported by"), render: function (data, type, row, meta) { - const importer = row.borrowernumber - ? `Borrowernumber ${row.borrowernumber}` - : __("Cronjob") + const borrower = row.borrowernumber + const importer = borrower + ? `${borrower.firstname} ${borrower.surname}` + : this.$__("Cronjob") return importer }, searchable: true, diff --git a/misc/cronjobs/erm_run_harvester.pl b/misc/cronjobs/erm_run_harvester.pl index fa8f0b3828d..6a76281cd36 100755 --- a/misc/cronjobs/erm_run_harvester.pl +++ b/misc/cronjobs/erm_run_harvester.pl @@ -22,7 +22,7 @@ use Getopt::Long qw( GetOptions ); use Koha::DateUtils qw( dt_from_string ); use POSIX; -use Koha::Script; +use Koha::Script -cron; use Koha::ERM::EUsage::UsageDataProviders; # Command line option values -- 2.39.3 (Apple Git-146)