mirror of
https://github.com/maybe-finance/maybe.git
synced 2025-07-25 16:19:40 +02:00
When unassigned accounts in CSV import, always allow new account creation
This commit is contained in:
parent
cd9f20747c
commit
a20809eee3
3 changed files with 19 additions and 6 deletions
|
@ -113,8 +113,12 @@ class Import < ApplicationRecord
|
||||||
cleaned? && mappings.all?(&:valid?)
|
cleaned? && mappings.all?(&:valid?)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def has_unassigned_account?
|
||||||
|
mappings.accounts.where(key: "").any?
|
||||||
|
end
|
||||||
|
|
||||||
def requires_account?
|
def requires_account?
|
||||||
family.accounts.empty? && mappings.accounts.where(key: "").any?
|
family.accounts.empty? && has_unassigned_account?
|
||||||
end
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
|
@ -3,12 +3,20 @@
|
||||||
<% mappings = mapping_class.for_import(import) %>
|
<% mappings = mapping_class.for_import(import) %>
|
||||||
<% is_last_step = step_idx == import.mapping_steps.count - 1 %>
|
<% is_last_step = step_idx == import.mapping_steps.count - 1 %>
|
||||||
|
|
||||||
<% if import.requires_account? && mapping_class == Import::AccountMapping %>
|
<% if mapping_class == Import::AccountMapping %>
|
||||||
<div class="flex items-center justify-between p-4 mb-4 gap-4 text-gray-500 bg-red-100 border border-red-200 rounded-lg w-[650px]">
|
<% if import.requires_account? %>
|
||||||
<%= tag.p t(".no_accounts"), class: "text-sm" %>
|
<div class="flex items-center justify-between p-4 mb-4 gap-4 text-gray-500 bg-red-100 border border-red-200 rounded-lg w-[650px]">
|
||||||
|
<%= tag.p t(".no_accounts"), class: "text-sm" %>
|
||||||
|
|
||||||
<%= link_to t(".create_account"), new_account_path, class: "btn btn--primary whitespace-nowrap", data: { turbo_frame: :modal } %>
|
<%= link_to t(".create_account"), new_account_path, class: "btn btn--primary whitespace-nowrap", data: { turbo_frame: :modal } %>
|
||||||
</div>
|
</div>
|
||||||
|
<% elsif import.has_unassigned_account? %>
|
||||||
|
<div class="flex items-center justify-between p-4 mb-4 gap-4 text-gray-500 bg-yellow-100 border border-yellow-200 rounded-lg w-[650px]">
|
||||||
|
<%= tag.p t(".unassigned_account"), class: "text-sm" %>
|
||||||
|
|
||||||
|
<%= link_to t(".create_account"), new_account_path, class: "btn btn--primary whitespace-nowrap", data: { turbo_frame: :modal } %>
|
||||||
|
</div>
|
||||||
|
<% end %>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
||||||
<div class="space-y-4">
|
<div class="space-y-4">
|
||||||
|
|
|
@ -18,6 +18,7 @@ en:
|
||||||
no_accounts: You don't have any accounts yet. Please create an account that
|
no_accounts: You don't have any accounts yet. Please create an account that
|
||||||
we can use for (unassigned) rows in your CSV or go back to the Clean step
|
we can use for (unassigned) rows in your CSV or go back to the Clean step
|
||||||
and provide an account name we can use.
|
and provide an account name we can use.
|
||||||
|
unassigned_account: Need to create a new account for unassigned rows?
|
||||||
rows_label: Rows
|
rows_label: Rows
|
||||||
show:
|
show:
|
||||||
account_mapping_description: Assign all of your imported file's accounts to
|
account_mapping_description: Assign all of your imported file's accounts to
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue