Merge pull request #3128 from consul/fix_valuation_with_no_budgets
Fix crash in valuation when there are no budgets
This commit is contained in:
@@ -7,11 +7,9 @@ class Valuation::BudgetsController < Valuation::BaseController
|
||||
def index
|
||||
@budget = current_budget
|
||||
if @budget.present?
|
||||
@investments_with_valuation_open = {}
|
||||
@investments_with_valuation_open = @budget.investments
|
||||
.by_valuator(current_user.valuator.try(:id))
|
||||
.valuation_open
|
||||
.count
|
||||
@investments = @budget.investments
|
||||
.by_valuator(current_user.valuator)
|
||||
.valuation_open
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,30 +1,36 @@
|
||||
<h2 class="inline-block"><%= t("valuation.budgets.index.title") %></h2>
|
||||
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th><%= t("valuation.budgets.index.table_name") %></th>
|
||||
<th><%= t("valuation.budgets.index.table_phase") %></th>
|
||||
<th><%= t("valuation.budgets.index.table_assigned_investments_valuation_open") %></th>
|
||||
<th><%= t("valuation.budgets.index.table_actions") %></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr id="<%= dom_id(@budget) %>" class="budget">
|
||||
<td>
|
||||
<%= @budget.name %>
|
||||
</td>
|
||||
<td>
|
||||
<%= t("budgets.phase.#{@budget.phase}") %>
|
||||
</td>
|
||||
<td>
|
||||
<%= @investments_with_valuation_open %>
|
||||
</td>
|
||||
<td>
|
||||
<%= link_to t("valuation.budgets.index.evaluate"),
|
||||
valuation_budget_budget_investments_path(budget_id: @budget.id),
|
||||
class: "button hollow expanded" %>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<% if @budget.present? %>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th><%= t("valuation.budgets.index.table_name") %></th>
|
||||
<th><%= t("valuation.budgets.index.table_phase") %></th>
|
||||
<th><%= t("valuation.budgets.index.table_assigned_investments_valuation_open") %></th>
|
||||
<th><%= t("valuation.budgets.index.table_actions") %></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr id="<%= dom_id(@budget) %>" class="budget">
|
||||
<td>
|
||||
<%= @budget.name %>
|
||||
</td>
|
||||
<td>
|
||||
<%= t("budgets.phase.#{@budget.phase}") %>
|
||||
</td>
|
||||
<td>
|
||||
<%= @investments.count %>
|
||||
</td>
|
||||
<td>
|
||||
<%= link_to t("valuation.budgets.index.evaluate"),
|
||||
valuation_budget_budget_investments_path(budget_id: @budget.id),
|
||||
class: "button hollow expanded" %>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<% else %>
|
||||
<div class="callout primary clear">
|
||||
<%= t("valuation.budgets.index.no_budgets") %>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
@@ -17,6 +17,7 @@ en:
|
||||
table_assigned_investments_valuation_open: Investment projects assigned with valuation open
|
||||
table_actions: Actions
|
||||
evaluate: Evaluate
|
||||
no_budgets: "There are no budgets"
|
||||
budget_investments:
|
||||
index:
|
||||
headings_filter_all: All headings
|
||||
|
||||
@@ -17,6 +17,7 @@ es:
|
||||
table_assigned_investments_valuation_open: Prop. Inv. asignadas en evaluación
|
||||
table_actions: Acciones
|
||||
evaluate: Evaluar
|
||||
no_budgets: "No hay presupuestos"
|
||||
budget_investments:
|
||||
index:
|
||||
headings_filter_all: Todas las partidas
|
||||
|
||||
@@ -35,6 +35,11 @@ feature 'Valuation budgets' do
|
||||
expect(page).to have_content(budget3.name)
|
||||
end
|
||||
|
||||
scenario "With no budgets" do
|
||||
visit valuation_budgets_path
|
||||
|
||||
expect(page).to have_content "There are no budgets"
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user