Proveedor
        
        extends ComercialContact
    
    
            
            in package
            
        
    
    
            
            Uses
                            ModelTrait                    
    
        
            A supplier. It can be related to several addresses or accounts.
Tags
Table of Contents
- AUDIT_CHANNEL = 'audit'
 - DATE_STYLE = 'd-m-Y'
 - DATETIME_STYLE = 'd-m-Y H:i:s'
 - HOUR_STYLE = 'H:i:s'
 - SPECIAL_ACCOUNT = 'PROVEE'
 - SPECIAL_CREDITOR_ACCOUNT = 'ACREED'
 - $acreedor : bool
 - $cifnif : string
 - Tax identifier of the customer.
 - $codcliente : string
 - Identifier code of the customer.
 - $codimpuestoportes : string
 - $codpago : string
 - Default payment method for this customer.
 - $codproveedor : string
 - Identifier code of the supplier.
 - $codretencion : string
 - Identifier code of the retention applied to this contact.
 - $codserie : string
 - Default series for this customer.
 - $codsubcuenta : string
 - Accounting code.
 - $debaja : bool
 - True -> the customer no longer buys us or we do not want anything with him.
 - $email : string
 - Email of the person.
 - $fax : string
 - Fax of the person.
 - $fechaalta : string
 - Date on which the customer was registered.
 - $fechabaja : string
 - Date on which the customer was discharged.
 - $idcontacto : int
 - $langcode : string
 - $nombre : string
 - Name by which we know the contact, not necessarily the official.
 - $observaciones : string
 - Observations of the person.
 - $personafisica : bool
 - True -> the customer is a natural person.
 - $razonsocial : string
 - Social reason of the client, that is, the official name. The one that appears on the invoices.
 - $regimeniva : string
 - Taxation regime of the provider. For now they are only implemented general and exempt.
 - $telefono1 : string
 - Phone 1 of the person.
 - $telefono2 : string
 - Phone 2 of the person.
 - $tipoidfiscal : string
 - Type of tax identification of the client.
 - $web : string
 - Website of the person.
 - $dataBase : DataBase
 - It provides direct access to the database.
 - $fields : array<string|int, mixed>
 - List of fields in the table.
 - __construct() : mixed
 - ModelClass constructor.
 - addExtension() : mixed
 - Adds an extension to this model.
 - all() : array<string|int, static>
 - Returns all models that correspond to the selected filters.
 - changePrimaryColumnValue() : bool
 - Change the value of the primary column in the model and the database.
 - checkVies() : bool
 - clear() : mixed
 - Reset the values of all model properties.
 - codeModelAll() : array<string|int, CodeModel>
 - Allows to use this model as source in CodeModel special model.
 - codeModelSearch() : array<string|int, mixed>
 - count() : int
 - Returns the number of records in the model that meet the condition.
 - delete() : bool
 - Remove the model data from the database.
 - exists() : bool
 - Returns true if the model data is stored in the database.
 - get() : static|false
 - Returns the model whose primary column corresponds to the value $cod
 - getAddresses() : array<string|int, Contacto>
 - Returns the addresses associated with this supplier.
 - getBankAccounts() : array<string|int, CuentaBancoProveedor>
 - Returns the bank accounts associated with the provider.
 - getDefaultAddress() : Contacto
 - Return the default billing or shipping address.
 - getModelFields() : array<string|int, mixed>
 - Returns the list of fields in the table.
 - getSubcuenta() : Subcuenta
 - gravatar() : string
 - Returns gravatar image url.
 - install() : string
 - This function is called when creating the model table. Returns the SQL that will be executed after the creation of the table. Useful to insert values default.
 - irpf() : float
 - Returns default contact retention value.
 - loadFromCode() : bool
 - Fill the class with the registry values whose primary column corresponds to the value $cod, or according to the condition where indicated, if value is not reported in $cod.
 - loadFromData() : mixed
 - Assign the values of the $data array to the model properties.
 - modelClassName() : string
 - Returns the name of the class of the model.
 - newCode() : int
 - Returns the following code for the reported field or the primary key of the model.
 - pipe() : mixed
 - Executes all $name methods added from the extensions.
 - pipeFalse() : bool
 - Executes all $name methods added from the extensions until someone returns false.
 - primaryColumn() : string
 - primaryColumnValue() : mixed
 - Returns the current value of the main column of the model.
 - primaryDescription() : string
 - Descriptive identifier for humans of the data record
 - primaryDescriptionColumn() : string
 - save() : bool
 - Stores the model data in the database.
 - table() : DbQuery
 - tableName() : string
 - test() : bool
 - Returns True if there is no errors on properties values.
 - toArray() : array<string|int, mixed>
 - Returns an array with the model fields values.
 - totalSum() : float
 - url() : string
 - Returns the url where to see / modify the data.
 - createSubcuenta() : Subcuenta
 - loadModelFields() : mixed
 - Loads table fields if is necessary.
 - modelName() : string
 - Returns the name of the model.
 - saveInsert() : bool
 - saveUpdate() : bool
 - Update the model data in the database.
 - toolBox() : ToolBox
 - Returns a new instance of the ToolBox class.
 - getBoolValueForField() : bool|null
 - Returns the boolean value for the field.
 - getFloatValueForField() : float|null
 - Returns the float value for the field.
 - getIntegerValueForField() : int|null
 - Returns the integer value by controlling special cases for the PK and FK.
 - getOrderBy() : string
 - Convert an array of filters order by in string.
 - getRecord() : array<string|int, mixed>
 - Read the record whose primary column corresponds to the value $cod or the first that meets the indicated condition.
 
Constants
AUDIT_CHANNEL
    public
        mixed
    AUDIT_CHANNEL
    = 'audit'
        
        
    
DATE_STYLE
    public
        mixed
    DATE_STYLE
    = 'd-m-Y'
        
        
    
DATETIME_STYLE
    public
        mixed
    DATETIME_STYLE
    = 'd-m-Y H:i:s'
        
        
    
HOUR_STYLE
    public
        mixed
    HOUR_STYLE
    = 'H:i:s'
        
        
    
SPECIAL_ACCOUNT
    public
        mixed
    SPECIAL_ACCOUNT
    = 'PROVEE'
        
        
    
SPECIAL_CREDITOR_ACCOUNT
    public
        mixed
    SPECIAL_CREDITOR_ACCOUNT
    = 'ACREED'
        
        
    
Properties
$acreedor
    public
        bool
    $acreedor
    
    
    
    
$cifnif
Tax identifier of the customer.
    public
        string
    $cifnif
    
    
    
    
$codcliente
Identifier code of the customer.
    public
        string
    $codcliente
    
    
    
    
$codimpuestoportes
    public
        string
    $codimpuestoportes
    
    
    
    
$codpago
Default payment method for this customer.
    public
        string
    $codpago
    
    
    
    
$codproveedor
Identifier code of the supplier.
    public
        string
    $codproveedor
    
    
    
    
$codretencion
Identifier code of the retention applied to this contact.
    public
        string
    $codretencion
    
    
    
    
$codserie
Default series for this customer.
    public
        string
    $codserie
    
    
    
    
$codsubcuenta
Accounting code.
    public
        string
    $codsubcuenta
    
    
    
    
$debaja
True -> the customer no longer buys us or we do not want anything with him.
    public
        bool
    $debaja
    
    
    
    
Email of the person.
    public
        string
    $email
    
    
    
    
$fax
Fax of the person.
    public
        string
    $fax
    
    
    
    
$fechaalta
Date on which the customer was registered.
    public
        string
    $fechaalta
    
    
    
    
$fechabaja
Date on which the customer was discharged.
    public
        string
    $fechabaja
    
    
    
    
$idcontacto
    public
        int
    $idcontacto
    
    
    
    
$langcode
    public
        string
    $langcode
    
    
    
    
$nombre
Name by which we know the contact, not necessarily the official.
    public
        string
    $nombre
    
    
    
    
$observaciones
Observations of the person.
    public
        string
    $observaciones
    
    
    
    
$personafisica
True -> the customer is a natural person.
    public
        bool
    $personafisica
    
        False -> the client is a legal person (company).
$razonsocial
Social reason of the client, that is, the official name. The one that appears on the invoices.
    public
        string
    $razonsocial
    
    
    
    
$regimeniva
Taxation regime of the provider. For now they are only implemented general and exempt.
    public
        string
    $regimeniva
    
    
    
    
$telefono1
Phone 1 of the person.
    public
        string
    $telefono1
    
    
    
    
$telefono2
Phone 2 of the person.
    public
        string
    $telefono2
    
    
    
    
$tipoidfiscal
Type of tax identification of the client.
    public
        string
    $tipoidfiscal
    
        Examples: CIF, NIF, CUIT ...
$web
Website of the person.
    public
        string
    $web
    
    
    
    
$dataBase
It provides direct access to the database.
    protected
    static    DataBase
    $dataBase
    
    
    
    
$fields
List of fields in the table.
    protected
    static    array<string|int, mixed>
    $fields
     = []
    
    
    
Methods
__construct()
ModelClass constructor.
    public
                    __construct([array<string|int, mixed> $data = [] ]) : mixed
    
        Parameters
- $data : array<string|int, mixed> = []
 
Return values
mixed —addExtension()
Adds an extension to this model.
    public
    abstract        static        addExtension(mixed $extension) : mixed
    
        Parameters
- $extension : mixed
 
Return values
mixed —all()
Returns all models that correspond to the selected filters.
    public
            static        all([array<string|int, mixed> $where = [] ][, array<string|int, mixed> $order = [] ], int $offset[, int $limit = 50 ]) : array<string|int, static>
    
        Parameters
- $where : array<string|int, mixed> = []
 - 
                    
filters to apply to model records.
 - $order : array<string|int, mixed> = []
 - 
                    
fields to use in the sorting. For example ['code' => 'ASC']
 - $offset : int
 - $limit : int = 50
 
Return values
array<string|int, static> —changePrimaryColumnValue()
Change the value of the primary column in the model and the database.
    public
                    changePrimaryColumnValue(mixed $newValue) : bool
    
        Parameters
- $newValue : mixed
 
Return values
bool —checkVies()
    public
                    checkVies([bool $msg = true ]) : bool
        
        Parameters
- $msg : bool = true
 
Return values
bool —clear()
Reset the values of all model properties.
    public
                    clear() : mixed
    
    
    
        Return values
mixed —codeModelAll()
Allows to use this model as source in CodeModel special model.
    public
                    codeModelAll([string $fieldCode = '' ]) : array<string|int, CodeModel>
    
        Parameters
- $fieldCode : string = ''
 
Return values
array<string|int, CodeModel> —codeModelSearch()
    public
                    codeModelSearch(string $query[, string $fieldCode = '' ][, array<string|int, mixed> $where = [] ]) : array<string|int, mixed>
        
        Parameters
- $query : string
 - $fieldCode : string = ''
 - $where : array<string|int, mixed> = []
 
Return values
array<string|int, mixed> —count()
Returns the number of records in the model that meet the condition.
    public
                    count([array<string|int, DataBaseWhere> $where = [] ]) : int
    
        Parameters
- $where : array<string|int, DataBaseWhere> = []
 - 
                    
filters to apply to model records.
 
Return values
int —delete()
Remove the model data from the database.
    public
                    delete() : bool
    
    
    
        Return values
bool —exists()
Returns true if the model data is stored in the database.
    public
                    exists() : bool
    
    
    
        Return values
bool —get()
Returns the model whose primary column corresponds to the value $cod
    public
                    get(string $code) : static|false
    
        Parameters
- $code : string
 
Return values
static|false —getAddresses()
Returns the addresses associated with this supplier.
    public
                    getAddresses() : array<string|int, Contacto>
    
    
    
        Return values
array<string|int, Contacto> —getBankAccounts()
Returns the bank accounts associated with the provider.
    public
                    getBankAccounts() : array<string|int, CuentaBancoProveedor>
    
    
    
        Return values
array<string|int, CuentaBancoProveedor> —getDefaultAddress()
Return the default billing or shipping address.
    public
                    getDefaultAddress() : Contacto
    
    
    
        Return values
Contacto —getModelFields()
Returns the list of fields in the table.
    public
    abstract                getModelFields() : array<string|int, mixed>
    
    
    
        Return values
array<string|int, mixed> —getSubcuenta()
    public
                    getSubcuenta(string $codejercicio, bool $crear) : Subcuenta
        
        Parameters
- $codejercicio : string
 - $crear : bool
 
Return values
Subcuenta —gravatar()
Returns gravatar image url.
    public
                    gravatar([int $size = 80 ]) : string
    
        Parameters
- $size : int = 80
 
Return values
string —install()
This function is called when creating the model table. Returns the SQL that will be executed after the creation of the table. Useful to insert values default.
    public
                    install() : string
    
    
    
        Return values
string —irpf()
Returns default contact retention value.
    public
                    irpf() : float
    
    
    
        Return values
float —loadFromCode()
Fill the class with the registry values whose primary column corresponds to the value $cod, or according to the condition where indicated, if value is not reported in $cod.
    public
                    loadFromCode(string $code[, array<string|int, mixed> $where = [] ][, array<string|int, mixed> $order = [] ]) : bool
        Initializes the values of the class if there is no record that meet the above conditions. Returns True if the record exists and False otherwise.
Parameters
- $code : string
 - $where : array<string|int, mixed> = []
 - $order : array<string|int, mixed> = []
 
Return values
bool —loadFromData()
Assign the values of the $data array to the model properties.
    public
                    loadFromData([array<string|int, mixed> $data = [] ][, array<string|int, mixed> $exclude = [] ]) : mixed
    
        Parameters
- $data : array<string|int, mixed> = []
 - $exclude : array<string|int, mixed> = []
 
Return values
mixed —modelClassName()
Returns the name of the class of the model.
    public
    abstract                modelClassName() : string
    
    
    
        Return values
string —newCode()
Returns the following code for the reported field or the primary key of the model.
    public
                    newCode([string $field = '' ][, array<string|int, mixed> $where = [] ]) : int
    
        Parameters
- $field : string = ''
 - $where : array<string|int, mixed> = []
 
Return values
int —pipe()
Executes all $name methods added from the extensions.
    public
    abstract                pipe(string $name, array<string|int, mixed> ...$arguments) : mixed
    
        Parameters
- $name : string
 - $arguments : array<string|int, mixed>
 
Return values
mixed —pipeFalse()
Executes all $name methods added from the extensions until someone returns false.
    public
    abstract                pipeFalse(string $name, array<string|int, mixed> ...$arguments) : bool
    
        Parameters
- $name : string
 - $arguments : array<string|int, mixed>
 
Return values
bool —primaryColumn()
    public
            static        primaryColumn() : string
        
    
    
        Return values
string —primaryColumnValue()
Returns the current value of the main column of the model.
    public
                    primaryColumnValue() : mixed
    
    
    
        Return values
mixed —primaryDescription()
Descriptive identifier for humans of the data record
    public
                    primaryDescription() : string
    
    
    
        Return values
string —primaryDescriptionColumn()
    public
                    primaryDescriptionColumn() : string
        
    
    
        Return values
string —save()
Stores the model data in the database.
    public
                    save() : bool
    
    
    
        Return values
bool —table()
    public
            static        table() : DbQuery
        
    
    
        Return values
DbQuery —tableName()
    public
            static        tableName() : string
        
    
    
        Return values
string —test()
Returns True if there is no errors on properties values.
    public
                    test() : bool
    
    
    
        Return values
bool —toArray()
Returns an array with the model fields values.
    public
                    toArray() : array<string|int, mixed>
    
    
    
        Return values
array<string|int, mixed> —totalSum()
    public
                    totalSum(string $field[, array<string|int, mixed> $where = [] ]) : float
        
        Parameters
- $field : string
 - $where : array<string|int, mixed> = []
 
Return values
float —url()
Returns the url where to see / modify the data.
    public
                    url([string $type = 'auto' ][, string $list = 'List' ]) : string
    
        Parameters
- $type : string = 'auto'
 - $list : string = 'List'
 
Return values
string —createSubcuenta()
    protected
                    createSubcuenta(string $codejercicio, string $specialAccount) : Subcuenta
        
        Parameters
- $codejercicio : string
 - $specialAccount : string
 
Return values
Subcuenta —loadModelFields()
Loads table fields if is necessary.
    protected
    abstract                loadModelFields(DataBase &$dataBase, string $tableName) : mixed
    
        Parameters
- $dataBase : DataBase
 - $tableName : string
 
Return values
mixed —modelName()
Returns the name of the model.
    protected
    abstract                modelName() : string
    
    
    
        Return values
string —saveInsert()
    protected
                    saveInsert([array<string|int, mixed> $values = [] ]) : bool
        
        Parameters
- $values : array<string|int, mixed> = []
 
Return values
bool —saveUpdate()
Update the model data in the database.
    protected
                    saveUpdate([array<string|int, mixed> $values = [] ]) : bool
    
        Parameters
- $values : array<string|int, mixed> = []
 
Return values
bool —toolBox()
Returns a new instance of the ToolBox class.
    protected
            static        toolBox() : ToolBox
    
    
    
    Tags
Return values
ToolBox —getBoolValueForField()
Returns the boolean value for the field.
    private
                    getBoolValueForField(array<string|int, mixed> $field, mixed $value) : bool|null
    
        Parameters
- $field : array<string|int, mixed>
 - $value : mixed
 
Return values
bool|null —getFloatValueForField()
Returns the float value for the field.
    private
                    getFloatValueForField(array<string|int, mixed> $field, string $value) : float|null
    
        Parameters
- $field : array<string|int, mixed>
 - $value : string
 
Return values
float|null —getIntegerValueForField()
Returns the integer value by controlling special cases for the PK and FK.
    private
                    getIntegerValueForField(array<string|int, mixed> $field, string $value) : int|null
    
        Parameters
- $field : array<string|int, mixed>
 - $value : string
 
Return values
int|null —getOrderBy()
Convert an array of filters order by in string.
    private
            static        getOrderBy(array<string|int, mixed> $order) : string
    
        Parameters
- $order : array<string|int, mixed>
 
Return values
string —getRecord()
Read the record whose primary column corresponds to the value $cod or the first that meets the indicated condition.
    private
                    getRecord(string $code[, array<string|int, mixed> $where = [] ][, array<string|int, mixed> $order = [] ]) : array<string|int, mixed>
    
        Parameters
- $code : string
 - $where : array<string|int, mixed> = []
 - $order : array<string|int, mixed> = []