protected function private_core() { /// ¿El usuario tiene permiso para eliminar en esta página? $this->allow_delete = $this->user->allow_delete_on(__CLASS__); $this->impuesto = new impuesto(); /// Leemos las subcuentas predeterminadas $subcuenta = new subcuenta(); $this->codsubcuentasop = ''; $subcuentasop = $subcuenta->get_cuentaesp('IVASOP', $this->empresa->codejercicio); if ($subcuentasop) { $this->codsubcuentasop = $subcuentasop->codsubcuenta; } $this->codsubcuentarep = ''; $subcuentarep = $subcuenta->get_cuentaesp('IVAREP', $this->empresa->codejercicio); if ($subcuentarep) { $this->codsubcuentarep = $subcuentarep->codsubcuenta; } if (isset($_GET['delete'])) { if (!$this->user->admin) { $this->new_error_msg('Sólo un administrador puede eliminar impuestos.'); } else { $impuesto = $this->impuesto->get($_GET['delete']); if ($impuesto) { if ($impuesto->delete()) { $this->new_message('Impuesto eliminado correctamente.'); } else { $this->new_error_msg('Ha sido imposible eliminar el impuesto.'); } } else { $this->new_error_msg('Impuesto no encontrado.'); } } } else { if (isset($_POST['codimpuesto'])) { $impuesto = $this->impuesto->get($_POST['codimpuesto']); if (!$impuesto) { $impuesto = new impuesto(); $impuesto->codimpuesto = $_POST['codimpuesto']; } $impuesto->descripcion = $_POST['descripcion']; $impuesto->codsubcuentarep = NULL; if ($_POST['codsubcuentarep'] != '') { $impuesto->codsubcuentarep = $_POST['codsubcuentarep']; } $impuesto->codsubcuentasop = NULL; if ($_POST['codsubcuentasop'] != '') { $impuesto->codsubcuentasop = $_POST['codsubcuentasop']; } $impuesto->iva = floatval($_POST['iva']); $impuesto->recargo = floatval($_POST['recargo']); if ($impuesto->save()) { $this->new_message("Impuesto " . $impuesto->codimpuesto . " guardado correctamente."); } else { $this->new_error_msg("¡Error al guardar el impuesto!"); } } } }
protected function process() { $this->impuesto = new impuesto(); if (isset($_GET['delete'])) { if (FS_DEMO) { $this->new_error_msg('En el modo demo no puedes eliminar impuestos. Otro usuario podría necesitarlo.'); } else { if (!$this->user->admin) { $this->new_error_msg('Sólo un administrador puede eliminar impuestos.'); } else { $impuesto = $this->impuesto->get($_GET['delete']); if ($impuesto) { if ($impuesto->delete()) { $this->new_message('Impuesto eliminado correctamente.'); } else { $this->new_error_msg('Ha sido imposible eliminar el impuesto.'); } } else { $this->new_error_msg('Impuesto no encontrado.'); } } } } else { if (isset($_POST['codimpuesto'])) { $impuesto = $this->impuesto->get($_POST['codimpuesto']); if (!$impuesto) { $impuesto = new impuesto(); $impuesto->codimpuesto = $_POST['codimpuesto']; } $impuesto->descripcion = $_POST['descripcion']; $impuesto->iva = floatval($_POST['iva']); $impuesto->recargo = floatval($_POST['recargo']); if ($impuesto->save()) { $this->new_message("Impuesto " . $impuesto->codimpuesto . " guardado correctamente."); } else { $this->new_error_msg("¡Error al guardar el impuesto!"); } } } }
protected function process() { $this->impuesto = new impuesto(); /// ¿El usuario tiene permiso para eliminar en esta página? $this->allow_delete = $this->user->allow_delete_on(__CLASS__); if (isset($_GET['delete'])) { if (!$this->user->admin) { $this->new_error_msg('Sólo un administrador puede eliminar impuestos.'); } else { $impuesto = $this->impuesto->get($_GET['delete']); if ($impuesto) { if ($impuesto->delete()) { $this->new_message('Impuesto eliminado correctamente.'); } else { $this->new_error_msg('Ha sido imposible eliminar el impuesto.'); } } else { $this->new_error_msg('Impuesto no encontrado.'); } } } else { if (isset($_POST['codimpuesto'])) { $impuesto = $this->impuesto->get($_POST['codimpuesto']); if (!$impuesto) { $impuesto = new impuesto(); $impuesto->codimpuesto = $_POST['codimpuesto']; } $impuesto->descripcion = $_POST['descripcion']; $impuesto->iva = floatval($_POST['iva']); $impuesto->recargo = floatval($_POST['recargo']); if ($impuesto->save()) { $this->new_message("Impuesto " . $impuesto->codimpuesto . " guardado correctamente."); } else { $this->new_error_msg("¡Error al guardar el impuesto!"); } } } }
public function impuestos() { $tratamiento = false; $impuestos = new impuesto(); //Eliminamos los Impuestos que no son de RD $lista_impuestos = array(); foreach ($this->impuestos_rd as $imp) { $lista_impuestos[] = $imp['porcentaje']; } foreach ($impuestos->all() as $imp) { if (!in_array($imp->iva, $lista_impuestos)) { $imp->delete(); } } //Agregamos los Impuestos de RD foreach ($this->impuestos_rd as $imp) { if (!$impuestos->get_by_iva($imp['porcentaje'])) { $imp0 = new impuesto(); $imp0->codimpuesto = $imp['codigo']; $imp0->descripcion = $imp['descripcion']; $imp0->iva = $imp['porcentaje']; $imp0->recargo = $imp['recargo']; $imp0->codsubcuentasop = $imp['subcuenta_compras']; $imp0->codsubcuentarep = $imp['subcuenta_ventas']; if ($imp0->save()) { $tratamiento = true; } } } //Corregimos la información de las Cuentas especiales con los nombres correctos $cuentas_especiales_rd['IVAACR'] = 'Cuentas acreedoras de ITBIS en la regularización'; $cuentas_especiales_rd['IVASOP'] = 'Cuentas de ITBIS Compras'; $cuentas_especiales_rd['IVARXP'] = 'Cuentas de ITBIS exportaciones'; $cuentas_especiales_rd['IVASIM'] = 'Cuentas de ITBIS importaciones'; $cuentas_especiales_rd['IVAREX'] = 'Cuentas de ITBIS para clientes exentos'; $cuentas_especiales_rd['IVAREP'] = 'Cuentas de ITBIS Ventas'; $cuentas_especiales = new cuenta_especial(); foreach ($cuentas_especiales_rd as $id => $desc) { $linea = $cuentas_especiales->get($id); if ($linea->descripcion !== $desc) { $linea->descripcion = $desc; $linea->save(); } } if ($tratamiento) { $this->new_message('Información de impuestos actualizada correctamente'); } else { $this->new_message('No se modificaron datos de impuestos previamente tratados.'); } }