CodeModel
in package
Modelo auxiliar para cargar una lista de códigos y sus descripciones.
Se utiliza para alimentar widgets de tipo select y otros componentes que necesiten pares código/descripción a partir de una tabla o modelo.
Tags
Table of Contents
Constants
- ALL_LIMIT : mixed = 1000
- MODEL_NAMESPACE : mixed = '\FacturaScripts\Dinamic\Model\\'
- SEARCH_LIMIT : mixed = 50
Properties
- $code : string
- $description : string
- $dataBase : DataBase
- $limit : int
Methods
- __construct() : mixed
- all() : array<string|int, static>
- Carga una lista CodeModel (código y descripción) para la tabla indicada.
- array2codeModel() : array<string|int, static>
- Convierte un array asociativo (código y valor) en un array de CodeModel.
- get() : static
- Devuelve un CodeModel con los datos seleccionados.
- getDescription() : string
- Devuelve una descripción con los datos seleccionados.
- getLimit() : int
- search() : array<string|int, static>
- Carga una lista CodeModel (código y descripción) para la tabla indicada y la búsqueda.
- setLimit() : void
- db() : DataBase
- isValidFieldName() : bool
- Valida que un nombre de campo sea seguro para usar en consultas SQL.
- isValidTableName() : bool
- Valida que un nombre de tabla sea seguro para usar en consultas SQL.
- modelBaseName() : string
- Devuelve el basename de un modelo (ej: "Join\PartidaAsiento" -> "PartidaAsiento") para comparar contra modelClassName().
- codeModelAll() : array<string|int, mixed>
- codeModelSearch() : array<string|int, mixed>
- joinModelAll() : array<string|int, mixed>
- stripTablePrefix() : string
Constants
ALL_LIMIT
public
mixed
ALL_LIMIT
= 1000
MODEL_NAMESPACE
public
mixed
MODEL_NAMESPACE
= '\FacturaScripts\Dinamic\Model\\'
SEARCH_LIMIT
public
mixed
SEARCH_LIMIT
= 50
Properties
$code
public
string
$code
$description
public
string
$description
$dataBase
protected
static DataBase
$dataBase
$limit
protected
static int
$limit
Methods
__construct()
public
__construct([array<string|int, mixed> $data = [] ]) : mixed
Parameters
- $data : array<string|int, mixed> = []
all()
Carga una lista CodeModel (código y descripción) para la tabla indicada.
public
static all(string $tableName, string $fieldCode, string $fieldDescription[, bool $addEmpty = true ][, array<string|int, mixed> $where = [] ]) : array<string|int, static>
Parameters
- $tableName : string
- $fieldCode : string
- $fieldDescription : string
- $addEmpty : bool = true
- $where : array<string|int, mixed> = []
Return values
array<string|int, static>array2codeModel()
Convierte un array asociativo (código y valor) en un array de CodeModel.
public
static array2codeModel(array<string|int, mixed> $data[, bool $addEmpty = true ]) : array<string|int, static>
Parameters
- $data : array<string|int, mixed>
- $addEmpty : bool = true
Return values
array<string|int, static>get()
Devuelve un CodeModel con los datos seleccionados.
public
get(string $tableName, string $fieldCode, string $code, string $fieldDescription) : static
Parameters
- $tableName : string
- $fieldCode : string
- $code : string
- $fieldDescription : string
Return values
staticgetDescription()
Devuelve una descripción con los datos seleccionados.
public
getDescription(string $tableName, string $fieldCode, string $code, string $fieldDescription) : string
Parameters
- $tableName : string
- $fieldCode : string
- $code : string
- $fieldDescription : string
Return values
stringgetLimit()
public
static getLimit() : int
Return values
intsearch()
Carga una lista CodeModel (código y descripción) para la tabla indicada y la búsqueda.
public
static search(string $tableName, string $fieldCode, string $fieldDescription, string $query[, array<string|int, Where> $where = [] ]) : array<string|int, static>
Parameters
- $tableName : string
- $fieldCode : string
- $fieldDescription : string
- $query : string
- $where : array<string|int, Where> = []
Return values
array<string|int, static>setLimit()
public
static setLimit(int $newLimit) : void
Parameters
- $newLimit : int
db()
protected
static db() : DataBase
Return values
DataBaseisValidFieldName()
Valida que un nombre de campo sea seguro para usar en consultas SQL.
protected
static isValidFieldName(string $fieldName) : bool
Solo permite letras, números, guiones bajos y puntos (para campos con alias de tabla). También permite el uso de las funciones lower(), upper(), substring() y concat().
Parameters
- $fieldName : string
Return values
boolisValidTableName()
Valida que un nombre de tabla sea seguro para usar en consultas SQL.
protected
static isValidTableName(string $tableName) : bool
Solo permite letras, números y guiones bajos.
Parameters
- $tableName : string
Return values
boolmodelBaseName()
Devuelve el basename de un modelo (ej: "Join\PartidaAsiento" -> "PartidaAsiento") para comparar contra modelClassName().
protected
static modelBaseName(string $tableName) : string
Parameters
- $tableName : string
Return values
stringcodeModelAll()
private
static codeModelAll(mixed $model, string $fieldCode) : array<string|int, mixed>
Parameters
- $model : mixed
- $fieldCode : string
Return values
array<string|int, mixed>codeModelSearch()
private
static codeModelSearch(mixed $model, string $query, string $fieldCode, array<string|int, mixed> $where) : array<string|int, mixed>
Parameters
- $model : mixed
- $query : string
- $fieldCode : string
- $where : array<string|int, mixed>
Return values
array<string|int, mixed>joinModelAll()
private
static joinModelAll(JoinModel $model, string $fieldCode, string $fieldDescription, array<string|int, mixed> $where) : array<string|int, mixed>
Parameters
- $model : JoinModel
- $fieldCode : string
- $fieldDescription : string
- $where : array<string|int, mixed>
Return values
array<string|int, mixed>stripTablePrefix()
private
static stripTablePrefix(string $field) : string
Parameters
- $field : string