forgeplus/app/controllers/compose_projects_controller.rb

38 lines
1.0 KiB
Ruby

class ComposeProjectsController < ApplicationController
#未做完
before_action :require_login
before_action :set_compose
def create
project_ids = params[:project_ids]
ComposeProject.transaction do
project_ids.each do |p|
project = Project.select(:id, :user_id).find(p)
unless project.blank? || ComposeProject.exists?(user_id: project.user_id, project_id: p, compose_id: @compose.id)
ComposeProject.create!(user_id: project.user_id, project_id: p, compose_id: @compose.id, position: p)
end
end
end
normal_status(0, "添加成功")
end
def destroy
project_ids = params[:project_ids]
if ComposeProject.where(project_id: project_ids, compose_id: @compose.id).delete_all
normal_status(0, "项目删除成功")
else
normal_status(-1, "项目删除失败")
end
end
private
def set_compose
@compose = Compose.find(params[:compose_id])
unless @compose.present?
normal_status(-1, "组织不存在")
end
end
end