From e8d6b10c987b568ebb9314081f620a9d6c7b48db Mon Sep 17 00:00:00 2001 From: rulingcom Date: Fri, 29 May 2026 16:46:07 +0800 Subject: [PATCH] Add rss2_id and destroy.js.erb --- .../admin/technology_transfers_controller.rb | 265 +++++++++--------- app/models/technology_transfer.rb | 4 +- .../_technology_transfers.html.erb | 30 +- .../admin/technology_transfers/destroy.js.erb | 1 + 4 files changed, 152 insertions(+), 148 deletions(-) create mode 100644 app/views/admin/technology_transfers/destroy.js.erb diff --git a/app/controllers/admin/technology_transfers_controller.rb b/app/controllers/admin/technology_transfers_controller.rb index 895693e..8778961 100644 --- a/app/controllers/admin/technology_transfers_controller.rb +++ b/app/controllers/admin/technology_transfers_controller.rb @@ -1,131 +1,134 @@ -class Admin::TechnologyTransfersController < OrbitMemberController - include Admin::TechnologyTransfersHelper - layout "member_plugin" - before_action :set_tt, only: [:show, :edit , :update, :destroy] - before_action :set_plugin - before_action :get_settings,:only => [:new, :edit, :setting] - - before_action :need_access_right - before_action :allow_admin_only, :only => [:index, :setting] - - def index - @technology_transfers = TechnologyTransfer.order_by(:created_at=>'desc').page(params[:page]).per(10) - end - - def new - @tt = TechnologyTransfer.new - @member = MemberProfile.find_by(:uid=>params['uid']) rescue nil - end - - def create - tt = TechnologyTransfer.create(tt_params) - redirect_to params[:referer_url] - end - - - def analysis - end - - def analysis_report - role = params[:role_id] - year_start = params[:year_start].to_i - year_end = params[:year_end].to_i - graph_by = params[:graph_by] - - @data = get_chart_data(year_start,year_end,role,params[:graph_by]) - - render :layout => false - end - - def download_excel - year_start = params[:year_start].to_i - year_end = params[:year_end].to_i - @data = get_data_for_excel(year_start,year_end) - respond_to do |format| - format.xlsx { - response.headers['Content-Disposition'] = 'attachment; filename="technology_transfers.xlsx"' - } - end - end - - def show - end - - def edit - end - - def destroy - @tt.destroy - redirect_to admin_courses_path(:page => params[:page]) - end - - def update - @tt.update_attributes(tt_params) - @tt.save - redirect_to params[:referer_url] - end - - def setting - end - - def frontend_setting - @member = MemberProfile.find_by(:uid=>params['uid']) rescue nil - @intro = TechnologyTransferIntro.find_by(:member_profile_id=>@member.id) rescue nil - @intro = @intro.nil? ? TechnologyTransferIntro.new({:member_profile_id=>@member.id}) : @intro - end - - def update_frontend_setting - @member = MemberProfile.find(params['member_profile_id']) rescue nil - @intro = TechnologyTransferIntro.find_by(:member_profile_id=>@member.id) rescue nil - @intro = @intro.nil? ? TechnologyTransferIntro.new({:member_profile_id=>@member.id}) : @intro - @intro.update_attributes(intro_params) - @intro.save - redirect_to URI.encode('/admin/members/'+@member.to_param+'/TechnologyTransfer') - end - - def toggle_hide - if params[:ids] - @projects = TechnologyTransfer.any_in(_id: params[:ids]) - - @projects.each do |project| - project.is_hidden = params[:disable] - project.save - end - end - - render json: {"success"=>true} - end - - private - - def tt_params - params.require(:technology_transfer).permit! - end - - - def intro_params - params.require(:technology_transfer_intro).permit! rescue nil - end - - def get_settings - @technology_transfer_categories = TechnologyTransferCategory.all.order_by(:sort_position => "asc") - end - - def set_plugin - @plugin = OrbitApp::Plugin::Registration.all.select{|plugin| plugin.app_name.eql? 'TechnologyTransfer'}.first - end - - def set_tt - path = request.path.split('/') - if path.last.include? '-' - uid = path[-1].split("-").last - uid = uid.split("?").first - else - uid = path[-2].split("-").last - uid = uid.split("?").first - end - @tt = TechnologyTransfer.find_by(:uid => uid) rescue TechnologyTransfer.find(params[:id]) - end - - -end +class Admin::TechnologyTransfersController < OrbitMemberController + include Admin::TechnologyTransfersHelper + layout "member_plugin" + before_action :set_tt, only: [:show, :edit , :update, :destroy] + before_action :set_plugin + before_action :get_settings,:only => [:new, :edit, :setting] + + before_action :need_access_right + before_action :allow_admin_only, :only => [:index, :setting] + + def index + @technology_transfers = TechnologyTransfer.order_by(:created_at=>'desc').page(params[:page]).per(10) + end + + def new + @tt = TechnologyTransfer.new + @member = MemberProfile.find_by(:uid=>params['uid']) rescue nil + end + + def create + tt = TechnologyTransfer.create(tt_params) + redirect_to params[:referer_url] + end + + + def analysis + end + + def analysis_report + role = params[:role_id] + year_start = params[:year_start].to_i + year_end = params[:year_end].to_i + graph_by = params[:graph_by] + + @data = get_chart_data(year_start,year_end,role,params[:graph_by]) + + render :layout => false + end + + def download_excel + year_start = params[:year_start].to_i + year_end = params[:year_end].to_i + @data = get_data_for_excel(year_start,year_end) + respond_to do |format| + format.xlsx { + response.headers['Content-Disposition'] = 'attachment; filename="technology_transfers.xlsx"' + } + end + end + + def show + end + + def edit + end + + def destroy + @tt.destroy + respond_to do |format| + format.html { redirect_to admin_technology_transfers_path(:page => params[:page]) } + format.js + end + end + + def update + @tt.update_attributes(tt_params) + @tt.save + redirect_to params[:referer_url] + end + + def setting + end + + def frontend_setting + @member = MemberProfile.find_by(:uid=>params['uid']) rescue nil + @intro = TechnologyTransferIntro.find_by(:member_profile_id=>@member.id) rescue nil + @intro = @intro.nil? ? TechnologyTransferIntro.new({:member_profile_id=>@member.id}) : @intro + end + + def update_frontend_setting + @member = MemberProfile.find(params['member_profile_id']) rescue nil + @intro = TechnologyTransferIntro.find_by(:member_profile_id=>@member.id) rescue nil + @intro = @intro.nil? ? TechnologyTransferIntro.new({:member_profile_id=>@member.id}) : @intro + @intro.update_attributes(intro_params) + @intro.save + redirect_to URI.encode('/admin/members/'+@member.to_param+'/TechnologyTransfer') + end + + def toggle_hide + if params[:ids] + @projects = TechnologyTransfer.any_in(_id: params[:ids]) + + @projects.each do |project| + project.is_hidden = params[:disable] + project.save + end + end + + render json: {"success"=>true} + end + + private + + def tt_params + params.require(:technology_transfer).permit! + end + + + def intro_params + params.require(:technology_transfer_intro).permit! rescue nil + end + + def get_settings + @technology_transfer_categories = TechnologyTransferCategory.all.order_by(:sort_position => "asc") + end + + def set_plugin + @plugin = OrbitApp::Plugin::Registration.all.select{|plugin| plugin.app_name.eql? 'TechnologyTransfer'}.first + end + + def set_tt + path = request.path.split('/') + if path.last.include? '-' + uid = path[-1].split("-").last + uid = uid.split("?").first + else + uid = path[-2].split("-").last + uid = uid.split("?").first + end + @tt = TechnologyTransfer.find_by(:uid => uid) rescue TechnologyTransfer.find(params[:id]) + end + + +end diff --git a/app/models/technology_transfer.rb b/app/models/technology_transfer.rb index 9d4fc88..379cf65 100644 --- a/app/models/technology_transfer.rb +++ b/app/models/technology_transfer.rb @@ -15,7 +15,7 @@ class TechnologyTransfer field :license_end_date, type: Date field :participating_teachers, type: String field :note, type: String - + field :rss2_id belongs_to :member_profile belongs_to :technology_transfer_category @@ -117,4 +117,4 @@ class TechnologyTransfer } end -end \ No newline at end of file +end diff --git a/app/views/admin/technology_transfers/_technology_transfers.html.erb b/app/views/admin/technology_transfers/_technology_transfers.html.erb index b766f68..a8dbf85 100644 --- a/app/views/admin/technology_transfers/_technology_transfers.html.erb +++ b/app/views/admin/technology_transfers/_technology_transfers.html.erb @@ -1,15 +1,15 @@ -<% @technology_transfers.each do |tt| %> - - <%= tt.year %> - - <%= link_to tt.title, page_for_technology_transfer(tt), target: "blank"%> -
- -
- - <%= tt.member_profile.name rescue "" %> - -<% end %> \ No newline at end of file +<% @technology_transfers.each do |tt| %> + + <%= tt.year %> + + <%= link_to tt.title, page_for_technology_transfer(tt), target: "blank"%> +
+ +
+ + <%= tt.member_profile.name rescue "" %> + +<% end %> diff --git a/app/views/admin/technology_transfers/destroy.js.erb b/app/views/admin/technology_transfers/destroy.js.erb new file mode 100644 index 0000000..eb67fa5 --- /dev/null +++ b/app/views/admin/technology_transfers/destroy.js.erb @@ -0,0 +1 @@ +$('#<%= dom_id @tt %>').remove();