Sha256: 0efd294b73b9f22187b67f2daf637691239e5501c643dd8dab14550fcf78a993

Contents?: true

Size: 969 Bytes

Versions: 1

Compression:

Stored size: 969 Bytes

Contents

# encoding: utf-8

class Quadro < ApplicationRecord
  has_paper_trail

  belongs_to :paciente
  has_many :hipoteses
  has_many :cids, through: :hipoteses
  belongs_to :tipo_diabete
  belongs_to :tipo_parto

  def cid_ids=(cid_ids)
    cid_ids.split(',').each do |cid_id|
      self.cids << Cid.find(cid_id)
    end
  end

  def idade_inicio_quadro
    unless self.data_inicio
      return "Impossível calcular: o paciente não tem data de início do quadro!"
    end

    data_nascimento = self.paciente.data_nascimento
    unless self.paciente.data_nascimento
      return "Impossível calcular: o paciente não tem a data de nascimento cadastrada!"
    end

    meses = (self.data_inicio.year * 12 + self.data_inicio.month) - (data_nascimento.year * 12 + data_nascimento.month)
    anos = meses / 12
    meses_restantes = meses % 12
    if anos > 0
      return "#{anos} ano(s) e #{meses_restantes} mes(es)"
    end
    return "#{meses_restantes} mes(es)"
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
omniauth-sabia-1.0.1 app/models/quadro.rb