修复bug#2485:项目--问题跟踪相关建议
This commit is contained in:
parent
2047f17191
commit
bfb0a43de1
|
@ -255,7 +255,7 @@ module QueriesHelper
|
||||||
# Give it a name, required to be valid
|
# Give it a name, required to be valid
|
||||||
@query = IssueQuery.new(:name => "_")
|
@query = IssueQuery.new(:name => "_")
|
||||||
@query.project = @project
|
@query.project = @project
|
||||||
params[:f] = %w(subject status_id priority_id author_id assigned_to_id) unless params[:status_id].nil?
|
params[:f] = %w(subject status_id priority_id author_id assigned_to_id created_on) unless params[:status_id].nil?
|
||||||
params[:op] = {'subject' => "~" ,
|
params[:op] = {'subject' => "~" ,
|
||||||
'status_id' => ( params[:status_id] == '0' ? "!":"=" ),
|
'status_id' => ( params[:status_id] == '0' ? "!":"=" ),
|
||||||
'priority_id' => ( params[:priority_id] == '0' ? "!":"=" ),
|
'priority_id' => ( params[:priority_id] == '0' ? "!":"=" ),
|
||||||
|
@ -266,6 +266,19 @@ module QueriesHelper
|
||||||
'priority_id' => [params[:priority_id]],
|
'priority_id' => [params[:priority_id]],
|
||||||
'author_id' => [params[:author_id]],
|
'author_id' => [params[:author_id]],
|
||||||
'assigned_to_id' => [params[:assigned_to_id]]} unless params[:status_id].nil?
|
'assigned_to_id' => [params[:assigned_to_id]]} unless params[:status_id].nil?
|
||||||
|
if(params[:status_id] != nil)
|
||||||
|
if( params[:issue_create_date_start]!=nil && params[:issue_create_date_start]!='' &&
|
||||||
|
params[:issue_create_date_end]!=nil && params[:issue_create_date_end]!='' )
|
||||||
|
params[:op][:created_on]='><'
|
||||||
|
params[:v][:created_on]=[params[:issue_create_date_start],params[:issue_create_date_end]]
|
||||||
|
elsif(params[:issue_create_date_start]!=nil && params[:issue_create_date_start]!='')
|
||||||
|
params[:op][:created_on]='>='
|
||||||
|
params[:v][:created_on]=[params[:issue_create_date_start]]
|
||||||
|
elsif(params[:issue_create_date_end]!=nil && params[:issue_create_date_end]!='')
|
||||||
|
params[:op][:created_on]='<='
|
||||||
|
params[:v][:created_on]=[params[:issue_create_date_end]]
|
||||||
|
end
|
||||||
|
end
|
||||||
@query.build_from_params(params)
|
@query.build_from_params(params)
|
||||||
#session[:query] = {:project_id => @query.project_id, :filters => @query.filters, :group_by => @query.group_by, :column_names => @query.column_names}
|
#session[:query] = {:project_id => @query.project_id, :filters => @query.filters, :group_by => @query.group_by, :column_names => @query.column_names}
|
||||||
# else
|
# else
|
||||||
|
|
|
@ -1,19 +1,38 @@
|
||||||
<script>
|
<script>
|
||||||
function remote_function() {
|
$(function(){
|
||||||
$.ajax({
|
$("input[nhtype='dateinput']").each(function(){
|
||||||
url:'<%= project_issues_path(@project)%>',
|
$(this).attr('readonly',true);
|
||||||
data:{
|
$(this).datepicker({
|
||||||
subject:$("#v_subject").attr("value").replace(/(^\s*)|(\s*$)/g, ""),
|
dateFormat: 'yy-mm-dd',
|
||||||
status_id: $("#status_id").attr("value").replace(/(^\s*)|(\s*$)/g, ""),
|
showButtonPanel: true,showClearButton: true,showTodayButton: true,
|
||||||
assigned_to_id: $("#assigned_to_id option:selected").attr("value").replace(/(^\s*)|(\s*$)/g, ""),
|
changeMonth: true,
|
||||||
priority_id: $("#priority_id option:selected").attr("value").replace(/(^\s*)|(\s*$)/g, ""),
|
changeYear: true
|
||||||
author_id: $("#author_id option:selected").attr("value").replace(/(^\s*)|(\s*$)/g, "")
|
});
|
||||||
},
|
$(this).change(function(){
|
||||||
success: function(data){
|
$("#issue_query_form").submit();
|
||||||
},
|
})
|
||||||
error: function(data){
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
});
|
||||||
|
function remote_function() {
|
||||||
|
$("#issue_query_form").submit();
|
||||||
|
// $.ajax({
|
||||||
|
// url:'<%#= project_issues_path(@project)%>',
|
||||||
|
// data:{
|
||||||
|
// subject:$("#v_subject").attr("value").replace(/(^\s*)|(\s*$)/g, ""),
|
||||||
|
// status_id: $("#status_id").attr("value").replace(/(^\s*)|(\s*$)/g, ""),
|
||||||
|
// assigned_to_id: $("#assigned_to_id option:selected").attr("value").replace(/(^\s*)|(\s*$)/g, ""),
|
||||||
|
// priority_id: $("#priority_id option:selected").attr("value").replace(/(^\s*)|(\s*$)/g, ""),
|
||||||
|
// author_id: $("#author_id option:selected").attr("value").replace(/(^\s*)|(\s*$)/g, "")
|
||||||
|
// },
|
||||||
|
// success: function(data){
|
||||||
|
// },
|
||||||
|
// error: function(data){
|
||||||
|
// }
|
||||||
|
// });
|
||||||
|
}
|
||||||
|
function nh_reset_form() {
|
||||||
|
$("#issue_query_form")[0].reset();
|
||||||
|
remote_function();
|
||||||
}
|
}
|
||||||
|
|
||||||
function EnterPress(e){
|
function EnterPress(e){
|
||||||
|
@ -31,41 +50,56 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="problem_top">
|
<div class="problem_top">
|
||||||
<% unless @project.enabled_modules.where("name = 'issue_tracking'").empty? %>
|
<% unless @project.enabled_modules.where("name = 'issue_tracking'").empty? %>
|
||||||
<%#= form_tag({:controller => 'issues', :action => 'index', :project_id => @project}, :method => :get,:id=>"issue_query_form", :class => 'query_form') do %>
|
<%= form_tag({:controller => 'issues', :action => 'index', :project_id => @project},:remote=>'true', :method => :get,:id=>"issue_query_form", :class => 'query_form') do %>
|
||||||
<%= hidden_field_tag 'set_filter', '1' %>
|
<%= hidden_field_tag 'set_filter', '1' %>
|
||||||
<div class="problem_search" >
|
<div class="problem_search" >
|
||||||
<input class="problem_search_input fl" id="v_subject" type="text" name="v[subject]" value="<%= @subject ? @subject : ""%>" onkeypress="EnterPress(event)" onkeydown="EnterPress()">
|
<input class="problem_search_input fl" id="v_subject" type="text" name="subject" value="<%= @subject ? @subject : ""%>" onkeypress="EnterPress(event)" onkeydown="EnterPress()">
|
||||||
<a href="javascript:void(0)" class="problem_search_btn fl" onclick="remote_function();" >搜索</a>
|
<a href="javascript:void(0)" class="problem_search_btn fl" onclick="remote_function();" >搜索</a>
|
||||||
|
<a href="javascript:void(0)" class="problem_search_btn fl" onclick="nh_reset_form();" >重置</a>
|
||||||
</div><!--problem_search end-->
|
</div><!--problem_search end-->
|
||||||
|
|
||||||
<div id="filter_form" class="fr" >
|
<div id="filter_form" class="fr" >
|
||||||
|
|
||||||
<%= select( :issue, :user_id, principals_options_for_isuue_list(@project),
|
<%= select( :issue, :user_id, principals_options_for_isuue_list(@project),
|
||||||
{ :include_blank => false,:selected=>@assign_to_id ? @assign_to_id : 0
|
{ :include_blank => false,:selected=>@assign_to_id ? @assign_to_id : 0
|
||||||
},
|
},
|
||||||
{:onchange=>"remote_function();",:id=>"assigned_to_id",:name=>"v[assigned_to_id]",:class=>"w90"}
|
{:onchange=>"remote_function();",:id=>"assigned_to_id",:name=>"assigned_to_id",:class=>"w90"}
|
||||||
)
|
)
|
||||||
%>
|
%>
|
||||||
<%= select( :issue,:prior, [["低",1],["正常",2],["高",3],["紧急",4],["立刻",5]].unshift(["优先级",0]),
|
<%= select( :issue,:prior, [["低",1],["正常",2],["高",3],["紧急",4],["立刻",5]].unshift(["优先级",0]),
|
||||||
{ :include_blank => false,:selected=>@priority_id ? @priority_id : 0
|
{ :include_blank => false,:selected=>@priority_id ? @priority_id : 0
|
||||||
},
|
},
|
||||||
{:onchange=>"remote_function();",:id=>"priority_id",:name=>"v[priority_id]",:class=>"w90"}
|
{:onchange=>"remote_function();",:id=>"priority_id",:name=>"priority_id",:class=>"w90"}
|
||||||
)
|
)
|
||||||
%>
|
%>
|
||||||
<%= select( :issue,:status, [["新增",1],["正在解决",2],["已解决",3],["反馈",4],["关闭",5],["拒绝",6]].unshift(["状态",0]),
|
<%= select( :issue,:status, [["新增",1],["正在解决",2],["已解决",3],["反馈",4],["关闭",5],["拒绝",6]].unshift(["状态",0]),
|
||||||
{ :include_blank => false,:selected=>@status_id ? @status_id : 0
|
{ :include_blank => false,:selected=>@status_id ? @status_id : 0
|
||||||
},
|
},
|
||||||
{:onchange=>"remote_function();",:id=>"status_id",:name=>"v[status_id]",:class=>"w90"}
|
{:onchange=>"remote_function();",:id=>"status_id",:name=>"status_id",:class=>"w90"}
|
||||||
)
|
)
|
||||||
%>
|
%>
|
||||||
<%= select( :issue,:user_id, @project.members.order("lower(users.login)").map{|c| [c.name, c.user_id]}.unshift(["作者",0]),
|
<%= select( :issue,:user_id, @project.members.order("lower(users.login)").map{|c| [c.name, c.user_id]}.unshift(["作者",0]),
|
||||||
{ :include_blank => false,:selected=>@author_id ? @author_id : 0
|
{ :include_blank => false,:selected=>@author_id ? @author_id : 0
|
||||||
},
|
},
|
||||||
{:onchange=>"remote_function();",:id=>"author_id",:name=>"v[author_id]",:class=>"w90"}
|
{:onchange=>"remote_function();",:id=>"author_id",:name=>"author_id",:class=>"w90"}
|
||||||
)
|
)
|
||||||
%>
|
%>
|
||||||
</div><!--filter_form end-->
|
</div><!--filter_form end-->
|
||||||
<div class="cl"></div>
|
<div class="cl"></div>
|
||||||
<%# end %>
|
<div>
|
||||||
|
<div style="float:left;">创建时间 : </div>
|
||||||
|
<div>
|
||||||
|
<%= text_field_tag 'issue_create_date_start', '', :size=>15, :onchange => "remote_function()",:style=>'float:left;'%>
|
||||||
|
<%= calendar_for('issue_create_date_start') %>
|
||||||
|
</div>
|
||||||
|
<div style="float:left;"> - </div>
|
||||||
|
<div>
|
||||||
|
<%= text_field_tag 'issue_create_date_end', '', :size=>15, :onchange => "remote_function()",:style=>'float:left;'%>
|
||||||
|
<%= calendar_for('issue_create_date_end') %>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="cl"></div>
|
||||||
|
<% end %>
|
||||||
<p class="problem_p fl" ><%= l(:label_issues_sum) %>:<a href="javascript:void(0)" class="c_red"><%= @project.issues.visible.all.count %></a>
|
<p class="problem_p fl" ><%= l(:label_issues_sum) %>:<a href="javascript:void(0)" class="c_red"><%= @project.issues.visible.all.count %></a>
|
||||||
<%= l(:lable_issues_undo) %>:<a href="javascript:void(0)" class="c_red"><%= @project.issues.where('status_id in (1,2,4,6)').visible.all.count %> </a>
|
<%= l(:lable_issues_undo) %>:<a href="javascript:void(0)" class="c_red"><%= @project.issues.where('status_id in (1,2,4,6)').visible.all.count %> </a>
|
||||||
</p>
|
</p>
|
||||||
|
|
Loading…
Reference in New Issue