Herramientas de usuario

Herramientas del sitio


desarrolladores:desarrolladores:administracion_de_convenios:sfconvenioadm.class.php

¡Esta es una revisión vieja del documento!


sfConvenioAdmBase.class.php

Es la clase que instancia los objetos que aplican los convenios. El convenio se persiste como un json que define bloques de reglas para aplicar. Cada bloque tiene una condición de agregación y dos listas de de reglas. Si la condicón de agregación es verdadera, entonces se incorporan las reglas de la lista then. Si la condición es falsa, entonces se agregan las reglas de la lista else.

El json tiene la siguiente estructura:

{
“A Todos - Inicio”: {
“op”: {
“TRUE”: []
},
“then”: [],
“else”: []
},
“SOLO TEST”: {
“op”: {
“IN”: {
“left”: “idLaboratorio”,
“right”: []
}
},
“then”: [],
“else”: []
}
}

En el ejemplo se ven dos bloques con sus respectivas operaciones de agregación. El primero es “A Todos - Inicio” y su condición de agregación es TRUE, siempre se incorporan las reglas de la lista “then”. En el segundo bloque tenemos una operación de agregación diferente que puede ocaciones un resultado true o false, es decir puede que se incorporen las reglas de la lista “then” o de la lista “else” respectivamente.

EL ORDEN DE LOS BLOQUES Y DE LAS REGLAS ES MUY IMPORTANTE. ESO DEFINE EL ORDEN DE EJECUCION DE LA LISTA DE REGLAS FINAL.

Propiedades

El objeto de clase sfConvenioAdmBase tiene un arreglo interno de bloques ya parseados. Los mismos son de clase ctBlockBase.

Métodos

getBlocksCount()

Devuelve la cantidad de bloques.

getBlocks()

Devuelve el arrglo/lista de objetos de tipo ctBlockBase. Es decir, es un arreglo con indices 0, 1, 2… n segun la cantidad de bloques del json persistido en la DB.

ctBlockBase

desarrolladores/desarrolladores/administracion_de_convenios/sfconvenioadm.class.php.1622040350.txt.gz · Última modificación: 21/01/2023 04:19 (editor externo)