issue
This commit is contained in:
parent
7dc0ba005e
commit
bb0833c054
|
@ -1,192 +1,171 @@
|
||||||
<%= content_for(:header_tags) do %>
|
|
||||||
<%= import_ke(enable_at: true,init_activity: true) %>
|
|
||||||
<% end %>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
$(function(){
|
|
||||||
$("#RSide").removeAttr("id");
|
|
||||||
$("#Container").css("width","1000px");
|
|
||||||
$("input[nhname='date_show']").change(function(){
|
|
||||||
if($(this).val()=='创建日期起始' || $(this).val()=='创建日期结束')return;
|
|
||||||
$("input[nhname='date_val']",$(this).parent('div')).val($(this).val());
|
|
||||||
remote_function();
|
|
||||||
});
|
|
||||||
|
|
||||||
});
|
|
||||||
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();
|
|
||||||
$("input[nhname='date_val']").val('');//涛哥的火狐reset 清不掉这个值 我擦
|
|
||||||
remote_function();
|
|
||||||
}
|
|
||||||
|
|
||||||
function EnterPress(e){
|
|
||||||
var e = e || window.event;
|
|
||||||
if(e.keyCode == 13){
|
|
||||||
remote_function();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</script>
|
|
||||||
<div class="homepageRight mt0 ml10" >
|
<div class="homepageRight mt0 ml10" >
|
||||||
<div class="homepageRightBanner">
|
<div class="issues_con fl">
|
||||||
<div class="NewsBannerName"><%= l(:label_issue_tracking) %></div>
|
<div class="clear mb5">
|
||||||
|
<a href="<%= new_project_issue_path(@project)%>" class="sy_btn_green fl mr10">新 增</a>
|
||||||
|
<div class="issues_statistics fl">
|
||||||
|
<ul>
|
||||||
|
<li>所有<a class="issues_greycirbg_btn "><%= @issues_filter.count %></a></li>
|
||||||
|
<li>开启<a class="issues_greycirbg_btn "><%#= @issues_filter_assign_count %><%= @issue_open_count %></a></li>
|
||||||
|
<li>关闭<a class="issues_greycirbg_btn "><%#= @issues_filter_author_count %><%= @issue_close_count %></a></li>
|
||||||
|
</ul>
|
||||||
|
</div><!--issues_statistics end-->
|
||||||
|
<!--<input type="button" class="hw_btn_blue fr" value="导出EXCEL" onclick="remote_function_export('<%#= @project.id %>')">-->
|
||||||
|
<a href="<%=project_issues_path(:project_id => @project, :format => 'xls', :export => true, :set_filter => "1")%>" id="sendexcel" class="hw_btn_blue fr" alt="导出EXCEL" onclick="remote_function_export('<%= @project.id %>')">导出EXCEL</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="resources mt10" >
|
|
||||||
<% 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},:remote=>'true', :method => :get,:id=>"issue_query_form", :class => 'query_form') do %>
|
<%= form_tag({:controller => 'issues', :action => 'index', :project_id => @project},:remote=>'xls', :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 fr" >
|
<%= hidden_field_tag 'export_issue_hidden', '0' %>
|
||||||
<input class="problem_search_input fl" id="v_subject" type="text" name="subject" placeholder="请输入问题名称" onkeypress="EnterPress(event)" onkeydown="EnterPress()">
|
<!--<input id="exprot_issues_hidden" value="0" type="hidden">-->
|
||||||
<a href="javascript:void(0)" class="problem_search_btn fl" onclick="remote_function();" >搜索</a>
|
<div class="clear mb10">
|
||||||
<a href="javascript:void(0)" class="grey_btn fl ml10 f14" onclick="nh_reset_form();" >清空</a>
|
<div class="hw_search_box fl ">
|
||||||
</div><!--problem_search end-->
|
<input class="hw_search-input" placeholder="请输入问题名称" type="text" id="v_subject" name="subject" onkeypress="EnterPress(event)" onkeydown="EnterPress()">
|
||||||
<%#= link_to '新建问题', new_project_issue_path(@project) , :class => "green_u_btn fr ml10" %>
|
<a href="javascript:void(0);" class="hw_btn_search" onclick="remote_function();" ></a>
|
||||||
<p class="problem_p fl" ><%= l(:label_issues_sum) %>:<a href="javascript:void(0)" class="c_red"><%= @project.project_score.issue_num %></a>
|
</div>
|
||||||
<%= 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>
|
<a href="javascript:void(0);" class="sy_btn_grey fl ml5" onclick="all_reset_form();">清除</a>
|
||||||
</p>
|
|
||||||
|
|
||||||
|
<div class="calendar_div fr">
|
||||||
|
<input id="issue_date_end_issue_export" name="issue_create_date_end" nhname="date_val" type="hidden"/>
|
||||||
|
<input type="text" nhname="date_show" id="issue_create_date_end_show" class="InputBox fl W120 calendar_input" readonly="readonly" size="13" placeholder="结束日期">
|
||||||
|
<%= calendar_for('issue_create_date_end_show')%>
|
||||||
|
</div>
|
||||||
|
<div class="calendar_div fr">
|
||||||
|
<input id="issue_date_start_issue_export" name="issue_create_date_start" nhname="date_val" type="hidden"/>
|
||||||
|
<input type="text" nhname="date_show" id="issue_create_date_start_show" class="InputBox fl W120 calendar_input" readonly="readonly" size="13" placeholder="开始日期">
|
||||||
|
<%= calendar_for('issue_create_date_start_show')%>
|
||||||
|
</div>
|
||||||
|
<!--<input type="text" placeholder="开始日期" class="issues_calendar_input fl " ><a href="" class="issues_data_img fl" style="border-right:none;"></a>-->
|
||||||
|
<!--<input type="text" placeholder="结束日期" class="issues_calendar_input fl " ><a href="" class="issues_data_img fl"></a>-->
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="issues_con_list" style="position: relative;">
|
||||||
|
<ul id="issues_list_nav" >
|
||||||
|
<li id="issues_list_nav_1" onclick="HoverLi(1);all_reset_form();">
|
||||||
|
<a href="javascript:void(0);" onclick="all_reset_form();" id="issues_type_1" >所有</a>
|
||||||
|
<span id="issue_filter_all"><%= render :partial => "issues/issue_filter_all" %></span>
|
||||||
|
</li>
|
||||||
|
<!--li id="issues_list_nav_2" onclick="HoverLi(2);">
|
||||||
|
<a href="javascript:void(0);" onclick="switch_assign_to(<%#= User.current.id %>)" id="issues_type_2" >指派给我
|
||||||
|
<span id="issue_assigned_count"><%#= render :partial => "issues/issue_filter" %></span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li id="issues_list_nav_3" onclick="HoverLi(3);">
|
||||||
|
<a href="javascript:void(0);" onclick="createByMe(<%#= User.current.id %>)" id="issues_type_3" >我的发布
|
||||||
|
<span id="issue_author_count"><%#= render :partial => "issues/issue_filter_author" %></span>
|
||||||
|
</a>
|
||||||
|
</li-->
|
||||||
<div class="cl"></div>
|
<div class="cl"></div>
|
||||||
<div id="filter_form" class="fl">
|
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="issues_filter ">
|
||||||
|
<div class="issues_form_filter mt5 mr5">
|
||||||
|
|
||||||
|
<%= select(:issue, :tracker, [["缺陷",1],["功能",2],["支持",3],["任务",4],["周报",5]].unshift(["类型",0]),
|
||||||
|
{:include_blank => false, :selected => @tracker_id ? @tracker_id : 0},
|
||||||
|
{:onchange => "remote_function();", :id => "tracker_id", :name => "tracker_id", :class => "fl issues_filter_select_min"}) %>
|
||||||
|
|
||||||
|
<%#= 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},
|
||||||
|
{:onchange=>"remote_function();",:id=>"author_id",:name=>"author_id",:class=>"fl "}
|
||||||
|
)
|
||||||
|
%>
|
||||||
|
|
||||||
<%= 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=>"assigned_to_id",:class=>"w90 mr18"}
|
{:onchange=>"remote_function();",:id=>"assigned_to_id",:name=>"assigned_to_id",:class=>"fl"}
|
||||||
)
|
|
||||||
%>
|
|
||||||
<%= select( :issue,:prior, [["低",1],["正常",2],["高",3],["紧急",4],["立刻",5]].unshift(["优先级",0]),
|
|
||||||
{ :include_blank => false,:selected=>@priority_id ? @priority_id : 0
|
|
||||||
},
|
|
||||||
{:onchange=>"remote_function();",:id=>"priority_id",:name=>"priority_id",:class=>"w90 mr18"}
|
|
||||||
)
|
)
|
||||||
%>
|
%>
|
||||||
|
<%= select(:issue, :fixed_version, options_for_version_isuue_list(@project),
|
||||||
|
{:include_blank => false, :selected => @fixed_version_id ? @fixed_version_id : 0},
|
||||||
|
{:onchange => "remote_function();", :id => "fixed_version_id", :name => "fixed_version_id", :class => "fl"}) %>
|
||||||
|
|
||||||
<%= 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=>"status_id",:class=>"w90 mr18"}
|
{:onchange=>"remote_function();",:id=>"status_id",:name=>"status_id",:class=>"fl issues_filter_select_min"}
|
||||||
)
|
)
|
||||||
%>
|
%>
|
||||||
<%= select( :issue,:user_id, @project.members.order("lower(users.login)").map{|c| [User.find(c.user_id).show_name, c.user_id]}.unshift(["作者",0]),
|
<%#= select( :issue,:prior, [["低",1],["正常",2],["高",3],["紧急",4],["立刻",5]].unshift(["优先级",0]),
|
||||||
{ :include_blank => false,:selected=>@author_id ? @author_id : 0
|
{ :include_blank => false,:selected=>@priority_id ? @priority_id : 0
|
||||||
},
|
},
|
||||||
{:onchange=>"remote_function();",:id=>"author_id",:name=>"author_id",:class=>"w90 mr18"}
|
{:onchange=>"remote_function();",:id=>"priority_id",:name=>"priority_id",:class=>"fl"}
|
||||||
)
|
)
|
||||||
%>
|
%>
|
||||||
</div><!--filter_form end-->
|
|
||||||
<div>
|
<%#= select(:issue, :done_ratio, [["10%",1],["20%",2],["30%",3],["40%",4],["50%",5],["60%",6],["70%",7],["80%",8],["90%",9],["100%",10]].unshift(["完成度",0]),
|
||||||
<div class="fl"> </div>
|
{:include_blank => false, :selected => @done_ratio ? @done_ratio : 0 },
|
||||||
<div>
|
{:onchange => "remote_function();", :id => "done_ratio", :name => "done_ratio", :class => "f1"}) %>
|
||||||
<input name="issue_create_date_start" nhname="date_val" type="hidden"/>
|
<%= select( :issue,:done_ratio, ((0..10).to_a.collect { |r| ["#{r*10} %", r*10] }).unshift(["完成度",-1]),
|
||||||
<%= text_field_tag 'issue_create_date_start_show', '创建日期起始',:readonly=>true, :size=>13, :nhname=>'date_show',:style=>'float:left;'%>
|
{:include_blank => false, :selected => @done_ratio ? @done_ratio : -1},
|
||||||
<%= calendar_for('issue_create_date_start_show') %>
|
{:onchange=>"remote_function();",:id=>"done_ratio",:name=>"done_ratio",:class=>"fl"}) %>
|
||||||
</div>
|
|
||||||
<div style="float:left;"> - </div>
|
|
||||||
<div>
|
<%#= select(:issue, :test, [["最新创建",1],["最早创建",2],["最近更新",3],["最早更新", 4]].unshift(["排序",0]),
|
||||||
<input name="issue_create_date_end" nhname="date_val" type="hidden"/>
|
{:include_blank => false, :selected => @order ? @order : 0 },
|
||||||
<%= text_field_tag 'issue_create_date_end_show', '创建日期结束',:readonly=>true, :size=>13, :nhname=>'date_show',:style=>'float:left;'%>
|
{:onchange => "remote_function();", :id => "test", :name => "test", :class => "fr issues_filter_select_min"}) %>
|
||||||
<%= calendar_for('issue_create_date_end_show') %>
|
|
||||||
</div>
|
<%= select(:issue, :test, [["最新创建",1],["最早创建",2],["最近更新",3],["最早更新", 4]].unshift(["排序",0]),
|
||||||
|
{:include_blank => false, :selected => @test ? @test : 0 },
|
||||||
|
{:onchange => "remote_function();", :id => "test", :name => "test", :class => "fr issues_filter_select_min"}) %>
|
||||||
|
|
||||||
|
<%= 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},
|
||||||
|
{:onchange=>"remote_function();",:id=>"author_id",:name=>"author_id",:style=>"display:none;"}
|
||||||
|
)
|
||||||
|
%>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<%#= select(:issue, :tracker_id, [["缺陷",1],["功能",2],["支持",3],["任务",4],["周报",5]].unshift(["类型",0]),
|
||||||
|
{:include_blank => false, :selected => @tracker_id ? @tracker_id : 0},
|
||||||
|
{:onchange => "remote_function();", :id => "tracker_id", :name => "tracker_id", :class => "fl issues_filter_select_min"}) %>
|
||||||
|
<%#= select( :issue, :user_id, principals_options_for_isuue_list(@project),
|
||||||
|
{ :include_blank => false,:selected=>@assign_to_id ? @assign_to_id : 0},
|
||||||
|
{:onchange=>"remote_function();",:id=>"assigned_to_id",:name=>"assigned_to_id",:class=>"fl"})
|
||||||
|
%>
|
||||||
|
|
||||||
|
<%#= select(:issue, :fixed_version_id, options_for_version_isuue_list(@project),
|
||||||
|
{:include_blank => false, :selected => @fixed_version_id ? @fixed_version_id : 0},
|
||||||
|
{:onchange => "remote_function();", :id => "fixed_version_id", :name => "fixed_version_id", :class => "f1"}) %>
|
||||||
|
|
||||||
|
<%#= select( :issue, :status, [["新增",1],["正在解决",2],["已解决",3],["反馈",4],["关闭",5],["拒绝",6]].unshift(["状态",0]),
|
||||||
|
{ :include_blank => false,:selected=>@status_id ? @status_id : 0
|
||||||
|
},
|
||||||
|
{:onchange=>"remote_function();",:id=>"status_id",:name=>"status_id",:class=>"fl issues_filter_select_min"}
|
||||||
|
) %>
|
||||||
|
|
||||||
|
<%#= select( :issue,:done_ratio, ((0..10).to_a.collect { |r| ["#{r*10} %", r*10] }),
|
||||||
|
{:include_blank => false, :selected => @done_ratio ? @done_ratio : 0},
|
||||||
|
{:onchange=>"remote_function();",:id=>"done_ratio",:name=>"done_ratio",:class=>"fl"}) %>
|
||||||
|
|
||||||
|
<%#= select(:issue, :done_ratio, [["10%",1],["20%",2],["30%",3],["40%",4],["50%",5],["60%",6],["70%",7],["80%",8],["90%",9],["10%",10]].unshift(["完成度",0]),
|
||||||
|
{:include_blank => false, :selected => @done_ratio ? @done_ratio : 0 },
|
||||||
|
{:onchange => "remote_function();", :id => "done_ratio", :name => "done_ratio", :class => "f1"}) %>
|
||||||
|
|
||||||
|
<%#= select(:issue, :test, [["最早创建",1],["最早更新",2]].unshift(["排序",0]),
|
||||||
|
{:include_blank => false, :selected => @order ? @order : 0 },
|
||||||
|
{:onchange => "remote_function();", :id => "test", :name => "test", :class => "fr issues_filter_select_min"}) %>
|
||||||
</div>
|
</div>
|
||||||
<div class="cl"></div>
|
<div class="cl"></div>
|
||||||
|
</div><!--issues_filter end-->
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
||||||
<div class="cl"></div>
|
|
||||||
<% end %>
|
<% end %>
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="contextual">
|
|
||||||
<% if !@query.new_record? && @query.editable_by?(User.current) %>
|
|
||||||
<%= link_to l(:button_edit), edit_query_path(@query), :class => 'icon icon-edit' %>
|
|
||||||
<%= delete_link query_path(@query) %>
|
|
||||||
<% end %>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<% html_title(@query.new_record? ? l(:label_issue_plural) : @query.name) %>
|
|
||||||
<div style="clear:right; ">
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<%= error_messages_for 'query' %>
|
|
||||||
|
|
||||||
<% if @query.valid? %>
|
|
||||||
<% if @issues.empty? %>
|
<% if @issues.empty? %>
|
||||||
<p class="nodata">
|
<p class="nodata"><%= l(:label_no_data) %></p>
|
||||||
<%= l(:label_no_data) %>
|
|
||||||
</p>
|
|
||||||
<% else %>
|
<% else %>
|
||||||
<div id="issue_list">
|
<div id="issue_list">
|
||||||
<%= render :partial => 'issues/list', :locals => {:issues => @issues, :query => @query,:issue_pages=>@issue_pages,:issue_count=>@issue_count,:project=>@project,:subject=>@subject} %>
|
<%= render :partial => 'issues/all_list', :locals => {:issues => @issues, :query => @query,:issue_pages=>@issue_pages,:issue_count=>@issue_count,:project=>@project,:subject=>@subject} %>
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<% end %>
|
|
||||||
|
|
||||||
<!--<div style="float: left; padding-top: 30px">-->
|
|
||||||
<!--<%# other_formats_links do |f| %>-->
|
|
||||||
<!--<%#= f.link_to 'Atom', :url => params.merge(:key => User.current.rss_key) %>-->
|
|
||||||
<!--<%#= f.link_to 'CSV', :url => params, :onclick => "showModal('csv-export-options', '330px'); return false;" %>-->
|
|
||||||
<!--<%#= f.link_to 'PDF', :url => params %>-->
|
|
||||||
<!--<%# end %>-->
|
|
||||||
<!--</div>-->
|
|
||||||
|
|
||||||
<div id="csv-export-options" style="display:none;">
|
|
||||||
<h3 class="title"><%= l(:label_export_options, :export_format => 'CSV') %></h3>
|
|
||||||
<%= form_tag(params.merge({:format => 'csv', :page => nil}), :method => :get, :id => 'csv-export-form') do %>
|
|
||||||
<p>
|
|
||||||
<label>
|
|
||||||
<%= radio_button_tag 'columns', 'all' %>
|
|
||||||
<%= l(:description_all_columns) %>
|
|
||||||
</label>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
<label>
|
|
||||||
<%= check_box_tag 'description', '1', @query.has_column?(:description) %>
|
|
||||||
<%= l(:field_description) %>
|
|
||||||
</label>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p class="buttons">
|
|
||||||
<%= submit_tag l(:button_export), :name => nil, :onclick => "hideModal(this);" %>
|
|
||||||
<%= submit_tag l(:button_cancel), :name => nil, :onclick => "hideModal(this);", :type => 'button' %>
|
|
||||||
</p>
|
|
||||||
<% end %>
|
|
||||||
</div>
|
</div>
|
||||||
<% end %>
|
<% end %>
|
||||||
<%= call_hook(:view_issues_index_bottom, {:issues => @issues, :project => @project, :query => @query}) %>
|
<%#= render :partial => 'issues/all_list', :locals => {:issues => @issues, :query => @query,:issue_pages=>@issue_pages,:issue_count=>@issue_count,:project=>@project,:subject=>@subject} %>
|
||||||
<% content_for :sidebar do %>
|
</div><!--issues_con_list end-->
|
||||||
<%= render :partial => 'issues/sidebar' %>
|
|
||||||
<% end %>
|
|
||||||
|
|
||||||
<% content_for :header_tags do %>
|
</div>
|
||||||
<%= auto_discovery_link_tag(:atom,
|
|
||||||
{:query_id => @query, :format => 'atom',
|
|
||||||
:page => nil, :key => User.current.rss_key},
|
|
||||||
:title => l(:label_issue_plural)) %>
|
|
||||||
<%= auto_discovery_link_tag(:atom,
|
|
||||||
{:controller => 'journals', :action => 'index',
|
|
||||||
:query_id => @query, :format => 'atom',
|
|
||||||
:page => nil, :key => User.current.rss_key},
|
|
||||||
:title => l(:label_changes_details)) %>
|
|
||||||
<% end %>
|
|
||||||
|
|
||||||
<%= context_menu issues_context_menu_path %>
|
|
||||||
</div>
|
</div>
|
Loading…
Reference in New Issue