diff --git a/Core/Lib/Accounting/AccountingClass.php b/Core/Lib/Accounting/AccountingClass.php index 6a0b5e791b..69c9d70e44 100644 --- a/Core/Lib/Accounting/AccountingClass.php +++ b/Core/Lib/Accounting/AccountingClass.php @@ -26,7 +26,7 @@ use FacturaScripts\Dinamic\Model\Subcuenta; /** - * Base class for creation of accounting processes + * Clase base para la generación de asientos contables * * @author Jose Antonio Cuello Principal * @author Carlos García Gómez @@ -37,7 +37,7 @@ abstract class AccountingClass extends AccountingAccounts protected $document; /** - * Method to launch the accounting process + * Genera los asientos contables para una factura. * * @param ModelClass $model */ @@ -48,7 +48,7 @@ public function generate($model) } /** - * Add a standard line to the accounting entry based on the reported sub-account + * Añade una línea básica al asiento contable en base a la subcuenta reportada * * @param Asiento $accountEntry * @param Subcuenta $subaccount @@ -63,7 +63,7 @@ protected function addBasicLine($accountEntry, $subaccount, $isDebit, $amount = } /** - * Add a group of lines from array of subaccounts/amount. + * Añade un grupo de líneas desde un array de subcuentas/importes. * * @param Asiento $accountEntry * @param array $totals @@ -99,8 +99,8 @@ protected function addLinesFromTotals($accountEntry, $totals, $isDebit, $counter } /** - * Add a line of taxes to the accounting entry based on the sub-account - * and values reported + * Añade una línea de impuestos al asiento contable en base a la subcuenta + * y valores informados * * @param Asiento $accountEntry * @param Subcuenta $subaccount @@ -116,7 +116,7 @@ protected function addSurchargeLine($accountEntry, $subaccount, $counterpart, $i return true; } - // add basic data + // añadir datos básicos $line = $this->getBasicLine($accountEntry, $subaccount, $isDebit, $values['totalrecargo']); // counterpart? @@ -124,7 +124,7 @@ protected function addSurchargeLine($accountEntry, $subaccount, $counterpart, $i $line->setCounterpart($counterpart); } - // add tax register data + // añadir datos de registro de impuestos $line->baseimponible = (float)$values['neto']; $line->iva = 0; $line->recargo = (float)$values['recargo']; @@ -138,8 +138,8 @@ protected function addSurchargeLine($accountEntry, $subaccount, $counterpart, $i } /** - * Add a line of taxes to the accounting entry based on the sub-account - * and values reported + * Añade una línea de impuestos al asiento contable en base a la subcuenta + * y valores informados * * @param Asiento $accountEntry * @param Subcuenta $subaccount @@ -151,7 +151,7 @@ protected function addSurchargeLine($accountEntry, $subaccount, $counterpart, $i */ protected function addTaxLine($accountEntry, $subaccount, $counterpart, $isDebit, $values): bool { - // add basic data + // obtener una linea $line = $this->getBasicLine($accountEntry, $subaccount, $isDebit, $values['totaliva']); // counterpart? @@ -159,7 +159,7 @@ protected function addTaxLine($accountEntry, $subaccount, $counterpart, $isDebit $line->setCounterpart($counterpart); } - // add tax register data + // añadir datos de registro de impuestos $line->baseimponible = (float)$values['neto']; $line->iva = (float)$values['iva']; $line->recargo = 0; @@ -173,7 +173,7 @@ protected function addTaxLine($accountEntry, $subaccount, $counterpart, $isDebit } /** - * Obtain a standard line to the accounting entry based on the reported sub-account + * Devuelve una línea estándar para el asiento contable en base a la subcuenta reportada * * @param Asiento $accountEntry * @param Subcuenta $subaccount diff --git a/Core/Lib/Accounting/InvoiceToAccounting.php b/Core/Lib/Accounting/InvoiceToAccounting.php index 9655e9ea3c..60c5364387 100644 --- a/Core/Lib/Accounting/InvoiceToAccounting.php +++ b/Core/Lib/Accounting/InvoiceToAccounting.php @@ -38,8 +38,8 @@ use FacturaScripts\Dinamic\Model\Subcuenta; /** - * Class for the generation of accounting entries of a sale/purchase document - * and the settlement of your receipts. + * Clase para la generación de asientos contables de un documento de venta/compra + * y la liquidación de sus recibos. * * @author Carlos García Gómez * @author Jose Antonio Cuello Principal @@ -58,14 +58,14 @@ class InvoiceToAccounting extends AccountingClass protected $document; /** - * Document Subtotals Lines array + * Array de subtotales del documento * * @var array */ protected $subtotals; /** - * Method to launch the accounting process + * Genera los asientos contables para una factura. * * @param FacturaCliente|FacturaProveedor $model */ @@ -88,8 +88,8 @@ public function generate($model) } /** - * Add the customer line to the accounting entry - * + * Añade la línea de cliente al asiento contable + * * @param Asiento $entry * * @return bool @@ -115,8 +115,8 @@ protected function addCustomerLine(Asiento $entry): bool } /** - * Add the goods purchase line to the accounting entry. - * Make one line for each product/family purchase subaccount. + * Añade la línea de compras de mercancías al asiento contable. + * Hace una línea por cada subcuenta de compras de producto/familia. * * @param Asiento $entry * @@ -141,8 +141,8 @@ protected function addGoodsPurchaseLine(Asiento $entry): bool } /** - * Add the goods sales line to the accounting entry. - * Make one line for each product/family sale subaccount. + * Añade la línea de venta de mercaderías al asiento contable. + * Crea una línea por cada subcuenta de venta de producto/familia. * * @param Asiento $entry * @@ -167,6 +167,8 @@ protected function addGoodsSalesLine(Asiento $entry): bool } /** + * Añade las líneas de IRPF de compras. + * * @param Asiento $entry * * @return bool @@ -202,6 +204,8 @@ protected function addPurchaseIrpfLines(Asiento $entry): bool } /** + * Añade las lineas de suplidos de compras + * * @param Asiento $entry * * @return bool @@ -222,7 +226,7 @@ protected function addPurchaseSuppliedLines(Asiento $entry): bool } /** - * Add the purchase line to the accounting entry + * Añade las líneas de IVA de compras. * * @param Asiento $entry * @@ -281,6 +285,8 @@ protected function addPurchaseTaxLines(Asiento $entry): bool } /** + * Añade las líneas de IRPF de ventas. + * * @param Asiento $entry * * @return bool @@ -309,7 +315,7 @@ protected function addSalesIrpfLines(Asiento $entry): bool } /** - * Add the supplied line to the accounting entry + * Añade la línea de suplidos al asiento contable * * @param Asiento $entry * @@ -331,7 +337,7 @@ protected function addSalesSuppliedLines(Asiento $entry): bool } /** - * Add the sales line to the accounting entry + * Añade las líneas de IVA de ventas. * * @param Asiento $entry * @@ -387,6 +393,8 @@ protected function addSalesTaxLines(Asiento $entry): bool } /** + * Añade la línea de proveedor al asiento contable + * * @param Asiento $entry * * @return bool @@ -412,9 +420,17 @@ protected function addSupplierLine(Asiento $entry): bool } /** - * Perform the initial checks to continue with the accounting process - * - * @return bool + * Realiza las comprobaciones iniciales para asegurar que se puede generar el asiento. + * + * Comprueba que: + * - el documento no tenga ya un asiento asociado + * - el documento tenga un total válido + * - el ejercicio exista y esté abierto + * - el ejercicio tenga un plan contable + * - el documento tenga subtotales + * - el ejercicio esté asignado almenos a una cuenta + + * @return bool Devuelve false si no se puede generar el asiento. */ protected function initialChecks(): bool { @@ -459,7 +475,17 @@ protected function loadSubtotals(): bool } /** - * Generate the accounting entry for a purchase document. + * Genera el asiento contable para un documento de compra. + * + * Crea el asiento y realiza varias comprobaciones: + * - Verifica que se pueda añadir la línea de proveedor. + * - Verifica que se pueda añadir las líneas de iva de compras. + * - Verifica que se pueda añadir las líneas de irpf de compras. + * - Verifica que se pueda añadir la línea suplidos de compras. + * - Verifica que se pueda añadir la linea de mercancías de compras. + * - Verifica que el asiento esté balanceado. + * + * Si alguna de las comprobaciones falla, no se asigna el asiento y se muestra un mensaje de error. */ protected function purchaseAccountingEntry(): void { @@ -528,7 +554,19 @@ protected function purchaseAccountingEntry(): void } /** - * Generate the accounting entry for a sales document. + * Genera el asiento contable para un documento de venta. + * + * Crea el asiento y realiza varias comprobaciones: + * - Verifica que se pueda añadir la línea de cliente. + * - Verifica que se pueda añadir las líneas de iva de ventas. + * - Verifica que se pueda añadir las líneas de irpf de ventas. + * - Verifica que se pueda añadir la línea suplidos. + * - Verifica que se pueda añadir la linea de mercancías de ventas. + * - Verifica que el asiento esté balanceado. + * + * Si alguna de las comprobaciones falla, no se asigna el asiento y se muestra un mensaje de error. + * + * @return void */ protected function salesAccountingEntry(): void { @@ -597,7 +635,11 @@ protected function salesAccountingEntry(): void } /** - * Assign the document data to the accounting entry + * Asigna al asiento $entry los datos básicos del documento. + * + * Codejercicio, concepto, documento, fecha, idempresa, importe + * + * Además, asigna los datos analíticos definidos en el modelo Serie * * @param Asiento $entry * @param string $concept diff --git a/Core/Model/Asiento.php b/Core/Model/Asiento.php index 2963cc8622..0c066397a4 100644 --- a/Core/Model/Asiento.php +++ b/Core/Model/Asiento.php @@ -30,7 +30,7 @@ use FacturaScripts\Dinamic\Model\RegularizacionImpuesto as DinRegularizacionImpuesto; /** - * The accounting entry. It is related to an exercise and consists of games. + * La clase del asiento contable. Está relacionada con un ejercicio y consta de partidas. * * @author Carlos García Gómez * @author Artex Trading sa @@ -47,14 +47,14 @@ class Asiento extends ModelClass const RENUMBER_LIMIT = 1000; /** - * Accounting channel. For statistics purpose. + * Canal contable. Para fines estadísticos. * * @var int */ public $canal; /** - * Accounting entry concept. + * Concepto del asiento contable. * * @var string */ @@ -64,21 +64,21 @@ class Asiento extends ModelClass public $debe = 0.0; /** - * Document associated with the accounting entry. + * Documento asociado con el asiento contable. * * @var string */ public $documento; /** - * True if it is editable, but false. + * True si es editable, false en caso contrario. * * @var bool */ public $editable; /** - * Date of the accounting entry. + * Fecha del asiento contable. * * @var string */ @@ -95,45 +95,45 @@ class Asiento extends ModelClass public $idasiento; /** - * Diary identifier. + * Identificador del diario contable. * * @var int */ public $iddiario; /** - * Foreign Key with Empresas table. + * Foreign Key de la tabla Empresas. * * @var int */ public $idempresa; /** - * Amount of the accounting entry. + * Importe del asiento contable. * * @var float|int */ public $importe; /** - * Accounting entry number. It will be modified when renumbering. + * Número de asiento contable. Se modificará al renumerar. * * @var string */ public $numero; /** - * It establishes whether the accounting entry is of a special operation: - * - opening - * - regularization - * - closing + * Establece si el asiento contable es de una operación especial: + * - apertura: opening + * - regularización: regularization + * - cierre: closing * * @var string */ public $operacion; /** - * Accumulate the amounts of the detail in the document + * Acumula los importes del detalle en el documento * * @param array $detail */ @@ -230,7 +230,7 @@ public function getNewLine(?Subcuenta $subcuenta = null): Partida } /** - * Initializes the total fields + * Inicializa los campos totales */ public function initTotals() { @@ -246,9 +246,9 @@ public function install(): string } /** - * Returns TRUE if accounting entry is balanced. + * Comprueba que el asiento está balanceado. * - * @return bool + * @return bool Devuelve TRUE si el asiento está balanceado. */ public function isBalanced(): bool { @@ -264,7 +264,7 @@ public function isBalanced(): bool } /** - * Returns the following code for the reported field or the primary key of the model. + * Devuelve el siguiente código para el campo reportado o la clave primaria del modelo. * * @param string $field * @param array $where @@ -290,7 +290,7 @@ public function primaryDescriptionColumn(): string } /** - * Renumber the accounting entries of the given exercise. + * Renumera los asientos contables del ejercicio indicado. * * @param string $codejercicio * @@ -412,7 +412,7 @@ protected function onChange(string $field): bool } /** - * Update accounting entry numbers. + * Actualiza los números de los asientos contables. * * @param array $entries * @param int $number