This commit is contained in:
2020-01-23 18:58:42 -07:00
9 changed files with 159 additions and 123 deletions

View File

@@ -1629,9 +1629,12 @@ Public Class ClsContratos
#Region "T I P O S C O N T R A T O S" #Region "T I P O S C O N T R A T O S"
Public Function GetContratosTipos() As Boolean Public Function GetContratosTipos(CveEmpresa As Integer) As Boolean
Dim Retorno As Boolean = False Dim Retorno As Boolean = False
DataAdapter("PA_Con_ContratosTiposGet") DataAdapter("PA_Con_ContratosTiposGet")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
End With
Try Try
SqlAdapter.Fill(Data) SqlAdapter.Fill(Data)
Retorno = True Retorno = True

View File

@@ -1673,12 +1673,27 @@ Public Class ClsPaginas
Application("GlobalDTContratos") = value Application("GlobalDTContratos") = value
End Set End Set
End Property End Property
Property GlobalDTContratosTipos() As DataTable Property GlobalDTContratosTipos(CveEmpresa As Integer) As DataTable
Get Get
GlobalDTContratosTipos = DirectCast(Application("GlobalDTContratosTipos"), DataTable) Dim AppNombre As String = String.Format("GlobalDTContratosTipos{0}", CveEmpresa)
If Application(AppNombre) Is Nothing Then
Dim ObjContratos As New ClsContratos
If ObjContratos.GetContratosTipos(CveEmpresa) Then
Application(AppNombre) = ObjContratos.DtResultados
If CveEmpresa <> -1 Then
Dim Dv As New DataView(DirectCast(Application(AppNombre), DataTable), String.Format("CveEmpresa = {0}", CveEmpresa), "", DataViewRowState.CurrentRows)
GlobalDTContratosTipos = Dv.ToTable
Dv.Dispose()
Else
GlobalDTContratosTipos = DirectCast(Application(AppNombre), DataTable)
End If
End If
End If
GlobalDTContratosTipos = DirectCast(Application("GlobalDTContratosTipos"), DataTable)
End Get End Get
Set(value As DataTable) Set(value As DataTable)
Application("GlobalDTContratosTipos") = value Dim AppNombre As String = String.Format("GlobalDTContratosTipos{0}", CveEmpresa)
Application(AppNombre) = value
End Set End Set
End Property End Property
Property GlobalDTTipoAlmacen(CveEmpresa As Integer) As DataTable Property GlobalDTTipoAlmacen(CveEmpresa As Integer) As DataTable

View File

@@ -12,110 +12,110 @@
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server"> <asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
</asp:Content> </asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server"> <asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional"> <asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate> <ContentTemplate>
<table border="0" class=""> <table border="0" class="" style="width: 100%">
<tr> <tr>
<td> <td>
<table class="table table-striped table-advance table-hover Widthall"> <table class="table table-striped table-advance table-hover Widthall" style="width:100%">
<thead> <thead>
<tr class="Titulos"> <tr class="Titulos">
<th width="40px"> <th width="10%">
<asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="false" Text="" CommandArgument="LimiteMaximo;0"> <asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="false" Text="" CommandArgument="LimiteMaximo;0">
Clave Clave
<asp:Literal ID="Literal1" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal> <asp:Literal ID="Literal1" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton> </asp:LinkButton>
</th> </th>
<th width="200px"> <th width="200px">
<asp:LinkButton ID="LbLimite" runat="server" CausesValidation="false" Text="" CommandArgument="LimiteMaximo;0"> <asp:LinkButton ID="LbLimite" runat="server" CausesValidation="false" Text="" CommandArgument="LimiteMaximo;0">
Tipo Contrato Tipo Contrato
<asp:Literal ID="ImgLimiteMaximo" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal> <asp:Literal ID="ImgLimiteMaximo" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton> </asp:LinkButton>
</th> </th>
<th width="200px"> <th width="200px">
<asp:LinkButton ID="LbComision" runat="server" CausesValidation="false" Text="" CommandArgument="Comision;0"> <asp:LinkButton ID="LbComision" runat="server" CausesValidation="false" Text="" CommandArgument="Comision;0">
Descripción Descripción
<asp:Literal ID="ImgComision" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal> <asp:Literal ID="ImgComision" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton> </asp:LinkButton>
</th> </th>
<th></th> <th></th>
<th width="165px">Comandos</th> <th width="165px">Comandos</th>
</tr> </tr>
</thead> </thead>
<tr> <tr>
<td style="width:40px;"></td> <td style="width: 15%;"></td>
<td style="text-align: center"> <td style="text-align: center; width: 200px">
<asp:TextBox ID="TxtTipoContrato" runat="server" width="180px"></asp:TextBox> <asp:TextBox ID="TxtTipoContrato" runat="server" Width="180px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVLimite" runat="server" ControlToValidate="TxtTipoContrato" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Contrato''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpGuardarCaracteristicas"></asp:RequiredFieldValidator> <asp:RequiredFieldValidator ID="RFVLimite" runat="server" ControlToValidate="TxtTipoContrato" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Contrato''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpGuardarCaracteristicas"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOLimite" runat="server" HighlightCssClass="vco" TargetControlID="RFVLimite" Width="300px"></ajax:ValidatorCalloutExtender> <ajax:ValidatorCalloutExtender ID="VCOLimite" runat="server" HighlightCssClass="vco" TargetControlID="RFVLimite" Width="300px"></ajax:ValidatorCalloutExtender>
</td> </td>
<td style="text-align: center"> <td style="text-align: left; width: 800px">
<asp:TextBox ID="TxtDescripcion" runat="server" width="180px"></asp:TextBox> <asp:TextBox ID="TxtDescripcion" runat="server" Width="100%"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVDescripcion" runat="server" ControlToValidate="TxtDescripcion" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Descripción''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpGuardarCaracteristicas"></asp:RequiredFieldValidator> <asp:RequiredFieldValidator ID="RFVDescripcion" runat="server" ControlToValidate="TxtDescripcion" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Descripción''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpGuardarCaracteristicas"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEDescripcion" runat="server" HighlightCssClass="vco" TargetControlID="RFVDescripcion" Width="300px"></ajax:ValidatorCalloutExtender> <ajax:ValidatorCalloutExtender ID="VCEDescripcion" runat="server" HighlightCssClass="vco" TargetControlID="RFVDescripcion" Width="300px"></ajax:ValidatorCalloutExtender>
</td> </td>
<td></td> <td style="width:0%"></td>
<td style="text-align: center"> <td style="text-align: center">
<asp:LinkButton ID="LbAgregarC" runat="server" CausesValidation="true" CssClass="Texto" Text="Agregar" ValidationGroup="GrpGuardarCaracteristicas"></asp:LinkButton></td> <asp:LinkButton ID="LbAgregarC" runat="server" CausesValidation="true" CssClass="Texto" Text="Agregar" ValidationGroup="GrpGuardarCaracteristicas"></asp:LinkButton></td>
</tr> </tr>
</table> </table>
<asp:UpdatePanel ID="UpGVContratos" runat="server" UpdateMode="Conditional"> <asp:UpdatePanel ID="UpGVContratos" runat="server" UpdateMode="Conditional">
<ContentTemplate> <ContentTemplate>
<asp:GridView ID="GvContratos" runat="server" AutoGenerateColumns="False" DataKeyNames="CveContratoTipo" EmptyDataText="No se encontraron Tipos de Contratos." ToolTip="Listado de tipos de Contratos." CssClass="table table-striped table-advance table-hover Widthall" Style="margin-top: -10px; text-align: center;" GridLines="None"> <asp:GridView ID="GvContratos" runat="server" AutoGenerateColumns="False" DataKeyNames="CveContratoTipo" EmptyDataText="No se encontraron Tipos de Contratos." ToolTip="Listado de tipos de Contratos." CssClass="table table-striped table-advance table-hover Widthall" Style="margin-top: -10px; text-align: center;" GridLines="None">
<Columns> <Columns>
<asp:BoundField DataField="CveContratoTipo" ReadOnly="true" /> <asp:BoundField DataField="CveContratoTipo" ItemStyle-Width="10%" ItemStyle-Wrap="false" />
<asp:TemplateField ItemStyle-Width="180px" ItemStyle-HorizontalAlign="left"> <asp:TemplateField ItemStyle-Width="15%" ItemStyle-HorizontalAlign="left">
<ItemTemplate> <ItemTemplate>
<asp:Literal ID="LtlContrato" runat="server" Text='<%# Eval("ContratoTipo", "&nbsp;{0}") %>'></asp:Literal> <asp:Literal ID="LtlContrato" runat="server" Text='<%# Eval("ContratoTipo", "&nbsp;{0}") %>'></asp:Literal>
</ItemTemplate> </ItemTemplate>
<EditItemTemplate> <EditItemTemplate>
<asp:TextBox ID="TxtTipoContrato" runat="server" CausesValidation="true" MaxLength="50" Text='<%# Eval("ContratoTipo")%>' Width="180px"></asp:TextBox> <asp:TextBox ID="TxtTipoContrato" runat="server" CausesValidation="true" MaxLength="50" Text='<%# Eval("ContratoTipo")%>' Width="180px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVCaracteristica" runat="server" ControlToValidate="TxtTipoContrato" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tipo Contrato''</b> es necesario, por favor ingréselo."></asp:RequiredFieldValidator> <asp:RequiredFieldValidator ID="RFVCaracteristica" runat="server" ControlToValidate="TxtTipoContrato" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tipo Contrato''</b> es necesario, por favor ingréselo."></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOCaracteristica" runat="server" HighlightCssClass="vco" TargetControlID="RFVCaracteristica" Width="100px"></ajax:ValidatorCalloutExtender> <ajax:ValidatorCalloutExtender ID="VCOCaracteristica" runat="server" HighlightCssClass="vco" TargetControlID="RFVCaracteristica" Width="100px"></ajax:ValidatorCalloutExtender>
</EditItemTemplate> </EditItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField ItemStyle-Width="200px"> <asp:TemplateField ItemStyle-Width="200px">
<ItemTemplate> <ItemTemplate>
<asp:Literal ID="LtlDescripcion" runat="server" Text='<%# Eval("Descripcion", "&nbsp;{0}") %>'></asp:Literal> <asp:Literal ID="LtlDescripcion" runat="server" Text='<%# Eval("Descripcion", "&nbsp;{0}") %>'></asp:Literal>
</ItemTemplate> </ItemTemplate>
<EditItemTemplate> <EditItemTemplate>
<asp:TextBox ID="TxtDescripcion" runat="server" CausesValidation="true" MaxLength="50" Text='<%# Eval("Descripcion")%>' Width="180px"></asp:TextBox> <asp:TextBox ID="TxtDescripcion" runat="server" CausesValidation="true" MaxLength="50" Text='<%# Eval("Descripcion")%>' Width="180px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVDescripcion" runat="server" ControlToValidate="TxtDescripcion" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Descripción''</b> es necesario, por favor ingréselo."></asp:RequiredFieldValidator> <asp:RequiredFieldValidator ID="RFVDescripcion" runat="server" ControlToValidate="TxtDescripcion" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Descripción''</b> es necesario, por favor ingréselo."></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCODescripcion" runat="server" HighlightCssClass="vco" TargetControlID="RFVDescripcion" Width="100px"></ajax:ValidatorCalloutExtender> <ajax:ValidatorCalloutExtender ID="VCODescripcion" runat="server" HighlightCssClass="vco" TargetControlID="RFVDescripcion" Width="100px"></ajax:ValidatorCalloutExtender>
</EditItemTemplate> </EditItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Editar" ItemStyle-Width="89px"> <asp:TemplateField HeaderText="Editar" ItemStyle-Width="1px">
<EditItemTemplate> <EditItemTemplate>
<center> <center>
<asp:LinkButton ID="ImageButton1" runat="server" AlternateText="Actualizar" CausesValidation="True" CommandName="Update" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-check'></i>"/> <asp:LinkButton ID="ImageButton1" runat="server" AlternateText="Actualizar" CausesValidation="True" CommandName="Update" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-check'></i>"/>
&nbsp;<asp:LinkButton ID="ImageButton2" runat="server" AlternateText="Cancelar" CausesValidation="False" CommandName="Cancel" CssClass="btn btn-circle btn-sm red" Text="<i class='fa fa-times'></i>" /> &nbsp;<asp:LinkButton ID="ImageButton2" runat="server" AlternateText="Cancelar" CausesValidation="False" CommandName="Cancel" CssClass="btn btn-circle btn-sm red" Text="<i class='fa fa-times'></i>" />
</center> </center>
</EditItemTemplate> </EditItemTemplate>
<ItemTemplate> <ItemTemplate>
<asp:LinkButton ID="ImageButton3" runat="server" AlternateText="Editar" CausesValidation="False" CommandName="Edit" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" /> <asp:LinkButton ID="ImageButton3" runat="server" AlternateText="Editar" CausesValidation="False" CommandName="Edit" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Eliminar" ItemStyle-Width="83px"> <asp:TemplateField HeaderText="Eliminar" ItemStyle-Width="1px">
<ItemTemplate> <ItemTemplate>
<asp:LinkButton ID="ImageButton4" runat="server" AlternateText="Eliminar" CausesValidation="False" CommandName="Delete" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="confirmar" data-btn-ok-label="si" /> <asp:LinkButton ID="ImageButton4" runat="server" AlternateText="Eliminar" CausesValidation="False" CommandName="Delete" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="confirmar" data-btn-ok-label="si" />
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
</Columns> </Columns>
<AlternatingRowStyle CssClass="TextoAlterno" /> <AlternatingRowStyle CssClass="TextoAlterno" />
</asp:GridView> </asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</td>
</tr>
</table>
</ContentTemplate> </ContentTemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
</td>
</tr>
</table>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content> </asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server"> <asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">

View File

@@ -15,9 +15,9 @@ Partial Class Contratos_CatContratosTipos
#Region " CARGAS " #Region " CARGAS "
Private Sub CargaDatos() Private Sub CargaDatos()
Dim Objeto As New ClsContratos Dim Objeto As New ClsContratos
If Objeto.GetContratosTipos() Then If Objeto.GetContratosTipos(UsuarioActual.CveEmpresa) Then
GvContratos.DataSource = Objeto.DtResultados GvContratos.DataSource = Objeto.DtResultados
GlobalDTContratosTipos = Objeto.DtResultados GlobalDTContratosTipos(UsuarioActual.CveEmpresa) = Objeto.DtResultados
End If End If
GvContratos.DataBind() GvContratos.DataBind()
Objeto.Dispose() Objeto.Dispose()

View File

@@ -227,10 +227,10 @@
<Source>External</Source> <Source>External</Source>
<Value>=Parameters!QR.Value</Value> <Value>=Parameters!QR.Value</Value>
<Sizing>FitProportional</Sizing> <Sizing>FitProportional</Sizing>
<Top>5.87436in</Top> <Top>5.8661in</Top>
<Left>0.03915in</Left> <Left>0.03915in</Left>
<Height>0.95455in</Height> <Height>1.10236in</Height>
<Width>1.49755in</Width> <Width>1.10236in</Width>
<ZIndex>5</ZIndex> <ZIndex>5</ZIndex>
<Style> <Style>
<Border> <Border>

View File

@@ -1447,9 +1447,9 @@
<Source>External</Source> <Source>External</Source>
<Value>=Parameters!QR.Value</Value> <Value>=Parameters!QR.Value</Value>
<Sizing>FitProportional</Sizing> <Sizing>FitProportional</Sizing>
<Top>3.13693in</Top> <Top>3.09526in</Top>
<Left>0.15526in</Left> <Left>0.15526in</Left>
<Height>1.06738in</Height> <Height>1.13682in</Height>
<Width>1.49755in</Width> <Width>1.49755in</Width>
<ZIndex>6</ZIndex> <ZIndex>6</ZIndex>
<Style> <Style>

View File

@@ -450,7 +450,7 @@
Dim ObjContratos As New ClsContratos Dim ObjContratos As New ClsContratos
If ObjContratos.GetContratos(-1, -1) Then Application("GlobalDTContratos") = ObjContratos.DtResultados Else Application("GlobalDTContratos") = Nothing If ObjContratos.GetContratos(-1, -1) Then Application("GlobalDTContratos") = ObjContratos.DtResultados Else Application("GlobalDTContratos") = Nothing
If ObjContratos.GetSecciones() Then Application("GlobalDTContratosSecciones") = ObjContratos.DtResultados Else Application("GlobalDTContratosSecciones") = Nothing If ObjContratos.GetSecciones() Then Application("GlobalDTContratosSecciones") = ObjContratos.DtResultados Else Application("GlobalDTContratosSecciones") = Nothing
If ObjContratos.GetContratosTipos() Then Application("GlobalDTContratosTipos") = ObjContratos.DtResultados Else Application("GlobalDTContratosTipos") = Nothing 'If ObjContratos.GetContratosTipos(-1) Then Application("GlobalDTContratosTipos") = ObjContratos.DtResultados Else Application("GlobalDTContratosTipos") = Nothing
ObjContratos.Dispose() ObjContratos.Dispose()

View File

@@ -5745,8 +5745,8 @@ Partial Class Ventas
Dim Cantidad, PU, Descuento, CantidadInventario As Decimal Dim Cantidad, PU, Descuento, CantidadInventario As Decimal
Dim CuentaPredial As String Dim CuentaPredial As String
Cantidad = GvPS.Rows(e.RowIndex).FCTextBox("TxtCantidad").Text.ToDecimal Cantidad = GvPS.Rows(e.RowIndex).FCTextBox("TxtCantidad").Text.ToDecimal
PU = Math.Round(GvPS.Rows(e.RowIndex).FCTextBox("TxtPrecio").Text.ToDecimal, 6) PU = (GvPS.Rows(e.RowIndex).FCTextBox("TxtPrecio").Text.ToDecimal).RoundSQL(6)
Descuento = Math.Round(GvPS.Rows(e.RowIndex).FCTextBox("TxtDescuento").Text.ToDecimal, NumeroDecimales) Descuento = (GvPS.Rows(e.RowIndex).FCTextBox("TxtDescuento").Text.ToDecimal).RoundSQL(NumeroDecimales)
CuentaPredial = GvPS.Rows(e.RowIndex).FCTextBox("TxtPredial").Text.Trim CuentaPredial = GvPS.Rows(e.RowIndex).FCTextBox("TxtPredial").Text.Trim
Dim CantidadOriginal As Decimal = GvPS.Rows(e.RowIndex).DataKey("Cantidad").ToDecimal() Dim CantidadOriginal As Decimal = GvPS.Rows(e.RowIndex).DataKey("Cantidad").ToDecimal()
@@ -14128,7 +14128,7 @@ Partial Class Ventas
Dim Row As DataRow = Nothing Dim Row As DataRow = Nothing
Dim TotalCalculableImpuestos As Decimal = 0 Dim TotalCalculableImpuestos As Decimal = 0
Dim TotalCalculableImpuestosIVA As Decimal = 0 Dim TotalCalculableImpuestosIVA As Decimal = 0
PU = Math.Round(PU, 6) ' el precio unitario puede llevar hasta 6 decimales permitidos PU = PU.RoundSQL(6) ' el precio unitario puede llevar hasta 6 decimales permitidos
Row = TmpDT.NewRow() Row = TmpDT.NewRow()
Row("CveProyecto") = CveProyecto Row("CveProyecto") = CveProyecto

View File

@@ -63,8 +63,15 @@ Public Class WsTSoft
Dim Continuar As Boolean = ObjGPS.UltimaPosicionEquipoGetWS(DevID) Dim Continuar As Boolean = ObjGPS.UltimaPosicionEquipoGetWS(DevID)
Dim ObjPos As New LatLng Dim ObjPos As New LatLng
If Continuar Then If Continuar Then
'CONSULTA DIRECCIONES
Dim Direcciones As JArray = ConsultarDirecciones(ObjGPS.DtResultados, "Lat", "Lng")
For Each Dir As JObject In Direcciones
ObjGPS.DtResultados.Rows(Dir("Indice").ToEntero())("Direccion") = Dir("Direccion").ToString()
Next
ObjPos.Lat = ObjGPS.DtResultados.Rows("0")("Lat").ToString ObjPos.Lat = ObjGPS.DtResultados.Rows("0")("Lat").ToString
ObjPos.Lng = ObjGPS.DtResultados.Rows("0")("Lng").ToString ObjPos.Lng = ObjGPS.DtResultados.Rows("0")("Lng").ToString
ObjPos.Direccion = ObjGPS.DtResultados.Rows("0")("Direccion").ToString
Else Else
ObjPos.CurrentError = "No se pudo obtener la posición." ObjPos.CurrentError = "No se pudo obtener la posición."
End If End If
@@ -96,7 +103,16 @@ Public Class WsTSoft
Dim Continuar As Boolean = objTsoft.GETRemisionesHistorial(FolioRemision, NoEconomico) Dim Continuar As Boolean = objTsoft.GETRemisionesHistorial(FolioRemision, NoEconomico)
Dim objRem As New GetRemisionHistorialesObj Dim objRem As New GetRemisionHistorialesObj
If Continuar Then If Continuar Then
objRem.Historial = objTsoft.DtResultados.DataTableToObject(Of GetRemisionHistorialsObj) Dim Dt = objTsoft.DtResultados.Copy()
Dt.Columns.Add("Direccion", GetType(String))
'CONSULTA DIRECCIONES
Dim Direcciones As JArray = ConsultarDirecciones(Dt, "Lat", "Lon")
For Each Dir As JObject In Direcciones
Dt.Rows(Dir("Indice").ToEntero())("Direccion") = Dir("Direccion").ToString()
Next
objRem.Historial = Dt.DataTableToObject(Of GetRemisionHistorialsObj)
objRem.CurrentError = "" objRem.CurrentError = ""
Else Else
objRem.Historial = New List(Of GetRemisionHistorialsObj) objRem.Historial = New List(Of GetRemisionHistorialsObj)
@@ -149,15 +165,15 @@ Public Class WsTSoft
End Function End Function
Public Function ConsultarDirecciones(Dt As DataTable) As JArray Public Function ConsultarDirecciones(Dt As DataTable, Optional LatName As String = "Latitud", Optional LonName As String = "Longitud") As JArray
Dim retorno As JArray = Nothing Dim retorno As JArray = Nothing
Dim posicionesArray = New JArray(From Row As DataRow In Dt Dim posicionesArray = New JArray(From Row As DataRow In Dt
Let index = Dt.Rows().IndexOf(Row) Let index = Dt.Rows().IndexOf(Row)
Select New JObject( Select New JObject(
New JProperty("indice", index), New JProperty("indice", index),
New JProperty("cveTrama", -1), New JProperty("cveTrama", -1),
New JProperty("lat", Row("Latitud").ToString.ToDouble), New JProperty("lat", Row(LatName).ToString.ToDouble),
New JProperty("lon", Row("Longitud").ToString.ToDouble) New JProperty("lon", Row(LonName).ToString.ToDouble)
)) ))
Dim Base64array = Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(posicionesArray.ToString())) Dim Base64array = Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(posicionesArray.ToString()))
@@ -193,9 +209,10 @@ Public Class WsTSoft
End Class End Class
<Serializable> <Serializable>
Public Class LatLng Public Class LatLng
Public Lat As String Public Property Lat As String
Public Lng As String Public Property Lng As String
Public CurrentError As String Public Property Direccion As String
Public Property CurrentError As String
End Class End Class
<Serializable> <Serializable>
Public Class GetRemisionHistorialsObj Public Class GetRemisionHistorialsObj
@@ -204,6 +221,7 @@ Public Class WsTSoft
Public Property NoEconomico As String Public Property NoEconomico As String
Public Property Lat As String Public Property Lat As String
Public Property Lon As String Public Property Lon As String
Public Property Direccion As String
Public Property Distancia As String Public Property Distancia As String
Public Property TrackingNumber As String Public Property TrackingNumber As String
Public Property CveEstatus As Integer Public Property CveEstatus As Integer