VyA asignar uno o dos choferes

This commit is contained in:
rakcsle
2024-07-30 10:07:02 -07:00
parent 12d31c5e3c
commit 9dcc6683aa
7 changed files with 210 additions and 24 deletions

View File

@@ -104,6 +104,9 @@ Partial Class ListadoContratos
Dim Filename As String = ""
Dim folderContratosPath As String = Path.Combine(UsuarioActual.Empresa.Ruta, "Contratos")
Dim CveVentaRemision As Integer = -1
Dim SerieFolioRemision As String = ""
If Not Directory.Exists(folderContratosPath) Then
Directory.CreateDirectory(folderContratosPath)
End If
@@ -163,6 +166,23 @@ Partial Class ListadoContratos
End If
Anexo.Text = ""
If ErrorProceso = False Then
Dim Respuesta As New RespuestaFacturacion()
Dim CvePS As Integer = 907783
Respuesta = GeneraRemision(CveContrato, LbFolio.Text, TxtImporte.Text.ToDecimal, CvePS, ObjContratos.IniciaTransacSQL)
If Respuesta.CveVenta > 0 Then
CveVentaRemision = Respuesta.CveVenta
SerieFolioRemision = Respuesta.SerieFolio
ErrorProceso = False
Else
ErrorProceso = True
Alert("se presento un error al generar la remisión", TipoMensaje.MsgAdvertencia)
End If
End If
Else
ErrorProceso = True
End If
@@ -177,7 +197,7 @@ Partial Class ListadoContratos
If Not ErrorProceso Then
ObjContratos.Commit()
Alert("Agregado Correctamente.")
Alert($"Agregado Correctamente.<br> Remisión Generada <a target='_blank' class='Texto' href='/Ventas/Ventas.aspx?CveVenta={CveVentaRemision}' ><b>{SerieFolioRemision}</b></a>")
Else
ObjContratos.RollBack()
Alert("Se presento un error al guardar el contrato.", TipoMensaje.MsgAdvertencia)
@@ -287,4 +307,94 @@ Partial Class ListadoContratos
End Sub
#End Region
#Region "G E N E R A R E M I S O N"
Private Function GeneraRemision(CveContrato As Integer, NumContrato As String, Importe As Decimal, CvePS As Integer, ByRef TransaccionSQL As SqlClient.SqlTransaction) As RespuestaFacturacion
Dim Respuesta As New RespuestaFacturacion()
Dim CveRemisionGenerada As Integer = -1
Dim ObjVentas As New ClsVentas(TransaccionSQL)
Dim ProcesoOK As Boolean = True
Dim CveSubProyecto As Integer = DdlSubProyectoModal.SelectedValue.ToEntero
Dim CveMoneda As Integer = DdlMoneda.SelectedValue.ToEntero
Dim ObjFactura As Modelos.Factura = Modelos.Factura.CrearVentaNueva(UsuarioActual, CveSubProyecto, DdlClientes.SelectedValue.ToEntero, CveMoneda, "Rem")
If ObjFactura IsNot Nothing AndAlso ProcesoOK Then
ObjFactura.CveContrato = CveContrato
ObjFactura.Observaciones = NumContrato
Dim TmpDTMat As New DataTable
TmpDTMat.Columns.Add("Consec", GetType(Integer))
TmpDTMat.Columns.Add("CvePS", GetType(Integer))
TmpDTMat.Columns.Add("CveUM", GetType(Integer))
TmpDTMat.Columns.Add("Cantidad", GetType(Integer))
TmpDTMat.Columns.Add("PU", GetType(Decimal))
TmpDTMat.Columns.Add("Lote", GetType(String))
TmpDTMat.Columns.Add("FechaCaducidad", GetType(Date))
TmpDTMat.Columns.Add("CveVentaDetalle", GetType(Integer))
Dim SubTotal As Decimal = (Importe / (1 + 0.16)).ToDecimal
'Dim CvePS As Integer = 907783
Dim CantidadRegistro As Decimal = 1
Dim PorcentajeIVA As Decimal = 0.16D
Dim PU As Decimal = SubTotal
Dim Descuento As Decimal = 0
Dim Obs As String = NumContrato
If CantidadRegistro > 0 Then
If ObjFactura.AgregarPS(CvePS, CantidadRegistro, PU, Descuento, Obs, CveSubProyecto:=CveSubProyecto, PorcentajeIVA:=PorcentajeIVA) Then
Dim drp As DataRow = TmpDTMat.NewRow
drp("CvePS") = CvePS
drp("Cantidad") = CantidadRegistro
drp("PU") = PU
TmpDTMat.Rows.Add(drp)
Else
Alert("Error al agregar producto", TipoMensaje.MsgAdvertencia)
ProcesoOK = False
End If
End If
If ProcesoOK Then
ObjFactura.CalculaTotales()
Dim Resp As New Modelos.Factura.MMensajeFactura
Resp = ObjFactura.EmitirFactura(False, Transac:=TransaccionSQL)
If Resp.CveVenta > 0 Then
Respuesta.CveVenta = Resp.CveVenta
Respuesta.SerieFolio = Resp.SerieFolio
Respuesta.dtdetalle = TmpDTMat
Else
ProcesoOK = False
End If
End If
Else
ProcesoOK = False
End If
Return Respuesta
End Function
Friend Class RespuestaFacturacion
Public Property CveVenta As Integer = -1
Public Property SerieFolio As String = "-1"
Public Property dtdetalle As DataTable = Nothing
Public Sub New()
End Sub
End Class
#End Region
End Class