diff --git a/app/assets/javascripts/admins/shixun_feedback_messages/index.js b/app/assets/javascripts/admins/shixun_feedback_messages/index.js new file mode 100644 index 000000000..c0b32ba32 --- /dev/null +++ b/app/assets/javascripts/admins/shixun_feedback_messages/index.js @@ -0,0 +1,22 @@ +$(document).on('turbolinks:load', function(){ + if ($('body.admins-shixun-feedback-messages-index-page').length > 0) { + + var baseOptions = { + autoclose: true, + language: 'zh-CN', + format: 'yyyy-mm-dd 00:00:00', + startDate: '2017-04-01' + } + + var defineDateRangeSelect = function(element){ + var options = $.extend({inputs: $(element).find('.start-date, .end-date')}, baseOptions); + $(element).datepicker(options); + + $(element).find('.start-date').datepicker().on('changeDate', function(e){ + $(element).find('.end-date').datepicker('setStartDate', e.date); + }) + }; + + defineDateRangeSelect('.grow-date-input-daterange'); + } +}) \ No newline at end of file diff --git a/app/controllers/admins/shixun_feedback_messages_controller.rb b/app/controllers/admins/shixun_feedback_messages_controller.rb index 31fcc468c..09aa465bd 100644 --- a/app/controllers/admins/shixun_feedback_messages_controller.rb +++ b/app/controllers/admins/shixun_feedback_messages_controller.rb @@ -1,14 +1,22 @@ class Admins::ShixunFeedbackMessagesController < Admins::BaseController def index - default_sort('created_at', 'desc') @params_page = params[:page] || 1 - if params[:keyword] - discusses = Discuss.find_by_sql("select * from discusses join shixuns on discusses.dis_id = shixuns.id where discusses.dis_type='Shixun' AND - shixuns.name like '%#{params[:keyword]}%'") + if params[:keyword].present? + discusses = Discuss.joins("LEFT JOIN shixuns ON discusses.dis_id = shixuns.id AND dis_type = 'Shixun'") + .where("shixuns.name like ?", "%#{params[:keyword]}%") else discusses = Discuss.where(:dis_type => 'Shixun').includes(:user, :dis) end - @discusses = paginate discusses + + if params[:begin_date].present? + discusses = discusses.where("discusses.created_at > ?", params[:begin_date]) + end + + if params[:end_date].present? + discusses = discusses.where("discusses.created_at < ?", params[:end_date]) + end + + @discusses = paginate discusses.order("created_at desc") end end \ No newline at end of file diff --git a/app/views/admins/shixun_feedback_messages/index.html.erb b/app/views/admins/shixun_feedback_messages/index.html.erb index 730729646..210d3bfb6 100644 --- a/app/views/admins/shixun_feedback_messages/index.html.erb +++ b/app/views/admins/shixun_feedback_messages/index.html.erb @@ -5,6 +5,15 @@
<%= form_tag(admins_shixun_feedback_messages_path, method: :get, class: 'form-inline search-form', remote: true) do %> <%= text_field_tag(:keyword, params[:keyword], class: 'form-control col-md-4 ml-3', placeholder: '输入实训名称关键字进行搜索') %> +
+
+
+ <%= text_field_tag :begin_date, params[:begin_date], class: 'form-control start-date mx-0', placeholder: '开始时间' %> +
+ <%= text_field_tag :end_date, params[:end_date], class: 'form-control end-date mx-0', placeholder: '结束时间' %> +
+
+
<%= submit_tag('搜索', class: 'btn btn-primary ml-3', 'data-disable-with': '搜索中...') %> <% end %>