From cc6e49683bb2d221116774c3939002a05f315190 Mon Sep 17 00:00:00 2001 From: "d.breimaier" Date: Mon, 18 Aug 2025 09:00:31 +0200 Subject: [PATCH] =?UTF-8?q?Controller=20f=C3=BCr=20Audit=20Flow?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/SDLControler/SDLController.vb | 78 +++++++++++++++++++ VERAG_REST_SERVER/VERAG_REST_SERVER.vbproj | 1 + 2 files changed, 79 insertions(+) create mode 100644 VERAG_REST_SERVER/Controllers/SDLControler/SDLController.vb diff --git a/VERAG_REST_SERVER/Controllers/SDLControler/SDLController.vb b/VERAG_REST_SERVER/Controllers/SDLControler/SDLController.vb new file mode 100644 index 0000000..2998348 --- /dev/null +++ b/VERAG_REST_SERVER/Controllers/SDLControler/SDLController.vb @@ -0,0 +1,78 @@ +Imports System.IO +Imports System.Net +Imports System.Net.Http +Imports System.Threading +Imports System.Threading.Tasks +Imports System.Web.Http +Imports System.Web.Http.Description +Imports Microsoft.Web.Http +Imports Org.BouncyCastle.Asn1 +Imports VERAG_PROG_ALLGEMEIN +Imports VERAG_PROG_ALLGEMEIN.TESTJSON + +Namespace ApiController.Controllers + + + Public Class SDLController + Inherits System.Web.Http.ApiController + + ''' + ''' Upload Files in Base64-Format and attach it to an existring LKW (with avisoId) or an specific consignment (with sendungsId) + ''' + ''' + ''' OK, if file is uploaded or ERROR-Code if something went wrong + + ''' Returns 200 file is uploaded sucessfully + ''' Returns 400 upload failed + + + + + Public Async Function SetzePruefungAufErledigtMitAnhaengen(pruefungsId As Integer, Bemerkung As String, anhaengeBase64 As List(Of String)) As Task(Of HttpResponseMessage) + ' Globale Fehlerbehandlung einstellen + VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = False + VERAG_PROG_ALLGEMEIN.cAllgemein.ERR_OP_GLOBAL = VERAG_PROG_ALLGEMEIN.ERROR_OP.LOG + + Dim response As HttpResponseMessage + + Try + ' Eingabevalidierung + If String.IsNullOrWhiteSpace(Bemerkung) Then + Return Request.CreateErrorResponse(HttpStatusCode.BadRequest, "Der Parameter 'Bemerkung' darf nicht leer sein.") + End If + + If anhaengeBase64 Is Nothing OrElse anhaengeBase64.Count = 0 Then + Return Request.CreateErrorResponse(HttpStatusCode.BadRequest, "Das 'anhaengeBase64' darf nicht leer sein.") + End If + + If pruefungsId <= 0 Then + Return Request.CreateErrorResponse(HttpStatusCode.BadRequest, "PrüfungsID muss gesetzt werden") + End If + + + + If VERAG_PROG_ALLGEMEIN.cAuditFlow.SetzePruefungAufErledigtMitAnhaengen(pruefungsId, Bemerkung, anhaengeBase64) Then + + Return Request.CreateResponse(HttpStatusCode.OK) + Else + + Return Request.CreateResponse(HttpStatusCode.BadRequest) + + End If + + + + + + + Catch ex As Exception + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine, System.Reflection.MethodInfo.GetCurrentMethod.Name) + response = Request.CreateErrorResponse(HttpStatusCode.InternalServerError, "Ein unerwarteter Fehler ist aufgetreten.") + End Try + + Return response + End Function + + End Class + +End Namespace \ No newline at end of file diff --git a/VERAG_REST_SERVER/VERAG_REST_SERVER.vbproj b/VERAG_REST_SERVER/VERAG_REST_SERVER.vbproj index aaee0bf..00c0d0e 100644 --- a/VERAG_REST_SERVER/VERAG_REST_SERVER.vbproj +++ b/VERAG_REST_SERVER/VERAG_REST_SERVER.vbproj @@ -383,6 +383,7 @@ +