API
This commit is contained in:
283
VERAG_PROG_ALLGEMEIN/Schnittstellen/cNorsware.vb
Normal file
283
VERAG_PROG_ALLGEMEIN/Schnittstellen/cNorsware.vb
Normal file
@@ -0,0 +1,283 @@
|
|||||||
|
Imports System.Net
|
||||||
|
Imports iTextSharp.text.pdf.codec.wmf
|
||||||
|
Imports Newtonsoft.Json.Linq
|
||||||
|
|
||||||
|
Public Class cNorsware
|
||||||
|
|
||||||
|
|
||||||
|
'PROD
|
||||||
|
Shared API_STRING As String = "http://54.93.249.123"
|
||||||
|
Shared token As String = ""
|
||||||
|
Public dataTable As New DataTable()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Shared Function SendRequestAuthentificationToken(ByVal myuri As String, ByVal contentType As String, ByVal method As String, ByRef Itoken As String) As String
|
||||||
|
Try
|
||||||
|
If Itoken <> "" Then Return "token filled"
|
||||||
|
|
||||||
|
VERAG_PROG_ALLGEMEIN.cChilkat_Helper.UnlockCilkat()
|
||||||
|
|
||||||
|
Dim rest As New Chilkat.Rest
|
||||||
|
Dim success As Boolean
|
||||||
|
|
||||||
|
|
||||||
|
Dim bTls As Boolean = False
|
||||||
|
Dim port As Integer = 7128
|
||||||
|
Dim bAutoReconnect As Boolean = True
|
||||||
|
success = rest.Connect(API_STRING, port, bTls, bAutoReconnect)
|
||||||
|
If (success <> True) Then
|
||||||
|
Debug.WriteLine("ConnectFailReason: " & rest.ConnectFailReason)
|
||||||
|
Debug.WriteLine(rest.LastErrorText)
|
||||||
|
Return rest.LastErrorText
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
Dim json As New Chilkat.JsonObject
|
||||||
|
'json.UpdateString("username", user)
|
||||||
|
'json.UpdateString("password", pw)
|
||||||
|
|
||||||
|
rest.AddHeader("Content-Type", contentType)
|
||||||
|
|
||||||
|
Dim sbRequestBody As New Chilkat.StringBuilder
|
||||||
|
json.EmitSb(sbRequestBody)
|
||||||
|
|
||||||
|
|
||||||
|
Dim sbResponseBody As New Chilkat.StringBuilder
|
||||||
|
Dim ResponseStr = rest.FullRequestSb(method, myuri, sbRequestBody, sbResponseBody)
|
||||||
|
|
||||||
|
|
||||||
|
If (rest.ResponseStatusCode <> 200) Then
|
||||||
|
Return rest.ResponseStatusCode & " " & rest.ResponseStatusText
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim jsonResp = New Chilkat.JsonObject()
|
||||||
|
jsonResp.LoadSb(sbResponseBody)
|
||||||
|
|
||||||
|
token = jsonResp.StringOf("token")
|
||||||
|
Itoken = token
|
||||||
|
|
||||||
|
Return rest.ResponseStatusCode & " " & rest.ResponseStatusText
|
||||||
|
Catch ex As WebException
|
||||||
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||||
|
End Try
|
||||||
|
|
||||||
|
End Function
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Shared Function UploadPDFWithAuthHeader(pdfStringSource As String, acceptContentType As String, method As String, authenticationToken As String, ByRef dataTable As DataTable) As String
|
||||||
|
Try
|
||||||
|
|
||||||
|
VERAG_PROG_ALLGEMEIN.cChilkat_Helper.UnlockCilkat()
|
||||||
|
|
||||||
|
Dim rest As New Chilkat.Rest
|
||||||
|
Dim success As Boolean
|
||||||
|
|
||||||
|
Dim bTls As Boolean = False
|
||||||
|
Dim port As Integer = 7135
|
||||||
|
Dim bAutoReconnect As Boolean = True
|
||||||
|
success = rest.Connect(API_STRING, port, bTls, bAutoReconnect)
|
||||||
|
If (success <> True) Then
|
||||||
|
Debug.WriteLine("ConnectFailReason: " & rest.ConnectFailReason)
|
||||||
|
Debug.WriteLine(rest.LastErrorText)
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
Dim fileStream As New Chilkat.Stream
|
||||||
|
fileStream.SourceFile = pdfStringSource
|
||||||
|
|
||||||
|
rest.AddHeader("Authorization", "Bearer " & authenticationToken)
|
||||||
|
rest.AddHeader("Content-Type", "multipart/form-data")
|
||||||
|
|
||||||
|
rest.PartSelector = "1"
|
||||||
|
rest.AddHeader("Content-Type", "pdf")
|
||||||
|
rest.AddHeader("Content-Disposition", "form-data; name=""file""; filename=""starfish.pdf""")
|
||||||
|
rest.SetMultipartBodyStream(fileStream)
|
||||||
|
rest.PartSelector = "0"
|
||||||
|
|
||||||
|
|
||||||
|
Dim responseBody As String = rest.FullRequestMultipart(method, API_STRING & ":7135/api/File/UploadFile")
|
||||||
|
If (rest.LastMethodSuccess <> True) Then
|
||||||
|
Debug.WriteLine(rest.LastErrorText)
|
||||||
|
Return rest.LastErrorText
|
||||||
|
End If
|
||||||
|
|
||||||
|
If (rest.ResponseStatusCode <> 200) Then
|
||||||
|
Return rest.ResponseStatusCode & " " & rest.ResponseStatusText
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
Debug.WriteLine("File uploaded")
|
||||||
|
|
||||||
|
|
||||||
|
Dim jsonArray As New Chilkat.JsonArray
|
||||||
|
Dim success2 As Boolean = jsonArray.Load(responseBody)
|
||||||
|
If (success2 <> True) Then
|
||||||
|
Debug.WriteLine(jsonArray.LastErrorText)
|
||||||
|
Return "Verbindungsfehler"
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
Dim num As Integer = jsonArray.Size
|
||||||
|
If num = -1 Then
|
||||||
|
Return "Fehler"
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
Dim j As Integer = 0
|
||||||
|
While j < num
|
||||||
|
|
||||||
|
Dim pdfSite As Chilkat.JsonObject = jsonArray.ObjectAt(j)
|
||||||
|
|
||||||
|
Dim R As DataRow = dataTable.NewRow
|
||||||
|
R("adi") = pdfSite.StringOf("adi")
|
||||||
|
R("id") = pdfSite.StringOf("id")
|
||||||
|
R("ihracatBeyannamesi") = IIf(j = 0, True, False)
|
||||||
|
R("ekBelge") = IIf(j = 0, False, True)
|
||||||
|
R("sira") = j + 1
|
||||||
|
R("secildi") = pdfSite.BoolOf("secildi")
|
||||||
|
R("ogretildi") = pdfSite.IntOf("ogretildi")
|
||||||
|
R("kayitTarihi") = pdfSite.StringOf("kayitTarihi")
|
||||||
|
R("dosyaGrupId") = pdfSite.StringOf("dosyaGrupId")
|
||||||
|
dataTable.Rows.Add(R)
|
||||||
|
|
||||||
|
j = j + 1
|
||||||
|
End While
|
||||||
|
|
||||||
|
|
||||||
|
Return "File uploaded (Anzahl Seiten " & num & ")"
|
||||||
|
|
||||||
|
Catch ex As WebException
|
||||||
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||||
|
End Try
|
||||||
|
|
||||||
|
End Function
|
||||||
|
|
||||||
|
|
||||||
|
Shared Function authenticate(username As String, passwort As String, ByRef token As String) As String
|
||||||
|
|
||||||
|
Dim myUri As String = API_STRING & ":7128/api/Kullanici/Giris/" & username & "/" & passwort
|
||||||
|
Dim response = SendRequestAuthentificationToken(myUri, "application/json", "GET", token)
|
||||||
|
|
||||||
|
Return response
|
||||||
|
|
||||||
|
|
||||||
|
End Function
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Shared Function sendSelection(authenticationToken As String, acceptContentType As String, ByRef dataTable As DataTable, ByRef groupID As String) As String
|
||||||
|
|
||||||
|
VERAG_PROG_ALLGEMEIN.cChilkat_Helper.UnlockCilkat()
|
||||||
|
|
||||||
|
Dim rest As New Chilkat.Rest
|
||||||
|
Dim success As Boolean
|
||||||
|
|
||||||
|
'Dim jsonreqbody As New Chilkat.JsonObject
|
||||||
|
'success = jsonreqbody.AddArrayAt(-1, "")
|
||||||
|
Dim JArray As New Chilkat.JsonArray
|
||||||
|
'JArray = jsonReqBody.ArrayAt(jsonReqBody.Size - 1)
|
||||||
|
Dim json As Chilkat.JsonObject
|
||||||
|
Dim j As Integer = 0
|
||||||
|
For Each row In dataTable.Rows
|
||||||
|
|
||||||
|
JArray.AddObjectAt(j)
|
||||||
|
json = JArray.ObjectAt(j)
|
||||||
|
|
||||||
|
json.UpdateString("adi", row("adi"))
|
||||||
|
json.UpdateString("dosyaGrupId", row("dosyaGrupId"))
|
||||||
|
json.UpdateBool("ihracatBeyannamesi", row("ihracatBeyannamesi"))
|
||||||
|
json.UpdateBool("ekBelge", row("ekBelge"))
|
||||||
|
json.UpdateNumber("sira", row("sira"))
|
||||||
|
json.UpdateNumber("ogretildi", row("ogretildi"))
|
||||||
|
json.UpdateBool("secildi", row("secildi"))
|
||||||
|
json.UpdateString("id", row("id"))
|
||||||
|
json.UpdateString("kayitTarihi", row("kayitTarihi"))
|
||||||
|
JArray.EmitCompact = False
|
||||||
|
Debug.WriteLine(JArray.Emit())
|
||||||
|
|
||||||
|
j = j + 1
|
||||||
|
Next
|
||||||
|
|
||||||
|
|
||||||
|
Dim bTls As Boolean = False
|
||||||
|
Dim port As Integer = 7135
|
||||||
|
Dim bAutoReconnect As Boolean = True
|
||||||
|
success = rest.Connect(API_STRING, port, bTls, bAutoReconnect)
|
||||||
|
If (success <> True) Then
|
||||||
|
Debug.WriteLine("ConnectFailReason: " & rest.ConnectFailReason)
|
||||||
|
Debug.WriteLine(rest.LastErrorText)
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim myUrl As String = API_STRING & ":7135/api/MachineLearning/Learn"
|
||||||
|
rest.AddHeader("Content-Type", "application/json")
|
||||||
|
rest.AddHeader("Authorization", "Bearer " & authenticationToken)
|
||||||
|
rest.AddHeader("Accept", acceptContentType)
|
||||||
|
|
||||||
|
'Debug.WriteLine(JArray.Emit())
|
||||||
|
'Return jsonReqBody.ToString
|
||||||
|
|
||||||
|
Dim jsonResponseStr As String = rest.FullRequestString("POST", myUrl, JArray.Emit())
|
||||||
|
If (rest.LastMethodSuccess <> True) Then
|
||||||
|
Debug.WriteLine(rest.LastErrorText)
|
||||||
|
Return rest.LastErrorText
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
Dim result = New Chilkat.JsonObject()
|
||||||
|
success = result.Load(jsonResponseStr)
|
||||||
|
|
||||||
|
groupID = result.StringOf("dosyaGrupId")
|
||||||
|
|
||||||
|
Return success
|
||||||
|
|
||||||
|
End Function
|
||||||
|
|
||||||
|
|
||||||
|
Shared Function getData(authenticationToken As String, acceptContentType As String, ByRef groupID As String) As String
|
||||||
|
|
||||||
|
VERAG_PROG_ALLGEMEIN.cChilkat_Helper.UnlockCilkat()
|
||||||
|
|
||||||
|
Dim rest As New Chilkat.Rest
|
||||||
|
Dim success As Boolean
|
||||||
|
|
||||||
|
Dim json As Chilkat.JsonObject
|
||||||
|
|
||||||
|
|
||||||
|
Dim bTls As Boolean = False
|
||||||
|
Dim port As Integer = 7128
|
||||||
|
Dim bAutoReconnect As Boolean = True
|
||||||
|
success = rest.Connect(API_STRING, port, bTls, bAutoReconnect)
|
||||||
|
If (success <> True) Then
|
||||||
|
Debug.WriteLine("ConnectFailReason: " & rest.ConnectFailReason)
|
||||||
|
Debug.WriteLine(rest.LastErrorText)
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim myUrl As String = API_STRING & ":7128/api/MachineLearning/VeriGetir/" & groupID
|
||||||
|
rest.AddHeader("Content-Type", "application/json")
|
||||||
|
rest.AddHeader("Authorization", "Bearer " & authenticationToken)
|
||||||
|
rest.AddHeader("Accept", acceptContentType)
|
||||||
|
|
||||||
|
'Debug.WriteLine(JArray.Emit())
|
||||||
|
'Return jsonReqBody.ToString
|
||||||
|
|
||||||
|
Dim jsonResponseStr As String = rest.FullRequestNoBody("GET", myUrl)
|
||||||
|
If (rest.LastMethodSuccess <> True) Then
|
||||||
|
Debug.WriteLine(rest.LastErrorText)
|
||||||
|
Return rest.LastErrorText
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Return jsonResponseStr
|
||||||
|
|
||||||
|
End Function
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
End Class
|
||||||
@@ -581,6 +581,7 @@
|
|||||||
<Compile Include="Schnittstellen\cJsonPost.vb" />
|
<Compile Include="Schnittstellen\cJsonPost.vb" />
|
||||||
<Compile Include="Schnittstellen\cLDV_Interface.vb" />
|
<Compile Include="Schnittstellen\cLDV_Interface.vb" />
|
||||||
<Compile Include="Schnittstellen\cNCTS_Helper.vb" />
|
<Compile Include="Schnittstellen\cNCTS_Helper.vb" />
|
||||||
|
<Compile Include="Schnittstellen\cNorsware.vb" />
|
||||||
<Compile Include="Schnittstellen\cSyska_Interface.vb" />
|
<Compile Include="Schnittstellen\cSyska_Interface.vb" />
|
||||||
<Compile Include="Schnittstellen\cTherefore.vb" />
|
<Compile Include="Schnittstellen\cTherefore.vb" />
|
||||||
<Compile Include="Schnittstellen\Finanzonline\cFinanzOnlineWebService.vb" />
|
<Compile Include="Schnittstellen\Finanzonline\cFinanzOnlineWebService.vb" />
|
||||||
|
|||||||
Reference in New Issue
Block a user