parent
69871b9373
commit
e174b8edac
@ -0,0 +1,46 @@
|
|||||||
|
class ComposesController < ApplicationController
|
||||||
|
before_action :require_login, except: [:index]
|
||||||
|
|
||||||
|
def index
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
def new
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
def create
|
||||||
|
ActiveRecord::Base.transaction do
|
||||||
|
begin
|
||||||
|
compose_params = params[:compose]
|
||||||
|
@compose = Compose.new(compose_params.merge(user_id: current_user.id))
|
||||||
|
if @compose.save
|
||||||
|
ComposeUser.create!(user_id: current_user.id, compose_id: @compose.id, is_manager: 1)
|
||||||
|
normal_status(0,"组织创建成功")
|
||||||
|
else
|
||||||
|
normal_status(-1,"组织创建失败")
|
||||||
|
end
|
||||||
|
rescue Exception => e
|
||||||
|
tip_exception("#{e}")
|
||||||
|
raise ActiveRecord::Rollback
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
def edit
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
def update
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
def destroy
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
def show
|
||||||
|
|
||||||
|
end
|
||||||
|
end
|
@ -0,0 +1,6 @@
|
|||||||
|
class Compose < ApplicationRecord
|
||||||
|
belongs_to :user
|
||||||
|
has_many :compose_projects
|
||||||
|
has_many :compose_users
|
||||||
|
|
||||||
|
end
|
@ -0,0 +1,3 @@
|
|||||||
|
class ComposeProject < ApplicationRecord
|
||||||
|
belongs_to :compose
|
||||||
|
end
|
@ -0,0 +1,4 @@
|
|||||||
|
class ComposeUser < ApplicationRecord
|
||||||
|
belongs_to :compose
|
||||||
|
belongs_to :user
|
||||||
|
end
|
@ -0,0 +1 @@
|
|||||||
|
|
@ -0,0 +1,15 @@
|
|||||||
|
class CreateComposes < ActiveRecord::Migration[5.2]
|
||||||
|
def change
|
||||||
|
create_table :composes do |t|
|
||||||
|
t.integer :user_id
|
||||||
|
t.string :title
|
||||||
|
t.text :description
|
||||||
|
t.integer :show_mode, default: 0
|
||||||
|
t.boolean :compose_mode, default: false
|
||||||
|
t.integer :compose_users_count, default: 0
|
||||||
|
t.integer :compose_projects_count , default: 0
|
||||||
|
t.timestamps
|
||||||
|
end
|
||||||
|
add_index :composes, [:user_id,:show_mode,:compose_mode]
|
||||||
|
end
|
||||||
|
end
|
@ -0,0 +1,12 @@
|
|||||||
|
class CreateComposeUsers < ActiveRecord::Migration[5.2]
|
||||||
|
def change
|
||||||
|
create_table :compose_users do |t|
|
||||||
|
t.integer :user_id
|
||||||
|
t.integer :compose_id
|
||||||
|
t.integer :is_manager, default: 0
|
||||||
|
|
||||||
|
t.timestamps
|
||||||
|
end
|
||||||
|
add_index :compose_users, [:user_id, :compose_id]
|
||||||
|
end
|
||||||
|
end
|
@ -0,0 +1,14 @@
|
|||||||
|
class CreateComposeProjects < ActiveRecord::Migration[5.2]
|
||||||
|
def change
|
||||||
|
create_table :compose_projects do |t|
|
||||||
|
t.integer :user_id
|
||||||
|
t.integer :project_id
|
||||||
|
t.integer :compose_id
|
||||||
|
t.integer :position , default: 0
|
||||||
|
|
||||||
|
t.timestamps
|
||||||
|
end
|
||||||
|
add_index :compose_projects, [:user_id, :project_id, :compose_id]
|
||||||
|
add_column :composes, :compose_projects_count, :integer, :default => 0
|
||||||
|
end
|
||||||
|
end
|
@ -0,0 +1,5 @@
|
|||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
RSpec.describe ComposeProject, type: :model do
|
||||||
|
pending "add some examples to (or delete) #{__FILE__}"
|
||||||
|
end
|
@ -0,0 +1,5 @@
|
|||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
RSpec.describe Compose, type: :model do
|
||||||
|
pending "add some examples to (or delete) #{__FILE__}"
|
||||||
|
end
|
@ -0,0 +1,5 @@
|
|||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
RSpec.describe ComposeUser, type: :model do
|
||||||
|
pending "add some examples to (or delete) #{__FILE__}"
|
||||||
|
end
|
Loading…
Reference in new issue