Proyecto

General

Perfil

Correccion - Mejora #4835

Actualizado por Oscar Abad hace 9 meses

h1. Especificación 

 En la subida de documentos, permitir "enlazar" documentos ya existentes en el acuerdo. 

 NOTA: algo similar está ya hecho en contratos. 

 Url ejemplo Acuerdos: 
 http://127.0.0.1:3000/agentes/7/configuracion_agente/acuerdo/listado 

 Url ejemplo Contratos: 
 http://127.0.0.1:3000/agentes/7/economico_agente/contrato/listado 

 Texto botón para enlazar documentos de estados anteriores: 
 "Vincular a un documento ya existente en el acuerdo actual" 

 Añadir soporte para modelo Acuerdo como en Contrato en la vista: 
 gor/app/views/documento/_formulario_asociar_o_nuevo.html.erb 

 Listado de documentos con opción de añadir nuevo o vínculo en: 
 gor/app/views/documento/listado.html.erb 
 gor/app/views/documento/_listado_asociados.html.erb 

 Enlace a documentos de un contrato: 
 <%= remote icono('documentos' + (@contrato.documento.empty? ? '' : '_r'), _('Ver documentos')), url: {update: update + '_sub', controller: :documento, action: :listado_asociados, objeto_id: @contrato.id, tipo: 'Contrato'}, html: {id: update + '_documentos'} %> 

 Enlace ACTUAL a documentos de un acuerdo: 
 <%= remote(icono('documentos', _('Listado de documentos asociados')),url: {action: 'documentos',id: @acuerdo, update: update + '_sub'}    ) %> 

 h1. Implementación 

 https://git.semillasl.com/gong/gor/-/merge_requests/24 

 h1. Implantación 

 Script para la generación de permisos sobre el nuevo controlador 'documento_acuerdo' del menú 'documentos_proyecto': 
 <pre><code class="ruby"> 
 PermisoXRol.where(menu: 'documentos_proyecto', controlador: 'documento_busqueda').each do |pxr| 
   pxr2 = PermisoXRol.find_by(rol_id: PermisoXRol.find_or_create_by(rol_id: pxr.rol_id, menu: pxr.menu, controlador: 'documento_acuerdo') 
   if pxr2 
     pxr2.update_attributes ver: pxr.ver, cambiar: pxr.cambiar 
   else 
     PermisoXRol.create rol_id: pxr.rol_id, menu: pxr.menu, controlador: 'documento_acuerdo', ver: pxr.ver, cambiar: pxr.cambiar 
   end 
 end 

 permisos_nuevos = PermisoXRol.where(menu: 'documentos_proyecto', controlador: 'documento_busqueda').map do |pxr| 
   PermisoXRol.new(rol_id: pxr.rol_id, menu: pxr.menu, controlador: 'documento_acuerdo', ver: pxr.ver, cambiar: pxr.cambiar) 
 end 
 PermisoXRol.import(permisos_nuevos) 
 </code></pre> 
      

Atrás