Files
Antifraude.Net/.codex-links/WebIntranet/picada.aspx.vb
2026-04-30 08:55:00 +02:00

597 lines
29 KiB
VB.net

'Imports ServiciosRestAntifraude.Models
'Public Class picada
' Inherits System.Web.UI.Page
' Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
' If Session("usuario") = "" Then
' Response.Redirect("default.aspx")
' End If
' If Not IsPostBack Then
' inpFechaFin.Value = DateTime.Now.ToString("yyyy-MM-dd")
' inpIniManana.Value = "00:00"
' inpIniTarde.Value = "00:00"
' inpFinManana.Value = "00:00"
' inpFinTarde.Value = "00:00"
' inpTotalManana.Value = "00:00"
' inpTotalTarde.Value = "00:00"
' End If
' End Sub
' Private Sub selIncidencia_Init(sender As Object, e As EventArgs) Handles selIncidencia.Init
' Dim ListadoIncidencias = CargarSelectIncidenciasControlHorario(True)
' 'Dim htmlSelIncidencia = "<option></option>"
' selIncidencia.DataSource = ListadoIncidencias
' selIncidencia.DataTextField = "Descripcion"
' selIncidencia.DataValueField = "idIncidencias"
' selIncidencia.DataBind()
' 'For Each incidencia As Incidencia In ListadoIncidencias
' ' If (incidencia.EsInciReloj = True) Then
' ' htmlSelIncidencia += "<option>" + incidencia.Descripcion + "</option>"
' ' End If
' 'Next
' 'selIncidencia.InnerHtml = htmlSelIncidencia
' End Sub
' Private Sub btnPicar_Click(sender As Object, e As EventArgs) Handles btnPicar.Click
' Dim usuario As String = "tecnosis"
' Dim contraseña As String = "patata2022"
' '// A continuación, se realizará una petición al servicio REST
' '// de la Oficina Antifraude para identificar al usuario "manuel".
' Dim url1 As String = ConfigurationManager.AppSettings("RutaRes").ToString + "/api/PicadaNueva"
' Dim clienteHTTP1 As New Net.WebClient()
' Dim cadenaAutenticación As String =
' System.Convert.ToBase64String(System.Text.Encoding.GetEncoding("ISO-8859-1").GetBytes(usuario & ":" & contraseña))
' clienteHTTP1.Headers.Add("Authorization", "Basic " & cadenaAutenticación)
' clienteHTTP1.Encoding = System.Text.Encoding.UTF8
' Dim nif = Session("usuario")
' Dim fechaActual = DateTime.Now
' Dim Fechahoraentick = fechaActual.Ticks.ToString
' Dim IdIncidencia As String = selIncidencia.Value
' Dim sRespuesta1 As String = clienteHTTP1.UploadString(url1, nif & "," & Fechahoraentick & "," & IdIncidencia)
' Console.WriteLine(fechaActual)
' 'Me.TextBoxResultados.Text = sRespuesta1
' '// Esta es una manera "genérica" de acceder a datos JSON mediante LINQ,
' '// usando la biblioteca Newtonsoft.Json.
' Dim datos As Newtonsoft.Json.Linq.JObject =
' Newtonsoft.Json.JsonConvert.DeserializeObject(Of Newtonsoft.Json.Linq.JObject)(sRespuesta1)
' Dim resultado = datos.Item("resultado").ToString
' Dim errores = datos.Item("Mensaje")
' Dim MensPicada = ""
' MensPicada = errores
' If Not resultado = "0" Then
' mensajePicada.Style.Add("color", "red")
' Else
' mensajePicada.Style.Add("color", "#02bd02")
' End If
' mensajePicada.InnerHtml = MensPicada
' End Sub
' 'Private Sub gridListPicadas_Load(sender As Object, e As EventArgs) Handles gridListPicadas.Load
' ' Dim usuario As String = "tecnosis"
' ' Dim contraseña As String = "patata2022"
' ' '// A continuación, se realizará una petición al servicio REST
' ' '// de la Oficina Antifraude para identificar al usuario "manuel".
' ' Dim url1 As String = ConfigurationManager.AppSettings("RutaRes").ToString + "/api/ListPicaEntreFechas"
' ' Dim clienteHTTP1 As New Net.WebClient()
' ' Dim cadenaAutenticación As String =
' ' System.Convert.ToBase64String(System.Text.Encoding.GetEncoding("ISO-8859-1").GetBytes(usuario & ":" & contraseña))
' ' clienteHTTP1.Headers.Add("Authorization", "Basic " & cadenaAutenticación)
' ' clienteHTTP1.Encoding = System.Text.Encoding.UTF8
' ' Dim nif = Session("usuario")
' ' Dim FechaInicio = New DateTime(2022, 8, 1, 0, 0, 0).Ticks.ToString
' ' Dim FechaFin = New DateTime(2022, 8, 22, 0, 0, 0).Ticks.ToString
' ' Dim sRespuesta1 As String = clienteHTTP1.UploadString(url1, nif & "," & FechaInicio & "," & FechaFin)
' ' 'Me.TextBoxResultados.Text = sRespuesta1
' ' '// Esta es una manera "genérica" de acceder a datos JSON mediante LINQ,
' ' '// usando la biblioteca Newtonsoft.Json.
' ' Dim datos As Newtonsoft.Json.Linq.JObject =
' ' Newtonsoft.Json.JsonConvert.DeserializeObject(Of Newtonsoft.Json.Linq.JObject)(sRespuesta1)
' ' Dim sbResultado As New Text.StringBuilder()
' ' sbResultado.AppendFormat("Resultado: {0}{1}", datos.Item("Resultado").ToString, vbCrLf)
' ' sbResultado.AppendFormat("Mensaje: {0}{1}", datos.Item("Mensaje"), vbCrLf)
' ' sbResultado.AppendFormat("ListadoEF: {0}{1}", datos.Item("ListadoEF"), vbCrLf)
' ' 'Me.TextBoxResultados.Text = sbResultado.ToString
' ' '// Deserializar a una clase.
' ' Dim settings As New Newtonsoft.Json.JsonSerializerSettings()
' ' settings.CheckAdditionalContent = True
' ' Dim objetoDatos As ResultadoListPicaEntreFechas =
' ' Newtonsoft.Json.JsonConvert.DeserializeObject(Of ResultadoListPicaEntreFechas)(sRespuesta1, settings)
' ' Debug.WriteLine("Resultado: " & objetoDatos.resultado)
' ' Debug.WriteLine("Mensaje: " & objetoDatos.Mensaje)
' ' Debug.WriteLine("ListadoEF.FechaInicio: " & objetoDatos.ListadoEF.FechaInicio)
' ' Dim html = ""
' 'End Sub
' Private Function CargarListadodePicadas(fechaInit As String, fechaEnd As String) As List(Of Clases.ResultadoListPicaEntreFechas)
' mensaje.InnerHtml = ""
' Dim usuario As String = "tecnosis"
' Dim contraseña As String = "patata2022"
' '// A continuación, se realizará una petición al servicio REST
' '// de la Oficina Antifraude para identificar al usuario "manuel".
' Dim url1 As String = ConfigurationManager.AppSettings("RutaRes").ToString + "/api/ListPicaEntreFechas"
' Dim clienteHTTP1 As New Net.WebClient()
' Dim cadenaAutenticación As String =
' System.Convert.ToBase64String(System.Text.Encoding.GetEncoding("ISO-8859-1").GetBytes(usuario & ":" & contraseña))
' clienteHTTP1.Headers.Add("Authorization", "Basic " & cadenaAutenticación)
' clienteHTTP1.Encoding = System.Text.Encoding.UTF8
' Dim nif = Session("usuario")
' Dim FechaInicio = fechaInit
' Dim FechaFin = fechaEnd
' Dim sRespuesta1 As String = clienteHTTP1.UploadString(url1, nif & "," & FechaInicio & "," & FechaFin)
' 'Me.TextBoxResultados.Text = sRespuesta1
' '// Esta es una manera "genérica" de acceder a datos JSON mediante LINQ,
' '// usando la biblioteca Newtonsoft.Json.
' Dim datos As Newtonsoft.Json.Linq.JObject =
' Newtonsoft.Json.JsonConvert.DeserializeObject(Of Newtonsoft.Json.Linq.JObject)(sRespuesta1)
' Dim sbResultado As New Text.StringBuilder()
' sbResultado.AppendFormat("Resultado: {0}{1}", datos.Item("Resultado").ToString, vbCrLf)
' sbResultado.AppendFormat("Mensaje: {0}{1}", datos.Item("Mensaje"), vbCrLf)
' sbResultado.AppendFormat("ListadoEF: {0}{1}", datos.Item("ListadoEF"), vbCrLf)
' '// Deserializar a una clase.
' Dim settings As New Newtonsoft.Json.JsonSerializerSettings()
' settings.CheckAdditionalContent = True
' Dim objetoDatos As Clases.ResultadoListPicaEntreFechas =
' Newtonsoft.Json.JsonConvert.DeserializeObject(Of Clases.ResultadoListPicaEntreFechas)(sRespuesta1, settings)
' Debug.WriteLine("Resultado: " & objetoDatos.resultado)
' Debug.WriteLine("Mensaje: " & objetoDatos.Mensaje)
' Debug.WriteLine("ListadoEF.FechaInicio: " & objetoDatos.ListadoEF.FechaInicio)
' Dim htmlImp = ""
' Dim html = ""
' Dim listaDepartamento = objetoDatos.ListadoEF.ListaDepartamento
' Dim totales As Clases.TotalPeriodo =
' Newtonsoft.Json.JsonConvert.DeserializeObject(Of Clases.TotalPeriodo)(sRespuesta1, settings)
' '"<th class='columnFecha'>Fecha</th>" +
' For Each dep As Clases.Departamento In listaDepartamento
' html = ""
' Dim contadorPersona = 0
' For Each per As Clases.PersonaCH In dep.LisPersonas
' contadorPersona += 1
' Dim idPersona = per.ApellidosNombre.ToUpper.Replace(" ", String.Empty).Replace(",", String.Empty)
' idPersona = UnAccent(idPersona)
' html += "<div class='cabeceraTabla'><div><b>" + per.ApellidosNombre + " &nbsp;&nbsp; </b><a class='btnVerde btn btnPersona' id='" + contadorPersona.ToString() + "mostrar' onclick='botonMostrar(""" + contadorPersona.ToString() + "mostrar"",""collapseMe" + idPersona + """)' role='button' style='margin-top:0; text-align:center !important'>Mostrar</a></div>" +
' "<div class='d-flex justify-content-between mt-3'><p><b>Departamento: </b>" + dep.NombreDepartamento + "</p><p> Listado Horario del " + objetoDatos.ListadoEF.FechaInicio + " al " + objetoDatos.ListadoEF.FechaFin + "</p></div></div></div>" +
' "<div class='tablaPicadas'><table><tr>" +
' "<th class='columnHora'>Hora</th>" +
' "<th>Hora real</th>" +
' "<th>Incidencia</th>" +
' "<th>Horas a trabajar</th>" +
' "<th>Horas trabajadas</th>" +
' "<th>Horas extras a compensar</th>" +
' "<th>Horas extras a guardar</th>" +
' "<th>Saldo</th>" +
' "<th>Horas recuperables</th>" +
' "<th>Horas incumplimiento</th>" +
' "<th>Horas trabajadas tarde</th></tr>"
' '"<tr><td colspan='11' class='btnMostrar'></td></tr>"
' '"<a data-toggle='collapse' id='" + contadorPersona.ToString() + "mostrar' onclick='botonMostrar(" + contadorPersona.ToString() + ")' href='.collapseMe" + idPersona + "' role='button' aria-expanded='false' aria-controls='collapseExample' style='text-align:center !important'>Mostrar</a></td></tr>"
' '<td>" + picada.Fecha + "</td>"
' For Each turno As Clases.FechaTurno In per.LisFechasTurnos
' If turno.LisPicadasAsistencias IsNot Nothing Then
' html += "<tr class='todasTablas collapse collapseMe" + idPersona + "'> <td colspan='11' style='font-weight:bold; background-color: #dadada; text-align:left !important;'>" + turno.DesFechaTurno.Replace("0:00:00-", "") +
' "</td></tr>"
' '"<a data-toggle='collapse' href='.collapseMe" + contadorFecha.ToString + idPersona + "' role='button' aria-expanded='false' aria-controls='collapseExample'><small> Mostrar </small></a>
' For Each picada As Clases.PicadaAsistencia In turno.LisPicadasAsistencias
' html += "<tr style='text-align:right !important;' class='todasTablas collapse collapseMe" + idPersona + "' >" +
' "<td>" + picada.Hora + "</td>" +
' "<td>" + picada.HoraReal + "</td>" +
' "<td style='text-align:left !important;'>" + picada.Incidencia + "</td>" +
' "<td>" + picada.HorasATrabajar + "</td>" +
' "<td>" + picada.HorasTrabajadas + "</td>" +
' "<td>" + picada.HorasExtraACompensar + "</td>" +
' "<td>" + picada.HorasExtraAguardar + "</td>" +
' "<td>" + picada.Saldo + "</td>" +
' "<td>" + picada.HorasRecuperables + "</td>" +
' "<td>" + picada.HorasIncumplimiento + "</td>" +
' "<td>" + picada.HorasTrabajadasTarde + "</td> </tr>"
' Next
' End If
' Next
' html += "<tr style='background-color:#dadada; text-align:right;'><td class='celdaBlanca'></td><td class='celdaBlanca'></td><td style='text-align:right; font-weight:bold'>Totales:</td>" +
' "<td>" + per.TotalesPeriodo.TotalHorasATrabajar + "</td>" +
' "<td>" + per.TotalesPeriodo.TotalHorasTrabajadas + "</td>" +
' "<td>" + per.TotalesPeriodo.TotalHorasExtraACompensar + "</td>" +
' "<td>" + per.TotalesPeriodo.TotalHorasExtraAguardar + "</td>" +
' "<td>" + per.TotalesPeriodo.TotalSaldo + "</td>" +
' "<td>" + per.TotalesPeriodo.TotalHorasRecuperables + "</td>" +
' "<td>" + per.TotalesPeriodo.TotalHorasIncumplimiento + "</td>" +
' "<td>" + per.TotalesPeriodo.TotalHorasTrabajadasTarde + "</td></tr></table></div>"
' Next
' Next
' htmlImp = "<style>.tablaPicadasImp {font-family:'Arial'; max-height:550px;border-collapse: collapse; width: 100%;}
' .tablaPicadasImp td {margin:0; padding-left: 5px;padding-right: 5px;width: auto;border: 1px solid black;border-collapse: collapse;background-color:white;}
' .tablaPicadasImp th {padding-left: 5px; padding-right: 5px; background-color: green;color: white;font-weight: bold; border: 1px solid white; text-align: center;}
' .celdaBlanca {background-color: white !important;border: 0px none !important;}
'.cabeceraTabla p {margin-bottom: 0px;}
'.cabeceraTabla {padding:1rem;background-color:white;margin-top:1rem;margin-bottom: 1rem;border-radius:5px;}
'.tablaPicadasImp table {width:100%;}</style>"
' For Each dep As Clases.Departamento In listaDepartamento
' For Each per As Clases.PersonaCH In dep.LisPersonas
' Dim idPersona = per.ApellidosNombre.ToUpper.Replace(" ", String.Empty).Replace(",", String.Empty)
' Dim contadorFecha = 0
' htmlImp += "<div><img src='Content/images/OAAF%20Logo%20PNG.png' style='margin-left:15px; height: 60px; width:auto;'/>''" +
' "<div class='cabeceraTabla' style='font-family:""Arial""'><div><b>" + per.ApellidosNombre + "</b></div>" +
' "<div class='d-flex justify-content-between' style='display:flex; justify-content: space-between'><p><b>Departamento: </b>" + dep.NombreDepartamento + "</p><p> Listado Horario del " + objetoDatos.ListadoEF.FechaInicio + " al " + objetoDatos.ListadoEF.FechaFin + "</p></div></div>" +
' "<div class='tablaPicadasImp'><table cellspacing=""0"" cellpadding=""0""><tr>" +
' "<th class='columnHora'>Hora</th>" +
' "<th>Hora real</th>" +
' "<th>Incidencia</th>" +
' "<th>Horas a trabajar</th>" +
' "<th>Horas trabajadas</th>" +
' "<th>Horas extras a compensar</th>" +
' "<th>Horas extras a guardar</th>" +
' "<th>Saldo</th>" +
' "<th>Horas recuperables</th>" +
' "<th>Horas incumplimiento</th>" +
' "<th>Horas trabajadas tarde</th></tr>"
' '<td>" + picada.Fecha + "</td>"
' For Each turno As Clases.FechaTurno In per.LisFechasTurnos
' If turno.LisPicadasAsistencias IsNot Nothing Then
' contadorFecha += 1
' htmlImp += "<tr> <td colspan='11' style='font-weight:bold; background-color: #dadada'>" + turno.DesFechaTurno.Replace("0:00:00-", "") +
' "</td></tr>"
' For Each picada As Clases.PicadaAsistencia In turno.LisPicadasAsistencias
' htmlImp += "<tr style='text-align:right !important;'>" +
' "<td>" + picada.Hora + "</td>" +
' "<td>" + picada.HoraReal + "</td>" +
' "<td style='text-align:left'>" + picada.Incidencia + "</td>" +
' "<td>" + picada.HorasATrabajar + "</td>" +
' "<td>" + picada.HorasTrabajadas + "</td>" +
' "<td>" + picada.HorasExtraACompensar + "</td>" +
' "<td>" + picada.HorasExtraAguardar + "</td>" +
' "<td>" + picada.Saldo + "</td>" +
' "<td>" + picada.HorasRecuperables + "</td>" +
' "<td>" + picada.HorasIncumplimiento + "</td>" +
' "<td>" + picada.HorasTrabajadasTarde + "</td> </tr>"
' Next
' End If
' Next
' htmlImp += "<tr style='background-color:#dadada; text-align:right !important;''><td class='celdaBlanca'></td><td class='celdaBlanca'></td><td style='text-align:right; font-weight:bold'>Totales:</td>" +
' "<td style='text-align:right;'>" + per.TotalesPeriodo.TotalHorasATrabajar + "</td>" +
' "<td>" + per.TotalesPeriodo.TotalHorasTrabajadas + "</td>" +
' "<td>" + per.TotalesPeriodo.TotalHorasExtraACompensar + "</td>" +
' "<td>" + per.TotalesPeriodo.TotalHorasExtraAguardar + "</td>" +
' "<td>" + per.TotalesPeriodo.TotalSaldo + "</td>" +
' "<td>" + per.TotalesPeriodo.TotalHorasRecuperables + "</td>" +
' "<td>" + per.TotalesPeriodo.TotalHorasIncumplimiento + "</td>" +
' "<td>" + per.TotalesPeriodo.TotalHorasTrabajadasTarde + "</td></tr></table></div>"
' Next
' Next
' tablaImpresion.InnerHtml = htmlImp
' Session.Add("htmlImprimir", htmlImp)
' btnImprimir.Style.Item("display") = "block"
' mostrarGeneral.Style.Item("display") = "block"
' tablaPicadas.InnerHtml = html
' End Function
' Private Function CargarSelectIncidenciasControlHorario(Soloreloj As Boolean) As List(Of Clases.Incidencia)
' '// El servicio REST de la Oficina Antifraude tiene permite solicitar
' '// información sobre personas.
' '// Para solicitar las nominas de una persona y año, hay que realizar una
' '// petición GET a la siguiente URL:
' '// http://localhost:61107/api/IncidenciasControlHorario
' '// Por ejemplo: http://localhost:61107/api/IncidenciasControlHorario
' '//
' '// Para solicitar una lista con todas las personas, hay que realizar
' '// una petición GET a la siguiente URL:
' '// http://localhost:61107/api/IncidenciasControlHorario
' '//
' '// Las respuestas usan el formato JSON.
' '//
' '// El servicio REST usa autenticación básica
' '// (un estándar para el protocolo HTTP).
' 'Me.TextBoxResultados.Text = ""
' Dim usuario As String = "tecnosis"
' Dim contraseña As String = "patata2022"
' '// A continuación, se realizará una petición al servicio REST
' '// de la Oficina Antifraude para obtener una lista de todas las
' '// personas..
' '//
' Dim url3 As String = ConfigurationManager.AppSettings("RutaRes").ToString + "/api/IncidenciasControlHorario"
' ' Dim url3 As String = "http://192.168.41.14:81/api/IncidenciasControlHorario"
' Dim credenciales3 As New Net.CredentialCache()
' credenciales3.Add(New Uri(url3), "Basic", New Net.NetworkCredential(usuario, contraseña))
' Dim clienteHTTP3 As New Net.WebClient()
' clienteHTTP3.Encoding = System.Text.Encoding.UTF8
' clienteHTTP3.Credentials = credenciales3
' Dim respuesta3 As String = clienteHTTP3.DownloadString(url3)
' Dim deserializador3 As New System.Web.Script.Serialization.JavaScriptSerializer()
' deserializador3.MaxJsonLength = Integer.MaxValue
' Dim listaPicada As List(Of Clases.Incidencia) =
' deserializador3.Deserialize(Of List(Of Clases.Incidencia))(respuesta3)
' 'Dim sbResultado As New Text.StringBuilder
' 'For Each c In listaNominas.OrderBy(Function(x) x.Descripcion)
' ' sbResultado.AppendFormat("{0} {1}{2}{3}", c.idIncidencias, c.Descripcion, c.EsInciReloj, vbCrLf)
' 'Next
' Dim InciVacia As New Clases.Incidencia
' InciVacia.idIncidencias = 0
' InciVacia.Descripcion = ""
' InciVacia.EsInciReloj = True
' listaPicada.Add(InciVacia)
' Return listaPicada.Where(Function(x) x.EsInciReloj = Soloreloj).OrderBy(Function(x) x.Descripcion).ToList
' End Function
' Private Sub btnFechas_Click(sender As Object, e As EventArgs) Handles btnFechas.Click
' Dim inicioTick = ""
' Dim FinalTick = ""
' If inpFechaInicio.Value Is "" Or inpFechaFin.Value Is "" Then
' mensaje.InnerHtml = "Debe introducir una fecha de inicio y otra de final."
' Else
' Dim inicio As DateTime = inpFechaInicio.Value
' Dim Final As DateTime = inpFechaFin.Value
' If inicio > Final Then
' mensaje.InnerHtml = "La fecha de inicio no debe ser posterior a la fecha final."
' Else
' inicioTick = inicio.Ticks.ToString
' FinalTick = Final.Ticks.ToString
' CargarListadodePicadas(inicioTick, FinalTick)
' End If
' End If
' End Sub
' Private Sub btnIntIncidencia_Click(sender As Object, e As EventArgs) Handles btnIntIncidencia.Click
' Dim inicioTick = ""
' Dim FinalTick = ""
' Dim HoraIniManana = inpIniManana.Value
' Dim HoraFinManana = inpFinManana.Value
' Dim HoraIniTarde = inpIniTarde.Value
' Dim HoraFinTarde = inpFinTarde.Value
' Dim Observacion = ""
' Dim Expediente = ""
' Dim totalHoraManana = ""
' Dim totalHoraTarde = ""
' 'If HoraFinManana = "00:00" Then
' ' HoraFinManana = "24:00"
' 'End If
' 'If HoraFinTarde = "00:00" Then
' ' HoraFinTarde = "24:00"
' 'End If
' If HoraIniManana Is "" And HoraFinManana IsNot "" Then
' mensajeIncidencia.InnerHtml = "En el caso de introducir horas de mañana se deben introducir horas de inicio y de final"
' ElseIf HoraIniManana IsNot "" And HoraFinManana Is "" Then
' mensajeIncidencia.InnerHtml = "En el caso de introducir horas de mañana se deben introducir horas de inicio y de final"
' ElseIf HoraIniTarde Is "" And HoraFinTarde IsNot "" Then
' mensajeIncidencia.InnerHtml = "En el caso de introducir horas de tarde se deben introducir horas de inicio y de final"
' ElseIf HoraIniTarde IsNot "" And HoraFinTarde Is "" Then
' mensajeIncidencia.InnerHtml = "En el caso de introducir horas de tarde se deben introducir horas de inicio y de final"
' Else
' If HoraIniManana IsNot "" Or HoraFinManana IsNot "" Then
' totalHoraManana = (TimeSpan.Parse(HoraFinManana) - TimeSpan.Parse(HoraIniManana)).ToString.Substring(0, 5)
' Else
' totalHoraManana = "00:00"
' End If
' If HoraIniTarde IsNot "" Or HoraFinTarde IsNot "" Then
' totalHoraTarde = (TimeSpan.Parse(HoraFinTarde) - TimeSpan.Parse(HoraIniTarde)).ToString.Substring(0, 5)
' Else
' totalHoraTarde = "00:00"
' End If
' If HoraIniManana = "" Then
' HoraIniManana = "00:00"
' End If
' If HoraFinManana = "" Then
' HoraFinManana = "00:00"
' End If
' If HoraIniTarde = "" Then
' HoraIniTarde = "00:00"
' End If
' If HoraFinTarde = "" Then
' HoraFinTarde = "00:00"
' End If
' If inpFechaInicioIncidencia.Value Is "" Or inpFechaFinIncidencia.Value Is "" Then
' mensajeIncidencia.InnerHtml = "Debe introducir una fecha de inicio y otra de final."
' Else
' Dim inicio As DateTime = inpFechaInicioIncidencia.Value
' Dim Final As DateTime = inpFechaFinIncidencia.Value
' If inicio > Final Then
' mensajeIncidencia.InnerHtml = "La fecha de inicio no debe ser posterior a la fecha final."
' Else
' inicioTick = inicio.Ticks.ToString
' FinalTick = Final.Ticks.ToString
' Dim usuario As String = "tecnosis"
' Dim contraseña As String = "patata2022"
' '// A continuación, se realizará una petición al servicio REST
' '// de la Oficina Antifraude para identificar al usuario "manuel".
' Dim url1 As String = ConfigurationManager.AppSettings("RutaRes").ToString + "/api/GenAsisEntreFechas"
' Dim clienteHTTP1 As New Net.WebClient()
' Dim cadenaAutenticación As String =
' System.Convert.ToBase64String(System.Text.Encoding.GetEncoding("ISO-8859-1").GetBytes(usuario & ":" & contraseña))
' clienteHTTP1.Headers.Add("Authorization", "Basic " & cadenaAutenticación)
' clienteHTTP1.Encoding = System.Text.Encoding.UTF8
' Dim nif = Session("usuario")
' Dim FechaInicio = inicioTick
' Dim FechaFin = FinalTick
' ' clienteHTTP1.UploadString(url1, nif & "," & FechaInicio & "," & FechaFin & "," & idincidencia & "," & horainiciomañana & "," & horafinmañana & "," & horastrabajadasmañana & "," & horainiciotarde & "," & horafintarde & "," & horatrabajadatarde & "," & observaciones & "," & expediente)
' Dim sRespuesta1 As String = clienteHTTP1.UploadString(url1, nif & "," & FechaInicio & "," & FechaFin & "," & selIncidenciaNoReloj.Value & "," & HoraIniManana & "," & HoraFinManana & "," & totalHoraManana & "," & HoraIniTarde & "," & HoraFinTarde & "," & totalHoraTarde & "," & inpObservaciones.InnerText & "," & inpExpediente.Value)
' 'Me.TextBoxResultados.Text = sRespuesta1
' '// Esta es una manera "genérica" de acceder a datos JSON mediante LINQ,
' '// usando la biblioteca Newtonsoft.Json.
' Dim datos As Newtonsoft.Json.Linq.JObject =
' Newtonsoft.Json.JsonConvert.DeserializeObject(Of Newtonsoft.Json.Linq.JObject)(sRespuesta1)
' Dim sbResultado As New Text.StringBuilder()
' sbResultado.AppendFormat("Resultado: {0}{1}", datos.Item("Resultado").ToString, vbCrLf)
' sbResultado.AppendFormat("Mensaje: {0}{1}", datos.Item("Mensaje"), vbCrLf)
' '// Deserializar a una clase.
' Dim settings As New Newtonsoft.Json.JsonSerializerSettings()
' settings.CheckAdditionalContent = True
' Dim objetoDatos As Clases.ResultadoListPicaEntreFechas =
' Newtonsoft.Json.JsonConvert.DeserializeObject(Of Clases.ResultadoListPicaEntreFechas)(sRespuesta1, settings)
' Debug.WriteLine("Resultado: " & objetoDatos.resultado)
' Debug.WriteLine("Mensaje: " & objetoDatos.Mensaje)
' If objetoDatos.resultado = 0 Then
' mensajeIncidencia.Style("color") = "#02bd02"
' mensajeIncidencia.InnerHtml = objetoDatos.Mensaje
' Else
' mensajeIncidencia.Style("color") = "red"
' mensajeIncidencia.InnerHtml = objetoDatos.Mensaje
' End If
' End If
' End If
' End If
' End Sub
' Public Function UnAccent(ByVal aString As String) As String
' Dim toReplace() As Char = "àèìòùÀÈÌÒÙ äëïöüÄËÏÖÜ âêîôûÂÊÎÔÛ áéíóúÁÉÍÓÚðÐýÝ ãñõÃÑÕšŠžŽçÇåÅøØ".ToCharArray
' Dim replaceChars() As Char = "aeiouAEIOU aeiouAEIOU aeiouAEIOU aeiouAEIOUdDyY anoANOsSzZcCaAoO".ToCharArray
' For index As Integer = 0 To toReplace.GetUpperBound(0)
' aString = aString.Replace(toReplace(index), replaceChars(index))
' Next
' Return aString
' End Function
' 'Private Sub selIncidenciaNoReloj_Init(sender As Object, e As EventArgs) Handles selIncidenciaNoReloj.Init
' ' Dim ListadoIncidencias = CargarSelectIncidenciasControlHorario(False)
' 'selIncidenciaNoReloj.DataSource = ListadoIncidencias
' 'selIncidenciaNoReloj.DataTextField = "Descripcion"
' 'selIncidenciaNoReloj.DataValueField = "idIncidencias"
' 'selIncidenciaNoReloj.DataBind()
' 'End Sub
' Private Sub selIncidenciaNoReloj_Init(sender As Object, e As EventArgs) Handles selIncidenciaNoReloj.Init
' Dim ListadoIncidencias = CargarSelectIncidenciasControlHorario(False)
' selIncidenciaNoReloj.DataSource = ListadoIncidencias
' selIncidenciaNoReloj.DataBind()
' End Sub
'End Class
''End Namespace