This commit is contained in:
2022-06-14 20:09:16 -07:00
parent 7a2b7b3ee7
commit 498c26877d

View File

@@ -344,13 +344,9 @@ Public Class CFDIConceptosImpuestos
Public Property TipoFactor As String = "Tasa"
Public Property TasaOCuota As Decimal = 0.00D
Public Property Importe As Decimal = 0.00D ' propiedad utilizada solo para hacer ajustes, por default toma la multiplicación de base * tasa
Public Property BaseMN As Decimal = 0.00D
Public Property ImporteMN As Decimal = 0.00D
'Public ReadOnly Property Importe As Decimal
' Get
' If ImporteT = 0.00 Then Return Base * TasaOCuota Else Return ImporteT
' End Get
'End Property
Public Property BaseMN As Decimal = 0.000000D
Public Property ImporteMN As Decimal = 0.000000D
End Class
@@ -401,6 +397,7 @@ Public Class CFDIRetenciones
Public Property Impuesto As String
Public Property Importe As Decimal = 0.000000D
Public Property TasaOCuota As String
Public Property ImporteMN As Decimal = 0.000000D
End Class
@@ -428,7 +425,6 @@ Public Class CFDITraslados
Public Property Base As Decimal = 0.000000D
Public Property ImporteMN As Decimal = 0.000000D
Public Property BaseMN As Decimal = 0.000000D
Public Property EquivalenciaDR As Decimal = 0.000000D
End Class
@@ -463,17 +459,17 @@ Public Class CFDIComplementoPagos
Public ReadOnly Property Totales As CFDIComplementoPagosTotales
Get
Dim tRetorno As New CFDIComplementoPagosTotales
tRetorno.MontoTotalPagos = (From c In DocumentosRelacionados Select c.ImpPagado * TipoCambioP).Sum()
tRetorno.MontoTotalPagos = (From c In DocumentosRelacionados Select c.ImpPagadoMN).Sum()
tRetorno.TotalTrasladosBaseIVA0 = (From c In Traslados Where c.Impuesto = "002" And c.TasaOCuota = 0 Select c.BaseMN * c.EquivalenciaDR).Sum()
tRetorno.TotalTrasladosBaseIVA8 = (From c In Traslados Where c.Impuesto = "002" And c.TasaOCuota = 0.08 Select c.BaseMN * c.EquivalenciaDR).Sum()
tRetorno.TotalTrasladosBaseIVA16 = (From c In Traslados Where c.Impuesto = "002" And c.TasaOCuota = 0.16 Select c.BaseMN * c.EquivalenciaDR).Sum()
tRetorno.TotalTrasladosBaseIVA0 = (From c In Traslados Where c.Impuesto = "002" And c.TasaOCuota = 0 Select c.BaseMN).Sum()
tRetorno.TotalTrasladosBaseIVA8 = (From c In Traslados Where c.Impuesto = "002" And c.TasaOCuota = 0.08 Select c.BaseMN).Sum()
tRetorno.TotalTrasladosBaseIVA16 = (From c In Traslados Where c.Impuesto = "002" And c.TasaOCuota = 0.16 Select c.BaseMN).Sum()
tRetorno.TotalTrasladosImpuestoIVA0 = (From c In Traslados Where c.Impuesto = "002" And c.TasaOCuota = 0 Select c.Importe * c.EquivalenciaDR).Sum()
tRetorno.TotalTrasladosImpuestoIVA8 = (From c In Traslados Where c.Impuesto = "002" And c.TasaOCuota = 0.08 Select c.ImporteMN * c.EquivalenciaDR).Sum()
tRetorno.TotalTrasladosImpuestoIVA16 = (From c In Traslados Where c.Impuesto = "002" And c.TasaOCuota = 0.16 Select c.ImporteMN * c.EquivalenciaDR).Sum()
tRetorno.TotalTrasladosImpuestoIVA0 = (From c In Traslados Where c.Impuesto = "002" And c.TasaOCuota = 0 Select c.Importe).Sum()
tRetorno.TotalTrasladosImpuestoIVA8 = (From c In Traslados Where c.Impuesto = "002" And c.TasaOCuota = 0.08 Select c.ImporteMN).Sum()
tRetorno.TotalTrasladosImpuestoIVA16 = (From c In Traslados Where c.Impuesto = "002" And c.TasaOCuota = 0.16 Select c.ImporteMN).Sum()
tRetorno.TotalRetencionesIEPS = (From c In Retenciones Where c.Impuesto = "003" Select c.Importe).Sum()
tRetorno.TotalRetencionesIEPS = (From c In Retenciones Where c.Impuesto = "003" Select c.ImporteMN).Sum()
Return tRetorno
End Get
@@ -510,15 +506,15 @@ Public Class CFDIComplementoPagos
For Each c As CFDIComplementoPagosDocsRelacionados In DocumentosRelacionados
For Each imp As CFDIConceptosImpuestos In c.Impuestos
If imp.TrasladooRetencion = "R" Then
tRetorno.Add(New CFDIRetenciones With {.Impuesto = imp.Impuesto, .Importe = imp.Importe * (1 / c.TipoCambioDR)})
tRetorno.Add(New CFDIRetenciones With {.Impuesto = imp.Impuesto, .Importe = imp.Importe, .ImporteMN = imp.ImporteMN})
End If
Next
Next
If tRetorno.Count > 0 Then
TRetenciones = tRetorno.GroupBy(Function(t) New With {Key t.Impuesto}) _
.Select(Function(t) New CFDIRetenciones With {.Impuesto = t.Key.Impuesto,
.Importe = t.Sum(Function(tt) tt.Importe)}) _
.Importe = t.Sum(Function(tt) tt.Importe),
.ImporteMN = t.Sum(Function(tt) tt.ImporteMN)}) _
.OrderBy(Function(x) x.Impuesto).ToList
End If
@@ -535,7 +531,7 @@ Public Class CFDIComplementoPagos
For Each c As CFDIComplementoPagosDocsRelacionados In DocumentosRelacionados
For Each imp As CFDIConceptosImpuestos In c.Impuestos
If imp.TrasladooRetencion = "T" Then
tRetorno.Add(New CFDITraslados With {.Impuesto = imp.Impuesto, .Base = imp.Base, .Importe = imp.Importe, .TasaOCuota = imp.TasaOCuota, .TipoFactor = imp.TipoFactor, .BaseMN = imp.BaseMN, .ImporteMN = imp.ImporteMN, .EquivalenciaDR = c.TipoCambioDR})
tRetorno.Add(New CFDITraslados With {.Impuesto = imp.Impuesto, .Base = imp.Base, .Importe = imp.Importe, .TasaOCuota = imp.TasaOCuota, .TipoFactor = imp.TipoFactor, .BaseMN = imp.BaseMN, .ImporteMN = imp.ImporteMN})
End If
Next
Next
@@ -572,6 +568,7 @@ Public Class CFDIComplementoPagosDocsRelacionados
Public Property NumParcialidad As Integer = 1
Public Property ImpSaldoAnt As Decimal
Public Property ImpPagado As Decimal
Public Property ImpPagadoMN As Decimal
Public Property ImpSaldoInsoluto As Decimal
Public Property ObjetoImpuesto As String = "01"
Public Property Impuestos As List(Of CFDIConceptosImpuestos)