Code Duplication    Length = 25-25 lines in 2 locations

satcfdi/create/cfd/cfdi33.py 1 location

@@ 74-98 (lines=25) @@
71
        return impuesto
72
73
74
class Traslado(ScalarMap):
75
    """
76
    Nodo requerido para la información detallada de un traslado de impuesto específico.
77
78
    :param base: Atributo requerido para señalar la suma de los atributos Base de los conceptos del impuesto trasladado. No se permiten valores negativos.
79
    :param impuesto: Atributo requerido para señalar la clave del tipo de impuesto retencion.
80
    :param tipo_factor: Atributo requerido para señalar la clave del tipo de factor que se aplica a la base del impuesto.
81
    :param tasa_o_cuota: Atributo condicional para señalar el valor de la tasa o cuota del impuesto que se traslada por los conceptos amparados en el comprobante.
82
    :param importe: Atributo condicional para señalar la suma del importe del impuesto trasladado, agrupado por impuesto, TipoFactor y TasaOCuota. No se permiten valores negativos.
83
    """
84
85
    def __init__(
86
            self,
87
            impuesto: str,
88
            tipo_factor: str,
89
            tasa_o_cuota: Decimal | int = None,
90
            importe: Decimal | int = None,
91
            base: Decimal | int = None,
92
    ):
93
        super().__init__({
94
            'Base': base,
95
            'Impuesto': _find_impuesto(impuesto),
96
            'TipoFactor': tipo_factor,
97
            'TasaOCuota': tasa_o_cuota,
98
            'Importe': importe,
99
        })
100
101

satcfdi/create/cfd/cfdi40.py 1 location

@@ 129-153 (lines=25) @@
126
        return impuesto
127
128
129
class Traslado(ScalarMap):
130
    """
131
    Nodo requerido para la información detallada de un traslado de impuesto específico.
132
133
    :param base: Atributo requerido para señalar la suma de los atributos Base de los conceptos del impuesto trasladado. No se permiten valores negativos.
134
    :param impuesto: Atributo requerido para señalar la clave del tipo de impuesto retencion.
135
    :param tipo_factor: Atributo requerido para señalar la clave del tipo de factor que se aplica a la base del impuesto.
136
    :param tasa_o_cuota: Atributo condicional para señalar el valor de la tasa o cuota del impuesto que se traslada por los conceptos amparados en el comprobante.
137
    :param importe: Atributo condicional para señalar la suma del importe del impuesto trasladado, agrupado por impuesto, TipoFactor y TasaOCuota. No se permiten valores negativos.
138
    """
139
140
    def __init__(
141
            self,
142
            impuesto: str,
143
            tipo_factor: str,
144
            tasa_o_cuota: Decimal | int = None,
145
            importe: Decimal | int = None,
146
            base: Decimal | int = None,
147
    ):
148
        super().__init__({
149
            'Base': base,
150
            'Impuesto': _find_impuesto(impuesto),
151
            'TipoFactor': tipo_factor,
152
            'TasaOCuota': tasa_o_cuota,
153
            'Importe': importe,
154
        })
155
156