2013-09-06 16:40:07 +08:00
|
|
|
|
class Course < ActiveRecord::Base
|
|
|
|
|
include Redmine::SafeAttributes
|
|
|
|
|
|
2013-09-28 23:08:24 +08:00
|
|
|
|
attr_accessible :code, :extra, :name, :state, :tea_id, :time , :location, :state, :term, :password
|
2013-09-23 08:44:48 +08:00
|
|
|
|
belongs_to :project, :class_name => 'Project', :foreign_key => :extra # 定义一个project方法, 该方法通过extra来调用project表
|
2013-09-14 17:25:57 +08:00
|
|
|
|
belongs_to :teacher, :class_name => 'User', :foreign_key => :tea_id # 定义一个方法teacher,该方法通过tea_id来调用User表
|
2014-03-20 16:19:16 +08:00
|
|
|
|
belongs_to :school, :class_name => 'School', :foreign_key => :school_id #定义一个方法school,该方法通过school_id来调用School表
|
2013-09-06 16:40:07 +08:00
|
|
|
|
has_many :bid
|
2013-09-28 23:08:24 +08:00
|
|
|
|
validates_presence_of :password, :term
|
2014-05-09 17:13:23 +08:00
|
|
|
|
validates_format_of :class_period, :message => "class period can only digital!", :with =>/^[1-9]\d*$/
|
2013-09-06 16:40:07 +08:00
|
|
|
|
safe_attributes 'extra',
|
|
|
|
|
'time',
|
|
|
|
|
'name',
|
|
|
|
|
'extra',
|
2013-09-12 10:41:15 +08:00
|
|
|
|
'code',
|
2013-09-12 17:25:40 +08:00
|
|
|
|
'location',
|
|
|
|
|
'tea_id',
|
2013-09-28 23:08:24 +08:00
|
|
|
|
'password',
|
2013-09-29 19:46:59 +08:00
|
|
|
|
'term',
|
|
|
|
|
'password'
|
2014-05-09 17:13:23 +08:00
|
|
|
|
|
|
|
|
|
#自定义验证
|
|
|
|
|
def validate
|
|
|
|
|
if !class_period.match([0-9])
|
|
|
|
|
errors.add_to_base("class period can only digital")
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
2014-02-15 16:34:09 +08:00
|
|
|
|
def get_endup_time
|
|
|
|
|
begin
|
|
|
|
|
end_time = Time.parse(self.endup_time)
|
|
|
|
|
rescue Exception => e
|
|
|
|
|
end_time = Time.parse("3000-01-01")
|
|
|
|
|
Rails.logger.error "[Error] course endup_time error. ===> #{e}"
|
|
|
|
|
ensure
|
|
|
|
|
return end_time
|
|
|
|
|
end
|
|
|
|
|
end
|
2013-09-06 16:40:07 +08:00
|
|
|
|
|
2014-02-22 09:44:14 +08:00
|
|
|
|
def get_time
|
|
|
|
|
begin
|
|
|
|
|
time = Date.new(self.time).to_time
|
|
|
|
|
rescue Exception => e
|
|
|
|
|
time = Time.parse("3000-01-01")
|
|
|
|
|
Rails.logger.error "[Error] course time error. ===> #{e}"
|
|
|
|
|
ensure
|
|
|
|
|
return time
|
|
|
|
|
end
|
|
|
|
|
end
|
2013-09-06 16:40:07 +08:00
|
|
|
|
end
|