200 lines
9.8 KiB
VB.net
200 lines
9.8 KiB
VB.net
'Public Class intIncidencia
|
|
' 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
|
|
|
|
' 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 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
|
|
' 'Private Function CargarSelectIncidenciasControlHorario(Soloreloj As Boolean) As List(Of 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 selIncidenciaNoReloj_Init(sender As Object, e As EventArgs) Handles selIncidenciaNoReloj.Init
|
|
' ' Dim ListadoIncidencias = CargarSelectIncidenciasControlHorario(False)
|
|
' ' selIncidenciaNoReloj.DataSource = ListadoIncidencias
|
|
' ' selIncidenciaNoReloj.DataBind()
|
|
' 'End Sub
|
|
'End Class |