se adiciona DevengadoHorasExtrasDiarias
FossilOrigin-Name: c544c4bb273c7f548f7cb5d4466af9975bb7f5a35e4bd38a22fbdeae39acea4c
This commit is contained in:
parent
ee3910136d
commit
67f29fcca6
@ -441,6 +441,14 @@ class DIANNominaXML:
|
||||
|
||||
return errors
|
||||
|
||||
def informacion_general(self):
|
||||
xpath = self.root_fragment.xpath_from_root('/InformacionGeneral')
|
||||
return {
|
||||
'cune': self.fexml.get_element_attribute(cune_xpath, 'CUNE'),
|
||||
'fecha_generacion': self.fexml.get_element_attribute(xpath, 'FechaGen'),
|
||||
'numero': self.fexml.get_element_attribute(self.root_fragment('/NumeroSecuenciaXML', 'Numero'))
|
||||
}
|
||||
|
||||
def toFachoXML(self):
|
||||
self._devengados_total()
|
||||
self._deducciones_total()
|
||||
|
@ -2,9 +2,12 @@
|
||||
from .basico import *
|
||||
from .transporte import *
|
||||
from .devengado import *
|
||||
from .horas_extras import *
|
||||
|
||||
__all__ = [
|
||||
'Devengado',
|
||||
'DevengadoBasico',
|
||||
'DevengadoTransporte'
|
||||
'DevengadoTransporte',
|
||||
'DevengadoHorasExtrasDiarias',
|
||||
'DevengadoHoraExtra'
|
||||
]
|
||||
|
@ -141,7 +141,8 @@ def test_nomina_xml():
|
||||
nit='999999',
|
||||
dv=2,
|
||||
software_id='xx',
|
||||
software_pin='12'
|
||||
software_pin='12',
|
||||
razon_social='facho'
|
||||
)
|
||||
))
|
||||
|
||||
@ -155,6 +156,7 @@ def test_nomina_xml():
|
||||
))
|
||||
|
||||
nomina.asignar_empleador(fe.nomina.Empleador(
|
||||
razon_social='facho',
|
||||
nit = '700085371',
|
||||
dv = '1',
|
||||
pais = fe.nomina.Pais(
|
||||
@ -349,6 +351,41 @@ def test_adicionar_eliminar_asignar_predecesor():
|
||||
assert xml.get_element_text_or_attribute('/fe:NominaIndividualDeAjuste/Eliminar/EliminandoPredecesor/@CUNEPred') == 'ABC123456'
|
||||
assert xml.get_element_text_or_attribute('/fe:NominaIndividualDeAjuste/Eliminar/EliminandoPredecesor/@FechaGenPred') == '2021-11-16'
|
||||
|
||||
def test_nomina_devengado_horas_extras_diarias():
|
||||
nomina = fe.nomina.DIANNominaIndividual()
|
||||
|
||||
nomina.adicionar_devengado(fe.nomina.DevengadoHorasExtrasDiarias(
|
||||
horas_extras=[
|
||||
fe.nomina.DevengadoHoraExtra(
|
||||
hora_inicio='2021-11-30T19:09:55',
|
||||
hora_fin='2021-11-30T20:09:55',
|
||||
cantidad=1,
|
||||
porcentaje=fe.nomina.Amount(1),
|
||||
pago=fe.nomina.Amount(100)
|
||||
),
|
||||
fe.nomina.DevengadoHoraExtra(
|
||||
hora_inicio='2021-11-30T18:09:55',
|
||||
hora_fin='2021-11-30T19:09:55',
|
||||
cantidad=2,
|
||||
porcentaje=fe.nomina.Amount(2),
|
||||
pago=fe.nomina.Amount(200)
|
||||
)
|
||||
]
|
||||
))
|
||||
|
||||
xml = nomina.toFachoXML()
|
||||
extras = xml.get_element('/fe:NominaIndividual/Devengados/HEDs/HED', multiple=True)
|
||||
assert extras[0].get('HoraInicio') == '2021-11-30T19:09:55'
|
||||
assert extras[0].get('HoraFin') == '2021-11-30T20:09:55'
|
||||
assert extras[0].get('Cantidad') == '1'
|
||||
assert extras[0].get('Porcentaje') == '1.0'
|
||||
assert extras[0].get('Pago') == '100.00'
|
||||
assert extras[1].get('HoraInicio') == '2021-11-30T18:09:55'
|
||||
assert extras[1].get('HoraFin') == '2021-11-30T19:09:55'
|
||||
assert extras[1].get('Cantidad') == '2'
|
||||
assert extras[1].get('Porcentaje') == '2.0'
|
||||
assert extras[1].get('Pago') == '200.00'
|
||||
|
||||
|
||||
def test_fecha_validacion():
|
||||
with pytest.raises(ValueError) as e:
|
||||
|
Loading…
Reference in New Issue
Block a user