app/views/fil23_gen/graficar_apexcharts/victimizaciones_individuales.html.erb
<h1> Graficar victimizaciones individuales </h1>
<%
opciones_gen = {
title: 'Victimizaciones',
xtitle: 'Fecha',
ytitle: 'Victimizaciones',
stacked: true
}
series_tot= [
{name: "Victimizaciones",
data: @valores_tot}
]
opciones_tot = {
title: @opciones_tot[:titulo],
xtitle: @opciones_tot[:ejex],
ytitle: @opciones_tot[:ejey],
data_labels: false
}
%>
<%= simple_form_for :filtro do |f| %>
<div class="card" >
<div class="card-header">
<h5> Filtros y Desagregación</h5>
</div>
<div class="card-body">
<div class="row">
<div class="offset-sm-0 col-3">
<%
if params.nil? || params[:filtro].nil? ||
params[:filtro][:fechaini].nil?
vfi = fecha_estandar_local(@vic_fechaini)
else
vfi = fecha_estandar_local(
Msip::FormatoFechaHelper.fecha_local_estandar(
params[:filtro][:fechaini]))
end
%>
<%= f.input :fechaini,
maxlength: 10,
size: 10,
label: 'Fecha Inicial',
input_html: {
type: "date",
value: vfi
}
%>
</div>
<%
if params.nil? || params[:filtro].nil? ||
params[:filtro][:fechafin].nil?
vff = fecha_estandar_local(@vic_fechafin)
else
vff = fecha_estandar_local(
Msip::FormatoFechaHelper.fecha_local_estandar(
params[:filtro][:fechafin]))
end
%>
<div class="offset-sm-0 col-3">
<%= f.input :fechafin,
maxlength: 10,
size: 10,
label: 'Fecha Final',
input_html: {
type: "date",
value: vff
} %>
</div>
<div class="offset-sm-0 col-3">
<%
if params.nil? || params[:filtro].nil? ||
params[:filtro][:desagregar].nil?
ops= 'Sexo'
else
ops= params[:filtro][:desagregar]
end
%>
<%= f.input :desagregar,
collection: ['Sexo', 'Departamento', 'Categoria'],
label: 'Desagregar por:',
selected: ops,
input_html: {
'data-enviarautomatico' => ''}
%>
</div>
<div class="offset-sm-0 col-3">
<% if params.nil? || params[:filtro].nil? ||
params[:filtro][:desagregar].nil? ||
params[:filtro][:desagregar]== 'Sexo' %>
<% sex_sel = Msip::Persona::SEXO_OPCIONES.map{|k| k[1]} %>
<% estdes = "display: none" %>
<% else %>
<% sex_sel = params[:filtro][:sexo] %>
<% estdes = "display: block" %>
<% end %>
<%= f.input :sexo,
collection: Msip::Persona::sexo_opciones,
label: 'Sexo:',
selected: sex_sel,
input_html: {
class: 'tom-select',
multiple: true,
'data-enviarautomatico' => ''},
wrapper_html: { "style" => estdes }
%>
</div>
</div>
<div class="row">
<div class="offset-sm-0 col-12">
<%
if params.nil? || params[:filtro].nil? ||
params[:filtro][:departamentos].nil?
dep_sel = Msip::Departamento.habilitados.
where(
pais_id: Msip.paisomision).pluck(:id)
estdep = "display: block"
else
dep_sel = params[:filtro][:departamentos]
estdep = "display: none" if params[:filtro][:desagregar] == 'Departamento'
end
%>
<%= f.input :departamentos,
collection: Msip::Departamento.habilitados.where(
pais_id: Msip.paisomision),
label_method: :nombre,
value_method: :id,
selected: dep_sel,
input_html: {
class: 'tom-select',
multiple: true,
'data-enviarautomatico' => ''
},
wrapper_html: { 'style': estdep}
%>
</div>
</div>
<div class="row">
<div class="offset-sm-0 col-12">
<%
if params.nil? || params[:filtro].nil? ||
params[:filtro][:categorias].nil?
cat_sel = @vic_categorias
estcat = "display: block"
else
cat_sel = params[:filtro][:categorias]
estcat = "display: none" if params[:filtro][:desagregar] == 'Categoria'
end
%>
<%= f.input :categorias,
collection: @categorias_gen.group_by{ |c|
c.supracategoria.tviolencia_id},
group_label_method: lambda { |ca|
Sivel2Gen::Tviolencia.find(ca[0]).nombre},
as: :grouped_select,
group_method: :last,
selected: cat_sel,
value_method: :id,
label_method: lambda { |cat|
"#{Sivel2Gen::Supracategoria.find(cat.supracategoria_id.to_i).tviolencia_id}#{cat.id.to_s} #{cat.nombre}" },
input_html: {
class: 'tom-select',
multiple: true,
'data-enviarautomatico' => ''
},
wrapper_html: { 'style': estcat}
%>
</div>
</div>
</div>
<div class="card-footer text-center">
<%= f.submit 'Cargar/Actualizar',
'data-turbo' => false %>
</div>
</div>
<% end %>
<div class="row">
<div class="col-12">
<%= line_chart(series_gen, opciones_gen) %>
</div>
</div>
</br>
<div class="row">
<div class="col-12">
<%= column_chart(series_tot, opciones_tot) %>
</div>
</div>