demarches-normaliennes/app/models/service.rb

40 lines
1.6 KiB
Ruby
Raw Normal View History

2018-04-17 16:11:49 +02:00
class Service < ApplicationRecord
2019-09-17 10:16:52 +02:00
self.ignored_columns = ['siret']
2018-04-17 16:11:49 +02:00
has_many :procedures
belongs_to :administrateur
scope :ordered, -> { order(nom: :asc) }
2018-04-17 16:11:49 +02:00
enum type_organisme: {
administration_centrale: 'administration_centrale',
association: 'association',
2019-02-18 16:18:09 +01:00
collectivite_territoriale: 'collectivite_territoriale',
2018-04-17 16:11:49 +02:00
etablissement_enseignement: 'etablissement_enseignement',
2019-02-18 16:18:09 +01:00
operateur_d_etat: "operateur_d_etat",
service_deconcentre_de_l_etat: 'service_deconcentre_de_l_etat',
2018-04-17 16:11:49 +02:00
autre: 'autre'
}
validates :nom, presence: { message: 'doit être renseigné' }, allow_nil: false
validates :nom, uniqueness: { scope: :administrateur, message: 'existe déjà' }
validates :organisme, presence: { message: 'doit être renseigné' }, allow_nil: false
2018-04-17 16:11:49 +02:00
validates :type_organisme, presence: { message: 'doit être renseigné' }, allow_nil: false
validates :email, presence: { message: 'doit être renseigné' }, allow_nil: false
validates :telephone, phone: { possible: true, allow_blank: true }
validates :horaires, presence: { message: 'doivent être renseignés' }, allow_nil: false
validates :adresse, presence: { message: 'doit être renseignée' }, allow_nil: false
2018-04-17 16:11:49 +02:00
validates :administrateur, presence: { message: 'doit être renseigné' }, allow_nil: false
def clone_and_assign_to_administrateur(administrateur)
service_cloned = self.dup
service_cloned.administrateur = administrateur
service_cloned
end
2019-11-20 17:22:01 +01:00
def telephone_url
if telephone.present?
"tel:#{telephone.gsub(/[[:blank:]]/, '')}"
end
end
2018-04-17 16:11:49 +02:00
end