module Base::ClassSubject
  extend ActiveSupport::Concern

  included do
    self.table_name = 'ClassSubjects'
    self.primary_key = 'ClassSubjectID'

    alias_attribute :id, :ClassSubjectID
    # alias_attribute :school_id, :SchoolID
    alias_attribute :class_id, :ClassID
    alias_attribute :name, :Name
    # alias_attribute :description, :Description
    alias_attribute :code, :Code
    alias_attribute :sequence, :Sequence
    # alias_attribute :time, :Time
    # alias_attribute :page, :Page
    # alias_attribute :location, :Location
    # alias_attribute :color, :Color
    # alias_attribute :rcblock, :ReportCardBlock
    # alias_attribute :sgsid, :SGSID

    before_create :set_defaults

    private
      def set_defaults
        self.SchoolID = 0 unless self.SchoolID
        self.ClassID = 0 unless self.ClassID
        self.Name = '' unless self.Name
        self.Description = '' unless self.Description
        self.Code = '' unless self.Code
        self.Sequence = 0 unless self.Sequence
        self.Time = '00:00:00' unless self.Time
        self.Page = 0 unless self.Page
        self.Location = 0 unless self.Location
        self.Color = '' unless self.Color
        self.ReportCardBlock = 0 unless self.ReportCardBlock
        self.SGSID = 0 unless self.SGSID
      end
  end
end
