Skip to content

Commit

Permalink
En marco lógico actividad con turbo en lugar de coccon
Browse files Browse the repository at this point in the history
  • Loading branch information
vtamara committed Dec 6, 2024
1 parent a163dae commit 563a03f
Show file tree
Hide file tree
Showing 8 changed files with 161 additions and 50 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# frozen_string_literal: true

require "cor1440_gen/concerns/controllers/actividadespf_proyectofinanciero_controller"

module Cor1440Gen
class ActividadespfProyectofinancieroController < ApplicationController
before_action :preparar_actividadpf_proyectofinanciero
load_and_authorize_resource class: Cor1440Gen::Actividadpf

include Cor1440Gen::Concerns::Controllers::ActividadespfProyectofinancieroController
end
end
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
<%= simple_form_for @proyectofinanciero do |f| %>
<%= f.simple_fields_for :actividadpf,
child_index: params[:index] do |subf| %>
<%= turbo_stream.replace "agregar-actividadpf" do %>
<%= f.submit "Agregar #{Cor1440Gen::Proyectofinanciero.human_attribute_name(:actividadpf)}",
formaction: cor1440_gen.crear_actividadpf_proyectofinanciero_path(
subf.index.to_i + 1
),
formmethod: :post,
formnovalidate: true,
class: "btn btn-sm btn-primary",
id: "agregar-actividadpf",
data: {
disable_with: false
} %>
<% end %>

<%= turbo_stream.append "actividadespf_marco" do %>
<%= render(
partial: "/cor1440_gen/proyectosfinancieros/actividadpf_campos",
locals: {
f: subf,
ruta_eliminar: cor1440_gen.eliminar_actividadpf_proyectofinanciero_path
}) %>
<% end %>
<% end %>
<% end %>
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<%= fields model: @proyectofinanciero do |f| %>
<%= f.simple_fields_for :actividadpf,
child_index: params[:index] do |subf| %>
<%= turbo_frame_tag "actividadpf_#{subf.index}" do %>
<%= subf.hidden_field :id, value: params[:id] %>
<%= subf.hidden_field :_destroy, value: true %>
<% end %>
<% end %>
<% end %>
Original file line number Diff line number Diff line change
@@ -1,38 +1,48 @@
<tr class='nested-fields'>
<td>
<%= turbo_frame_tag "actividadpf_#{f.index}", class: 'div-tabla-fila nested-fields' do %>
<% if !f.object %>
<% f.object = Cor1440Gen::Actividadpf.new() %>
<% end %>
<% if !f.object.proyectofinanciero_id %>
<% f.object.proyectofinanciero_id = params[:proyectofinanciero][:id] %>
<% end %>

<div class="div-tabla-celda">
<%= f.association :resultadopf,
collection: Cor1440Gen::Resultadopf.joins(:objetivopf).
where(proyectofinanciero_id: f.object.proyectofinanciero_id).
order(["cor1440_gen_objetivopf.numero", "cor1440_gen_resultadopf.numero"]),
order([
"cor1440_gen_objetivopf.numero",
"cor1440_gen_resultadopf.numero"
]),
label: false,
label_method: lambda {
|t| (t.objetivopf ? t.objetivopf.numero : '') + t.numero}
%>
</td>
<td>
</div>
<div class="div-tabla-celda">
<%= f.input :nombrecorto, label: false %>
</td>
<td>
</div>
<div class="div-tabla-celda">
<%= f.input :titulo,
as: :text,
input_html: { rows: 3 },
label: false %>
</td>
<td>
</div>
<div class="div-tabla-celda">
<%= f.input :descripcion,
as: :text,
input_html: { rows: 3 },
label: false %>
</td>
<td>
</div>
<div class="div-tabla-celda">
<%= f.association :formulario,
collection: Mr519Gen::Formulario.all,
label_method: :presenta_nombre,
input_html: { class: 'tom-select' },
wrapper_html: { style: 'width: 8rem' },
label: false %>
</td>
<td>
</div>
<div class="div-tabla-celda">
<% col = Cor1440Gen::Actividadpf.where(
'proyectofinanciero_id IS NOT NULL') %>
<% if f.object.proyectofinanciero_id %>
Expand All @@ -47,12 +57,20 @@
input_html: { class: 'tom-select' },
wrapper_html: { style: 'width: 12rem' },
label: false %>
</td>
<td>
</div>
<div class="div-tabla-celda">
<%= f.input :id, as: :hidden %>
<%= link_to_remove_association t("Eliminar"), f,
:class => 'btn btn-sm btn-danger', "data-existing" => true %>
<%= f.submit "Eliminar",
formaction: cor1440_gen.eliminar_actividadpf_proyectofinanciero_path(
id: f.object.id, index: f.index || params[:index]
),
formmethod: :delete,
formnovalidate: true,
class: 'btn btn-sm btn-danger',
data: {
turbo_frame: "actividadpf_#{f.index}",
disable_with: false
} %>
<div><%= f.error_notification %></div>
</td>
</tr>

</div>
<% end %>
Original file line number Diff line number Diff line change
@@ -1,36 +1,41 @@
<p></p>
<%= f.input :id, as: :hidden %>
<div class="panel panel-default">
<div class="panel-heading"><%= t('Actividades del marco lógico') %></div>
<div class="panel-body table-responsive" style='overflow-x:scroll;'>
<div class="div-actividadespf">
<table class='table table-bordered' border=1 width="100%">
<thead>
<tr>
<th style='min-width: 8rem'><%= t('refresultado') %></th>
<th style='min-width: 4rem'><%= t('Código') %></th>
<th style='min-width: 18rem'><%= t('Actividad del marco lógico') %></th>
<th style='min-width: 18rem'><%= t('Detalle') %></th>
<th style='min-width: 8rem'><%= t('Formulario') %></th>
<th style='min-width: 14rem'><%= t('Hereda de') %></th>
<th style='min-width: 4rem'><%= t('Acciones') %></th>
</tr>
</thead>
<tbody id="actividadespf">
<%= f.simple_fields_for :actividadpf,
<div class="panel-heading"><%= t('Actividades') %></div>
<div class="panel-body">

<div class="div-actividadespf table-responsive">
<div class='div-tabla'>
<div id="actividadespf_marco" class="div-tabla-cuerpo">
<div class="div-tabla-fila">
<div class="div-tabla-celda-encabezado"><%= t('refresultado') %></div>
<div class="div-tabla-celda-encabezado"><%= t('Código') %></div>
<div class="div-tabla-celda-encabezado"><%= t('Actividad del marco lógico') %></div>
<div class="div-tabla-celda-encabezado"><%= t('Detalle') %></div>
<div class="div-tabla-celda-encabezado"><%= t('Formulario') %></div>
<div class="div-tabla-celda-encabezado"><%= t('Hereda de') %></div>
<div class="div-tabla-celda-encabezado"><%= t('Acciones') %></div>
</div>
<%= f.simple_fields_for :actividadpf,
f.object.actividadpf.order(:id) do |o| %>
<%= render 'actividadpf_campos', f: o %>
<% end %>
</tbody>
</table>
<div class="links">
<%= link_to_add_association t('Añadir actividad'), f, :actividadpf, {
:"data-association-insertion-node" => "tbody#actividadespf",
:"data-association-insertion-method" => "append",
partial: 'actividadpf_campos',
class: 'btn btn-sm btn-primary',
"data-ajax" => cor1440_gen.new_actividadespf_path,
"data-ajaxdata" => "proyectofinanciero_id" } %>
</div> <!-- links -->
</div>
</div>
<div class="enlace-agregar-actividadpf">
<%= f.submit "Agregar #{Cor1440Gen::Actividadpf.human_attribute_name(:actividadpf)}",
formaction: cor1440_gen.crear_actividadpf_proyectofinanciero_path(
index: @proyectofinanciero.actividadpf.size
),
formmethod: :post,
formnovalidate: true,
class: 'btn btn-sm btn-primary',
name: "agregar-actividadpf",
id: "agregar-actividadpf",
data: {
disable_with: false
} %>
</div> <!-- enlace-agregar-actividadpf -->
</div> <!-- .div-actividadespf -->
</div> <!-- panel-body -->
</div> <!-- panel -->
</div><!-- panel-body -->
</div><!-- panel -->
1 change: 1 addition & 0 deletions config/initializers/inflections.rb
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
ActiveSupport::Inflector.inflections do |inflect|
inflect.irregular("asistencia", "asistencias")
inflect.irregular("actividad", "actividades")
inflect.irregular("actividadpf", "actividadespf")
inflect.irregular("actividadarea", "actividadareas")
inflect.irregular("campotind", "campostind")
inflect.irregular("informeauditoria", "informeauditorias")
Expand Down
8 changes: 8 additions & 0 deletions config/routes.rb
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,14 @@

resources :resultadospf, only: [:new, :destroy]

resources :actividadpf_proyectofinanciero, only: [], param: :index do
member do
delete '(:id)', to: "actividadespf_proyectofinanciero#destroy",
as: "eliminar"
post '/' => "actividadespf_proyectofinanciero#create", as: "crear"
end
end

resources :indicadorpf_proyectofinanciero, only: [], param: :index do
member do
delete '(:id)', to: "indicadorespf_proyectofinanciero#destroy",
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
module Cor1440Gen
module Concerns
module Controllers
module ActividadespfProyectofinancieroController
extend ActiveSupport::Concern

included do

def create
end

def destroy
end

private

def preparar_actividadpf_proyectofinanciero
#o = Cor1440Gen::Objetivopf.new
r = Cor1440Gen::Actividadpf.new
@registro = @proyectofinanciero =
Cor1440Gen::Proyectofinanciero.new(
actividadpf: [r]
)
end

end # included

end
end
end
end

0 comments on commit 563a03f

Please sign in to comment.