mirror of
https://gitlink.org.cn/Gitlink/forgeplus.git
synced 2026-05-03 20:00:49 +08:00
init project
This commit is contained in:
29
app/controllers/admins/partners_controller.rb
Normal file
29
app/controllers/admins/partners_controller.rb
Normal file
@@ -0,0 +1,29 @@
|
||||
class Admins::PartnersController < Admins::BaseController
|
||||
def index
|
||||
default_sort('created_at', 'desc')
|
||||
|
||||
partners = Admins::PartnerQuery.call(params)
|
||||
@partners = paginate(partners.preload(:school))
|
||||
end
|
||||
|
||||
def create
|
||||
params[:school_ids] = Array.wrap(params[:school_ids])
|
||||
|
||||
school_ids = School.where(id: params[:school_ids]).pluck(:id)
|
||||
exist_school_ids = Partner.where(school_id: school_ids).pluck(:school_id)
|
||||
|
||||
Partner.bulk_insert(*%i[school_id created_at updated_at]) do |worker|
|
||||
(school_ids - exist_school_ids).each do |school_id|
|
||||
worker.add(school_id: school_id)
|
||||
end
|
||||
end
|
||||
|
||||
render_ok
|
||||
end
|
||||
|
||||
def destroy
|
||||
Partner.find(params[:id]).destroy!
|
||||
|
||||
render_delete_success
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user