belongsTo(AtendimentoMedico::class); } public function frequenciaMedidaTempo() { return $this->belongsTo(MedidaTempo::class); } public function medicamentos() { return $this->hasMany(PrescricaoInternaMedicamento::class); } public function aplicacoes() { return $this->hasMany(PrescricaoInternaAplicacao::class); } public function getDoseUnicaAttribute() { return is_null($this->frequencia_quantidade_vezes) && is_null($this->frequencia_tempo) && is_null($this->frequencia_medida_tempo_id); } public function getFrequenciaAttribute() { if ($this->dose_unica) { return 'Dose única'; } $labelAplicacao = $this->frequencia_quantidade_vezes > 1 ? 'aplicações' : 'aplicação'; $frequenciaNome = Str::lower($this->frequenciaMedidaTempo->nome); if ($this->frequencia_tempo < 2) { $frequenciaNome = str_replace('(s)', '', $frequenciaNome); } return "{$this->frequencia_quantidade_vezes} {$labelAplicacao} uma a cada {$this->frequencia_tempo} " . "{$frequenciaNome}"; } public function getIsAllowedToDeleteAttribute() { return $this->hasNoOne([ // Relations. ]); } }