Class: Heb412Gen::Ability

Inherits:
Mr519Gen::Ability
  • Object
show all
Defined in:
app/models/heb412_gen/ability.rb

Constant Summary collapse

ROLADMIN =
1
ROLDIR =

ROLINV = 2

3
ROLOPERADOR =

ROLCOOR = 4

ROLANALI = 5
ROLES =

ROLSIST = 6

[
  ["Administrador", ROLADMIN], # 1
  ["", 0], # 2
  ["Directivo", ROLDIR], # 3
  ["", 0], # 4
  ["Operador", ROLOPERADOR], # 5
  ["", 0], # 6
]
BASICAS_PROPIAS =
[]
BASICAS_ID_NOAUTO =
[]
NOBASICAS_INDSEQID =

Hereda basicas_id_noauto de msip

[
  ["heb412_gen", "campohc"],
  ["heb412_gen", "campoplantillahcm"],
  ["heb412_gen", "campoplantillahcr"],
  ["heb412_gen", "carpetaexclusiva"],
  ["heb412_gen", "doc"],
  ["heb412_gen", "formulario_plantillahcr"],
  ["heb412_gen", "plantilladoc"],
  ["heb412_gen", "plantillahcm"],
  ["heb412_gen", "plantillahcr"],
]
BASICAS_PRIO =
[]
CAMPOS_PLANTILLAS_PROPIAS =

Hereda tablasbasicas_prio de msip

{
  "Orgsocial" => {
    campos: [
      "actualizado_en",
      "anotaciones",
      "creado_en",
      "direccion",
      "fax",
      "id",
      "nombre",
      "pais",
      Msip::Orgsocial.human_attribute_name(
        :sectoresorgsocial,
      ).downcase.gsub(" ", "_"),
      "telefono",
      "web",
    ],
    controlador: "::OrgsocialesController",
    ruta: "/orgsociales",
  },

  "Persona" => {
    campos: [
      "actualizado_en",
      "apellidos",
      "anionac",
      "centro_poblado",
      "creado_en",
      "departamento",
      "dianac",
      "fechanac_localizada",
      "fechanac",
      "id",
      "mesnac",
      "municipio",
      "nacionalde",
      "numerodocumento",
      "nombres",
      "pais",
      "sexo",
      "tdoc",
      "tdocumento",
    ],
    controlador: "Msip::PersonasController",
    ruta: "/personas",
  },

  "Usuario" => {
    campos: [
      "actualizacion",
      "condensado_de_clave",
      "creacion",
      "correo",
      "descripcion",
      "fechacreacion",
      "fechadeshabilitacion",
      "id",
      "idioma",
      "nombre",
      "nusuario",
      "rol",
    ],
    controlador: "::UsuariosController",
    ruta: "/usuarios",
  },
}

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.lista_permisos_plantillahcmObject



124
125
126
# File 'app/models/heb412_gen/ability.rb', line 124

def self.lista_permisos_plantillahcm
  [Heb412Gen::Plantillahcm, Heb412Gen::Campoplantillahcm]
end

.lista_permisos_plantillahcrObject



128
129
130
# File 'app/models/heb412_gen/ability.rb', line 128

def self.lista_permisos_plantillahcr
  [Heb412Gen::Plantillahcr, Heb412Gen::Campoplantillahcr]
end

Instance Method Details

#campos_plantillasObject



120
121
122
# File 'app/models/heb412_gen/ability.rb', line 120

def campos_plantillas
  CAMPOS_PLANTILLAS_PROPIAS
end

#initialize_heb412_gen(usuario = nil) ⇒ Object

Se definen habilidades con cancancan Util en motores y aplicaciones de prueba En aplicaciones es mejor escribir completo el modelo de autorización para facilitar su análisis y evitar cambios inesperados al actualizar motores



139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
# File 'app/models/heb412_gen/ability.rb', line 139

def initialize_heb412_gen(usuario = nil)
  initialize_mr519_gen(usuario)

  if usuario && usuario.rol
    can(:read, Heb412Gen::Doc)
    can(:read, Heb412Gen::Plantilladoc)
    can(:read, Heb412Gen::Ability::lista_permisos_plantillahcm)
    can(:read, Heb412Gen::Ability::lista_permisos_plantillahcr)

    case usuario.rol
    when Ability::ROLANALI
    when Ability::ROLADMIN
      can(:manage, Heb412Gen::Doc)
      can(:manage, Heb412Gen::Plantilladoc)
      can(:manage, Heb412Gen::Ability::lista_permisos_plantillahcm)
      can(:manage, Heb412Gen::Ability::lista_permisos_plantillahcr)
      can(:manage, Heb412Gen::Carpetaexclusiva)
    end
  end
end

#nobasicas_indice_seq_con_idObject

Tablas no básicas pero que tienen índice *_seq_id



44
45
46
47
48
# File 'app/models/heb412_gen/ability.rb', line 44

def nobasicas_indice_seq_con_id
  Msip::Ability::NOBASICAS_INDSEQID +
    Mr519Gen::Ability::NOBASICAS_INDSEQID +
    NOBASICAS_INDSEQID
end

#tablasbasicasObject



23
24
25
26
# File 'app/models/heb412_gen/ability.rb', line 23

def tablasbasicas
  Msip::Ability::BASICAS_PROPIAS +
    Heb412Gen::Ability::BASICAS_PROPIAS
end