app/views/community/patients/_form.html.erb
<%= error_messages_for(f.object) %>
<p>
As informações coletadas são de uso único e exclusivo do sistema de agendamento da vacina, afim de atestar a
veracidade do cadastro.
</p>
<div class="form-row">
<div class="form-group col-md-12">
<div class="input-group mb-2">
<div class="input-group-prepend">
<div class="input-group-text">CPF</div>
</div>
<%= f.text_field :cpf,
readonly: true,
class: "form-control form-control-lg",
aria: { describedby: "cpfHelp" } %>
</div>
</div>
</div>
<h3>Dados pessoais</h3>
<p>Todos os dados informados serão confirmados no momento da vacinação.</p>
<div class="form-row">
<div class="form-group col-md-4">
<%= f.label :name %>
<%= f.text_field :name,
autofocus: true, autocomplete: "name", required: true,
class: "form-control",
aria: { describedby: "nameHelp" } %>
<small id="nameHelp" class="form-text text-muted">
Nome completo conforme documento de identificação com foto.
</small>
</div>
<div class="form-group col-md-4">
<%= f.label :birthday %>
<div class="form-row date">
<%= f.date_select :birthday,
{
start_year: (Date.current.year.to_i) - 1, # min age
end_year: Date.current.year.to_i - 120, # max age
with_css_classes: true,
prompt: {
day: '- dia -',
month: '- mês -',
year: '- ano -'
},
},
required: true,
aria: { describedby: "birthDateHelp" },
class: "form-control" %>
</div>
<small id="birthDateHelp" class="form-text text-muted">
Data de nascimento conforme documento de identificação com foto.
</small>
</div>
<div class="form-group col-md-4">
<%= f.label :mother_name %>
<%= f.text_field :mother_name,
autocomplete: "mother_name", required: true,
class: "form-control" %>
<small id="birthDateHelp" class="form-text text-muted">
Nome completo da <strong>mãe</strong>.
</small>
</div>
</div>
<h3>Grupos prioritários que pertence</h3>
<%= embedded_page :patient_groups_priority -%>
<p>Escolha ao menos uma das opções abaixo.</p>
<div class="form-row">
<div class="form-group col-md-12">
<%= render partial: '/shared/group_boxes', locals: { for_group: :priority, f: f } %>
</div>
</div>
<h3>Comorbidades que possui</h3>
<%= embedded_page :patient_groups_comorbidity -%>
<p>Escolha ao menos uma das opções abaixo.</p>
<div class="form-row">
<div class="form-group col-md-12">
<%= render partial: '/shared/group_boxes', locals: { for_group: :comorbidity, f: f } %>
</div>
</div>
<h3>Endereço residencial</h3>
<div class="form-row">
<div class="form-group col-md-8">
<%= f.label :public_place %>
<%= f.text_field :public_place,
autocomplete: "place", required: true,
class: "form-control" %>
</div>
<div class="form-group col-md-4">
<%= f.label :place_number %>
<%= f.text_field :place_number,
required: true,
class: "form-control" %>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-8">
<%= f.label :street_2 %>
<%= optional_field_tag %>
<%= f.text_field :street_2,
autocomplete: "place",
class: "form-control" %>
</div>
<div class="form-group col-md-4">
<%= f.label :neighborhood_id %>
<%= f.collection_select :neighborhood_id, Neighborhood.order(:name), :id, :name, { prompt: '- Escolha o bairro -' },
class: "form-control" %>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-6">
<%= f.label :phone %>
<%= f.text_field :phone,
autocomplete: "phone", required: true,
class: "form-control sp-celphones" %>
</div>
<div class="form-group col-md-6">
<%= f.label :other_phone %>
<%= optional_field_tag %>
<%= f.text_field :other_phone,
autocomplete: "other_phone", required: false,
class: "form-control sp-celphones" %>
</div>
</div>
<h3>Dados complementares</h3>
<div class="form-row">
<div class="form-group col-md-8">
<%= f.label :email %>
<%= optional_field_tag %>
<%= f.email_field :email,
autocomplete: "email", required: false,
class: "form-control",
aria: { describedby: "emailHelp" } %>
<small id="emailHelp" class="form-text text-muted">
Endereço de email.
</small>
</div>
<div class="form-group col-md-4">
<%= f.label :sus %>
<%= optional_field_tag %>
<%= f.number_field :sus,
autocomplete: "sus", required: false,
class: "form-control" %>
<small id="susHelp" class="form-text text-muted">
Número do cartão SUS. Descubra o número acessando o
<a href="https://conectesus-paciente.saude.gov.br" target="cartaosus">ConecteSUS</a>.
</small>
</div>
</div>
<% if InquiryQuestion.active.any? -%>
<h3>
Inquérito
<%= optional_field_tag %>
</h3>
<%= embedded_page :patient_inquiry_intro -%>
<div class="form-row">
<div class="form-group col-md-12">
<%= render partial: '/shared/inquiry', locals: { f: f } %>
</div>
</div>
<% end -%>