(self)
return res
V 1.2
        1. Inversión del Sujeto Pasivo (ISP) taxes (tax is paid by the customer).
        2. Other taxes
        <element name="DetalleNoExenta" type="T:DetalleNoExentaType" minOccurs="1"
                 maxOccurs="2" />
            <sequence>
                <element name="TipoNoExenta" type="T:TipoOperacionSujetaNoExentaType"/>
                    <restriction base="string">
                        <enumeration value="S1">
                        <enumeration value="S2">
                <element name="DesgloseIVA" type="T:DesgloseIVAType"/>
                    <element name="DetalleIVA" type="T:DetalleIVAType" maxOccurs="6" />
                        <sequence>
                            <element name="BaseImponible" type="T:ImporteSgn12.2Type"/>
                            <element name="TipoImpositivo" type="T:Tipo3.2Type"
                                     minOccurs="0"/>
                            <element name="CuotaImpuesto" type="T:ImporteSgn12.2Type"
                                     minOccurs="0" />
                            <element name="TipoRecargoEquivalencia" type="T:Tipo3.2Type"
                                     minOccurs="0"/>
                            <element name="CuotaRecargoEquivalencia"
                                     type="T:ImporteSgn12.2Type" minOccurs="0"/>
                            <element
                            name="OperacionEnRecargoDeEquivalenciaORegimenSimplificado"
                            type="T:SiNoType" minOccurs="0"/>
        :return: list<OrderedDict>
V 1.2
        1. Inversión del Sujeto Pasivo (ISP) taxes (tax is paid by the customer).
        2. Other taxes
        <element name="DetalleNoExenta" type="T:DetalleNoExentaType" minOccurs="1"
                 maxOccurs="2" />
            <sequence>
                <element name="TipoNoExenta" type="T:TipoOperacionSujetaNoExentaType"/>
                    <restriction base="string">
                        <enumeration value="S1">
                        <enumeration value="S2">
                <element name="DesgloseIVA" type="T:DesgloseIVAType"/>
                    <element name="DetalleIVA" type="T:DetalleIVAType" maxOccurs="6" />
                        <sequence>
                            <element name="BaseImponible" type="T:ImporteSgn12.2Type"/>
                            <element name="TipoImpositivo" type="T:Tipo3.2Type"
                                     minOccurs="0"/>
                            <element name="CuotaImpuesto" type="T:ImporteSgn12.2Type"
                                     minOccurs="0" />
                            <element name="TipoRecargoEquivalencia" type="T:Tipo3.2Type"
                                     minOccurs="0"/>
                            <element name="CuotaRecargoEquivalencia"
                                     type="T:ImporteSgn12.2Type" minOccurs="0"/>
                            <element
                            name="OperacionEnRecargoDeEquivalenciaORegimenSimplificado"
                            type="T:SiNoType" minOccurs="0"/>
        :return: list<OrderedDict>
V 1 . 2 1 . Inversión del Sujeto Pasivo ( ISP ) taxes ( tax is paid by the customer ) . 2 . Other taxes <element name = DetalleNoExenta type = T : DetalleNoExentaType minOccurs = 1 maxOccurs = 2 / > <sequence > <element name = TipoNoExenta type = T : TipoOperacionSujetaNoExentaType / > <restriction base = string > <enumeration value = S1 > <enumeration value = S2 > <element name = DesgloseIVA type = T : DesgloseIVAType / > <element name = DetalleIVA type = T : DetalleIVAType maxOccurs = 6 / > <sequence > <element name = BaseImponible type = T : ImporteSgn12 . 2Type / > <element name = TipoImpositivo type = T : Tipo3 . 2Type minOccurs = 0 / > <element name = CuotaImpuesto type = T : ImporteSgn12 . 2Type minOccurs = 0 / > <element name = TipoRecargoEquivalencia type = T : Tipo3 . 2Type minOccurs = 0 / > <element name = CuotaRecargoEquivalencia type = T : ImporteSgn12 . 2Type minOccurs = 0 / > <element name = OperacionEnRecargoDeEquivalenciaORegimenSimplificado type = T : SiNoType minOccurs = 0 / > : return : list<OrderedDict >
def build_detalle_no_exenta(self):
        """V 1.2
        1. Inversión del Sujeto Pasivo (ISP) taxes (tax is paid by the customer).
        2. Other taxes
        <element name="DetalleNoExenta" type="T:DetalleNoExentaType" minOccurs="1"
                 maxOccurs="2" />
            <sequence>
                <element name="TipoNoExenta" type="T:TipoOperacionSujetaNoExentaType"/>
                    <restriction base="string">
                        <enumeration value="S1">
                        <enumeration value="S2">
                <element name="DesgloseIVA" type="T:DesgloseIVAType"/>
                    <element name="DetalleIVA" type="T:DetalleIVAType" maxOccurs="6" />
                        <sequence>
                            <element name="BaseImponible" type="T:ImporteSgn12.2Type"/>
                            <element name="TipoImpositivo" type="T:Tipo3.2Type"
                                     minOccurs="0"/>
                            <element name="CuotaImpuesto" type="T:ImporteSgn12.2Type"
                                     minOccurs="0" />
                            <element name="TipoRecargoEquivalencia" type="T:Tipo3.2Type"
                                     minOccurs="0"/>
                            <element name="CuotaRecargoEquivalencia"
                                     type="T:ImporteSgn12.2Type" minOccurs="0"/>
                            <element
                            name="OperacionEnRecargoDeEquivalenciaORegimenSimplificado"
                            type="T:SiNoType" minOccurs="0"/>
        :return: list<OrderedDict>
        """
        not_exempted_taxes = self.get_not_exempted_taxes()
        res = []
        not_exempted_taxes_isp = OrderedDict()
        not_exempted_taxes_not_isp = OrderedDict()
        for tax in not_exempted_taxes:
            tax_details = OrderedDict(
                [
                    ("BaseImponible", tax.base),
                    ("TipoImpositivo", tax.amount),
                    ("CuotaImpuesto", tax.amount_total),
                ]
            )
            if tax.re_amount and tax.re_amount_total:
                tax_details["TipoRecargoEquivalencia"] = tax.re_amount
                tax_details["CuotaRecargoEquivalencia"] = tax.re_amount_total
            if tax.surcharge_or_simplified_regime:
                tax_details[
                    "OperacionEnRecargoDeEquivalenciaORegimenSimplificado"
                ] = tax.surcharge_or_simplified_regime
            if tax.not_exempted_type == "S1":
                not_exempted_taxes_not_isp.setdefault("TipoNoExenta", "S1")
                not_exempted_taxes_not_isp.setdefault("DesgloseIVA", {"DetalleIVA": []})
                not_exempted_taxes_not_isp["DesgloseIVA"]["DetalleIVA"].append(
                    tax_details
                )
            elif tax.not_exempted_type == "S2":
                not_exempted_taxes_isp.setdefault("TipoNoExenta", "S2")
                not_exempted_taxes_isp.setdefault("DesgloseIVA", {"DetalleIVA": []})
                not_exempted_taxes_isp["DesgloseIVA"]["DetalleIVA"].append(tax_details)
        if not_exempted_taxes_isp:
            res.append(not_exempted_taxes_isp)
        if not_exempted_taxes_not_isp:
            res.append(not_exempted_taxes_not_isp)
        return res
def build_detalle_no_exenta ( self ) : not_exempted_taxes = self . get_not_exempted_taxes ( ) res = [ ] not_exempted_taxes_isp = OrderedDict ( ) not_exempted_taxes_not_isp = OrderedDict ( ) for tax in not_exempted_taxes : tax_details = OrderedDict ( [ ( "BaseImponible" , tax . base ) , ( "TipoImpositivo" , tax . amount ) , ( "CuotaImpuesto" , tax . amount_total ) , ] ) if tax . re_amount and tax . re_amount_total : tax_details [ "TipoRecargoEquivalencia" ] = tax . re_amount tax_details [ "CuotaRecargoEquivalencia" ] = tax . re_amount_total if tax . surcharge_or_simplified_regime : tax_details [ "OperacionEnRecargoDeEquivalenciaORegimenSimplificado" ] = tax . surcharge_or_simplified_regime if tax . not_exempted_type == "S1" : not_exempted_taxes_not_isp . setdefault ( "TipoNoExenta" , "S1" ) not_exempted_taxes_not_isp . setdefault ( "DesgloseIVA" , { "DetalleIVA" : [ ] } ) not_exempted_taxes_not_isp [ "DesgloseIVA" ] [ "DetalleIVA" ] . append ( tax_details ) elif tax . not_exempted_type == "S2" : not_exempted_taxes_isp . setdefault ( "TipoNoExenta" , "S2" ) not_exempted_taxes_isp . setdefault ( "DesgloseIVA" , { "DetalleIVA" : [ ] } ) not_exempted_taxes_isp [ "DesgloseIVA" ] [ "DetalleIVA" ] . append ( tax_details ) if not_exempted_taxes_isp : res . append ( not_exempted_taxes_isp ) if not_exempted_taxes_not_isp : res . append ( not_exempted_taxes_not_isp ) return res