Al crear las extenciones de las líneas los if estna mal puestos, ya que cuando no hay excepción de iva, entra por el 2º if en vez de por el 3º if. Hay que preguntar primero los if que contienen && y luego los if que contienen OR.
if ($subtotal['taxamount'] == 0 && false === empty($excepcionIva)) {
$foreignServiceSubjectExemptBreakdownItems = TbaiTools::setForeignServiceSubjectExemptBreakdownItems(
$subtotal, $excepcionIva, $foreignServiceSubjectExemptBreakdownItems);
continue;
}
// si el total no es 0 o no tiene excepción de iva
if ($subtotal['taxamount'] != 0 || empty($excepcionIva)) {
$foreignServiceSubjectNotExemptBreakdownItems = TbaiTools::setForeignServiceSubjectNotExemptBreakdownItems(
$subtotal, $json['invoice']['data']['vatRegimes'], $foreignServiceSubjectNotExemptBreakdownItems);
continue;
}
// si el total es 0 y no tiene excepción de iva
if ($subtotal['taxamount'] == 0 && empty($excepcionIva)) {
$foreignServiceNotSubjectBreakdownItems = TbaiTools::setForeignServiceNotSubjectBreakdownItems(
$this->operacion, $subtotal, $foreignServiceNotSubjectBreakdownItems);
continue;
}
18-01-2024 09:09:23 daniel89fg_739 ENVIADA - https://github.com/FacturaScripts/ticketbai/pull/47 |