git-svn-id: http://redmine.rubyforge.org/svn/trunk@1052 e93f8b46-1217-0410-a6f0-8f06a7374b81tags/0.7.0-RC1
@@ -47,6 +47,12 @@ class ReportsController < ApplicationController | |||
@data = issues_by_category | |||
@report_title = l(:field_category) | |||
render :template => "reports/issue_report_details" | |||
when "assigned_to" | |||
@field = "assigned_to_id" | |||
@rows = @project.members.collect { |m| m.user } | |||
@data = issues_by_assigned_to | |||
@report_title = l(:field_assigned_to) | |||
render :template => "reports/issue_report_details" | |||
when "author" | |||
@field = "author_id" | |||
@rows = @project.members.collect { |m| m.user } | |||
@@ -64,12 +70,14 @@ class ReportsController < ApplicationController | |||
@versions = @project.versions.sort | |||
@priorities = Enumeration::get_values('IPRI') | |||
@categories = @project.issue_categories | |||
@assignees = @project.members.collect { |m| m.user } | |||
@authors = @project.members.collect { |m| m.user } | |||
@subprojects = @project.active_children | |||
issues_by_tracker | |||
issues_by_version | |||
issues_by_priority | |||
issues_by_category | |||
issues_by_assigned_to | |||
issues_by_author | |||
issues_by_subproject | |||
@@ -180,7 +188,22 @@ private | |||
and i.project_id=#{@project.id} | |||
group by s.id, s.is_closed, c.id") | |||
end | |||
def issues_by_assigned_to | |||
@issues_by_assigned_to ||= | |||
ActiveRecord::Base.connection.select_all("select s.id as status_id, | |||
s.is_closed as closed, | |||
a.id as assigned_to_id, | |||
count(i.id) as total | |||
from | |||
#{Issue.table_name} i, #{IssueStatus.table_name} s, #{User.table_name} a | |||
where | |||
i.status_id=s.id | |||
and i.assigned_to_id=a.id | |||
and i.project_id=#{@project.id} | |||
group by s.id, s.is_closed, a.id") | |||
end | |||
def issues_by_author | |||
@issues_by_author ||= | |||
ActiveRecord::Base.connection.select_all("select s.id as status_id, |
@@ -4,8 +4,11 @@ | |||
<h3><%=l(:field_tracker)%> <%= link_to image_tag('zoom_in.png'), :detail => 'tracker' %></h3> | |||
<%= render :partial => 'simple', :locals => { :data => @issues_by_tracker, :field_name => "tracker_id", :rows => @trackers } %> | |||
<br /> | |||
<h3><%=l(:field_version)%> <%= link_to image_tag('zoom_in.png'), :detail => 'version' %></h3> | |||
<%= render :partial => 'simple', :locals => { :data => @issues_by_version, :field_name => "fixed_version_id", :rows => @versions } %> | |||
<h3><%=l(:field_priority)%> <%= link_to image_tag('zoom_in.png'), :detail => 'priority' %></h3> | |||
<%= render :partial => 'simple', :locals => { :data => @issues_by_priority, :field_name => "priority_id", :rows => @priorities } %> | |||
<br /> | |||
<h3><%=l(:field_assigned_to)%> <%= link_to image_tag('zoom_in.png'), :detail => 'assigned_to' %></h3> | |||
<%= render :partial => 'simple', :locals => { :data => @issues_by_assigned_to, :field_name => "assigned_to_id", :rows => @assignees } %> | |||
<br /> | |||
<h3><%=l(:field_author)%> <%= link_to image_tag('zoom_in.png'), :detail => 'author' %></h3> | |||
<%= render :partial => 'simple', :locals => { :data => @issues_by_author, :field_name => "author_id", :rows => @authors } %> | |||
@@ -13,8 +16,8 @@ | |||
</div> | |||
<div class="splitcontentright"> | |||
<h3><%=l(:field_priority)%> <%= link_to image_tag('zoom_in.png'), :detail => 'priority' %></h3> | |||
<%= render :partial => 'simple', :locals => { :data => @issues_by_priority, :field_name => "priority_id", :rows => @priorities } %> | |||
<h3><%=l(:field_version)%> <%= link_to image_tag('zoom_in.png'), :detail => 'version' %></h3> | |||
<%= render :partial => 'simple', :locals => { :data => @issues_by_version, :field_name => "fixed_version_id", :rows => @versions } %> | |||
<br /> | |||
<% if @project.children.any? %> | |||
<h3><%=l(:field_subproject)%> <%= link_to image_tag('zoom_in.png'), :detail => 'subproject' %></h3> |