class Iamspe::Setup
Classe de inicialização de configurações, caso não configuradas
Constants
- ESTADOS
-
Lista de Unidades Federativas do Brasil e suas siglas
Public Class Methods
Source
# File lib/iamspe/setup.rb 42 def initialize 43 # Inicializar TTY::Prompt 44 @prompt = TTY::Prompt.new 45 # Inicializar TTY::Config 46 @config = TTY::Config.new 47 @config.filename = '.iamspe' 48 @config.append_path Dir.home 49 @config.read if @config.exist? 50 # Checar completude da configuração 51 check_fullness 52 # Compilar configuração 53 @config.write(force: true) 54 end
Iniciar classe
Private Instance Methods
Source
# File lib/iamspe/setup.rb 131 def check_dt_beds 132 return unless @config.fetch(:dt, :leitos, default: nil).nil? 133 134 dt = @prompt.ask('Qual o número do leitos na DT?') do |q| 135 q.required true 136 q.convert :int 137 end 138 @config.set(:dt, :leitos, value: dt) 139 end
Checar número de leitos na DT
Source
# File lib/iamspe/setup.rb 109 def check_eme_beds 110 return unless @config.fetch(:eme, :leitos, default: nil).nil? 111 112 eme = @prompt.ask('Qual o número do leitos HABITUAL na EME?') do |q| 113 q.required true 114 q.convert :int 115 end 116 @config.set(:eme, :leitos, value: eme) 117 end
Checar número de leitos na EME
Source
# File lib/iamspe/setup.rb 120 def check_eme_beds_ext 121 return unless @config.fetch(:eme, :contingencia, default: nil).nil? 122 123 eme = @prompt.ask('Qual o número do leitos COM CONTINGÊNCIA na EME?') do |q| 124 q.required true 125 q.convert :int 126 end 127 @config.set(:eme, :contingencia, value: eme) 128 end
Checar número de leitos na EME em CONTINGÊNCIA
Source
# File lib/iamspe/setup.rb 59 def check_fullness 60 check_name 61 check_register_number 62 check_register_state 63 intensive_sectors 64 db_name 65 end
Métodos de checagem de completude de dados
Source
# File lib/iamspe/setup.rb 75 def check_name 76 return unless @config.fetch(:nome, default: nil).nil? 77 78 name = @prompt.ask('Qual seu nome completo?') do |q| 79 q.required true 80 q.modify :capitalize, :strip 81 end 82 @config.set(:nome, value: name) 83 end
Checar nome completo
Source
# File lib/iamspe/setup.rb 86 def check_register_number 87 return unless @config.fetch(:crm, :numero, default: nil).nil? 88 89 crm = @prompt.ask('Qual o número do seu CRM?') do |q| 90 q.required true 91 q.convert :int 92 end 93 crm = ActiveSupport::NumberHelper.number_to_delimited(crm, delimiter: '.') 94 @config.set(:crm, :numero, value: crm) 95 end
Checar número de registro profissional
Source
# File lib/iamspe/setup.rb 98 def check_register_state 99 return unless @config.fetch(:crm, :uf, default: nil).nil? 100 101 crm = @prompt.select('Qual a Unidade Federativa do seu CRM?') do |q| 102 q.choices ESTADOS 103 q.default 'São Paulo' 104 end 105 @config.set(:crm, :uf, value: crm) 106 end
Checar UF de registro profissional
Source
# File lib/iamspe/setup.rb 142 def db_name 143 return unless @config.fetch(:db, default: nil).nil? 144 145 @config.set(:db, value: "#{Dir.home}/.iamspe.db") 146 end
Checar nome e local do arquivo de banco de dados
Source
# File lib/iamspe/setup.rb 68 def intensive_sectors 69 check_eme_beds 70 check_eme_beds_ext 71 check_dt_beds 72 end
Submétodo de checagem de setores críticos