Class: Sivel2Gen::Fil23Gen::GraficarPlotlyController
- Inherits:
-
ApplicationController
- Object
- Msip::ApplicationController
- ApplicationController
- Sivel2Gen::Fil23Gen::GraficarPlotlyController
- Defined in:
- app/controllers/sivel2_gen/fil23_gen/graficar_plotly_controller.rb
Instance Method Summary collapse
-
#actos_individuales ⇒ Object
Control de acceso no estándar en función.
Instance Method Details
#actos_individuales ⇒ Object
Control de acceso no estándar en función
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
# File 'app/controllers/sivel2_gen/fil23_gen/graficar_plotly_controller.rb', line 9 def actos_individuales :contar, Sivel2Gen::Caso @rutadircsv = File.join( Rails.root, "public#{Rails.configuration.relative_url_root}" + "assets/csv").to_s unless Dir.exist?(@rutadircsv) Dir.mkdir(@rutadircsv) end @rutacsv = File.join( Rails.root, "public#{Rails.configuration.relative_url_root}" + "assets/csv/actos_individuales.csv").to_s tarc = Tempfile.new(['actos_individuales', '.csv'], '/var/www/tmp/') rutatmp = tarc.path tarc.close tarc.unlink sql = "COPY (SELECT DISTINCT " \ "caso.fecha, " \ "supracategoria.tviolencia_id AS tviolencia_id," \ "categoria.id AS categoria_id, " \ "categoria.nombre AS categoria_nombre, " \ "supracategoria.tviolencia_id || categoria.id || ' ' || categoria.nombre AS categoria_rotulo, " \ "acto.presponsable_id AS presponsable_id, " \ "presponsable.nombre AS presponsable, " \ "ubicacion.departamento_id AS departamento_id, " \ "ubicacion.municipio_id AS municipio_id, " \ "departamento.nombre AS departamento, " \ "municipio.nombre AS municipio, " \ "COUNT(*) as cuenta " \ "FROM sivel2_gen_acto AS acto " \ "JOIN sivel2_gen_caso AS caso ON caso.id = acto.caso_id " \ "JOIN sivel2_gen_categoria AS categoria ON categoria.id=acto.categoria_id " \ "JOIN sivel2_gen_supracategoria AS supracategoria ON supracategoria.id = categoria.supracategoria_id " \ "JOIN sivel2_gen_presponsable AS presponsable ON presponsable.id=acto.presponsable_id " \ "LEFT JOIN msip_ubicacion AS ubicacion ON ubicacion.id=caso.ubicacion_id " \ "LEFT JOIN msip_departamento AS departamento ON ubicacion.departamento_id=departamento.id " \ "LEFT JOIN msip_municipio AS municipio ON ubicacion.municipio_id=municipio.id " \ "GROUP BY 1,2,3,4,5,6,7,8,9,10,11) " \ " TO '#{rutatmp}' DELIMITER ',' CSV HEADER;" ActiveRecord::Base.connection.execute(sql) @rutadircsv = "/" if File.exist?(@rutacsv) File.unlink(@rutacsv) end FileUtils.cp(rutatmp, @rutacsv) render 'fil23_gen/graficar_plotly/actos_individuales', layout: 'application' end |