From 22a023f150715ee3954852bde8e7adb59a9ee77f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Vladimir=20T=C3=A1mara=20Pati=C3=B1o?=
Date: Wed, 23 Oct 2024 15:14:50 -0500
Subject: [PATCH] =?UTF-8?q?Cambio=20inicial=20interno=20de=20ubicacion=20p?=
=?UTF-8?q?or=20ubicacionpre=20y=20uso=20de=20turbo=20en=20respectiva=20pe?=
=?UTF-8?q?sta=C3=B1a=20del=20formulario=20caso.=20Closes=20#725?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Gemfile.lock | 2 +-
.../javascripts/sivel2_gen/motor.js.coffee | 42 ---------------
.../caso_ubicacionespre_controller.rb | 8 +++
app/models/msip/ubicacionpre.rb | 8 +++
app/models/sivel2_gen/ability.rb | 21 ++++----
app/models/sivel2_gen/caso_ubicacionpre.rb | 8 +++
.../create.turbo_stream.erb | 20 +++++++
.../caso_ubicacionespre/destroy.html.erb | 10 ++++
.../casos/_caso_ubicacionpre_campos.html.erb | 53 +++++++++++++++++++
.../sivel2_gen/casos/_fuentesprensa.html.erb | 8 ++-
.../sivel2_gen/casos/_reportegeneral.html.erb | 2 +-
.../sivel2_gen/casos/_ubicaciones.html.erb | 32 ++++++-----
config/routes.rb | 7 +++
.../caso_ubicacionespre_controller.rb | 32 +++++++++++
.../concerns/controllers/casos_controller.rb | 36 +++++++++++++
lib/sivel2_gen/concerns/models/caso.rb | 13 +++++
.../concerns/models/caso_ubicacionpre.rb | 34 ++++++++++++
.../concerns/models/ubicacionpre.rb | 13 +++++
test/dummy/db/structure.sql | 24 +++------
19 files changed, 288 insertions(+), 85 deletions(-)
create mode 100644 app/controllers/sivel2_gen/caso_ubicacionespre_controller.rb
create mode 100644 app/models/msip/ubicacionpre.rb
create mode 100644 app/models/sivel2_gen/caso_ubicacionpre.rb
create mode 100644 app/views/sivel2_gen/caso_ubicacionespre/create.turbo_stream.erb
create mode 100644 app/views/sivel2_gen/caso_ubicacionespre/destroy.html.erb
create mode 100644 app/views/sivel2_gen/casos/_caso_ubicacionpre_campos.html.erb
create mode 100644 lib/sivel2_gen/concerns/controllers/caso_ubicacionespre_controller.rb
create mode 100644 lib/sivel2_gen/concerns/models/caso_ubicacionpre.rb
create mode 100644 lib/sivel2_gen/concerns/models/ubicacionpre.rb
diff --git a/Gemfile.lock b/Gemfile.lock
index 3d2cfd542..e160b3c4d 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -38,7 +38,7 @@ GIT
GIT
remote: https://gitlab.com/pasosdeJesus/msip.git
- revision: 7989958bcbc44605c27aa629171fd6f3aaf5bbab
+ revision: 1988385b522e329552aee0035df1e20fc9b22a34
branch: main
specs:
msip (2.3.0.alfa2)
diff --git a/app/assets/javascripts/sivel2_gen/motor.js.coffee b/app/assets/javascripts/sivel2_gen/motor.js.coffee
index 0965ca529..197286f3c 100644
--- a/app/assets/javascripts/sivel2_gen/motor.js.coffee
+++ b/app/assets/javascripts/sivel2_gen/motor.js.coffee
@@ -484,7 +484,6 @@ enviaFormularioContar= (root) ->
$('#ubicaciones').on('cocoon:after-insert', '', (e, ubicacion) ->
ubipais = 'select[id^=caso_][id$=pais_id]'
Msip__Motor.configurarElementoTomSelect(e.target)
- llena_departamento($(ubicacion.find(ubipais)), root)
if $(".ubicacion:visible").length == 1
principal = $('input[type="checkbox"][name$="[principal]"]:visible')
principal.prop('checked', true)
@@ -522,47 +521,6 @@ enviaFormularioContar= (root) ->
otros.prop('checked', false)
)
- # Al cambiar país se recalcula lista de departamentos
- $(document).on('change', 'select[id^=caso_][id$=pais_id]', (e) ->
- llena_departamento($(this), root)
- # Exprimentando actualizar a medida que se modifica:
- idfu = $(this).attr('id').replace('_pais_id', '_id');
- idu = $('#' + idfu).val();
- #if (idu > 0)
- # $.ajax(url: '/ubicacion/' + idu + '/update/'
- )
-
- # Al cambiar departamento se recalcula lista de municipios
- $(document).on('change', 'select[id^=caso_][id$=departamento_id]', (e) ->
- llena_municipio($(this), root)
- )
-
- # Al cambiar municipio se recalcula lista de centros poblados
- $(document).on('change', 'select[id^=caso_][id$=municipio_id]', (e) ->
- llena_centropoblado($(this), root)
- )
-
-
- # Al cambiar centro poblado se muestra tipo
- $(document).on('change', 'select[id^=caso_][id$=centropoblado_id]', (e) ->
- centropoblado_id = $(this).val()
- select = $(this)
- b = root.puntomontaje + 'tipocentropoblado'
- $.ajax({
- url: b,
- data: {id: centropoblado_id},
- dataType: "json",
- success: (datos) ->
- tcentropoblado = datos.nombre
- div_padre = select.closest("div")
- div_tipo = div_padre.next()
- input_tipo = div_tipo.find("input[id^=caso_ubicacion][id$=tcentropoblado]")
- input_tipo.val(tcentropoblado)
- error: (jqXHR, texto) ->
- alert("Error: " + jqXHR.responseText)
- })
- )
-
# Tras eliminar presponsable, eliminar dependientes
$('#presponsables').on('cocoon:after-remove', '', (e, presponsable) ->
elimina_pendientes(root.elempe);
diff --git a/app/controllers/sivel2_gen/caso_ubicacionespre_controller.rb b/app/controllers/sivel2_gen/caso_ubicacionespre_controller.rb
new file mode 100644
index 000000000..0cb6e2a63
--- /dev/null
+++ b/app/controllers/sivel2_gen/caso_ubicacionespre_controller.rb
@@ -0,0 +1,8 @@
+require 'sivel2_gen/concerns/controllers/caso_ubicacionespre_controller'
+
+module Sivel2Gen
+ class CasoUbicacionespreController < ApplicationController
+ load_and_authorize_resource class: Sivel2Gen::CasoUbicacionpre
+ include Sivel2Gen::Concerns::Controllers::CasoUbicacionespreController
+ end
+end
diff --git a/app/models/msip/ubicacionpre.rb b/app/models/msip/ubicacionpre.rb
new file mode 100644
index 000000000..018f4875a
--- /dev/null
+++ b/app/models/msip/ubicacionpre.rb
@@ -0,0 +1,8 @@
+
+require 'sivel2_gen/concerns/models/ubicacionpre'
+
+module Msip
+ class Ubicacionpre < ActiveRecord::Base
+ include Sivel2Gen::Concerns::Models::Ubicacionpre
+ end
+end
diff --git a/app/models/sivel2_gen/ability.rb b/app/models/sivel2_gen/ability.rb
index 5b0fd3946..1daa18a3c 100644
--- a/app/models/sivel2_gen/ability.rb
+++ b/app/models/sivel2_gen/ability.rb
@@ -271,15 +271,18 @@ def self.initialize_sivel2_gen(habilidad, usuario = nil)
habilidad.can :mundep, Msip::Ubicacionpre
- habilidad.can :manage, Sivel2Gen::CasoEtiqueta
- habilidad.can :manage, Sivel2Gen::CasoFuenteprensa
- habilidad.can :manage, Sivel2Gen::CasoFotra
- habilidad.can :manage, Sivel2Gen::CasoPresponsable
- habilidad.can :manage, Sivel2Gen::CasoSolicitud
- habilidad.can :nuevo, Sivel2Gen::Combatiente
- habilidad.can :nuevo, Sivel2Gen::Presponsable
- habilidad.can :manage, Sivel2Gen::Victima
- habilidad.can :manage, Sivel2Gen::Victimacolectiva
+ habilidad.can :manage, [
+ Sivel2Gen::CasoEtiqueta,
+ Sivel2Gen::CasoFuenteprensa,
+ Sivel2Gen::CasoFotra,
+ Sivel2Gen::CasoPresponsable,
+ Sivel2Gen::CasoSolicitud,
+ Sivel2Gen::CasoUbicacionpre,
+ Sivel2Gen::Combatiente,
+ Sivel2Gen::Presponsable,
+ Sivel2Gen::Victima,
+ Sivel2Gen::Victimacolectiva,
+ ]
if usuario && usuario.rol then
habilidad.can :nuevo, Msip::Ubicacion
diff --git a/app/models/sivel2_gen/caso_ubicacionpre.rb b/app/models/sivel2_gen/caso_ubicacionpre.rb
new file mode 100644
index 000000000..23e5827af
--- /dev/null
+++ b/app/models/sivel2_gen/caso_ubicacionpre.rb
@@ -0,0 +1,8 @@
+
+require 'sivel2_gen/concerns/models/caso_ubicacionpre'
+
+module Sivel2Gen
+ class CasoUbicacionpre < ActiveRecord::Base
+ include Sivel2Gen::Concerns::Models::CasoUbicacionpre
+ end
+end
diff --git a/app/views/sivel2_gen/caso_ubicacionespre/create.turbo_stream.erb b/app/views/sivel2_gen/caso_ubicacionespre/create.turbo_stream.erb
new file mode 100644
index 000000000..09a32f2c9
--- /dev/null
+++ b/app/views/sivel2_gen/caso_ubicacionespre/create.turbo_stream.erb
@@ -0,0 +1,20 @@
+<%= simple_form_for @caso do |form| %>
+ <%= form.simple_fields_for :caso_ubicacionpre,
+ child_index: params[:index] do |subf| %>
+
+ <%= turbo_stream.replace "agregar-caso-ubicacionpre" do %>
+ <%= form.submit "Agregar otra ubicacionpre",
+ formaction: sivel2_gen.crear_caso_ubicacionpre_path(
+ subf.index.to_i + 1
+ ),
+ formmethod: :post,
+ formnovalidate: true,
+ class: 'btn btn-sm btn-primary',
+ id: "agregar-caso-ubicacionpre" %>
+ <% end %>
+
+ <%= turbo_stream.append "caso_ubicacionespre_marco" do %>
+ <%= render "/sivel2_gen/casos/caso_ubicacionpre_campos", f: subf %>
+ <% end %>
+ <% end %>
+<% end %>
diff --git a/app/views/sivel2_gen/caso_ubicacionespre/destroy.html.erb b/app/views/sivel2_gen/caso_ubicacionespre/destroy.html.erb
new file mode 100644
index 000000000..834a5a60a
--- /dev/null
+++ b/app/views/sivel2_gen/caso_ubicacionespre/destroy.html.erb
@@ -0,0 +1,10 @@
+<%= fields model: @caso do |f| %>
+ <%= f.simple_fields_for :caso_ubicacionpre,
+ child_index: params[:index] do |subf| %>
+ <%= turbo_frame_tag "caso_ubicacionpre_#{subf.index}" do %>
+ <%= subf.hidden_field :id, value: params[:id] %>
+ <%= subf.hidden_field :_destroy, value: true %>
+ <% end %>
+ <% end %>
+<% end %>
+
diff --git a/app/views/sivel2_gen/casos/_caso_ubicacionpre_campos.html.erb b/app/views/sivel2_gen/casos/_caso_ubicacionpre_campos.html.erb
new file mode 100644
index 000000000..dad05cdcd
--- /dev/null
+++ b/app/views/sivel2_gen/casos/_caso_ubicacionpre_campos.html.erb
@@ -0,0 +1,53 @@
+<%= turbo_frame_tag "caso_ubicacionpre_#{f.index}" do %>
+
+
+ <%= f.input :id, as: :hidden %>
+ <% if f.object.ubicacionpre.nil? %>
+ <% f.object.ubicacionpre = Msip::Ubicacionpre.new %>
+ <% end %>
+
+ <%= f.input :ubicacionpre_id, as: :hidden %>
+
+ <% htmlid = f.index %>
+ <%= render partial: "msip/ubicacionespre/cuatro_filas", locals: {
+ f: f,
+ htmlid: "ubicacionpre-#{htmlid}",
+ estilogen: "",
+ campopais: :ubicacionpre_pais,
+ campopais_etiqueta: "País",
+ campodepartamento: :ubicacionpre_departamento,
+ campodepartamento_etiqueta: "Departamento",
+ campomunicipio: :ubicacionpre_municipio,
+ campomunicipio_etiqueta: "Municipio",
+ idresto: "restoubicacionpre",
+ campocentropoblado: :ubicacionpre_centropoblado,
+ campocentropoblado_etiqueta: "Centro poblado",
+ campolugar: :ubicacionpre_lugar,
+ campolugar_etiqueta: "Barrio o vereda",
+ campoubicacionpre_id: :ubicacionpre_id,
+ campositio: :ubicacionpre_sitio,
+ campositio_etiqueta: "Dirección o finca",
+ campotsitio: :ubicacionpre_tsitio,
+ campotsitio_etiqueta: "Tipo de sitio",
+ campolatitud: :ubicacionpre_latitud,
+ campolatitud_etiqueta: "Latitud",
+ campolongitud: :ubicacionpre_longitud,
+ campolongitud_etiqueta: "Longitud"
+ } %>
+
+
+ <%= f.submit "Eliminar",
+ formaction: sivel2_gen.eliminar_caso_ubicacionpre_path(
+ id: f.object.id, index: f.index),
+ formmethod: :delete,
+ formnovalidate: true,
+ class: "btn btn-sm btn-danger",
+ data: {
+ disable_with: false,
+ turbo_frame: "caso_ubicacionpre_#{f.index}",
+ turbo_method: :delete
+ } %>
+
+
+
+<% end %>
diff --git a/app/views/sivel2_gen/casos/_fuentesprensa.html.erb b/app/views/sivel2_gen/casos/_fuentesprensa.html.erb
index 5a0d151af..da275eac2 100644
--- a/app/views/sivel2_gen/casos/_fuentesprensa.html.erb
+++ b/app/views/sivel2_gen/casos/_fuentesprensa.html.erb
@@ -6,12 +6,16 @@
<%= f.submit "Agregar fuente",
- formaction: sivel2_gen.crear_caso_fuenteprensa_path(index: @caso.fuenteprensa.size),
+ formaction: sivel2_gen.crear_caso_fuenteprensa_path(
+ index: @caso.fuenteprensa.size
+ ),
formmethod: :post,
formnovalidate: true,
class: 'btn btn-sm btn-primary',
name: "agregar-caso-fuenteprensa",
id: "agregar-caso-fuenteprensa",
data: {
- disable_with: false } %>
+ disable_with: false
+ }
+%>
diff --git a/app/views/sivel2_gen/casos/_reportegeneral.html.erb b/app/views/sivel2_gen/casos/_reportegeneral.html.erb
index 5c1750689..1be36725e 100644
--- a/app/views/sivel2_gen/casos/_reportegeneral.html.erb
+++ b/app/views/sivel2_gen/casos/_reportegeneral.html.erb
@@ -50,7 +50,7 @@
<% end %>
<% if current_usuario %>
- <% caso.ubicacion.each do |ub| %>
+ <% caso.ubicacionpre.each do |ub| %>
<% next if ub.id == caso.ubicacion_id %>
<%= ub.departamento.nombre if ub.departamento%> /
diff --git a/app/views/sivel2_gen/casos/_ubicaciones.html.erb b/app/views/sivel2_gen/casos/_ubicaciones.html.erb
index 45a7b917f..a84abf961 100644
--- a/app/views/sivel2_gen/casos/_ubicaciones.html.erb
+++ b/app/views/sivel2_gen/casos/_ubicaciones.html.erb
@@ -1,13 +1,21 @@
-<%= f.simple_fields_for :ubicacion do |ubicacion| %>
- <%= render 'ubicacion_fields', :f => ubicacion %>
-<% end %>
-
- <%= link_to_add_association 'Añadir Ubicación', f, :ubicacion, {
- :class => 'btn btn-sm btn-primary',
- "data-ajax" => File.join(
- Rails.configuration.relative_url_root ,
- "ubicaciones/nuevo"
- ),
- "data-ajaxdata" => "caso_id"
- } %>
+
+ <%= f.simple_fields_for :caso_ubicacionpre,
+ f.object.caso_ubicacionpre.order(:id),
+ child_index: params[:index] do |cubi| %>
+ <%= render 'sivel2_gen/casos/caso_ubicacionpre_campos', :f => cubi %>
+ <% end %>
+
+<%= f.submit "Agregar ubicacion",
+ formaction: sivel2_gen.crear_caso_ubicacionpre_path(
+ index: @caso.caso_ubicacionpre.size
+ ),
+ formmethod: :post,
+ formnovalidate: true,
+ class: 'btn btn-sm btn-primary',
+ name: "agregar-caso-ubicacionpre",
+ id: "agregar-caso-ubicacionpre",
+ data: {
+ disable_with: false
+ }
+%>
diff --git a/config/routes.rb b/config/routes.rb
index ff9f96360..14c707602 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -128,6 +128,13 @@
end
end
+ resources :caso_ubicacionpre, only: [], param: :index do
+ member do
+ delete '(:id)', to: "caso_ubicacionespre#destroy", as: "eliminar"
+ post '/' => "caso_ubicacionespre#create", as: "crear"
+ end
+ end
+
resources :familiar, only: [], param: :index do
member do
delete '(:id)', to: "familiares#eliminar_familiar", as: "eliminar"
diff --git a/lib/sivel2_gen/concerns/controllers/caso_ubicacionespre_controller.rb b/lib/sivel2_gen/concerns/controllers/caso_ubicacionespre_controller.rb
new file mode 100644
index 000000000..128f608ef
--- /dev/null
+++ b/lib/sivel2_gen/concerns/controllers/caso_ubicacionespre_controller.rb
@@ -0,0 +1,32 @@
+module Sivel2Gen
+ module Concerns
+ module Controllers
+ module CasoUbicacionespreController
+ extend ActiveSupport::Concern
+
+ included do
+ include ActionView::Helpers::AssetUrlHelper
+
+ before_action :prepara_caso
+
+ def destroy
+ end
+
+ def create
+ end
+
+ private
+
+ def prepara_caso
+ @caso = Sivel2Gen::Caso.new(
+ caso_ubicacionpre: [Sivel2Gen::CasoUbicacionpre.new]
+ )
+ end
+
+ end # included
+
+ end
+ end
+ end
+end
+
diff --git a/lib/sivel2_gen/concerns/controllers/casos_controller.rb b/lib/sivel2_gen/concerns/controllers/casos_controller.rb
index 712394b76..c33131578 100644
--- a/lib/sivel2_gen/concerns/controllers/casos_controller.rb
+++ b/lib/sivel2_gen/concerns/controllers/casos_controller.rb
@@ -858,6 +858,27 @@ def asignar_id_personatrelacion(
# PATCH/PUT /casos/1.json
def update_gen
respond_to do |format|
+
+ if (caso_params[:caso_ubicacionpre_attributes])
+ # Usa ubicacionepre existente o agrega si hace falta
+ caso_params[:caso_ubicacionpre_attributes].each do |clave, cu|
+ if cu[:ubicacionpre_pais_id]
+ upid = Msip::Ubicacionpre::buscar_o_agregar(
+ cu[:ubicacionpre_pais_id],
+ cu[:ubicacionpre_departamento_id],
+ cu[:ubicacionpre_municipio_id],
+ cu[:ubicacionpre_centropoblado_id],
+ cu[:ubicacionpre_lugar],
+ cu[:ubicacionpre_sitio],
+ cu[:ubicacionpre_tsitio_id],
+ cu[:ubicacionpre_latitud],
+ cu[:ubicacionpre_longitud]
+ )
+ params[:caso][:caso_ubicacionpre_attributes][clave]["ubicacionpre_id"] = upid
+ end
+ end
+ end
+
# En etiquetas pone usuario actual por omision
if (!params[:caso][:caso_etiqueta_attributes].nil?)
params[:caso][:caso_etiqueta_attributes].each do |k,v|
@@ -1395,6 +1416,21 @@ def lista_params_sivel2_gen
:usuarionotificar_ids => []
]
],
+ :caso_ubicacionpre_attributes => [
+ :id,
+ :ubicacionpre_id,
+ :ubicacionpre_centropoblado_id,
+ :ubicacionpre_departamento_id,
+ :ubicacionpre_municipio_id,
+ :ubicacionpre_pais_id,
+ :ubicacionpre_tsitio_id,
+ :ubicacionpre_latitud,
+ :ubicacionpre_longitud,
+ :ubicacionpre_lugar,
+ :ubicacionpre_principal,
+ :ubicacionpre_sitio,
+ :_destroy,
+ ],
:combatiente_attributes => [
:alias,
:edad,
diff --git a/lib/sivel2_gen/concerns/models/caso.rb b/lib/sivel2_gen/concerns/models/caso.rb
index 9b6fe9938..cbda6e7ba 100644
--- a/lib/sivel2_gen/concerns/models/caso.rb
+++ b/lib/sivel2_gen/concerns/models/caso.rb
@@ -98,6 +98,19 @@ module Caso
class_name: 'Sivel2Gen::CasoUsuario', dependent: :delete_all
has_many :usuario, :through => :caso_usuario, class_name: 'Usuario'
+ has_many :caso_ubicacionpre,
+ class_name: "Sivel2Gen::CasoUbicacionpre",
+ dependent: :delete_all,
+ foreign_key: "caso_id"
+ accepts_nested_attributes_for :caso_ubicacionpre,
+ allow_destroy: true,
+ reject_if: :all_blank
+ has_many :ubicacionpre, through: :caso_ubicacionpre,
+ class_name: 'Msip::Ubicacionpre'
+ accepts_nested_attributes_for :ubicacionpre,
+ allow_destroy: true,
+ reject_if: :all_blank
+
has_many :ubicacion, foreign_key: "caso_id", validate: true,
dependent: :destroy, class_name: 'Msip::Ubicacion'
accepts_nested_attributes_for :ubicacion, allow_destroy: true,
diff --git a/lib/sivel2_gen/concerns/models/caso_ubicacionpre.rb b/lib/sivel2_gen/concerns/models/caso_ubicacionpre.rb
new file mode 100644
index 000000000..c9b742821
--- /dev/null
+++ b/lib/sivel2_gen/concerns/models/caso_ubicacionpre.rb
@@ -0,0 +1,34 @@
+
+require 'msip/accesores_ubicacionpre'
+
+module Sivel2Gen
+ module Concerns
+ module Models
+ module CasoUbicacionpre
+ extend ActiveSupport::Concern
+
+ included do
+ include Msip::Localizacion
+
+ extend Msip::AccesoresUbicacionpre
+
+ accesores_ubicacionpre :ubicacionpre
+
+ belongs_to :caso,
+ class_name: "Sivel2Gen::Caso",
+ foreign_key: "caso_id",
+ validate: false,
+ inverse_of: :caso_ubicacionpre,
+ optional: false
+ belongs_to :ubicacionpre,
+ class_name: 'Msip::Ubicacionpre',
+ foreign_key: "ubicacionpre_id",
+ validate: false,
+ optional: false
+
+ end # included
+
+ end
+ end
+ end
+end
diff --git a/lib/sivel2_gen/concerns/models/ubicacionpre.rb b/lib/sivel2_gen/concerns/models/ubicacionpre.rb
new file mode 100644
index 000000000..3c7f26d46
--- /dev/null
+++ b/lib/sivel2_gen/concerns/models/ubicacionpre.rb
@@ -0,0 +1,13 @@
+require 'msip/concerns/models/ubicacionpre'
+
+module Sivel2Gen
+ module Concerns
+ module Models
+ module Ubicacionpre
+ extend ActiveSupport::Concern
+ include Msip::Concerns::Models::Ubicacionpre
+ end
+ end
+ end
+end
+
diff --git a/test/dummy/db/structure.sql b/test/dummy/db/structure.sql
index b04f2dbc2..9d72d93b5 100644
--- a/test/dummy/db/structure.sql
+++ b/test/dummy/db/structure.sql
@@ -1796,8 +1796,11 @@ CREATE VIEW public.cvt1 AS
categoria.nombre AS categoria,
ubicacion.departamento_id,
departamento.deplocal_cod AS departamento_divipola,
- departamento.nombre AS departamento_nombre
- FROM (((((((public.sivel2_gen_acto acto
+ departamento.nombre AS departamento_nombre,
+ ubicacion.municipio_id,
+ ((departamento.deplocal_cod * 1000) + municipio.munlocal_cod) AS municipio_divipola,
+ municipio.nombre AS municipio_nombre
+ FROM ((((((((public.sivel2_gen_acto acto
JOIN public.sivel2_gen_caso caso ON ((acto.caso_id = caso.id)))
JOIN public.sivel2_gen_categoria categoria ON ((acto.categoria_id = categoria.id)))
JOIN public.sivel2_gen_supracategoria supracategoria ON ((categoria.supracategoria_id = supracategoria.id)))
@@ -1805,6 +1808,7 @@ CREATE VIEW public.cvt1 AS
JOIN public.msip_persona persona ON ((persona.id = acto.persona_id)))
LEFT JOIN public.msip_ubicacion ubicacion ON ((caso.ubicacion_id = ubicacion.id)))
LEFT JOIN public.msip_departamento departamento ON ((ubicacion.departamento_id = departamento.id)))
+ LEFT JOIN public.msip_municipio municipio ON ((ubicacion.municipio_id = municipio.id)))
WHERE (categoria.id = ANY (ARRAY[427, 397, 527, 297, 777, 197, 196, 526, 396, 296, 776, 426, 15, 45, 73, 55, 25, 35, 65, 92, 40, 50, 67, 801, 90, 37, 57, 26, 46, 16, 80, 85, 66, 64, 703, 59, 28, 18, 38, 49, 706, 501, 401, 125, 135, 115, 904, 331, 17, 402, 502, 231, 705, 62, 906, 104, 503, 403, 713, 101, 76, 302, 21, 11, 102, 27, 902, 903, 34, 301, 14, 24, 10, 20, 30, 292, 192, 422, 772, 522, 392, 63, 93, 910, 525, 295, 425, 195, 395, 775, 714, 78, 294, 194, 424, 774, 524, 394, 89, 905, 86, 701, 68, 141, 241, 341, 715, 704, 702, 23, 13, 33, 43, 53, 88, 98, 84, 709, 711, 707, 708, 710, 87, 97, 717, 917, 716, 916, 91, 95, 718, 193, 393, 523, 293, 773, 423, 48, 58, 75, 69, 41, 74, 22, 56, 72, 47, 12, 36, 771, 291, 191, 521, 421, 391, 19, 420, 520, 77, 29, 39, 712]));
@@ -7437,14 +7441,6 @@ ALTER TABLE ONLY public.sivel2_gen_categoria
ADD CONSTRAINT categoria_contada_en_fkey FOREIGN KEY (contadaen) REFERENCES public.sivel2_gen_categoria(id);
---
--- Name: sivel2_gen_categoria categoria_contadaen_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
---
-
-ALTER TABLE ONLY public.sivel2_gen_categoria
- ADD CONSTRAINT categoria_contadaen_fkey FOREIGN KEY (contadaen) REFERENCES public.sivel2_gen_categoria(id);
-
-
--
-- Name: sivel2_gen_contextovictima_victima contextovictima_victima_contextovictima_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
--
@@ -8237,14 +8233,6 @@ ALTER TABLE ONLY public.msip_persona
ADD CONSTRAINT persona_tdocumento_id_fkey FOREIGN KEY (tdocumento_id) REFERENCES public.msip_tdocumento(id);
---
--- Name: sivel2_gen_presponsable presponsable_papa_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
---
-
-ALTER TABLE ONLY public.sivel2_gen_presponsable
- ADD CONSTRAINT presponsable_papa_fkey FOREIGN KEY (papa_id) REFERENCES public.sivel2_gen_presponsable(id);
-
-
--
-- Name: sivel2_gen_caso_presponsable presuntos_responsables_caso_id_caso_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
--