mirror of
https://github.com/scinote-eln/scinote-web.git
synced 2025-11-01 09:07:21 +08:00
Fix repository selection in reports [SCI-7167]
This commit is contained in:
parent
f62e4e8509
commit
7d02b9f26d
4 changed files with 11 additions and 10 deletions
|
|
@ -1020,7 +1020,7 @@ function reportHandsonTableConverter() {
|
|||
});
|
||||
|
||||
// Project content
|
||||
reportData.project_content = { experiments: [], repositories: [] };
|
||||
reportData.project_content = { experiments: [] };
|
||||
$.each($('.project-contents-container .experiment-element'), function(i, experiment) {
|
||||
let expCheckbox = $(experiment).find('.report-experiment-checkbox');
|
||||
if (!expCheckbox.prop('checked') && !expCheckbox.prop('indeterminate')) return;
|
||||
|
|
@ -1034,10 +1034,6 @@ function reportHandsonTableConverter() {
|
|||
reportData.project_content.experiments.push(experimentData);
|
||||
});
|
||||
|
||||
$.each($('.task-contents-container .repositories-contents .repositories-setting:checked'), function(i, e) {
|
||||
reportData.project_content.repositories.push(parseInt(e.value, 10));
|
||||
});
|
||||
|
||||
// Settings
|
||||
reportData.report.settings.template = dropdownSelector.getValues('#templateSelector');
|
||||
reportData.report.settings.all_tasks = $('.project-contents-container .select-all-my-modules-checkbox')
|
||||
|
|
@ -1048,6 +1044,10 @@ function reportHandsonTableConverter() {
|
|||
$.each($('.task-contents-container .content-element .task-setting'), function(i, e) {
|
||||
reportData.report.settings.task[e.value] = e.checked;
|
||||
});
|
||||
reportData.report.settings.task.repositories = [];
|
||||
$.each($('.task-contents-container .repositories-contents .repositories-setting:checked'), function(i, e) {
|
||||
reportData.report.settings.task.repositories.push(parseInt(e.value, 10));
|
||||
});
|
||||
|
||||
reportData.report.settings.task.result_order = dropdownSelector.getValues('#taskResultsOrder');
|
||||
|
||||
|
|
|
|||
|
|
@ -109,7 +109,7 @@ class ReportsController < ApplicationController
|
|||
@project_contents = {
|
||||
experiments: @report.report_elements.order(:position).experiment.pluck(:experiment_id),
|
||||
my_modules: @report.report_elements.order(:position).my_module.pluck(:my_module_id),
|
||||
repositories: @report.report_elements.my_module_repository.distinct(:repository_id).pluck(:repository_id)
|
||||
repositories: @report.settings.dig(:task, :repositories)
|
||||
}
|
||||
render :new
|
||||
end
|
||||
|
|
|
|||
|
|
@ -53,7 +53,8 @@ class Report < ApplicationRecord
|
|||
text_results: true,
|
||||
result_comments: true,
|
||||
result_order: 'atoz',
|
||||
activities: true
|
||||
activities: true,
|
||||
repositories: []
|
||||
}
|
||||
}.freeze
|
||||
|
||||
|
|
|
|||
|
|
@ -14,9 +14,7 @@ module ReportActions
|
|||
@element_position = 0
|
||||
@report = report
|
||||
@template_values = template_values
|
||||
@repositories = report.project
|
||||
.assigned_repositories_and_snapshots
|
||||
.select { |repository| @content['repositories'].include?(repository.id) }
|
||||
@repositories = @settings.dig(:task, :repositories)
|
||||
end
|
||||
|
||||
def save_with_content
|
||||
|
|
@ -84,6 +82,8 @@ module ReportActions
|
|||
my_module_element = save_element!({ 'my_module_id' => my_module.id }, :my_module, experiment_element)
|
||||
|
||||
my_module.live_and_snapshot_repositories_list.each do |repository|
|
||||
next unless @repositories.include?(repository.id)
|
||||
|
||||
save_element!(
|
||||
{ 'my_module_id' => my_module.id, 'repository_id' => repository.id },
|
||||
:my_module_repository,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue