@@ -852,8 +852,7 @@ |
||
852 | 852 | $valor = $codigo['CantBultos'].' '.$valor; |
853 | 853 | if (!empty($codigo['IdContainer'])) { |
854 | 854 | $valor .= ' ('.$codigo['IdContainer'].' / '.$codigo['Sello'].' / '.$codigo['EmisorSello'].')'; |
855 | - } |
|
856 | - else if (!empty($codigo['Marcas'])) { |
|
855 | + } else if (!empty($codigo['Marcas'])) { |
|
857 | 856 | $valor .= ' ('.$codigo['Marcas'].')'; |
858 | 857 | } |
859 | 858 | } else { |
@@ -126,7 +126,7 @@ discard block |
||
126 | 126 | { |
127 | 127 | $fecha = '9999-12-31'; |
128 | 128 | foreach ($this->detalles as &$d) { |
129 | - if ($d['FchDoc'] < $fecha) { |
|
129 | + if ($d['FchDoc']<$fecha) { |
|
130 | 130 | $fecha = $d['FchDoc']; |
131 | 131 | } |
132 | 132 | } |
@@ -143,7 +143,7 @@ discard block |
||
143 | 143 | { |
144 | 144 | $fecha = '0000-01-01'; |
145 | 145 | foreach ($this->detalles as &$d) { |
146 | - if ($d['FchDoc'] > $fecha) { |
|
146 | + if ($d['FchDoc']>$fecha) { |
|
147 | 147 | $fecha = $d['FchDoc']; |
148 | 148 | } |
149 | 149 | } |
@@ -202,7 +202,7 @@ discard block |
||
202 | 202 | // ajustes post agregar detalles |
203 | 203 | foreach ($Resumen as &$r) { |
204 | 204 | // obtener folios utilizados = emitidos + anulados |
205 | - $r['FoliosUtilizados'] = $r['FoliosEmitidos'] + $r['FoliosAnulados']; |
|
205 | + $r['FoliosUtilizados'] = $r['FoliosEmitidos']+$r['FoliosAnulados']; |
|
206 | 206 | $r['RangoUtilizados'] = $this->getRangos($RangoUtilizados[$r['TipoDocumento']]); |
207 | 207 | } |
208 | 208 | // completar con los resumenes que no se colocaron |
@@ -234,7 +234,7 @@ discard block |
||
234 | 234 | $aux = []; |
235 | 235 | $inicial = $folios[0]; |
236 | 236 | $i = $inicial; |
237 | - foreach($folios as $f) { |
|
237 | + foreach ($folios as $f) { |
|
238 | 238 | if ($i!=$f) { |
239 | 239 | $inicial = $f; |
240 | 240 | $i = $inicial; |
@@ -770,10 +770,12 @@ discard block |
||
770 | 770 | $this->MultiTexto($receptor['Extranjero']['NumId'], $x+$offset+2); |
771 | 771 | } |
772 | 772 | $contacto = []; |
773 | - if (!empty($receptor['Contacto'])) |
|
774 | - $contacto[] = $receptor['Contacto']; |
|
775 | - if (!empty($receptor['CorreoRecep'])) |
|
776 | - $contacto[] = $receptor['CorreoRecep']; |
|
773 | + if (!empty($receptor['Contacto'])) { |
|
774 | + $contacto[] = $receptor['Contacto']; |
|
775 | + } |
|
776 | + if (!empty($receptor['CorreoRecep'])) { |
|
777 | + $contacto[] = $receptor['CorreoRecep']; |
|
778 | + } |
|
777 | 779 | if (!empty($contacto)) { |
778 | 780 | $this->setFont('', 'B', null); |
779 | 781 | $this->Texto('Contacto', $x); |
@@ -823,10 +825,12 @@ discard block |
||
823 | 825 | if (!empty($Transporte['DirDest']) and !empty($Transporte['CmnaDest'])) { |
824 | 826 | $transporte .= 'a '.$Transporte['DirDest'].', '.$Transporte['CmnaDest']; |
825 | 827 | } |
826 | - if (!empty($Transporte['RUTTrans'])) |
|
827 | - $transporte .= ' por '.$Transporte['RUTTrans']; |
|
828 | - if (!empty($Transporte['Patente'])) |
|
829 | - $transporte .= ' en vehículo '.$Transporte['Patente']; |
|
828 | + if (!empty($Transporte['RUTTrans'])) { |
|
829 | + $transporte .= ' por '.$Transporte['RUTTrans']; |
|
830 | + } |
|
831 | + if (!empty($Transporte['Patente'])) { |
|
832 | + $transporte .= ' en vehículo '.$Transporte['Patente']; |
|
833 | + } |
|
830 | 834 | if (isset($Transporte['Chofer']) and is_array($Transporte['Chofer'])) { |
831 | 835 | if (!empty($Transporte['Chofer']['NombreChofer'])) { |
832 | 836 | $transporte .= ' con chofer '.$Transporte['Chofer']['NombreChofer']; |
@@ -889,8 +893,9 @@ discard block |
||
889 | 893 | */ |
890 | 894 | protected function agregarReferencia($referencias, $x = 10, $offset = 22) |
891 | 895 | { |
892 | - if (!isset($referencias[0])) |
|
893 | - $referencias = [$referencias]; |
|
896 | + if (!isset($referencias[0])) { |
|
897 | + $referencias = [$referencias]; |
|
898 | + } |
|
894 | 899 | foreach($referencias as $r) { |
895 | 900 | $texto = $r['NroLinRef'].' - '; |
896 | 901 | if (!empty($r['TpoDocRef'])) { |
@@ -1124,8 +1129,9 @@ discard block |
||
1124 | 1129 | */ |
1125 | 1130 | protected function agregarPagos(array $pagos, $x = 10) |
1126 | 1131 | { |
1127 | - if (!isset($pagos[0])) |
|
1128 | - $pagos = [$pagos]; |
|
1132 | + if (!isset($pagos[0])) { |
|
1133 | + $pagos = [$pagos]; |
|
1134 | + } |
|
1129 | 1135 | $this->Texto('Pago(s) programado(s):', $x); |
1130 | 1136 | $this->Ln(); |
1131 | 1137 | foreach($pagos as $p) { |
@@ -80,7 +80,7 @@ discard block |
||
80 | 80 | /** |
81 | 81 | * Método que asigna la ubicación del logo de la empresa |
82 | 82 | * @param logo URI del logo (puede ser local o en una URL) |
83 | - * @param posicion Posición respecto a datos del emisor (=0 izq, =1 arriba). Nota: parámetro válido sólo para formato hoja carta |
|
83 | + * @param posicion integer respecto a datos del emisor (=0 izq, =1 arriba). Nota: parámetro válido sólo para formato hoja carta |
|
84 | 84 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
85 | 85 | * @version 2016-08-04 |
86 | 86 | */ |
@@ -331,7 +331,7 @@ discard block |
||
331 | 331 | * contínuo de 80mm |
332 | 332 | * @param dte Arreglo con los datos del XML (tag Documento) |
333 | 333 | * @param timbre String XML con el tag TED del DTE |
334 | - * @param width Ancho del papel contínuo en mm (es parámetro porque se usa el mismo método para 75mm) |
|
334 | + * @param width integer del papel contínuo en mm (es parámetro porque se usa el mismo método para 75mm) |
|
335 | 335 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
336 | 336 | * @author Pablo Reyes (https://github.com/pabloxp) |
337 | 337 | * @version 2021-04-27 |
@@ -491,10 +491,11 @@ discard block |
||
491 | 491 | * - Dirección casa central del emisor |
492 | 492 | * - Dirección sucursales |
493 | 493 | * @param emisor Arreglo con los datos del emisor (tag Emisor del XML) |
494 | - * @param x Posición horizontal de inicio en el PDF |
|
495 | - * @param y Posición vertical de inicio en el PDF |
|
496 | - * @param w Ancho de la información del emisor |
|
497 | - * @param w_img Ancho máximo de la imagen |
|
494 | + * @param x integer horizontal de inicio en el PDF |
|
495 | + * @param y integer vertical de inicio en el PDF |
|
496 | + * @param w integer de la información del emisor |
|
497 | + * @param w_img integer máximo de la imagen |
|
498 | + * @param integer $font_size |
|
498 | 499 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
499 | 500 | * @version 2021-01-08 |
500 | 501 | */ |
@@ -604,11 +605,13 @@ discard block |
||
604 | 605 | * @param rut RUT del emisor |
605 | 606 | * @param tipo Código o glosa del tipo de documento |
606 | 607 | * @param sucursal_sii Código o glosa de la sucursal del SII del Emisor |
607 | - * @param x Posición horizontal de inicio en el PDF |
|
608 | - * @param y Posición vertical de inicio en el PDF |
|
609 | - * @param w Ancho de la información del emisor |
|
608 | + * @param x integer horizontal de inicio en el PDF |
|
609 | + * @param y integer vertical de inicio en el PDF |
|
610 | + * @param w integer de la información del emisor |
|
611 | + * @param integer $font_size |
|
610 | 612 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
611 | 613 | * @version 2019-08-05 |
614 | + * @return integer |
|
612 | 615 | */ |
613 | 616 | protected function agregarFolio($rut, $tipo, $folio, $sucursal_sii = null, $x = 130, $y = 15, $w = 70, $font_size = null, array $color = null) |
614 | 617 | { |
@@ -640,7 +643,7 @@ discard block |
||
640 | 643 | * Método que agrega los datos de la emisión del DTE que no son los dato del |
641 | 644 | * receptor |
642 | 645 | * @param IdDoc Información general del documento |
643 | - * @param x Posición horizontal de inicio en el PDF |
|
646 | + * @param x integer horizontal de inicio en el PDF |
|
644 | 647 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
645 | 648 | * @version 2020-08-11 |
646 | 649 | */ |
@@ -728,7 +731,7 @@ discard block |
||
728 | 731 | /** |
729 | 732 | * Método que agrega los datos del receptor |
730 | 733 | * @param receptor Arreglo con los datos del receptor (tag Receptor del XML) |
731 | - * @param x Posición horizontal de inicio en el PDF |
|
734 | + * @param x integer horizontal de inicio en el PDF |
|
732 | 735 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
733 | 736 | * @version 2019-10-06 |
734 | 737 | */ |
@@ -815,7 +818,7 @@ discard block |
||
815 | 818 | * Método que agrega los datos del traslado |
816 | 819 | * @param IndTraslado |
817 | 820 | * @param Transporte |
818 | - * @param x Posición horizontal de inicio en el PDF |
|
821 | + * @param x integer horizontal de inicio en el PDF |
|
819 | 822 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
820 | 823 | * @version 2016-08-03 |
821 | 824 | */ |
@@ -895,7 +898,7 @@ discard block |
||
895 | 898 | /** |
896 | 899 | * Método que agrega las referencias del documento |
897 | 900 | * @param referencias Arreglo con las referencias del documento (tag Referencia del XML) |
898 | - * @param x Posición horizontal de inicio en el PDF |
|
901 | + * @param x integer horizontal de inicio en el PDF |
|
899 | 902 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
900 | 903 | * @version 2017-09-25 |
901 | 904 | */ |
@@ -932,7 +935,7 @@ discard block |
||
932 | 935 | /** |
933 | 936 | * Método que agrega el detalle del documento |
934 | 937 | * @param detalle Arreglo con el detalle del documento (tag Detalle del XML) |
935 | - * @param x Posición horizontal de inicio en el PDF |
|
938 | + * @param x integer horizontal de inicio en el PDF |
|
936 | 939 | * @param y Posición vertical de inicio en el PDF |
937 | 940 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
938 | 941 | * @version 2020-08-28 |
@@ -1042,7 +1045,7 @@ discard block |
||
1042 | 1045 | /** |
1043 | 1046 | * Método que agrega el detalle del documento |
1044 | 1047 | * @param detalle Arreglo con el detalle del documento (tag Detalle del XML) |
1045 | - * @param x Posición horizontal de inicio en el PDF |
|
1048 | + * @param x integer horizontal de inicio en el PDF |
|
1046 | 1049 | * @param y Posición vertical de inicio en el PDF |
1047 | 1050 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
1048 | 1051 | * @author Pablo Reyes (https://github.com/pabloxp) |
@@ -1102,7 +1105,7 @@ discard block |
||
1102 | 1105 | * Método que agrega el subtotal del DTE |
1103 | 1106 | * @param detalle Arreglo con los detalles del documentos para poder |
1104 | 1107 | * calcular subtotal |
1105 | - * @param x Posición horizontal de inicio en el PDF |
|
1108 | + * @param x integer horizontal de inicio en el PDF |
|
1106 | 1109 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
1107 | 1110 | * @version 2021-04-27 |
1108 | 1111 | */ |
@@ -1129,7 +1132,7 @@ discard block |
||
1129 | 1132 | /** |
1130 | 1133 | * Método que agrega los descuentos y/o recargos globales del documento |
1131 | 1134 | * @param descuentosRecargos Arreglo con los descuentos y/o recargos del documento (tag DscRcgGlobal del XML) |
1132 | - * @param x Posición horizontal de inicio en el PDF |
|
1135 | + * @param x integer horizontal de inicio en el PDF |
|
1133 | 1136 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
1134 | 1137 | * @version 2011-04-27 |
1135 | 1138 | */ |
@@ -1159,7 +1162,7 @@ discard block |
||
1159 | 1162 | /** |
1160 | 1163 | * Método que agrega los pagos del documento |
1161 | 1164 | * @param pagos Arreglo con los pagos del documento |
1162 | - * @param x Posición horizontal de inicio en el PDF |
|
1165 | + * @param x integer horizontal de inicio en el PDF |
|
1163 | 1166 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
1164 | 1167 | * @version 2016-07-24 |
1165 | 1168 | */ |
@@ -1317,9 +1320,10 @@ discard block |
||
1317 | 1320 | * - Se imprime en el tamaño mínimo: 2x5 cms |
1318 | 1321 | * - En el lado de abajo con margen izquierdo mínimo de 2 cms |
1319 | 1322 | * @param timbre String con los datos del timbre |
1320 | - * @param x Posición horizontal de inicio en el PDF |
|
1321 | - * @param y Posición vertical de inicio en el PDF |
|
1322 | - * @param w Ancho del timbre |
|
1323 | + * @param x integer horizontal de inicio en el PDF |
|
1324 | + * @param y integer vertical de inicio en el PDF |
|
1325 | + * @param w integer del timbre |
|
1326 | + * @param string $position |
|
1323 | 1327 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
1324 | 1328 | * @version 2019-10-06 |
1325 | 1329 | */ |
@@ -1357,10 +1361,10 @@ discard block |
||
1357 | 1361 | |
1358 | 1362 | /** |
1359 | 1363 | * Método que agrega el acuse de rebido |
1360 | - * @param x Posición horizontal de inicio en el PDF |
|
1361 | - * @param y Posición vertical de inicio en el PDF |
|
1362 | - * @param w Ancho del acuse de recibo |
|
1363 | - * @param h Alto del acuse de recibo |
|
1364 | + * @param x integer horizontal de inicio en el PDF |
|
1365 | + * @param y integer vertical de inicio en el PDF |
|
1366 | + * @param w integer del acuse de recibo |
|
1367 | + * @param h integer del acuse de recibo |
|
1364 | 1368 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
1365 | 1369 | * @version 2019-10-06 |
1366 | 1370 | */ |
@@ -1388,10 +1392,10 @@ discard block |
||
1388 | 1392 | |
1389 | 1393 | /** |
1390 | 1394 | * Método que agrega el acuse de rebido |
1391 | - * @param x Posición horizontal de inicio en el PDF |
|
1395 | + * @param x integer horizontal de inicio en el PDF |
|
1392 | 1396 | * @param y Posición vertical de inicio en el PDF |
1393 | - * @param w Ancho del acuse de recibo |
|
1394 | - * @param h Alto del acuse de recibo |
|
1397 | + * @param w integer del acuse de recibo |
|
1398 | + * @param h integer del acuse de recibo |
|
1395 | 1399 | * @author Pablo Reyes (https://github.com/pabloxp) |
1396 | 1400 | * @version 2015-11-17 |
1397 | 1401 | */ |
@@ -74,7 +74,7 @@ discard block |
||
74 | 74 | { |
75 | 75 | parent::__construct(); |
76 | 76 | $this->SetTitle('Documento Tributario Electrónico (DTE) de Chile by LibreDTE'); |
77 | - $this->papelContinuo = $papelContinuo === true ? 80 : $papelContinuo; |
|
77 | + $this->papelContinuo = $papelContinuo===true ? 80 : $papelContinuo; |
|
78 | 78 | } |
79 | 79 | |
80 | 80 | /** |
@@ -193,7 +193,7 @@ discard block |
||
193 | 193 | $this->Ln(); |
194 | 194 | // datos del documento |
195 | 195 | $y = []; |
196 | - $y[] = $this->agregarDatosEmision($dte['Encabezado']['IdDoc'], !empty($dte['Encabezado']['Emisor']['CdgVendedor'])?$dte['Encabezado']['Emisor']['CdgVendedor']:null); |
|
196 | + $y[] = $this->agregarDatosEmision($dte['Encabezado']['IdDoc'], !empty($dte['Encabezado']['Emisor']['CdgVendedor']) ? $dte['Encabezado']['Emisor']['CdgVendedor'] : null); |
|
197 | 197 | $y[] = $this->agregarReceptor($dte['Encabezado']); |
198 | 198 | $this->setY(max($y)); |
199 | 199 | $this->agregarTraslado( |
@@ -242,7 +242,7 @@ discard block |
||
242 | 242 | $this->AddPage('P', [$height ? $height : $this->papel_continuo_alto, $width]); |
243 | 243 | $x = 1; |
244 | 244 | $y = 5; |
245 | - $this->SetXY($x,$y); |
|
245 | + $this->SetXY($x, $y); |
|
246 | 246 | // agregar datos del documento |
247 | 247 | $this->setFont('', '', 8); |
248 | 248 | $this->MultiTexto(!empty($dte['Encabezado']['Emisor']['RznSoc']) ? $dte['Encabezado']['Emisor']['RznSoc'] : $dte['Encabezado']['Emisor']['RznSocEmisor'], $x, null, '', $width-2); |
@@ -354,15 +354,15 @@ discard block |
||
354 | 354 | $dte['Encabezado']['IdDoc']['TipoDTE'], |
355 | 355 | $dte['Encabezado']['IdDoc']['Folio'], |
356 | 356 | isset($dte['Encabezado']['Emisor']['CmnaOrigen']) ? $dte['Encabezado']['Emisor']['CmnaOrigen'] : 'Sin comuna', // siempre debería tener comuna |
357 | - $x_start, $y_start, $width-($x_start*4), 10, |
|
358 | - [0,0,0] |
|
357 | + $x_start, $y_start, $width-($x_start * 4), 10, |
|
358 | + [0, 0, 0] |
|
359 | 359 | ); |
360 | - $y = $this->agregarEmisor($dte['Encabezado']['Emisor'], $x_start, $y+2, $width-($x_start*45), 8, 9, [0,0,0]); |
|
360 | + $y = $this->agregarEmisor($dte['Encabezado']['Emisor'], $x_start, $y+2, $width-($x_start * 45), 8, 9, [0, 0, 0]); |
|
361 | 361 | // datos del documento |
362 | 362 | $this->SetY($y); |
363 | 363 | $this->Ln(); |
364 | 364 | $this->setFont('', '', 8); |
365 | - $this->agregarDatosEmision($dte['Encabezado']['IdDoc'], !empty($dte['Encabezado']['Emisor']['CdgVendedor'])?$dte['Encabezado']['Emisor']['CdgVendedor']:null, $x_start, $offset, false); |
|
365 | + $this->agregarDatosEmision($dte['Encabezado']['IdDoc'], !empty($dte['Encabezado']['Emisor']['CdgVendedor']) ? $dte['Encabezado']['Emisor']['CdgVendedor'] : null, $x_start, $offset, false); |
|
366 | 366 | $this->agregarReceptor($dte['Encabezado'], $x_start, $offset); |
367 | 367 | $this->agregarTraslado( |
368 | 368 | !empty($dte['Encabezado']['IdDoc']['IndTraslado']) ? $dte['Encabezado']['IdDoc']['IndTraslado'] : null, |
@@ -433,14 +433,14 @@ discard block |
||
433 | 433 | 2, |
434 | 434 | 45, |
435 | 435 | 9, |
436 | - [0,0,0] |
|
436 | + [0, 0, 0] |
|
437 | 437 | ); |
438 | - $y[] = $this->agregarEmisor($dte['Encabezado']['Emisor'], 1, 2, 20, 30, 9, [0,0,0], $y[0]); |
|
438 | + $y[] = $this->agregarEmisor($dte['Encabezado']['Emisor'], 1, 2, 20, 30, 9, [0, 0, 0], $y[0]); |
|
439 | 439 | $this->SetY(max($y)); |
440 | 440 | $this->Ln(); |
441 | 441 | // datos del documento |
442 | 442 | $this->setFont('', '', 8); |
443 | - $this->agregarDatosEmision($dte['Encabezado']['IdDoc'], !empty($dte['Encabezado']['Emisor']['CdgVendedor'])?$dte['Encabezado']['Emisor']['CdgVendedor']:null, $x_start, $offset, false); |
|
443 | + $this->agregarDatosEmision($dte['Encabezado']['IdDoc'], !empty($dte['Encabezado']['Emisor']['CdgVendedor']) ? $dte['Encabezado']['Emisor']['CdgVendedor'] : null, $x_start, $offset, false); |
|
444 | 444 | $this->agregarReceptor($dte['Encabezado'], $x_start, $offset); |
445 | 445 | $this->agregarTraslado( |
446 | 446 | !empty($dte['Encabezado']['IdDoc']['IndTraslado']) ? $dte['Encabezado']['IdDoc']['IndTraslado'] : null, |
@@ -473,7 +473,7 @@ discard block |
||
473 | 473 | if ($this->cedible and !in_array($dte['Encabezado']['IdDoc']['TipoDTE'], $this->sinAcuseRecibo)) { |
474 | 474 | $this->agregarAcuseRecibo(63, $y+6, 45, 40, 15); |
475 | 475 | $this->setFont('', 'B', 8); |
476 | - $this->Texto('CEDIBLE'.($dte['Encabezado']['IdDoc']['TipoDTE']==52?' CON SU FACTURA':''), $x_start, $this->y+1, 'L'); |
|
476 | + $this->Texto('CEDIBLE'.($dte['Encabezado']['IdDoc']['TipoDTE']==52 ? ' CON SU FACTURA' : ''), $x_start, $this->y+1, 'L'); |
|
477 | 477 | } |
478 | 478 | // si el alto no se pasó, entonces es con autocálculo, se elimina esta página y se pasa el alto |
479 | 479 | // que se logró determinar para crear la página con el alto correcto |
@@ -504,16 +504,16 @@ discard block |
||
504 | 504 | // logo del documento |
505 | 505 | if (isset($this->logo)) { |
506 | 506 | // logo centrado (papel continuo) |
507 | - if (!empty($this->logo['posicion']) and $this->logo['posicion'] == 'C') { |
|
507 | + if (!empty($this->logo['posicion']) and $this->logo['posicion']=='C') { |
|
508 | 508 | $logo_w = null; |
509 | 509 | $logo_y = null; |
510 | 510 | $logo_position = 'C'; |
511 | 511 | $logo_next_pointer = 'N'; |
512 | 512 | } |
513 | 513 | // logo a la derecha (posicion=0) o arriba (posicion=1) |
514 | - else if (empty($this->logo['posicion']) or $this->logo['posicion'] == 1) { |
|
514 | + else if (empty($this->logo['posicion']) or $this->logo['posicion']==1) { |
|
515 | 515 | $logo_w = !$this->logo['posicion'] ? $w_img : null; |
516 | - $logo_y = $this->logo['posicion'] ? $w_img/2 : null; |
|
516 | + $logo_y = $this->logo['posicion'] ? $w_img / 2 : null; |
|
517 | 517 | $logo_position = ''; |
518 | 518 | $logo_next_pointer = 'T'; |
519 | 519 | } |
@@ -532,17 +532,17 @@ discard block |
||
532 | 532 | $logo_w, |
533 | 533 | $logo_y, |
534 | 534 | 'PNG', |
535 | - (isset($emisor['url'])?$emisor['url']:''), |
|
535 | + (isset($emisor['url']) ? $emisor['url'] : ''), |
|
536 | 536 | $logo_next_pointer, |
537 | 537 | 2, |
538 | 538 | 300, |
539 | 539 | $logo_position |
540 | 540 | ); |
541 | - if (!empty($this->logo['posicion']) and $this->logo['posicion'] == 'C') { |
|
541 | + if (!empty($this->logo['posicion']) and $this->logo['posicion']=='C') { |
|
542 | 542 | $w += 40; |
543 | 543 | } else { |
544 | 544 | if ($this->logo['posicion']) { |
545 | - $this->SetY($this->y + ($w_img/2)); |
|
545 | + $this->SetY($this->y+($w_img / 2)); |
|
546 | 546 | $w += 40; |
547 | 547 | } else { |
548 | 548 | $x = $this->x+3; |
@@ -555,20 +555,20 @@ discard block |
||
555 | 555 | // agregar datos del emisor |
556 | 556 | if ($agregarDatosEmisor) { |
557 | 557 | $this->setFont('', 'B', $font_size ? $font_size : 14); |
558 | - $this->SetTextColorArray($color===null?[32, 92, 144]:$color); |
|
559 | - $this->MultiTexto(!empty($emisor['RznSoc']) ? $emisor['RznSoc'] : $emisor['RznSocEmisor'], $x, $this->y+2, 'L', ($h_folio and $h_folio < $this->getY()) ? $w_all : $w); |
|
558 | + $this->SetTextColorArray($color===null ? [32, 92, 144] : $color); |
|
559 | + $this->MultiTexto(!empty($emisor['RznSoc']) ? $emisor['RznSoc'] : $emisor['RznSocEmisor'], $x, $this->y+2, 'L', ($h_folio and $h_folio<$this->getY()) ? $w_all : $w); |
|
560 | 560 | $this->setFont('', 'B', $font_size ? $font_size : 9); |
561 | - $this->SetTextColorArray([0,0,0]); |
|
562 | - $this->MultiTexto(!empty($emisor['GiroEmis']) ? $emisor['GiroEmis'] : $emisor['GiroEmisor'], $x, $this->y, 'L', ($h_folio and $h_folio < $this->getY()) ? $w_all : $w); |
|
561 | + $this->SetTextColorArray([0, 0, 0]); |
|
562 | + $this->MultiTexto(!empty($emisor['GiroEmis']) ? $emisor['GiroEmis'] : $emisor['GiroEmisor'], $x, $this->y, 'L', ($h_folio and $h_folio<$this->getY()) ? $w_all : $w); |
|
563 | 563 | $direccion = !empty($emisor['DirOrigen']) ? $emisor['DirOrigen'] : null; |
564 | 564 | $comuna = !empty($emisor['CmnaOrigen']) ? $emisor['CmnaOrigen'] : null; |
565 | 565 | $ciudad = !empty($emisor['CiudadOrigen']) ? $emisor['CiudadOrigen'] : \sasco\LibreDTE\Chile::getCiudad($comuna); |
566 | - $this->MultiTexto($direccion.($comuna?(', '.$comuna):'').($ciudad?(', '.$ciudad):''), $x, $this->y, 'L', ($h_folio and $h_folio < $this->getY()) ? $w_all : $w); |
|
566 | + $this->MultiTexto($direccion.($comuna ? (', '.$comuna) : '').($ciudad ? (', '.$ciudad) : ''), $x, $this->y, 'L', ($h_folio and $h_folio<$this->getY()) ? $w_all : $w); |
|
567 | 567 | if (!empty($emisor['Sucursal'])) { |
568 | - $this->MultiTexto('Sucursal: '.$emisor['Sucursal'], $x, $this->y, 'L', ($h_folio and $h_folio < $this->getY()) ? $w_all : $w); |
|
568 | + $this->MultiTexto('Sucursal: '.$emisor['Sucursal'], $x, $this->y, 'L', ($h_folio and $h_folio<$this->getY()) ? $w_all : $w); |
|
569 | 569 | } |
570 | 570 | if (!empty($this->casa_matriz)) { |
571 | - $this->MultiTexto('Casa matriz: '.$this->casa_matriz, $x, $this->y, 'L', ($h_folio and $h_folio < $this->getY()) ? $w_all : $w); |
|
571 | + $this->MultiTexto('Casa matriz: '.$this->casa_matriz, $x, $this->y, 'L', ($h_folio and $h_folio<$this->getY()) ? $w_all : $w); |
|
572 | 572 | } |
573 | 573 | $contacto = []; |
574 | 574 | if (!empty($emisor['Telefono'])) { |
@@ -583,7 +583,7 @@ discard block |
||
583 | 583 | $contacto[] = $emisor['CorreoEmisor']; |
584 | 584 | } |
585 | 585 | if ($contacto) { |
586 | - $this->MultiTexto(implode(' / ', $contacto), $x, $this->y, 'L', ($h_folio and $h_folio < $this->getY()) ? $w_all : $w); |
|
586 | + $this->MultiTexto(implode(' / ', $contacto), $x, $this->y, 'L', ($h_folio and $h_folio<$this->getY()) ? $w_all : $w); |
|
587 | 587 | } |
588 | 588 | } |
589 | 589 | return $this->y; |
@@ -613,12 +613,12 @@ discard block |
||
613 | 613 | protected function agregarFolio($rut, $tipo, $folio, $sucursal_sii = null, $x = 130, $y = 15, $w = 70, $font_size = null, array $color = null) |
614 | 614 | { |
615 | 615 | if ($color===null) { |
616 | - $color = $tipo ? ($tipo==52 ? [0,172,140] : [255,0,0]) : [0,0,0]; |
|
616 | + $color = $tipo ? ($tipo==52 ? [0, 172, 140] : [255, 0, 0]) : [0, 0, 0]; |
|
617 | 617 | } |
618 | 618 | $this->SetTextColorArray($color); |
619 | 619 | // colocar rut emisor, glosa documento y folio |
620 | 620 | list($rut, $dv) = explode('-', $rut); |
621 | - $this->setFont ('', 'B', $font_size ? $font_size : 15); |
|
621 | + $this->setFont('', 'B', $font_size ? $font_size : 15); |
|
622 | 622 | $this->MultiTexto('R.U.T.: '.$this->num($rut).'-'.$dv, $x, $y+4, 'C', $w); |
623 | 623 | $this->setFont('', 'B', $font_size ? $font_size : 12); |
624 | 624 | $this->MultiTexto($this->getTipo($tipo, $folio), $x, null, 'C', $w); |
@@ -631,7 +631,7 @@ discard block |
||
631 | 631 | if ($tipo) { |
632 | 632 | $this->Texto('S.I.I. - '.\sasco\LibreDTE\Sii::getDireccionRegional($sucursal_sii), $x, $this->getY()+4, 'C', $w); |
633 | 633 | } |
634 | - $this->SetTextColorArray([0,0,0]); |
|
634 | + $this->SetTextColorArray([0, 0, 0]); |
|
635 | 635 | $this->Ln(); |
636 | 636 | return $this->y; |
637 | 637 | } |
@@ -745,10 +745,10 @@ discard block |
||
745 | 745 | } |
746 | 746 | if (!empty($receptor['RznSocRecep'])) { |
747 | 747 | $this->setFont('', 'B', null); |
748 | - $this->Texto(in_array($this->dte, [39, 41]) ? 'Nombre' : ($x==10?'Razón social':'Razón soc.'), $x); |
|
748 | + $this->Texto(in_array($this->dte, [39, 41]) ? 'Nombre' : ($x==10 ? 'Razón social' : 'Razón soc.'), $x); |
|
749 | 749 | $this->Texto(':', $x+$offset); |
750 | 750 | $this->setFont('', '', null); |
751 | - $this->MultiTexto($receptor['RznSocRecep'], $x+$offset+2, null, '', $x==10?105:0); |
|
751 | + $this->MultiTexto($receptor['RznSocRecep'], $x+$offset+2, null, '', $x==10 ? 105 : 0); |
|
752 | 752 | } |
753 | 753 | if (!empty($receptor['GiroRecep'])) { |
754 | 754 | $this->setFont('', 'B', null); |
@@ -765,7 +765,7 @@ discard block |
||
765 | 765 | $ciudad = !empty($receptor['CiudadRecep']) ? $receptor['CiudadRecep'] : ( |
766 | 766 | !empty($receptor['CmnaRecep']) ? \sasco\LibreDTE\Chile::getCiudad($receptor['CmnaRecep']) : '' |
767 | 767 | ); |
768 | - $this->MultiTexto($receptor['DirRecep'].(!empty($receptor['CmnaRecep'])?(', '.$receptor['CmnaRecep']):'').($ciudad?(', '.$ciudad):''), $x+$offset+2); |
|
768 | + $this->MultiTexto($receptor['DirRecep'].(!empty($receptor['CmnaRecep']) ? (', '.$receptor['CmnaRecep']) : '').($ciudad ? (', '.$ciudad) : ''), $x+$offset+2); |
|
769 | 769 | } |
770 | 770 | if (!empty($receptor['Extranjero']['Nacionalidad'])) { |
771 | 771 | $this->setFont('', 'B', null); |
@@ -806,7 +806,7 @@ discard block |
||
806 | 806 | $this->Texto('Cód. recep.', $x); |
807 | 807 | $this->Texto(':', $x+$offset); |
808 | 808 | $this->setFont('', '', null); |
809 | - $this->MultiTexto($receptor['CdgIntRecep'], $x+$offset+2, null, '', $x==10?105:0); |
|
809 | + $this->MultiTexto($receptor['CdgIntRecep'], $x+$offset+2, null, '', $x==10 ? 105 : 0); |
|
810 | 810 | } |
811 | 811 | return $this->GetY(); |
812 | 812 | } |
@@ -903,7 +903,7 @@ discard block |
||
903 | 903 | { |
904 | 904 | if (!isset($referencias[0])) |
905 | 905 | $referencias = [$referencias]; |
906 | - foreach($referencias as $r) { |
|
906 | + foreach ($referencias as $r) { |
|
907 | 907 | $texto = $r['NroLinRef'].' - '; |
908 | 908 | if (!empty($r['TpoDocRef'])) { |
909 | 909 | $texto .= $this->getTipo($r['TpoDocRef']).' '; |
@@ -964,7 +964,7 @@ discard block |
||
964 | 964 | // quitar columnas |
965 | 965 | foreach ($item as $col => $valor) { |
966 | 966 | if ($col=='DscItem' and !empty($item['DscItem'])) { |
967 | - $item['NmbItem'] .= !$this->item_detalle_posicion ? ($html?'<br/>':"\n") : ': '; |
|
967 | + $item['NmbItem'] .= !$this->item_detalle_posicion ? ($html ? '<br/>' : "\n") : ': '; |
|
968 | 968 | $item['DscItem'] = $html ? str_replace("\n", '<br/>', $item['DscItem']) : str_replace(['<br/>', '<br>'], "\n", $item['DscItem']); |
969 | 969 | if ($html) { |
970 | 970 | $item['NmbItem'] .= '<span style="font-size:0.7em">'.$item['DscItem'].'</span>'; |
@@ -1013,7 +1013,7 @@ discard block |
||
1013 | 1013 | } |
1014 | 1014 | $item = array_merge($item_default, $item); |
1015 | 1015 | // si hay código de item se extrae su valor |
1016 | - if (!empty($item['CdgItem']['VlrCodigo'])){ |
|
1016 | + if (!empty($item['CdgItem']['VlrCodigo'])) { |
|
1017 | 1017 | $item['CdgItem'] = $item['CdgItem']['VlrCodigo']; |
1018 | 1018 | } |
1019 | 1019 | // dar formato a números |
@@ -1056,9 +1056,9 @@ discard block |
||
1056 | 1056 | $this->SetY($this->getY()+1); |
1057 | 1057 | $p1x = $x; |
1058 | 1058 | $p1y = $this->y; |
1059 | - $p2x = $this->getPageWidth() - 2; |
|
1060 | - $p2y = $p1y; // Use same y for a straight line |
|
1061 | - $style = array('width' => 0.2,'color' => array(0, 0, 0)); |
|
1059 | + $p2x = $this->getPageWidth()-2; |
|
1060 | + $p2y = $p1y; // Use same y for a straight line |
|
1061 | + $style = array('width' => 0.2, 'color' => array(0, 0, 0)); |
|
1062 | 1062 | $this->Line($p1x, $p1y, $p2x, $p2y, $style); |
1063 | 1063 | $this->Texto($this->detalle_cols['NmbItem']['title'], $x+$offsets[0], $this->y, ucfirst($this->detalle_cols['NmbItem']['align'][0]), $this->detalle_cols['NmbItem']['width']); |
1064 | 1064 | $this->Texto($this->detalle_cols['PrcItem']['title'], $x+$offsets[1], $this->y, ucfirst($this->detalle_cols['PrcItem']['align'][0]), $this->detalle_cols['PrcItem']['width']); |
@@ -1070,7 +1070,7 @@ discard block |
||
1070 | 1070 | } |
1071 | 1071 | // mostrar items |
1072 | 1072 | $this->SetY($this->getY()+2); |
1073 | - foreach($detalle as &$d) { |
|
1073 | + foreach ($detalle as &$d) { |
|
1074 | 1074 | // nombre y descripción del item |
1075 | 1075 | $item = $d['NmbItem']; |
1076 | 1076 | if ($this->papel_continuo_item_detalle and !empty($d['DscItem'])) { |
@@ -1080,15 +1080,15 @@ discard block |
||
1080 | 1080 | // descuento |
1081 | 1081 | if (!empty($d['DescuentoPct']) or !empty($d['DescuentoMonto'])) { |
1082 | 1082 | if (!empty($d['DescuentoPct'])) { |
1083 | - $descuento = number_format($d['DescuentoPct'],0,',','.').'%'; |
|
1083 | + $descuento = number_format($d['DescuentoPct'], 0, ',', '.').'%'; |
|
1084 | 1084 | } else { |
1085 | - $descuento = number_format($d['DescuentoMonto'],0,',','.'); |
|
1085 | + $descuento = number_format($d['DescuentoMonto'], 0, ',', '.'); |
|
1086 | 1086 | } |
1087 | 1087 | $this->Texto('Desc.: '.$descuento, $x+$offsets[0], $this->y, ucfirst($this->detalle_cols['NmbItem']['align'][0]), $this->detalle_cols['NmbItem']['width']); |
1088 | 1088 | } |
1089 | 1089 | // precio y cantidad |
1090 | 1090 | if (isset($d['PrcItem'])) { |
1091 | - $this->Texto(number_format($d['PrcItem'],0,',','.'), $x+$offsets[1], $this->y, ucfirst($this->detalle_cols['PrcItem']['align'][0]), $this->detalle_cols['PrcItem']['width']); |
|
1091 | + $this->Texto(number_format($d['PrcItem'], 0, ',', '.'), $x+$offsets[1], $this->y, ucfirst($this->detalle_cols['PrcItem']['align'][0]), $this->detalle_cols['PrcItem']['width']); |
|
1092 | 1092 | } |
1093 | 1093 | if (isset($d['QtyItem'])) { |
1094 | 1094 | $this->Texto($this->num($d['QtyItem']), $x+$offsets[2], $this->y, ucfirst($this->detalle_cols['QtyItem']['align'][0]), $this->detalle_cols['QtyItem']['width']); |
@@ -1111,7 +1111,7 @@ discard block |
||
1111 | 1111 | if (!isset($detalle[0])) { |
1112 | 1112 | $detalle = [$detalle]; |
1113 | 1113 | } |
1114 | - foreach($detalle as &$d) { |
|
1114 | + foreach ($detalle as &$d) { |
|
1115 | 1115 | if (!empty($d['MontoItem'])) { |
1116 | 1116 | $subtotal += $d['MontoItem']; |
1117 | 1117 | } |
@@ -1138,18 +1138,18 @@ discard block |
||
1138 | 1138 | if (!isset($descuentosRecargos[0])) { |
1139 | 1139 | $descuentosRecargos = [$descuentosRecargos]; |
1140 | 1140 | } |
1141 | - foreach($descuentosRecargos as $dr) { |
|
1141 | + foreach ($descuentosRecargos as $dr) { |
|
1142 | 1142 | $tipo = $dr['TpoMov']=='D' ? 'Descuento' : 'Recargo'; |
1143 | 1143 | if (!empty($dr['IndExeDR'])) { |
1144 | 1144 | $tipo .= ' EX'; |
1145 | 1145 | } |
1146 | 1146 | $valor = $dr['TpoValor']=='%' ? $dr['ValorDR'].'%' : $this->num($dr['ValorDR']); |
1147 | 1147 | if ($this->papelContinuo) { |
1148 | - $glosa = $tipo.' global'.(!empty($dr['GlosaDR'])?(' ('.$dr['GlosaDR'].')'):'').':'; |
|
1148 | + $glosa = $tipo.' global'.(!empty($dr['GlosaDR']) ? (' ('.$dr['GlosaDR'].')') : '').':'; |
|
1149 | 1149 | $this->Texto($glosa, $x, null, 'R', 30); |
1150 | 1150 | $this->Texto($valor, $x+$offset, null, 'R', 30); |
1151 | 1151 | } else { |
1152 | - $this->Texto($tipo.(!empty($dr['GlosaDR'])?(' ('.$dr['GlosaDR'].')'):'').':', 77, null, 'R', 100); |
|
1152 | + $this->Texto($tipo.(!empty($dr['GlosaDR']) ? (' ('.$dr['GlosaDR'].')') : '').':', 77, null, 'R', 100); |
|
1153 | 1153 | $this->Texto($valor, 177, null, 'R', 22); |
1154 | 1154 | } |
1155 | 1155 | $this->Ln(); |
@@ -1169,8 +1169,8 @@ discard block |
||
1169 | 1169 | $pagos = [$pagos]; |
1170 | 1170 | $this->Texto('Pago(s) programado(s):', $x); |
1171 | 1171 | $this->Ln(); |
1172 | - foreach($pagos as $p) { |
|
1173 | - $this->Texto(' - '.$this->date($p['FchPago'], false).': $'.$this->num($p['MntPago']).'.-'.(!empty($p['GlosaPagos'])?(' ('.$p['GlosaPagos'].')'):''), $x); |
|
1172 | + foreach ($pagos as $p) { |
|
1173 | + $this->Texto(' - '.$this->date($p['FchPago'], false).': $'.$this->num($p['MntPago']).'.-'.(!empty($p['GlosaPagos']) ? (' ('.$p['GlosaPagos'].')') : ''), $x); |
|
1174 | 1174 | $this->Ln(); |
1175 | 1175 | } |
1176 | 1176 | } |
@@ -1204,7 +1204,7 @@ discard block |
||
1204 | 1204 | 'TpoMoneda' => 'Moneda', |
1205 | 1205 | 'MntNeto' => 'Neto $', |
1206 | 1206 | 'MntExe' => 'Exento $', |
1207 | - 'IVA' => 'IVA '.(!empty($totales['TasaIVA'])?(' ('.$totales['TasaIVA'].'%) '):'').'$', |
|
1207 | + 'IVA' => 'IVA '.(!empty($totales['TasaIVA']) ? (' ('.$totales['TasaIVA'].'%) ') : '').'$', |
|
1208 | 1208 | 'IVANoRet' => 'IVA no retenido $', |
1209 | 1209 | 'CredEC' => 'Desc. 65% IVA $', |
1210 | 1210 | 'MntTotal' => 'Total $', |
@@ -1221,7 +1221,7 @@ discard block |
||
1221 | 1221 | if (!isset($ImptoReten[0])) { |
1222 | 1222 | $ImptoReten = [$ImptoReten]; |
1223 | 1223 | } |
1224 | - foreach($ImptoReten as $i) { |
|
1224 | + foreach ($ImptoReten as $i) { |
|
1225 | 1225 | $totales['ImptoReten_'.$i['TipoImp']] = $i['MontoImp']; |
1226 | 1226 | if (!empty($i['TasaImp'])) { |
1227 | 1227 | $glosas['ImptoReten_'.$i['TipoImp']] = \sasco\LibreDTE\Sii\ImpuestosAdicionales::getGlosa($i['TipoImp']).' ('.$i['TasaImp'].'%) $'; |
@@ -1334,9 +1334,9 @@ discard block |
||
1334 | 1334 | 'vpadding' => 0, |
1335 | 1335 | 'module_width' => 1, // width of a single module in points |
1336 | 1336 | 'module_height' => 1, // height of a single module in points |
1337 | - 'fgcolor' => [0,0,0], |
|
1337 | + 'fgcolor' => [0, 0, 0], |
|
1338 | 1338 | 'bgcolor' => false, // [255,255,255] |
1339 | - 'position' => $position === null ? ($this->papelContinuo ? 'C' : 'S') : $position, |
|
1339 | + 'position' => $position===null ? ($this->papelContinuo ? 'C' : 'S') : $position, |
|
1340 | 1340 | ]; |
1341 | 1341 | $ecl = version_compare(phpversion(), '7.0.0', '<') ? -1 : $this->ecl; |
1342 | 1342 | $this->write2DBarcode($timbre, 'PDF417,,'.$ecl, $x_timbre, $y, $w, 0, $style, 'B'); |
@@ -1367,7 +1367,7 @@ discard block |
||
1367 | 1367 | protected function agregarAcuseRecibo($x = 83, $y = 190, $w = 60, $h = 40, $line = 25) |
1368 | 1368 | { |
1369 | 1369 | $y = (!$this->papelContinuo and !$this->timbre_pie) ? $this->x_fin_datos : $y; |
1370 | - $this->SetTextColorArray([0,0,0]); |
|
1370 | + $this->SetTextColorArray([0, 0, 0]); |
|
1371 | 1371 | $this->Rect($x, $y, $w, $h, 'D', ['all' => ['width' => 0.1, 'color' => [0, 0, 0]]]); |
1372 | 1372 | $this->setFont('', 'B', 10); |
1373 | 1373 | $this->Texto('Acuse de recibo', $x, $y+1, 'C', $w); |
@@ -1397,9 +1397,9 @@ discard block |
||
1397 | 1397 | */ |
1398 | 1398 | protected function agregarAcuseReciboContinuo($x = 3, $y = null, $w = 68, $h = 40) |
1399 | 1399 | { |
1400 | - $this->SetTextColorArray([0,0,0]); |
|
1400 | + $this->SetTextColorArray([0, 0, 0]); |
|
1401 | 1401 | $this->Rect($x, $y, $w, $h, 'D', ['all' => ['width' => 0.1, 'color' => [0, 0, 0]]]); |
1402 | - $style = array('width' => 0.2,'color' => array(0, 0, 0)); |
|
1402 | + $style = array('width' => 0.2, 'color' => array(0, 0, 0)); |
|
1403 | 1403 | $this->Line($x, $y+22, $w+3, $y+22, $style); |
1404 | 1404 | //$this->setFont('', 'B', 10); |
1405 | 1405 | //$this->Texto('Acuse de recibo', $x, $y+1, 'C', $w); |
@@ -1429,7 +1429,7 @@ discard block |
||
1429 | 1429 | $y = (!$this->papelContinuo and !$this->timbre_pie and $this->x_fin_datos<=$y) ? $this->x_fin_datos : $y; |
1430 | 1430 | $y += 48; |
1431 | 1431 | $this->setFont('', 'B', $font_size); |
1432 | - $this->Texto('CEDIBLE'.($tipo==52?' CON SU FACTURA':''), null, $y, 'R'); |
|
1432 | + $this->Texto('CEDIBLE'.($tipo==52 ? ' CON SU FACTURA' : ''), null, $y, 'R'); |
|
1433 | 1433 | } |
1434 | 1434 | |
1435 | 1435 | /** |
@@ -1440,7 +1440,7 @@ discard block |
||
1440 | 1440 | protected function agregarLeyendaDestinoContinuo($tipo) |
1441 | 1441 | { |
1442 | 1442 | $this->setFont('', 'B', 8); |
1443 | - $this->Texto('CEDIBLE'.($tipo==52?' CON SU FACTURA':''), null, $this->y+6, 'R'); |
|
1443 | + $this->Texto('CEDIBLE'.($tipo==52 ? ' CON SU FACTURA' : ''), null, $this->y+6, 'R'); |
|
1444 | 1444 | } |
1445 | 1445 | |
1446 | 1446 | } |
@@ -58,7 +58,7 @@ |
||
58 | 58 | return false; |
59 | 59 | } |
60 | 60 | // si no se debe enviar no continuar |
61 | - if ($retry === 0) { |
|
61 | + if ($retry===0) { |
|
62 | 62 | return false; |
63 | 63 | } |
64 | 64 | // solicitar token |
@@ -237,7 +237,7 @@ discard block |
||
237 | 237 | |
238 | 238 | /** |
239 | 239 | * Método que entrega el tipo de DTE |
240 | - * @return Tipo de dte, ej: 33 (factura electrónica) |
|
240 | + * @return string de dte, ej: 33 (factura electrónica) |
|
241 | 241 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
242 | 242 | * @version 2015-09-02 |
243 | 243 | */ |
@@ -248,7 +248,7 @@ discard block |
||
248 | 248 | |
249 | 249 | /** |
250 | 250 | * Método que entrega el folio del DTE |
251 | - * @return Folio del DTE |
|
251 | + * @return string del DTE |
|
252 | 252 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
253 | 253 | * @version 2015-09-02 |
254 | 254 | */ |
@@ -259,7 +259,7 @@ discard block |
||
259 | 259 | |
260 | 260 | /** |
261 | 261 | * Método que entrega rut del emisor del DTE |
262 | - * @return RUT del emiro |
|
262 | + * @return string del emiro |
|
263 | 263 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
264 | 264 | * @version 2015-09-07 |
265 | 265 | */ |
@@ -275,7 +275,7 @@ discard block |
||
275 | 275 | |
276 | 276 | /** |
277 | 277 | * Método que entrega rut del receptor del DTE |
278 | - * @return RUT del emiro |
|
278 | + * @return string del emiro |
|
279 | 279 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
280 | 280 | * @version 2015-09-07 |
281 | 281 | */ |
@@ -291,7 +291,7 @@ discard block |
||
291 | 291 | |
292 | 292 | /** |
293 | 293 | * Método que entrega fecha de emisión del DTE |
294 | - * @return Fecha de emisión en formato AAAA-MM-DD |
|
294 | + * @return string de emisión en formato AAAA-MM-DD |
|
295 | 295 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
296 | 296 | * @version 2015-09-07 |
297 | 297 | */ |
@@ -400,7 +400,7 @@ discard block |
||
400 | 400 | |
401 | 401 | /** |
402 | 402 | * Método que realiza el timbrado del DTE |
403 | - * @param Folios Objeto de los Folios con los que se desea timbrar |
|
403 | + * @param Folios Folios de los Folios con los que se desea timbrar |
|
404 | 404 | * @return =true si se pudo timbrar o =false en caso de error |
405 | 405 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
406 | 406 | * @version 2016-09-01 |
@@ -486,7 +486,7 @@ discard block |
||
486 | 486 | |
487 | 487 | /** |
488 | 488 | * Método que realiza la firma del DTE |
489 | - * @param Firma objeto que representa la Firma Electrónca |
|
489 | + * @param Firma \sasco\LibreDTE\FirmaElectronica que representa la Firma Electrónca |
|
490 | 490 | * @return =true si el DTE pudo ser fimado o =false si no se pudo firmar |
491 | 491 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
492 | 492 | * @version 2017-10-22 |
@@ -509,7 +509,7 @@ discard block |
||
509 | 509 | |
510 | 510 | /** |
511 | 511 | * Método que entrega el DTE en XML |
512 | - * @return XML con el DTE (podría: con o sin timbre y con o sin firma) |
|
512 | + * @return string con el DTE (podría: con o sin timbre y con o sin firma) |
|
513 | 513 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
514 | 514 | * @version 2015-08-20 |
515 | 515 | */ |
@@ -1764,7 +1764,7 @@ discard block |
||
1764 | 1764 | * - Firma del DTE |
1765 | 1765 | * - RUT del emisor (si se pasó uno para comparar) |
1766 | 1766 | * - RUT del receptor (si se pasó uno para comparar) |
1767 | - * @return Código del estado de la validación |
|
1767 | + * @return integer del estado de la validación |
|
1768 | 1768 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
1769 | 1769 | * @version 2019-07-03 |
1770 | 1770 | */ |
@@ -1877,7 +1877,7 @@ discard block |
||
1877 | 1877 | |
1878 | 1878 | /** |
1879 | 1879 | * Método que obtiene el estado del DTE |
1880 | - * @param Firma objeto que representa la Firma Electrónca |
|
1880 | + * @param Firma \sasco\LibreDTE\FirmaElectronica que representa la Firma Electrónca |
|
1881 | 1881 | * @return Arreglo con el estado del DTE |
1882 | 1882 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
1883 | 1883 | * @version 2015-10-24 |
@@ -1921,7 +1921,7 @@ discard block |
||
1921 | 1921 | |
1922 | 1922 | /** |
1923 | 1923 | * Método que obtiene el estado avanzado del DTE |
1924 | - * @param Firma objeto que representa la Firma Electrónca |
|
1924 | + * @param Firma \sasco\LibreDTE\FirmaElectronica que representa la Firma Electrónca |
|
1925 | 1925 | * @return Arreglo con el estado del DTE |
1926 | 1926 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
1927 | 1927 | * @version 2016-08-05 |
@@ -139,7 +139,7 @@ discard block |
||
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 |
||
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 |
||
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 | /** |
@@ -532,7 +532,7 @@ discard block |
||
532 | 532 | { |
533 | 533 | $this->getDatos(); |
534 | 534 | // generar resumen |
535 | - $resumen = [ |
|
535 | + $resumen = [ |
|
536 | 536 | 'TpoDoc' => (int)$this->datos['Encabezado']['IdDoc']['TipoDTE'], |
537 | 537 | 'NroDoc' => (int)$this->datos['Encabezado']['IdDoc']['Folio'], |
538 | 538 | 'TasaImp' => 0, |
@@ -577,10 +577,10 @@ discard block |
||
577 | 577 | */ |
578 | 578 | private function calcularNetoIVA($total, $tasa = null) |
579 | 579 | { |
580 | - if ($tasa === 0 or $tasa === false) { |
|
580 | + if ($tasa===0 or $tasa===false) { |
|
581 | 581 | return [0, 0]; |
582 | 582 | } |
583 | - if ($tasa === null) { |
|
583 | + if ($tasa===null) { |
|
584 | 584 | $tasa = \sasco\LibreDTE\Sii::getIVA(); |
585 | 585 | } |
586 | 586 | // WARNING: el IVA obtenido puede no ser el NETO*(TASA/100) |
@@ -588,8 +588,8 @@ discard block |
||
588 | 588 | // entre el total y el neto, ya que hay casos de borde como: |
589 | 589 | // - BRUTO: 680 => NETO: 571 e IVA: 108 => TOTAL: 679 |
590 | 590 | // - BRUTO: 86710 => NETO: 72866 e IVA: 13845 => TOTAL: 86711 |
591 | - $neto = round($total / (1+($tasa/100))); |
|
592 | - $iva = $total - $neto; |
|
591 | + $neto = round($total / (1+($tasa / 100))); |
|
592 | + $iva = $total-$neto; |
|
593 | 593 | return [$neto, $iva]; |
594 | 594 | } |
595 | 595 | |
@@ -1436,12 +1436,12 @@ discard block |
||
1436 | 1436 | ); |
1437 | 1437 | // aplicar descuento |
1438 | 1438 | if ($d['DescuentoPct']) { |
1439 | - $d['DescuentoMonto'] = round($d['MontoItem'] * (float)$d['DescuentoPct']/100); |
|
1439 | + $d['DescuentoMonto'] = round($d['MontoItem'] * (float)$d['DescuentoPct'] / 100); |
|
1440 | 1440 | } |
1441 | 1441 | $d['MontoItem'] -= $d['DescuentoMonto']; |
1442 | 1442 | // aplicar recargo |
1443 | 1443 | if ($d['RecargoPct']) { |
1444 | - $d['RecargoMonto'] = round($d['MontoItem'] * (float)$d['RecargoPct']/100); |
|
1444 | + $d['RecargoMonto'] = round($d['MontoItem'] * (float)$d['RecargoPct'] / 100); |
|
1445 | 1445 | } |
1446 | 1446 | $d['MontoItem'] += $d['RecargoMonto']; |
1447 | 1447 | // aproximar monto del item |
@@ -1527,7 +1527,7 @@ discard block |
||
1527 | 1527 | } |
1528 | 1528 | $valor = |
1529 | 1529 | $dr['TpoValor']=='%' |
1530 | - ? $this->round(($dr['ValorDR']/100)*$datos['Encabezado']['Totales'][$monto], $datos['Encabezado']['Totales']['TpoMoneda']) |
|
1530 | + ? $this->round(($dr['ValorDR'] / 100) * $datos['Encabezado']['Totales'][$monto], $datos['Encabezado']['Totales']['TpoMoneda']) |
|
1531 | 1531 | : $dr['ValorDR'] |
1532 | 1532 | ; |
1533 | 1533 | // aplicar descuento |
@@ -1600,7 +1600,7 @@ discard block |
||
1600 | 1600 | // si el monto no existe se asigna |
1601 | 1601 | if ($datos['Encabezado']['Totales']['ImptoReten'][$i]['MontoImp']===null) { |
1602 | 1602 | $datos['Encabezado']['Totales']['ImptoReten'][$i]['MontoImp'] = round( |
1603 | - $neto * $datos['Encabezado']['Totales']['ImptoReten'][$i]['TasaImp']/100 |
|
1603 | + $neto * $datos['Encabezado']['Totales']['ImptoReten'][$i]['TasaImp'] / 100 |
|
1604 | 1604 | ); |
1605 | 1605 | } |
1606 | 1606 | } |
@@ -1608,7 +1608,7 @@ discard block |
||
1608 | 1608 | if (isset($datos['Encabezado']['Totales']['ImptoReten']) and is_array($datos['Encabezado']['Totales']['ImptoReten'])) { |
1609 | 1609 | $codigos = array_keys($montos); |
1610 | 1610 | $n_impuestos = count($datos['Encabezado']['Totales']['ImptoReten']); |
1611 | - for ($i=0; $i<$n_impuestos; $i++) { |
|
1611 | + for ($i = 0; $i<$n_impuestos; $i++) { |
|
1612 | 1612 | if (!in_array($datos['Encabezado']['Totales']['ImptoReten'][$i]['TipoImp'], $codigos)) { |
1613 | 1613 | unset($datos['Encabezado']['Totales']['ImptoReten'][$i]); |
1614 | 1614 | } |
@@ -1633,7 +1633,7 @@ discard block |
||
1633 | 1633 | // valor IndMntNeto = 2 indica que los montosde las líneas on netos en cuyo caso no aplica el cálculo |
1634 | 1634 | // de neto e iva a partir del total y deberá venir informado de otra forma (aun no definido) |
1635 | 1635 | if ($this->esBoleta() and (empty($datos['Encabezado']['IdDoc']['IndMntNeto']) or $datos['Encabezado']['IdDoc']['IndMntNeto']!=2)) { |
1636 | - $total = (int)$datos['Encabezado']['Totales']['MntTotal'] - (int)$datos['Encabezado']['Totales']['MntExe']; |
|
1636 | + $total = (int)$datos['Encabezado']['Totales']['MntTotal']-(int)$datos['Encabezado']['Totales']['MntExe']; |
|
1637 | 1637 | if ($total and (empty($datos['Encabezado']['Totales']['MntNeto']) or empty($datos['Encabezado']['Totales']['IVA']))) { |
1638 | 1638 | list($datos['Encabezado']['Totales']['MntNeto'], $datos['Encabezado']['Totales']['IVA']) = $this->calcularNetoIVA($total); |
1639 | 1639 | } |
@@ -1648,7 +1648,7 @@ discard block |
||
1648 | 1648 | } else { |
1649 | 1649 | if (empty($datos['Encabezado']['Totales']['IVA']) and !empty($datos['Encabezado']['Totales']['TasaIVA'])) { |
1650 | 1650 | $datos['Encabezado']['Totales']['IVA'] = round( |
1651 | - $datos['Encabezado']['Totales']['MntNeto']*($datos['Encabezado']['Totales']['TasaIVA']/100) |
|
1651 | + $datos['Encabezado']['Totales']['MntNeto'] * ($datos['Encabezado']['Totales']['TasaIVA'] / 100) |
|
1652 | 1652 | ); |
1653 | 1653 | } |
1654 | 1654 | } |
@@ -1674,7 +1674,7 @@ discard block |
||
1674 | 1674 | if (ImpuestosAdicionales::getTipo($ImptoReten['TipoImp'])=='R') { |
1675 | 1675 | $datos['Encabezado']['Totales']['MntTotal'] -= $ImptoReten['MontoImp']; |
1676 | 1676 | if ($ImptoReten['MontoImp']!=$datos['Encabezado']['Totales']['IVA']) { |
1677 | - $datos['Encabezado']['Totales']['IVANoRet'] = $datos['Encabezado']['Totales']['IVA'] - $ImptoReten['MontoImp']; |
|
1677 | + $datos['Encabezado']['Totales']['IVANoRet'] = $datos['Encabezado']['Totales']['IVA']-$ImptoReten['MontoImp']; |
|
1678 | 1678 | } |
1679 | 1679 | } |
1680 | 1680 | // si es adicional se suma al total |
@@ -1832,7 +1832,7 @@ discard block |
||
1832 | 1832 | $SignatureValue = trim(str_replace(["\n", ' ', "\t"], '', $Signature->getElementsByTagName('SignatureValue')->item(0)->nodeValue)); |
1833 | 1833 | $X509Certificate = trim(str_replace(["\n", ' ', "\t"], '', $Signature->getElementsByTagName('X509Certificate')->item(0)->nodeValue)); |
1834 | 1834 | $X509Certificate = '-----BEGIN CERTIFICATE-----'."\n".wordwrap($X509Certificate, 64, "\n", true)."\n".'-----END CERTIFICATE----- '; |
1835 | - $valid = openssl_verify($SignedInfo->C14N(), base64_decode($SignatureValue), $X509Certificate) === 1 ? true : false; |
|
1835 | + $valid = openssl_verify($SignedInfo->C14N(), base64_decode($SignatureValue), $X509Certificate)===1 ? true : false; |
|
1836 | 1836 | return $valid; |
1837 | 1837 | //return $valid and $DigestValue===base64_encode(sha1($Documento->C14N(), true)); |
1838 | 1838 | } |
@@ -57,10 +57,11 @@ discard block |
||
57 | 57 | */ |
58 | 58 | public function __construct($datos, $normalizar = true) |
59 | 59 | { |
60 | - if (is_array($datos)) |
|
61 | - $this->setDatos($datos, $normalizar); |
|
62 | - else if (is_string($datos)) |
|
63 | - $this->loadXML($datos); |
|
60 | + if (is_array($datos)) { |
|
61 | + $this->setDatos($datos, $normalizar); |
|
62 | + } else if (is_string($datos)) { |
|
63 | + $this->loadXML($datos); |
|
64 | + } |
|
64 | 65 | $this->timestamp = date('Y-m-d\TH:i:s'); |
65 | 66 | } |
66 | 67 | |
@@ -121,8 +122,9 @@ discard block |
||
121 | 122 | if ($normalizar) { |
122 | 123 | $this->normalizar($datos); |
123 | 124 | $method = 'normalizar_'.$this->tipo; |
124 | - if (method_exists($this, $method)) |
|
125 | - $this->$method($datos); |
|
125 | + if (method_exists($this, $method)) { |
|
126 | + $this->$method($datos); |
|
127 | + } |
|
126 | 128 | $this->normalizar_final($datos); |
127 | 129 | } |
128 | 130 | $this->tipo_general = $this->getTipoGeneral($this->tipo); |
@@ -199,8 +201,9 @@ discard block |
||
199 | 201 | */ |
200 | 202 | public function getJSON() |
201 | 203 | { |
202 | - if (!$this->getDatos()) |
|
203 | - return false; |
|
204 | + if (!$this->getDatos()) { |
|
205 | + return false; |
|
206 | + } |
|
204 | 207 | return json_encode($this->datos, JSON_PRETTY_PRINT); |
205 | 208 | } |
206 | 209 | |
@@ -225,9 +228,10 @@ discard block |
||
225 | 228 | */ |
226 | 229 | private function getTipoGeneral($dte) |
227 | 230 | { |
228 | - foreach ($this->tipos as $tipo => $codigos) |
|
229 | - if (in_array($dte, $codigos)) |
|
231 | + foreach ($this->tipos as $tipo => $codigos) { |
|
232 | + if (in_array($dte, $codigos)) |
|
230 | 233 | return $tipo; |
234 | + } |
|
231 | 235 | \sasco\LibreDTE\Log::write( |
232 | 236 | \sasco\LibreDTE\Estado::DTE_ERROR_TIPO, |
233 | 237 | \sasco\LibreDTE\Estado::get(\sasco\LibreDTE\Estado::DTE_ERROR_TIPO, $dte) |
@@ -266,10 +270,12 @@ discard block |
||
266 | 270 | public function getEmisor() |
267 | 271 | { |
268 | 272 | $nodo = $this->xml->xpath('/DTE/'.$this->tipo_general.'/Encabezado/Emisor/RUTEmisor')->item(0); |
269 | - if ($nodo) |
|
270 | - return $nodo->nodeValue; |
|
271 | - if (!$this->getDatos()) |
|
272 | - return false; |
|
273 | + if ($nodo) { |
|
274 | + return $nodo->nodeValue; |
|
275 | + } |
|
276 | + if (!$this->getDatos()) { |
|
277 | + return false; |
|
278 | + } |
|
273 | 279 | return $this->datos['Encabezado']['Emisor']['RUTEmisor']; |
274 | 280 | } |
275 | 281 | |
@@ -282,10 +288,12 @@ discard block |
||
282 | 288 | public function getReceptor() |
283 | 289 | { |
284 | 290 | $nodo = $this->xml->xpath('/DTE/'.$this->tipo_general.'/Encabezado/Receptor/RUTRecep')->item(0); |
285 | - if ($nodo) |
|
286 | - return $nodo->nodeValue; |
|
287 | - if (!$this->getDatos()) |
|
288 | - return false; |
|
291 | + if ($nodo) { |
|
292 | + return $nodo->nodeValue; |
|
293 | + } |
|
294 | + if (!$this->getDatos()) { |
|
295 | + return false; |
|
296 | + } |
|
289 | 297 | return $this->datos['Encabezado']['Receptor']['RUTRecep']; |
290 | 298 | } |
291 | 299 | |
@@ -298,10 +306,12 @@ discard block |
||
298 | 306 | public function getFechaEmision() |
299 | 307 | { |
300 | 308 | $nodo = $this->xml->xpath('/DTE/'.$this->tipo_general.'/Encabezado/IdDoc/FchEmis')->item(0); |
301 | - if ($nodo) |
|
302 | - return $nodo->nodeValue; |
|
303 | - if (!$this->getDatos()) |
|
304 | - return false; |
|
309 | + if ($nodo) { |
|
310 | + return $nodo->nodeValue; |
|
311 | + } |
|
312 | + if (!$this->getDatos()) { |
|
313 | + return false; |
|
314 | + } |
|
305 | 315 | return $this->datos['Encabezado']['IdDoc']['FchEmis']; |
306 | 316 | } |
307 | 317 | |
@@ -314,10 +324,12 @@ discard block |
||
314 | 324 | public function getMontoTotal() |
315 | 325 | { |
316 | 326 | $nodo = $this->xml->xpath('/DTE/'.$this->tipo_general.'/Encabezado/Totales/MntTotal')->item(0); |
317 | - if ($nodo) |
|
318 | - return $nodo->nodeValue; |
|
319 | - if (!$this->getDatos()) |
|
320 | - return false; |
|
327 | + if ($nodo) { |
|
328 | + return $nodo->nodeValue; |
|
329 | + } |
|
330 | + if (!$this->getDatos()) { |
|
331 | + return false; |
|
332 | + } |
|
321 | 333 | return $this->datos['Encabezado']['Totales']['MntTotal']; |
322 | 334 | } |
323 | 335 | |
@@ -330,10 +342,12 @@ discard block |
||
330 | 342 | public function getMoneda() |
331 | 343 | { |
332 | 344 | $nodo = $this->xml->xpath('/DTE/'.$this->tipo_general.'/Encabezado/Totales/TpoMoneda')->item(0); |
333 | - if ($nodo) |
|
334 | - return $nodo->nodeValue; |
|
335 | - if (!$this->getDatos()) |
|
336 | - return false; |
|
345 | + if ($nodo) { |
|
346 | + return $nodo->nodeValue; |
|
347 | + } |
|
348 | + if (!$this->getDatos()) { |
|
349 | + return false; |
|
350 | + } |
|
337 | 351 | return $this->datos['Encabezado']['Totales']['TpoMoneda']; |
338 | 352 | } |
339 | 353 | |
@@ -376,8 +390,9 @@ discard block |
||
376 | 390 | return false;*/ |
377 | 391 | $xml = new \sasco\LibreDTE\XML(); |
378 | 392 | $TED = $this->xml->getElementsByTagName('TED')->item(0); |
379 | - if (!$TED) |
|
380 | - return '<TED/>'; |
|
393 | + if (!$TED) { |
|
394 | + return '<TED/>'; |
|
395 | + } |
|
381 | 396 | $xml->loadXML($TED->C14N()); |
382 | 397 | $xml->documentElement->removeAttributeNS('http://www.w3.org/2001/XMLSchema-instance', 'xsi'); |
383 | 398 | $xml->documentElement->removeAttributeNS('http://www.sii.cl/SiiDte', ''); |
@@ -676,8 +691,9 @@ discard block |
||
676 | 691 | ], $datos); |
677 | 692 | // si existe descuento o recargo global se normalizan |
678 | 693 | if (!empty($datos['DscRcgGlobal'])) { |
679 | - if (!isset($datos['DscRcgGlobal'][0])) |
|
680 | - $datos['DscRcgGlobal'] = [$datos['DscRcgGlobal']]; |
|
694 | + if (!isset($datos['DscRcgGlobal'][0])) { |
|
695 | + $datos['DscRcgGlobal'] = [$datos['DscRcgGlobal']]; |
|
696 | + } |
|
681 | 697 | $NroLinDR = 1; |
682 | 698 | foreach ($datos['DscRcgGlobal'] as &$dr) { |
683 | 699 | $dr = array_merge([ |
@@ -1344,8 +1360,9 @@ discard block |
||
1344 | 1360 | */ |
1345 | 1361 | private function normalizar_detalle(array &$datos) |
1346 | 1362 | { |
1347 | - if (!isset($datos['Detalle'][0])) |
|
1348 | - $datos['Detalle'] = [$datos['Detalle']]; |
|
1363 | + if (!isset($datos['Detalle'][0])) { |
|
1364 | + $datos['Detalle'] = [$datos['Detalle']]; |
|
1365 | + } |
|
1349 | 1366 | $item = 1; |
1350 | 1367 | foreach ($datos['Detalle'] as &$d) { |
1351 | 1368 | $d = array_merge([ |
@@ -1407,8 +1424,9 @@ discard block |
||
1407 | 1424 | ]; |
1408 | 1425 | } |
1409 | 1426 | if ($d['PrcItem']) { |
1410 | - if (!$d['QtyItem']) |
|
1411 | - $d['QtyItem'] = 1; |
|
1427 | + if (!$d['QtyItem']) { |
|
1428 | + $d['QtyItem'] = 1; |
|
1429 | + } |
|
1412 | 1430 | if (empty($d['MontoItem'])) { |
1413 | 1431 | $d['MontoItem'] = $this->round( |
1414 | 1432 | (float)$d['QtyItem'] * (float)$d['PrcItem'], |
@@ -1474,8 +1492,9 @@ discard block |
||
1474 | 1492 | private function normalizar_aplicar_descuentos_recargos(array &$datos) |
1475 | 1493 | { |
1476 | 1494 | if (!empty($datos['DscRcgGlobal'])) { |
1477 | - if (!isset($datos['DscRcgGlobal'][0])) |
|
1478 | - $datos['DscRcgGlobal'] = [$datos['DscRcgGlobal']]; |
|
1495 | + if (!isset($datos['DscRcgGlobal'][0])) { |
|
1496 | + $datos['DscRcgGlobal'] = [$datos['DscRcgGlobal']]; |
|
1497 | + } |
|
1479 | 1498 | foreach ($datos['DscRcgGlobal'] as &$dr) { |
1480 | 1499 | $dr = array_merge([ |
1481 | 1500 | 'NroLinDR' => false, |
@@ -1542,8 +1561,9 @@ discard block |
||
1542 | 1561 | $montos = []; |
1543 | 1562 | foreach ($datos['Detalle'] as &$d) { |
1544 | 1563 | if (!empty($d['CodImpAdic'])) { |
1545 | - if (!isset($montos[$d['CodImpAdic']])) |
|
1546 | - $montos[$d['CodImpAdic']] = 0; |
|
1564 | + if (!isset($montos[$d['CodImpAdic']])) { |
|
1565 | + $montos[$d['CodImpAdic']] = 0; |
|
1566 | + } |
|
1547 | 1567 | $montos[$d['CodImpAdic']] += $d['MontoItem']; |
1548 | 1568 | } |
1549 | 1569 | } |
@@ -71,8 +71,8 @@ discard block |
||
71 | 71 | ]; ///< Tipos de transacciones o caracterizaciones/clasificaciones de las compras |
72 | 72 | |
73 | 73 | public static $estados_ok = [ |
74 | - 7, // Evento registrado previamente |
|
75 | - 8, // Pasados 8 días después de la recepción no es posible registrar reclamos o eventos |
|
74 | + 7, // Evento registrado previamente |
|
75 | + 8, // Pasados 8 días después de la recepción no es posible registrar reclamos o eventos |
|
76 | 76 | 27, // No se puede registrar un evento (acuse de recibo, reclamo o aceptación de contenido) de un DTE pagado al contado o gratuito |
77 | 77 | ]; ///< Código de estado de respuesta de la asignación de estado que son considerados como OK |
78 | 78 | |
@@ -251,7 +251,7 @@ discard block |
||
251 | 251 | return false; |
252 | 252 | } |
253 | 253 | // hacer consultas al SII |
254 | - for ($i=0; $i<$retry; $i++) { |
|
254 | + for ($i = 0; $i<$retry; $i++) { |
|
255 | 255 | try { |
256 | 256 | $body = call_user_func_array([$soap, $request], $args); |
257 | 257 | break; |
@@ -80,7 +80,7 @@ discard block |
||
80 | 80 | |
81 | 81 | /** |
82 | 82 | * Constructor, obtiene el token de la sesión y lo guarda |
83 | - * @param Firma Objeto con la firma electrónica |
|
83 | + * @param Firma \sasco\LibreDTE\FirmaElectronica con la firma electrónica |
|
84 | 84 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
85 | 85 | * @version 2021-01-06 |
86 | 86 | */ |
@@ -127,6 +127,8 @@ discard block |
||
127 | 127 | * Método que entrega los eventos asociados a un DTE |
128 | 128 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
129 | 129 | * @version 2017-08-28 |
130 | + * @param string $dte |
|
131 | + * @param string $folio |
|
130 | 132 | */ |
131 | 133 | public function listarEventosHistDoc($rut, $dv, $dte, $folio) |
132 | 134 | { |
@@ -214,10 +216,10 @@ discard block |
||
214 | 216 | |
215 | 217 | /** |
216 | 218 | * Método para realizar una solicitud al servicio web del SII |
217 | - * @param request Nombre de la función que se ejecutará en el servicio web |
|
219 | + * @param request string de la función que se ejecutará en el servicio web |
|
218 | 220 | * @param args Argumentos que se pasarán al servicio web |
219 | - * @param retry Intentos que se realizarán como máximo para obtener respuesta |
|
220 | - * @return Objeto o String con la respuesta (depende servicio web) |
|
221 | + * @param retry integer que se realizarán como máximo para obtener respuesta |
|
222 | + * @return string o String con la respuesta (depende servicio web) |
|
221 | 223 | * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) |
222 | 224 | * @version 2020-02-12 |
223 | 225 | */ |