Rep portes Contratos obra
This commit is contained in:
@@ -1154,14 +1154,15 @@ Public Class ClsContratos
|
||||
|
||||
Return Retorno
|
||||
End Function
|
||||
Public Function GetContratosAvanceAnexos(CveContratoDetalle As Integer, fecha As String, CveUsuario As Integer) As Boolean
|
||||
Public Function GetContratosAvanceAnexos(CveContratoDetalle As Integer, fecha As String, CveUsuario As Integer, Optional CveEstimacion As Integer = -1) As Boolean
|
||||
Dim Retorno = False
|
||||
|
||||
DataAdapter("PA_Con_ContratosAvanceAnexos")
|
||||
With SqlAdapter.SelectCommand.Parameters
|
||||
.Add("@CveContratoDetalle", SqlDbType.Int).Value = CveContratoDetalle
|
||||
.Add("@Fecha", SqlDbType.Date).Value = fecha
|
||||
.Add("@CveUsuario", SqlDbType.Float).Value = CveUsuario
|
||||
.Add("@CveUsuario", SqlDbType.Float).Value = CveUsuario
|
||||
.Add("@CveEstimacion", SqlDbType.Float).Value = CveEstimacion
|
||||
End With
|
||||
|
||||
Try
|
||||
|
||||
@@ -113,7 +113,7 @@
|
||||
<div class="col-md-12">
|
||||
|
||||
<asp:GridView ID="GVDatos" runat="server" AutoGenerateColumns="false" EmptyDataText="No se encontraron contratos con los Filtros seleccionados"
|
||||
DataKeyNames="CveContrato" ShowHeader="True"
|
||||
DataKeyNames="CveContrato,NumeroContrato" ShowHeader="True"
|
||||
CssClass="table table-striped table-hover Widthall ScrollAD mysmallbtn" GridLines="None">
|
||||
<Columns>
|
||||
<asp:TemplateField HeaderText="Fecha I.">
|
||||
@@ -129,7 +129,7 @@
|
||||
</asp:TemplateField>
|
||||
<asp:TemplateField HeaderText="# Contrato">
|
||||
<ItemTemplate>
|
||||
<asp:HyperLink ID="HplContratado" CssClass="Texto" runat="server" Text='<%# Eval("NumeroContrato")%>' NavigateUrl='<%# Eval("CveContrato", "RepContratosObraAvancesDetalle.aspx?CveContrato={0}") %>' Target="_blank" ></asp:HyperLink>
|
||||
<asp:HyperLink ID="HplContratado" CssClass="Texto" runat="server" Text='<%# Eval("NumeroContrato")%>' Target="_blank" ></asp:HyperLink>
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
<asp:TemplateField HeaderText="Descripción">
|
||||
|
||||
@@ -61,6 +61,11 @@ Partial Class RepContratosObraAvances
|
||||
|
||||
If e.Row.RowType = DataControlRowType.DataRow Then
|
||||
|
||||
Dim HplContratado As HyperLink = e.Row.FCHyperLink("HplContratado")
|
||||
|
||||
HplContratado.NavigateUrl = $"./RepContratosObraAvancesDetalle.aspx?CveContrato={e.Row.DataKey("CveContrato")}&NumeroContrato={e.Row.DataKey("NumeroContrato")}"
|
||||
|
||||
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
@@ -99,7 +99,11 @@
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-md-6" style="text-align:right!important">
|
||||
<div class="col-md-3" style="text-align:left!important">
|
||||
<strong><asp:Label runat="server" ID="LblNumeroContrato"></asp:Label></strong>
|
||||
</div>
|
||||
|
||||
<div class="col-md-3" style="text-align:right!important">
|
||||
<div style="display: inline-block">
|
||||
<input type="text" id="TxtBusqueda" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GVDatos.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px; height: 25px; border-color: #89C4F4;" />
|
||||
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GVDatos.ClientID) %>" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
|
||||
@@ -114,12 +118,12 @@
|
||||
<div class="col-md-6">
|
||||
|
||||
<asp:GridView ID="GVDatos" runat="server" AutoGenerateColumns="false" EmptyDataText="No se encontraron contratos con los Filtros seleccionados"
|
||||
DataKeyNames="CveContrato" ShowHeader="True"
|
||||
DataKeyNames="CveEstimacion,NumeroEstimacion" ShowHeader="True"
|
||||
CssClass="table table-striped table-hover Widthall ScrollAD mysmallbtn" GridLines="None">
|
||||
<Columns>
|
||||
<asp:TemplateField HeaderText="# Estimación">
|
||||
<ItemTemplate>
|
||||
<asp:HyperLink ID="LblNumeroEstimacion" CssClass="Texto" runat="server" Text='<%# Eval("NumeroEstimacion") %>' NavigateUrl='<%# Eval("CveEstimacion", "RepContratosObraAvancesPartida.aspx?CveEstimacion={0}")%>' Target="_blank" ></asp:HyperLink>
|
||||
<asp:HyperLink ID="HplNumeroEstimacion" CssClass="Texto" runat="server" Text='<%# Eval("NumeroEstimacion") %>' Target="_blank" ></asp:HyperLink>
|
||||
</ItemTemplate>
|
||||
<ItemStyle HorizontalAlign="Center"></ItemStyle>
|
||||
</asp:TemplateField>
|
||||
|
||||
@@ -26,6 +26,7 @@ Partial Class RepContratosObraAvancesDetalle
|
||||
If Not Page.IsPostBack Then
|
||||
|
||||
CveContrato = If(Request("CveContrato") IsNot Nothing AndAlso Request("CveContrato").ToString.ToEntero > 0, Request("CveContrato").ToString.ToEntero, -1)
|
||||
LblNumeroContrato.Text = If(Request("NumeroContrato") IsNot Nothing AndAlso Request("NumeroContrato").ToString.Length > 0, $"Numero Contrato: {Request("NumeroContrato").ToString}", "")
|
||||
|
||||
If CveContrato > 0 Then
|
||||
CargaDatos()
|
||||
@@ -83,6 +84,10 @@ Partial Class RepContratosObraAvancesDetalle
|
||||
|
||||
If e.Row.RowType = DataControlRowType.DataRow Then
|
||||
|
||||
Dim HplNumeroEstimacion As HyperLink = e.Row.FCHyperLink("HplNumeroEstimacion")
|
||||
HplNumeroEstimacion.NavigateUrl = $"./RepContratosObraAvancesPartida.aspx?CveEstimacion={e.Row.DataKey("CveEstimacion")}&NumeroEstimacion={ e.Row.DataKey("NumeroEstimacion")}&CveContrato={ CveContrato }"
|
||||
|
||||
' NavigateUrl='<%# Eval("CveEstimacion", "RepContratosObraAvancesPartida.aspx?CveEstimacion={0}")%>'
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
@@ -54,8 +54,12 @@
|
||||
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-md-3" style="text-align:left!important">
|
||||
<strong> <asp:Label runat="server" ID="LblEstimacion"></asp:Label></strong>
|
||||
</div>
|
||||
|
||||
<div class="col-md-6" style="text-align:right!important">
|
||||
<div class="col-md-3" style="text-align:right!important">
|
||||
<div style="display: inline-block">
|
||||
<input type="text" id="TxtBusqueda" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GVDatos.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px; height: 25px; border-color: #89C4F4;" />
|
||||
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GVDatos.ClientID) %>" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
|
||||
@@ -70,7 +74,7 @@
|
||||
<div class="col-md-6">
|
||||
|
||||
<asp:GridView ID="GVDatos" runat="server" AutoGenerateColumns="false" EmptyDataText="No se encontraron contratos con los Filtros seleccionados"
|
||||
DataKeyNames="CveContrato" ShowHeader="True"
|
||||
DataKeyNames="CveContrato,CveEstimacion,Fecha,PS,CveContratoDetalle" ShowHeader="True"
|
||||
CssClass="table table-striped table-hover Widthall ScrollAD mysmallbtn" GridLines="None">
|
||||
<Columns>
|
||||
<asp:TemplateField HeaderText="Producto">
|
||||
@@ -103,10 +107,15 @@
|
||||
|
||||
<asp:TemplateField HeaderText="Avance Acumulado $">
|
||||
<ItemTemplate>
|
||||
<asp:Label ID="LblAvanceImporte" CssClass="Texto" runat="server" Text='<%# Eval("AvanceAcumulado", "{0:N2}")%>'></asp:Label>
|
||||
<asp:Label ID="LblAvanceAcumulado" CssClass="Texto" runat="server" Text='<%# Eval("AvanceAcumulado", "{0:N2}")%>'></asp:Label>
|
||||
</ItemTemplate>
|
||||
<ItemStyle HorizontalAlign="Right"></ItemStyle>
|
||||
</asp:TemplateField>
|
||||
<asp:TemplateField HeaderText=" ">
|
||||
<ItemTemplate>
|
||||
<asp:LinkButton ID="LnkAnexo" runat="server" OnClick="GetAnexos" AlternateText="Agregar Anexo" CssClass="btn btn-circle btn-sm btn-success anexo" Text="<i class='fa fa-folder'></i>" />
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
|
||||
<%-- <asp:TemplateField HeaderText="Cliente">
|
||||
<ItemTemplate>
|
||||
@@ -149,6 +158,53 @@
|
||||
</asp:UpdatePanel>
|
||||
|
||||
|
||||
<div id="ModalAnexos" class="modal ADS fade" role="dialog">
|
||||
<div class="modal-dialog">
|
||||
|
||||
<asp:UpdatePanel ID="UpModalAnexos" UpdateMode="Conditional" runat="server">
|
||||
<ContentTemplate>
|
||||
|
||||
<!-- Modal content-->
|
||||
<div class="modal-content">
|
||||
<div class="modal-header ">
|
||||
<button type="button" class="close" data-dismiss="modal">×</button>
|
||||
<h4 class="modal-title">
|
||||
<asp:Label runat="server" ID="LblTituloModalAnexo"></asp:Label></h4>
|
||||
</div>
|
||||
|
||||
<div class="modal-body">
|
||||
<div class="row">
|
||||
|
||||
<div class="col-md-12" style="text-align:center!important">
|
||||
<asp:GridView ID="GvAnexos" AutoGenerateColumns="false" runat="server" ShowHeaderWhenEmpty="true" EmptyDataText="No se encontraron archivos" Width="100"
|
||||
DataKeyNames="Archivo" CssClass="table GVEstimacion table-advance table-hover" GridLines ="None">
|
||||
<Columns>
|
||||
<asp:TemplateField HeaderText="Anexos">
|
||||
<ItemTemplate>
|
||||
|
||||
<asp:LinkButton ID="LnkArchivo" runat="server" OnClick="LnkArchivo_Click"></asp:LinkButton>
|
||||
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
</Columns>
|
||||
</asp:GridView>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<asp:UpdatePanel runat="server">
|
||||
<ContentTemplate>
|
||||
<button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
</asp:Content>
|
||||
|
||||
@@ -23,11 +23,32 @@ Partial Class RepContratosObraAvancesPartida
|
||||
End Property
|
||||
|
||||
|
||||
|
||||
Property CveContrato As Integer
|
||||
|
||||
Get
|
||||
If ViewState("CveContrato") Is Nothing Then
|
||||
Return -1
|
||||
Else
|
||||
Return ViewState("CveContrato").ToString.ToEntero
|
||||
End If
|
||||
End Get
|
||||
Set(value As Integer)
|
||||
ViewState("CveContrato") = value
|
||||
End Set
|
||||
|
||||
|
||||
End Property
|
||||
|
||||
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
|
||||
|
||||
If Not Page.IsPostBack Then
|
||||
|
||||
CveEstimacion = If(Request("CveEstimacion") IsNot Nothing AndAlso Request("CveEstimacion").ToString.ToEntero > 0, Request("CveEstimacion").ToString.ToEntero, -1)
|
||||
CveContrato = If(Request("CveContrato") IsNot Nothing AndAlso Request("CveContrato").ToString.ToEntero > 0, Request("CveContrato").ToString.ToEntero, -1)
|
||||
|
||||
LblEstimacion.Text = If(Request("NumeroEstimacion") IsNot Nothing AndAlso Request("NumeroEstimacion").ToString.Length > 0, $"Numero Estimacion: {Request("NumeroEstimacion").ToString}", "")
|
||||
|
||||
|
||||
If CveEstimacion > 0 Then
|
||||
CargaDatos()
|
||||
@@ -68,4 +89,62 @@ Partial Class RepContratosObraAvancesPartida
|
||||
End Sub
|
||||
|
||||
|
||||
Protected Sub GetAnexos(sender As Object, e As System.EventArgs)
|
||||
Dim GvRow As GridViewRow = DirectCast((DirectCast(sender, LinkButton)).NamingContainer, GridViewRow)
|
||||
|
||||
|
||||
LblTituloModalAnexo.Text = "Anexo " & GvRow.DataKey("PS")
|
||||
|
||||
'Get the button that raised the event
|
||||
'Dim CveContratoDetalle As Integer = gvr.DataKey("CveContratoDetalle").ToString.ToEntero
|
||||
Dim Fecha As Date = GvRow.DataKey("Fecha").ToDate
|
||||
Dim CveEstimacion As Integer = GvRow.DataKey("CveEstimacion").ToEntero
|
||||
Dim CveContratoDetalle As Integer = GvRow.DataKey("CveContratoDetalle").ToEntero
|
||||
|
||||
Dim objContrato As New ClsContratos
|
||||
If objContrato.GetContratosAvanceAnexos(CveContratoDetalle, Fecha, UsuarioActual.CveUsuario, CveEstimacion:=CveEstimacion) Then
|
||||
GvAnexos.DataSource = objContrato.DtResultados
|
||||
GvAnexos.DataBind()
|
||||
GvAnexos.Visible = True
|
||||
Else
|
||||
GvAnexos.Visible = False
|
||||
End If
|
||||
|
||||
objContrato.Dispose()
|
||||
|
||||
UpModalAnexos.Update()
|
||||
|
||||
RegistraScript("$('#ModalAnexos').modal('show');")
|
||||
|
||||
End Sub
|
||||
|
||||
Protected Sub GvAnexos_RowDataBound(ByVal sender As Object, ByVal e As GridViewRowEventArgs) Handles GvAnexos.RowDataBound
|
||||
|
||||
If e.Row.RowIndex > -1 Then
|
||||
Dim Archivo As String = e.Row.DBCampo("Archivo").ToString
|
||||
Dim start As Integer = Len(Archivo.Split("-"c)(0))
|
||||
Dim LnkArchivo As LinkButton = e.Row.FCLinkButton("LnkArchivo")
|
||||
|
||||
LnkArchivo.Text = Archivo.Substring(start + 1)
|
||||
'link.NavigateUrl = String.Format("/Empresas/{0}/Contrato/{1}/Anexos/{2}", UsuarioActual.CveEmpresa, CveContrato, Archivo)
|
||||
|
||||
ScriptManager.GetCurrent(Me).RegisterPostBackControl(LnkArchivo)
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
Protected Sub LnkArchivo_Click(sender As Object, e As EventArgs)
|
||||
|
||||
Dim GvRow As GridViewRow = DirectCast((DirectCast(sender, LinkButton)).NamingContainer, GridViewRow)
|
||||
|
||||
Dim Archivo As String = GvRow.DataKey("Archivo").ToString
|
||||
|
||||
Response.ContentType = "application/octet-stream"
|
||||
Response.AppendHeader("Content-Disposition", $"attachment; filename={Archivo}")
|
||||
Response.TransmitFile($"{UsuarioActual.Empresa.Ruta}\Contrato\{CveContrato}\Anexos\{Archivo}")
|
||||
Response.End()
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
End Class
|
||||
|
||||
Reference in New Issue
Block a user