module Base::TimeCard::Submission
  extend ActiveSupport::Concern

  included do
    self.table_name = :TimeCardSubmissions
    self.primary_key = :TCSID

    alias_attribute :id, :TCSID
    alias_attribute :school_id, :SchoolID
    alias_attribute :user_id, :UserID
    alias_attribute :year, :Year
    alias_attribute :week, :Week
    alias_attribute :cycle_id, :CycleID
    alias_attribute :submitted_at, :SubmittedDT
    alias_attribute :approved_at, :ApprovedDT
    alias_attribute :staff_id, :ApprovedUID

    before_create :set_defaults

    private
      def set_defaults
        self.SchoolID = 0 unless self.SchoolID
        self.UserID = 0 unless self.UserID
        self.Year = 0 unless self.Year
        self.Week = 0 unless self.Week
        self.CycleID = 0 unless self.CycleID
        self.SubmittedDT = '0000-00-00 00:00:00' unless self.SubmittedDT
        self.ApprovedDT = '0000-00-00 00:00:00' unless self.ApprovedDT
        self.ApprovedUID = 0 unless self.ApprovedUID
      end
  end
end
