mirror of
https://github.com/System-End/theseus.git
synced 2026-04-19 19:55:10 +00:00
allow taking amount from queue
This commit is contained in:
parent
6c4a23a035
commit
0bc70de3e5
3 changed files with 12 additions and 4 deletions
|
|
@ -65,8 +65,10 @@ class Letter::QueuesController < ApplicationController
|
|||
unless @letter_queue.letters.any?
|
||||
flash[:error] = "no letters?"
|
||||
redirect_to @letter_queue
|
||||
return
|
||||
end
|
||||
batch = @letter_queue.make_batch(user: current_user)
|
||||
limit = params[:limit].presence&.to_i
|
||||
batch = @letter_queue.make_batch(user: current_user, limit:)
|
||||
User::UpdateTasksJob.perform_now(current_user)
|
||||
flash[:success] = "now do something with it!"
|
||||
redirect_to process_letter_batch_path(batch, uft: @letter_queue.user_facing_title, template: @letter_queue.template)
|
||||
|
|
|
|||
|
|
@ -76,7 +76,7 @@ class Letter::Queue < ApplicationRecord
|
|||
letter
|
||||
end
|
||||
|
||||
def make_batch(user:)
|
||||
def make_batch(user:, limit: nil)
|
||||
ActiveRecord::Base.transaction do
|
||||
batch = letter_batches.build(
|
||||
aasm_state: :fields_mapped,
|
||||
|
|
@ -93,7 +93,9 @@ class Letter::Queue < ApplicationRecord
|
|||
user: user,
|
||||
)
|
||||
batch.save!
|
||||
letters.queued.each do |letter|
|
||||
queued_letters = letters.queued
|
||||
queued_letters = queued_letters.limit(limit) if limit.present?
|
||||
queued_letters.each do |letter|
|
||||
letter.batch_id = batch.id
|
||||
letter.batch_from_queue
|
||||
letter.save!
|
||||
|
|
|
|||
|
|
@ -88,7 +88,11 @@
|
|||
<%= render partial: 'batches/letters_collection', locals: { letters: @letters } %>
|
||||
<% if @letter_queue.letters.queued.any? %>
|
||||
<div class="mt-4">
|
||||
<%= button_to "make batch!", make_batch_from_letter_queue_path(@letter_queue), class: "btn success" %>
|
||||
<%= form_with url: make_batch_from_letter_queue_path(@letter_queue), method: :post, class: "inline-flex items-center gap-2" do |f| %>
|
||||
<%= f.label :limit, "take" %>
|
||||
<%= f.number_field :limit, min: 1, max: @letters.count, placeholder: "all", class: "w-20" %>
|
||||
<%= f.submit "make batch!", class: "btn success" %>
|
||||
<% end %>
|
||||
</div>
|
||||
<% end %>
|
||||
<hr/>
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue