NCTS TR ; OpenAI
This commit is contained in:
@@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
|
||||
' übernehmen, indem Sie "*" eingeben:
|
||||
' <Assembly: AssemblyVersion("1.0.*")>
|
||||
|
||||
<Assembly: AssemblyVersion("1.3.5.4")>
|
||||
<Assembly: AssemblyFileVersion("1.3.5.4")>
|
||||
<Assembly: AssemblyVersion("1.3.5.5")>
|
||||
<Assembly: AssemblyFileVersion("1.3.5.5")>
|
||||
|
||||
@@ -91,17 +91,17 @@ Public Class usrCntlATLAS_EXGestellung
|
||||
'MRN Prüfung:
|
||||
For Each l In rtbMRN.Lines
|
||||
If l.Trim <> "" Then
|
||||
If l.Length >= 18 And dblcheck.Contains(l) Then
|
||||
If l.Trim.Length >= 18 And dblcheck.Contains(l.Trim) Then
|
||||
MsgBox("Doppelte MRN !: " & l)
|
||||
Me.Cursor = Cursors.Default
|
||||
Exit Sub
|
||||
End If
|
||||
If Not IsValidMRN(l) Then
|
||||
If Not IsValidMRN(l.Trim) Then
|
||||
MsgBox("Ungültige MRN (Format): " & l)
|
||||
Me.Cursor = Cursors.Default
|
||||
Exit Sub
|
||||
End If
|
||||
dblcheck &= l
|
||||
dblcheck &= l.Trim
|
||||
End If
|
||||
Next
|
||||
|
||||
@@ -111,7 +111,7 @@ Public Class usrCntlATLAS_EXGestellung
|
||||
For Each l In rtbMRN.Lines
|
||||
If l.Trim <> "" Then
|
||||
|
||||
If Not sendEXP_MRN(l, sbAbgangZollstelle._value, cnt, exg_list) Then
|
||||
If Not sendEXP_MRN(l.Trim, sbAbgangZollstelle._value, cnt, exg_list) Then
|
||||
MsgBox("Sendefehler bei " & l)
|
||||
err = True
|
||||
End If
|
||||
|
||||
@@ -49,14 +49,14 @@ Public Class cATEZ_ncts_api
|
||||
|
||||
If Not checkDY_NCTS(NCTS_TMP.Mrn) Then
|
||||
|
||||
Dim NCTS_FREMD = VERAG_PROG_ALLGEMEIN.cNCTS_FREMD.LOADByMRN(NCTS_TMP.Mrn, True)
|
||||
If NCTS_FREMD Is Nothing Then NCTS_FREMD = New cNCTS_FREMD
|
||||
NCTS_FREMD.ncts_Partnersystem = "ATEZ"
|
||||
NCTS_FREMD.ncts_MRN = NCTS_TMP.Mrn
|
||||
If checkDY_NCTSStatus60(NCTS_TMP.Mrn) And OverrideNCTSFin = False Then
|
||||
|
||||
If NCTS_FREMD.ncts_Status = 60 And OverrideNCTSFin = False Then
|
||||
'Wenn NCTS beretis Erledigt und kein Flag fürs überschreiben, mach nix....
|
||||
Else
|
||||
Dim NCTS_FREMD = VERAG_PROG_ALLGEMEIN.cNCTS_FREMD.LOADByMRN(NCTS_TMP.Mrn, True)
|
||||
If NCTS_FREMD Is Nothing Then NCTS_FREMD = New cNCTS_FREMD
|
||||
NCTS_FREMD.ncts_Partnersystem = "ATEZ"
|
||||
NCTS_FREMD.ncts_MRN = NCTS_TMP.Mrn
|
||||
|
||||
|
||||
NCTS_FREMD.ncts_Eroeffnung = NCTS_TMP.MrnDate
|
||||
@@ -162,6 +162,9 @@ Public Class cATEZ_ncts_api
|
||||
Public Shared Function checkDY_NCTS(MRN As String) As Boolean
|
||||
Return ((New VERAG_PROG_ALLGEMEIN.SQL).DLookup("COUNT(*)", "[tblDakosy_NCTSOut004]", "ncts_MRN='" & MRN & "'", "FMZOLL", 0)) > 0
|
||||
End Function
|
||||
Public Shared Function checkDY_NCTSStatus60(MRN As String) As Boolean
|
||||
Return ((New VERAG_PROG_ALLGEMEIN.SQL).DLookup("COUNT(*)", "[tblDakosy_NCTSOut004]", "ncts_MRN='" & MRN & "' AND ncts_Status=60 ", "FMZOLL", 0)) > 0
|
||||
End Function
|
||||
|
||||
|
||||
Public Shared Function checkDY_TC(MRN As String) As Boolean
|
||||
|
||||
70
VERAG_PROG_ALLGEMEIN/Schnittstellen/OPEN_AI/cOpenAI.vb
Normal file
70
VERAG_PROG_ALLGEMEIN/Schnittstellen/OPEN_AI/cOpenAI.vb
Normal file
@@ -0,0 +1,70 @@
|
||||
Imports System.Net.Http
|
||||
Imports System.Text
|
||||
Imports System.Threading.Tasks
|
||||
Imports Newtonsoft.Json.Linq
|
||||
|
||||
Public Class cOpenAI
|
||||
|
||||
Shared apiKey As String = "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"
|
||||
Shared apiUrl As String = "https://api.openai.com/v1/chat/completions"
|
||||
|
||||
Shared Sub doFirstAI()
|
||||
'Dim frage As String = "Wie viele Tage braucht ein Versandschein von Istanbul nach München? Gib nur die Zahl zurück."
|
||||
Dim frage As String = "Schreibe ein HAIKO über AI."
|
||||
|
||||
|
||||
' API-Aufruf und Ausgabe der Antwort
|
||||
Dim antwort As String = AskOpenAI(frage)
|
||||
|
||||
Console.WriteLine("Antwort von OpenAI: " & antwort)
|
||||
|
||||
' Console.WriteLine("Drücke eine beliebige Taste zum Beenden...")
|
||||
' Console.ReadKey()
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
' Funktion zur Kommunikation mit OpenAI API (synchrones Verhalten)
|
||||
Shared Function AskOpenAI(question As String) As String
|
||||
|
||||
Try
|
||||
Using client As New HttpClient()
|
||||
client.DefaultRequestHeaders.Add("Authorization", $"Bearer {apiKey}")
|
||||
|
||||
' JSON-Body für die API-Anfrage mit GPT-4o
|
||||
Dim requestBody As String = "
|
||||
{
|
||||
""model"": ""gpt-4o-mini"",
|
||||
""messages"": [
|
||||
{""role"": ""user"", ""content"": """ & question & """}
|
||||
],
|
||||
""max_tokens"": 10,
|
||||
""temperature"": 0
|
||||
}"
|
||||
|
||||
Dim content As New StringContent(requestBody, Encoding.UTF8, "application/json")
|
||||
|
||||
' POST-Anfrage senden und Antwort synchron verarbeiten
|
||||
Dim response As HttpResponseMessage = client.PostAsync(apiUrl, content).Result
|
||||
|
||||
If response.IsSuccessStatusCode Then
|
||||
Dim responseBody As String = response.Content.ReadAsStringAsync().Result
|
||||
|
||||
' JSON-Antwort parsen, um die OpenAI-Antwort zu extrahieren
|
||||
Dim jsonResponse As JObject = JObject.Parse(responseBody)
|
||||
Dim answer As String = jsonResponse("choices")(0)("message")("content").ToString().Trim()
|
||||
|
||||
Return answer ' Antwort zurückgeben
|
||||
Else
|
||||
' Fehlerausgabe bei API-Problemen
|
||||
Return $"Fehler: {response.StatusCode} - {response.Content.ReadAsStringAsync().Result}"
|
||||
End If
|
||||
End Using
|
||||
Catch ex As Exception
|
||||
' Allgemeine Fehlerbehandlung
|
||||
Return $"Fehler: {ex.Message}"
|
||||
End Try
|
||||
End Function
|
||||
|
||||
|
||||
End Class
|
||||
@@ -641,6 +641,7 @@
|
||||
<Compile Include="Schnittstellen\Norsware\cNorsware.vb" />
|
||||
<Compile Include="Schnittstellen\cSyska_Interface.vb" />
|
||||
<Compile Include="Schnittstellen\cTherefore.vb" />
|
||||
<Compile Include="Schnittstellen\OPEN_AI\cOpenAI.vb" />
|
||||
<Compile Include="Schnittstellen\TIMAS\cTimasAPI.vb" />
|
||||
<Compile Include="Schnittstellen\Finanzonline\cFinanzOnlineWebService.vb" />
|
||||
<Compile Include="Schnittstellen\GASTON_SCHUL\agsCustomsExchange.Designer.vb" />
|
||||
|
||||
Reference in New Issue
Block a user