Completed
Push — master ( 8695ae...9675a7 )
by Esteban De La Fuente
01:49
created
lib/Sii/EnvioDte.php 1 patch
Spacing   +8 added lines, -8 removed lines patch added patch discarded remove patch
@@ -32,7 +32,7 @@  discard block
 block discarded – undo
32 32
 {
33 33
 
34 34
     private $dtes = []; ///< Objetos con los DTE que se enviarán
35
-    private $config = [ // 0: DTE, 1: boleta
35
+    private $config = [// 0: DTE, 1: boleta
36 36
         'SubTotDTE_max' => [20, 2], ///< máxima cantidad de tipos de documentos en el envío
37 37
         'DTE_max' => [2000, 1000], ///< máxima cantidad de DTE en un envío
38 38
         'tipos' => ['EnvioDTE', 'EnvioBOLETA'], ///< Tag para el envío, según si son Boletas o no
@@ -50,11 +50,11 @@  discard block
 block discarded – undo
50 50
     public function agregar(Dte $DTE)
51 51
     {
52 52
         // determinar el tipo del envío (DTE o boleta)
53
-        if ($this->tipo === null) {
53
+        if ($this->tipo===null) {
54 54
             $this->tipo = (int)$DTE->esBoleta();
55 55
         }
56 56
         // validar que el tipo de documento sea del tipo que se espera
57
-        else if ((int)$DTE->esBoleta() != $this->tipo) {
57
+        else if ((int)$DTE->esBoleta()!=$this->tipo) {
58 58
             return false;
59 59
         }
60 60
         //
@@ -221,7 +221,7 @@  discard block
 block discarded – undo
221 221
                 'RutEnvia' => $Dte->getEmisor(),
222 222
                 'RutReceptor' => $Dte->getReceptor(),
223 223
                 'FchResol' => date('Y-m-d'),
224
-                'NroResol' => ($Dte->getCertificacion()?'0':'').'9999',
224
+                'NroResol' => ($Dte->getCertificacion() ? '0' : '').'9999',
225 225
             ]);
226 226
             if (!parent::loadXML($this->generar())) {
227 227
                 return false;
@@ -301,7 +301,7 @@  discard block
 block discarded – undo
301 301
     {
302 302
         $fecha = '9999-12-31';
303 303
         foreach ($this->getDocumentos() as $Dte) {
304
-            if ($Dte->getFechaEmision() < $fecha)
304
+            if ($Dte->getFechaEmision()<$fecha)
305 305
                 $fecha = $Dte->getFechaEmision();
306 306
         }
307 307
         return $fecha;
@@ -316,7 +316,7 @@  discard block
 block discarded – undo
316 316
     {
317 317
         $fecha = '0000-01-01';
318 318
         foreach ($this->getDocumentos() as $Dte) {
319
-            if ($Dte->getFechaEmision() > $fecha)
319
+            if ($Dte->getFechaEmision()>$fecha)
320 320
                 $fecha = $Dte->getFechaEmision();
321 321
         }
322 322
         return $fecha;
@@ -375,7 +375,7 @@  discard block
 block discarded – undo
375 375
                 $e = substr($e, 0, -2);
376 376
             $d = (int)$nodo_dte->getElementsByTagName('TipoDTE')->item(0)->nodeValue;
377 377
             $f = (int)$nodo_dte->getElementsByTagName('Folio')->item(0)->nodeValue;
378
-            if ($folio == $f and $dte == $d and $emisor == $e) {
378
+            if ($folio==$f and $dte==$d and $emisor==$e) {
379 379
                 return new Dte($nodo_dte->C14N(), false); // cargar DTE sin normalizar
380 380
             }
381 381
         }
@@ -433,7 +433,7 @@  discard block
 block discarded – undo
433 433
         $SignatureValue = trim(str_replace(["\n", ' ', "\t"], '', $Signatures->item($Signatures->length-1)->getElementsByTagName('SignatureValue')->item(0)->nodeValue));
434 434
         $X509Certificate = trim(str_replace(["\n", ' ', "\t"], '', $Signatures->item($Signatures->length-1)->getElementsByTagName('X509Certificate')->item(0)->nodeValue));
435 435
         $X509Certificate = '-----BEGIN CERTIFICATE-----'."\n".wordwrap($X509Certificate, 64, "\n", true)."\n".'-----END CERTIFICATE-----';
436
-        $valid = openssl_verify($SignedInfo->C14N(), base64_decode($SignatureValue), $X509Certificate) === 1 ? true : false;
436
+        $valid = openssl_verify($SignedInfo->C14N(), base64_decode($SignatureValue), $X509Certificate)===1 ? true : false;
437 437
         return $valid and $DigestValue===base64_encode(sha1($SetDTE, true));
438 438
     }
439 439
 
Please login to merge, or discard this patch.
lib/Sii/Dte.php 1 patch
Spacing   +16 added lines, -16 removed lines patch added patch discarded remove patch
@@ -139,7 +139,7 @@  discard block
 block discarded – undo
139 139
                 ]
140 140
             ]);
141 141
             $parent = $this->xml->getElementsByTagName($this->tipo_general)->item(0);
142
-            $this->xml->generate($datos + ['TED' => null], null, $parent);
142
+            $this->xml->generate($datos+['TED' => null], null, $parent);
143 143
             $this->datos = $datos;
144 144
             if ($normalizar and !$this->verificarDatos()) {
145 145
                 return false;
@@ -382,7 +382,7 @@  discard block
 block discarded – undo
382 382
         $xml->documentElement->removeAttributeNS('http://www.w3.org/2001/XMLSchema-instance', 'xsi');
383 383
         $xml->documentElement->removeAttributeNS('http://www.sii.cl/SiiDte', '');
384 384
         $TED = $xml->getFlattened('/');
385
-        return mb_detect_encoding($TED, ['UTF-8', 'ISO-8859-1']) != 'ISO-8859-1' ? utf8_decode($TED) : $TED;
385
+        return mb_detect_encoding($TED, ['UTF-8', 'ISO-8859-1'])!='ISO-8859-1' ? utf8_decode($TED) : $TED;
386 386
     }
387 387
 
388 388
     /**
@@ -395,7 +395,7 @@  discard block
 block discarded – undo
395 395
     {
396 396
         $datos = $this->getDatos();
397 397
         $idk = !empty($datos['TED']['DD']['CAF']['DA']['IDK']) ? (int)$datos['TED']['DD']['CAF']['DA']['IDK'] : null;
398
-        return $idk ? $idk === 100 : null;
398
+        return $idk ? $idk===100 : null;
399 399
     }
400 400
 
401 401
     /**
@@ -529,7 +529,7 @@  discard block
 block discarded – undo
529 529
     {
530 530
         $this->getDatos();
531 531
         // generar resumen
532
-        $resumen =  [
532
+        $resumen = [
533 533
             'TpoDoc' => (int)$this->datos['Encabezado']['IdDoc']['TipoDTE'],
534 534
             'NroDoc' => (int)$this->datos['Encabezado']['IdDoc']['Folio'],
535 535
             'TasaImp' => 0,
@@ -574,17 +574,17 @@  discard block
 block discarded – undo
574 574
      */
575 575
     private function calcularNetoIVA($total, $tasa = null)
576 576
     {
577
-        if ($tasa === 0 or $tasa === false)
577
+        if ($tasa===0 or $tasa===false)
578 578
             return [0, 0];
579
-        if ($tasa === null)
579
+        if ($tasa===null)
580 580
             $tasa = \sasco\LibreDTE\Sii::getIVA();
581 581
         // WARNING: el IVA obtenido puede no ser el NETO*(TASA/100)
582 582
         // se calcula el monto neto y luego se obtiene el IVA haciendo la resta
583 583
         // entre el total y el neto, ya que hay casos de borde como:
584 584
         //  - BRUTO:   680 => NETO:   571 e IVA:   108 => TOTAL:   679
585 585
         //  - BRUTO: 86710 => NETO: 72866 e IVA: 13845 => TOTAL: 86711
586
-        $neto = round($total / (1+($tasa/100)));
587
-        $iva = $total - $neto;
586
+        $neto = round($total / (1+($tasa / 100)));
587
+        $iva = $total-$neto;
588 588
         return [$neto, $iva];
589 589
     }
590 590
 
@@ -1429,12 +1429,12 @@  discard block
 block discarded – undo
1429 1429
                     );
1430 1430
                     // aplicar descuento
1431 1431
                     if ($d['DescuentoPct']) {
1432
-                        $d['DescuentoMonto'] = round($d['MontoItem'] * (float)$d['DescuentoPct']/100);
1432
+                        $d['DescuentoMonto'] = round($d['MontoItem'] * (float)$d['DescuentoPct'] / 100);
1433 1433
                     }
1434 1434
                     $d['MontoItem'] -= $d['DescuentoMonto'];
1435 1435
                     // aplicar recargo
1436 1436
                     if ($d['RecargoPct']) {
1437
-                        $d['RecargoMonto'] = round($d['MontoItem'] * (float)$d['RecargoPct']/100);
1437
+                        $d['RecargoMonto'] = round($d['MontoItem'] * (float)$d['RecargoPct'] / 100);
1438 1438
                     }
1439 1439
                     $d['MontoItem'] += $d['RecargoMonto'];
1440 1440
                     // aproximar monto del item
@@ -1520,7 +1520,7 @@  discard block
 block discarded – undo
1520 1520
                 }
1521 1521
                 $valor =
1522 1522
                     $dr['TpoValor']=='%'
1523
-                    ? $this->round(($dr['ValorDR']/100)*$datos['Encabezado']['Totales'][$monto], $datos['Encabezado']['Totales']['TpoMoneda'])
1523
+                    ? $this->round(($dr['ValorDR'] / 100) * $datos['Encabezado']['Totales'][$monto], $datos['Encabezado']['Totales']['TpoMoneda'])
1524 1524
                     : $dr['ValorDR']
1525 1525
                 ;
1526 1526
                 // aplicar descuento
@@ -1593,7 +1593,7 @@  discard block
 block discarded – undo
1593 1593
             // si el monto no existe se asigna
1594 1594
             if ($datos['Encabezado']['Totales']['ImptoReten'][$i]['MontoImp']===null) {
1595 1595
                 $datos['Encabezado']['Totales']['ImptoReten'][$i]['MontoImp'] = round(
1596
-                    $neto * $datos['Encabezado']['Totales']['ImptoReten'][$i]['TasaImp']/100
1596
+                    $neto * $datos['Encabezado']['Totales']['ImptoReten'][$i]['TasaImp'] / 100
1597 1597
                 );
1598 1598
             }
1599 1599
         }
@@ -1601,7 +1601,7 @@  discard block
 block discarded – undo
1601 1601
         if (isset($datos['Encabezado']['Totales']['ImptoReten']) and is_array($datos['Encabezado']['Totales']['ImptoReten'])) {
1602 1602
             $codigos = array_keys($montos);
1603 1603
             $n_impuestos = count($datos['Encabezado']['Totales']['ImptoReten']);
1604
-            for ($i=0; $i<$n_impuestos; $i++) {
1604
+            for ($i = 0; $i<$n_impuestos; $i++) {
1605 1605
                 if (!in_array($datos['Encabezado']['Totales']['ImptoReten'][$i]['TipoImp'], $codigos)) {
1606 1606
                     unset($datos['Encabezado']['Totales']['ImptoReten'][$i]);
1607 1607
                 }
@@ -1629,7 +1629,7 @@  discard block
 block discarded – undo
1629 1629
             } else {
1630 1630
                 if (empty($datos['Encabezado']['Totales']['IVA']) and !empty($datos['Encabezado']['Totales']['TasaIVA'])) {
1631 1631
                     $datos['Encabezado']['Totales']['IVA'] = round(
1632
-                        $datos['Encabezado']['Totales']['MntNeto']*($datos['Encabezado']['Totales']['TasaIVA']/100)
1632
+                        $datos['Encabezado']['Totales']['MntNeto'] * ($datos['Encabezado']['Totales']['TasaIVA'] / 100)
1633 1633
                     );
1634 1634
                 }
1635 1635
             }
@@ -1653,7 +1653,7 @@  discard block
 block discarded – undo
1653 1653
                 if (ImpuestosAdicionales::getTipo($ImptoReten['TipoImp'])=='R') {
1654 1654
                     $datos['Encabezado']['Totales']['MntTotal'] -= $ImptoReten['MontoImp'];
1655 1655
                     if ($ImptoReten['MontoImp']!=$datos['Encabezado']['Totales']['IVA']) {
1656
-                        $datos['Encabezado']['Totales']['IVANoRet'] = $datos['Encabezado']['Totales']['IVA'] - $ImptoReten['MontoImp'];
1656
+                        $datos['Encabezado']['Totales']['IVANoRet'] = $datos['Encabezado']['Totales']['IVA']-$ImptoReten['MontoImp'];
1657 1657
                     }
1658 1658
                 }
1659 1659
                 // si es adicional se suma al total
@@ -1813,7 +1813,7 @@  discard block
 block discarded – undo
1813 1813
         $SignatureValue = trim(str_replace(["\n", ' ', "\t"], '', $Signature->getElementsByTagName('SignatureValue')->item(0)->nodeValue));
1814 1814
         $X509Certificate = trim(str_replace(["\n", ' ', "\t"], '', $Signature->getElementsByTagName('X509Certificate')->item(0)->nodeValue));
1815 1815
         $X509Certificate = '-----BEGIN CERTIFICATE-----'."\n".wordwrap($X509Certificate, 64, "\n", true)."\n".'-----END CERTIFICATE----- ';
1816
-        $valid = openssl_verify($SignedInfo->C14N(), base64_decode($SignatureValue), $X509Certificate) === 1 ? true : false;
1816
+        $valid = openssl_verify($SignedInfo->C14N(), base64_decode($SignatureValue), $X509Certificate)===1 ? true : false;
1817 1817
         return $valid;
1818 1818
         //return $valid and $DigestValue===base64_encode(sha1($Documento->C14N(), true));
1819 1819
     }
Please login to merge, or discard this patch.