Solicitud de devolución dede OS

This commit is contained in:
rakcsle
2023-12-13 08:53:55 -07:00
parent 079fd8dc07
commit e4d553d9d0
6 changed files with 249 additions and 2 deletions

View File

@@ -13,6 +13,9 @@
<li>
<asp:LinkButton ID="ImgImprimir" runat="server"> <i class="fa fa-ad-pdf"></i> Imprimir Orden</asp:LinkButton>
</li>
<li>
<asp:LinkButton ID="LnkAccionesDevolucion" runat="server" OnClick="LnkAccionesDevolucion_Click" Visible="false"> <i class="fa fa-plus"></i> Devolución Material</asp:LinkButton>
</li>
</ContentTemplate>
<Triggers>
<asp:PostBackTrigger ControlID="ImgImprimir" />
@@ -1259,6 +1262,67 @@
<%--MODAL FINALIZAR ORDEN INICIO --%>
<div id="DVModalSolicitarDevolucion" class="modal ADS fade" role="dialog">
<div class="modal-dialog">
<asp:UpdatePanel ID="UpModalSolicitarDevolucion" class="modal-content rowpadding" tabindex="-1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
<h4 class="modal-title" >Solicitar Devolución</h4>
</div>
<div class="modal-body">
<div class="row">
<div class="col-md-12">
<asp:GridView ID="GvSolicitarDevolucion" runat="server" AutoGenerateColumns="False" EmptyDataText="No se han capturado Historial"
DataKeyNames="CveVentaDetalle,Cantidad"
CssClass="table table-striped table-advance table-hover Widthall" GridLines="None" OnRowDataBound="GvSolicitarDevolucion_RowDataBound">
<Columns>
<asp:TemplateField>
<HeaderTemplate>Cant.</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LblCantidad" runat="server" Text='<%# Eval("Cantidad") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Dev</HeaderTemplate>
<ItemTemplate>
<asp:TextBox ID="TxtDev" runat="server" Width="50px" ></asp:TextBox>
<ajax:FilteredTextBoxExtender runat="server" FilterType="Custom" TargetControlID="TxtDev" ValidChars="123456789." />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Concepto</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlcodigoPS" runat="server" Text='<%# Eval("CodigoPS") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
</div>
</div>
<div class="modal-footer">
<asp:LinkButton ID="LnkModalSolicitarDevolucion" runat="server" CssClass="btn btn-primary" data-toggle="confirmation" data-popout="true" data-original-title="confirmar" data-btn-ok-label="si"
OnClick="LnkModalSolicitarDevolucion_Click" >Guardar</asp:LinkButton>
<button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
<%--MODAL FINALIZAR ORDEN INICIO --%>
</asp:Content>
<asp:Content ID="content7" ContentPlaceHolderID="JS" runat="server">
<script src="/Scripts/DataTables.js"></script>
@@ -1405,5 +1469,15 @@
});
$('#GvMateriales').parent().parent().children().first().css("position", "static");
}
function ValidarCantidad(t, c) {
if (t.value > c) {
t.value = c;
}
}
</script>
</asp:Content>

View File

@@ -7,6 +7,10 @@ Imports System.Data
Imports Microsoft.Reporting.WebForms
Imports ADSNetLibrary.SIGAPI.Models.Sistema
Imports Telerik.Charting.Styles
Imports Telerik.Web.UI
Imports DocumentFormat.OpenXml.Drawing.Diagrams
Imports Profact.TimbraCFDI.Complementos.InstitucionesEducativas
'Imports msExcel = Microsoft.Office.Interop.Excel
'Imports VBIDE
@@ -84,6 +88,22 @@ Partial Class OS_OrdenesServicios
ViewState("CveOS") = value
End Set
End Property
Private Property CveVenta As Integer
Get
If ViewState("CveVenta") Is Nothing Then
ViewState("CveVenta") = -1
End If
Return ViewState("CveVenta").ToString.ToEntero
End Get
Set(value As Integer)
ViewState("CveVenta") = value
End Set
End Property
Private Property CveOsDetalle As Integer
Get
Return ViewState("CveOsDetalle").ToString.ToEntero
@@ -286,6 +306,7 @@ Partial Class OS_OrdenesServicios
TipoEstatus = 1
CveConsecutivo = 0
CveOsDetalle = -1
CveVenta = -1
CveUsuarioAtendioCount = 0
ImgImprimir.Visible = False
@@ -613,6 +634,7 @@ Partial Class OS_OrdenesServicios
SeFacturara = GlobalDTTipoOrdenServicios(UsuarioActual.CveEmpresa).FiltroPrimeroValor("SeFacturara", String.Format("CveOrdenServicioTipo = {0}", ObjOS.CveOSTipo))
CveTecnico = ObjOS.CveUsuarioAtendio
CargarEstatusDelUsuario(TipoEstatus)
CveVenta = ObjOS.CveVenta
'Dim validacionTieneEstatus As Integer = EstatusOSDelUsuario.FiltraParametros(String.Format("CveEstatusOrdenServicio = {0}", ObjOS.CveEstatusOrdenServicio)).Rows.Count
@@ -677,6 +699,11 @@ Partial Class OS_OrdenesServicios
CargaEventoBitacora()
CargaHistorial()
If CveVenta > 0 And TipoEstatus.Contiene(1, 2, 3) Then
LnkAccionesDevolucion.Visible = True
End If
Else
Alert("La Orden de Servicio Solicitado no existe, por favor revise su búsqueda.", TipoMensaje.MsgAdvertencia)
BtnGuardar.Enabled = False
@@ -3003,4 +3030,91 @@ Partial Class OS_OrdenesServicios
End Sub
Protected Sub LnkAccionesDevolucion_Click(sender As Object, e As EventArgs)
LnkModalSolicitarDevolucion.Visible = True
GvSolicitarDevolucion.DataSource = Nothing
Dim ObjOS As New ClsOS
Dim DTTemp As New DataTable
If ObjOS.GetOrdenesServicioDevolucionMaterial(CveOS, CveVenta, UsuarioActual.CveEmpresa) Then
DTTemp = ObjOS.DtResultados
GvSolicitarDevolucion.DataSource = DTTemp
End If
ObjOS.Dispose()
GvSolicitarDevolucion.DataBind()
Dim EsDevolucionVenta As Boolean = (DTTemp.FiltroPrimeroValor("EsDevolucionVenta", "").ToEntero > 0)
RegistraScript("$('#DVModalSolicitarDevolucion').modal();")
If EsDevolucionVenta Then
Alert("Ya existe una solicitud de devolución", TipoMensaje.MsgAdvertencia)
LnkModalSolicitarDevolucion.Visible = False
End If
UpModalSolicitarDevolucion.Update()
End Sub
Protected Sub GvSolicitarDevolucion_RowDataBound(sender As Object, e As GridViewRowEventArgs)
If e.Row.RowType = DataControlRowType.DataRow Then
e.Row.FCTextBox("TxtDev").Attributes.Add("onblur", String.Format("ValidarCantidad(this, {0})", e.Row.DataKey("Cantidad")))
End If
End Sub
Protected Sub LnkModalSolicitarDevolucion_Click(sender As Object, e As EventArgs)
Dim PropcesoOK As Boolean = True
Dim ObjV As New ClsVentas
ObjV.IniciaTransacSQL()
If Not ObjV.UpdateVentasDevolucionAlmacen(1, CveVenta) Then
PropcesoOK = False
End If
If PropcesoOK Then
For Each GvRow As GridViewRow In GvSolicitarDevolucion.Rows
Dim CveVentaDetalle As Integer = GvRow.DataKey("CveVentaDetalle").ToEntero
Dim CantidadDev As Decimal = GvRow.FCTextBox("TxtDev").Text.ToDecimal
If CantidadDev > 0 Then
If Not ObjV.UpdateVentasDetalleCantidadDevolucion(CveVentaDetalle, CantidadDev) Then
PropcesoOK = False
Exit For
End If
End If
Next
End If
If PropcesoOK Then
'ObjV.RollBack()
ObjV.Commit()
Alert("La solicitud de Devolución de Almacén se guardó correctamente")
RegistraScript("$('#DVModalSolicitarDevolucion').modal('hide');")
Else
ObjV.RollBack()
End If
ObjV.Dispose()
End Sub
End Class