forked from Trustie/forgeplus
46 lines
1.3 KiB
Ruby
46 lines
1.3 KiB
Ruby
# == Schema Information
|
|
#
|
|
# Table name: forge_applied_projects
|
|
#
|
|
# id :integer not null, primary key
|
|
# project_id :integer
|
|
# user_id :integer
|
|
# role :integer default("0")
|
|
# status :integer default("0")
|
|
# created_at :datetime not null
|
|
# updated_at :datetime not null
|
|
#
|
|
# Indexes
|
|
#
|
|
# index_forge_applied_projects_on_project_id (project_id)
|
|
# index_forge_applied_projects_on_user_id (user_id)
|
|
#
|
|
|
|
class AppliedProject < ApplicationRecord
|
|
self.table_name = "forge_applied_projects"
|
|
belongs_to :user
|
|
belongs_to :project
|
|
|
|
has_many :applied_messages, as: :applied, dependent: :destroy
|
|
# has_many :forge_activities, as: :forge_act, dependent: :destroy
|
|
|
|
has_one :file, class_name: 'Attachment', as: :container
|
|
belongs_to :dealer_user, class_name: 'User' , foreign_key: :dealer, optional: true # 审批人
|
|
|
|
enum role: {manager: 3, developer: 4, reporter: 5}
|
|
enum status: {canceled: -1, common: 0, accepted: 1, refused: 2} # -1 已取消 0 待操作 1 已接收 2 已拒绝
|
|
|
|
def role_cn
|
|
role_cn = ""
|
|
if self.role == "manager"
|
|
role_cn = "管理员"
|
|
elsif self.role == "developer"
|
|
role_cn = "开发者"
|
|
elsif self.role == "reporter"
|
|
role_cn = "报告者"
|
|
end
|
|
role_cn
|
|
end
|
|
|
|
end
|