TotalModel
in package
Modelo auxiliar para cargar una lista de totales, con o sin agrupación por código.
Table of Contents
Properties
Methods
- __construct() : mixed
- all() : array<string|int, static>
- Carga una lista de TotalModel (código y campos de estadísticas) para la tabla indicada.
- clearTotals() : void
- Reinicia los totales a 0.0.
- sum() : float
- dataBase() : DataBase
- emptyResult() : array<string|int, static>
- Devuelve un resultado con los totales a cero para los campos indicados.
- getFieldSQL() : string
- Devuelve los campos como parte de la consulta SQL.
- isValidAggregate() : bool
- Valida una expresión agregada del tipo SUM(campo), COUNT(*), AVG(tabla.campo), etc.
- isValidAlias() : bool
- Valida un alias de columna. Solo permite letras, números y guiones bajos.
- isValidFieldName() : bool
- Valida un nombre de campo. Permite identificadores simples, tabla.campo y las funciones lower(), upper(), substring(), concat().
- isValidTableName() : bool
- Valida un nombre de tabla. Solo permite letras, números y guiones bajos.
Properties
$code
public
string
$code
$totals
public
array<string|int, mixed>
$totals
$dataBase
private
static DataBase
$dataBase
Methods
__construct()
public
__construct([array<string|int, mixed> $data = [] ]) : mixed
Parameters
- $data : array<string|int, mixed> = []
all()
Carga una lista de TotalModel (código y campos de estadísticas) para la tabla indicada.
public
static all(string $tableName, array<string|int, mixed> $where, array<string|int, mixed> $fieldList[, string $fieldCode = '' ]) : array<string|int, static>
Parameters
- $tableName : string
- $where : array<string|int, mixed>
- $fieldList : array<string|int, mixed>
-
(['key' => 'SUM(total)', 'key2' => 'MAX(total)' ...])
- $fieldCode : string = ''
-
(para múltiples filas agrupadas por el campo código)
Return values
array<string|int, static>clearTotals()
Reinicia los totales a 0.0.
public
clearTotals(array<string|int, mixed> $totalFields) : void
Parameters
- $totalFields : array<string|int, mixed>
sum()
public
static sum(string $tableName, string $fieldName, array<string|int, mixed> $where) : float
Parameters
- $tableName : string
- $fieldName : string
- $where : array<string|int, mixed>
Return values
floatdataBase()
private
static dataBase() : DataBase
Return values
DataBaseemptyResult()
Devuelve un resultado con los totales a cero para los campos indicados.
private
static emptyResult(array<string|int, mixed> $fieldList) : array<string|int, static>
Parameters
- $fieldList : array<string|int, mixed>
Return values
array<string|int, static>getFieldSQL()
Devuelve los campos como parte de la consulta SQL.
private
static getFieldSQL(string $fieldCode, array<string|int, mixed> $fieldList) : string
Parameters
- $fieldCode : string
- $fieldList : array<string|int, mixed>
Return values
stringisValidAggregate()
Valida una expresión agregada del tipo SUM(campo), COUNT(*), AVG(tabla.campo), etc.
private
static isValidAggregate(string $expression) : bool
Parameters
- $expression : string
Return values
boolisValidAlias()
Valida un alias de columna. Solo permite letras, números y guiones bajos.
private
static isValidAlias(string $alias) : bool
Parameters
- $alias : string
Return values
boolisValidFieldName()
Valida un nombre de campo. Permite identificadores simples, tabla.campo y las funciones lower(), upper(), substring(), concat().
private
static isValidFieldName(string $fieldName) : bool
Parameters
- $fieldName : string
Return values
boolisValidTableName()
Valida un nombre de tabla. Solo permite letras, números y guiones bajos.
private
static isValidTableName(string $tableName) : bool
Parameters
- $tableName : string