Sha256: 556a5af18c87dee3f8b920824b4fa899749205c65027ef10b90c03fc7c01c849

Contents?: true

Size: 690 Bytes

Versions: 4

Compression:

Stored size: 690 Bytes

Contents

module Sis
  module Core
    class Applicant < ApplicationRecord
      validates :first_name, :middle_name, :last_name, :email, presence: true
      validates :email, uniqueness: true

      has_many :applications
      has_one_attached :photo

      has_secure_password

      def full_name
        "#{first_name} #{middle_name} #{last_name}"
      end

      scope :by_application_setup, (lambda do |app_setup_id|
        joins(applications: :application_setup).where('sis_core_applications.application_setup_id': app_setup_id)
      end)

      scope :by_status, (lambda do |status|
        joins(:applications).where('sis_core_applications.status': status)
      end)
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
sis_core-1.0.20 app/models/sis/core/applicant.rb
sis_core-1.0.19 app/models/sis/core/applicant.rb
sis_core-1.0.18 app/models/sis/core/applicant.rb
sis_core-1.0.17 app/models/sis/core/applicant.rb