Altes Projekt entfernt
Alle Verweise auf das alte Ticket_System entfernt
This commit is contained in:
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,71 +0,0 @@
|
|||||||
{
|
|
||||||
"Version": 1,
|
|
||||||
"WorkspaceRootPath": "C:\\Users\\tweee\\source\\repos\\Projekt-dev-env\\src\\Project-CBackend\\Ticket_System\\",
|
|
||||||
"Documents": [
|
|
||||||
{
|
|
||||||
"AbsoluteMoniker": "D:0:0:{106D2CB4-0886-FC41-C71A-2C92C20303DC}|Ticket_System.csproj|c:\\users\\tweee\\source\\repos\\projekt-dev-env\\src\\project-cbackend\\ticket_system\\ticket_system.csproj||{FA3CD31E-987B-443A-9B81-186104E8DAC1}|",
|
|
||||||
"RelativeMoniker": "D:0:0:{106D2CB4-0886-FC41-C71A-2C92C20303DC}|Ticket_System.csproj|solutionrelative:ticket_system.csproj||{FA3CD31E-987B-443A-9B81-186104E8DAC1}|"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"AbsoluteMoniker": "D:0:0:{106D2CB4-0886-FC41-C71A-2C92C20303DC}|Ticket_System.csproj|c:\\users\\tweee\\source\\repos\\projekt-dev-env\\src\\project-cbackend\\ticket_system\\logger.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
|
||||||
"RelativeMoniker": "D:0:0:{106D2CB4-0886-FC41-C71A-2C92C20303DC}|Ticket_System.csproj|solutionrelative:logger.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"AbsoluteMoniker": "D:0:0:{106D2CB4-0886-FC41-C71A-2C92C20303DC}|Ticket_System.csproj|c:\\users\\tweee\\source\\repos\\projekt-dev-env\\src\\project-cbackend\\ticket_system\\ticket_system.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
|
||||||
"RelativeMoniker": "D:0:0:{106D2CB4-0886-FC41-C71A-2C92C20303DC}|Ticket_System.csproj|solutionrelative:ticket_system.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"DocumentGroupContainers": [
|
|
||||||
{
|
|
||||||
"Orientation": 0,
|
|
||||||
"VerticalTabListWidth": 256,
|
|
||||||
"DocumentGroups": [
|
|
||||||
{
|
|
||||||
"DockedWidth": 200,
|
|
||||||
"SelectedChildIndex": 2,
|
|
||||||
"Children": [
|
|
||||||
{
|
|
||||||
"$type": "Document",
|
|
||||||
"DocumentIndex": 2,
|
|
||||||
"Title": "Ticket_System.cs",
|
|
||||||
"DocumentMoniker": "C:\\Users\\tweee\\source\\repos\\Projekt-dev-env\\src\\Project-CBackend\\Ticket_System\\Ticket_System.cs",
|
|
||||||
"RelativeDocumentMoniker": "Ticket_System.cs",
|
|
||||||
"ToolTip": "C:\\Users\\tweee\\source\\repos\\Projekt-dev-env\\src\\Project-CBackend\\Ticket_System\\Ticket_System.cs",
|
|
||||||
"RelativeToolTip": "Ticket_System.cs",
|
|
||||||
"ViewState": "AgIAACQAAAAAAAAAAAAYwBAAAAAAAAAAAAAAAA==",
|
|
||||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
|
||||||
"WhenOpened": "2026-01-28T11:24:03.402Z",
|
|
||||||
"EditorCaption": ""
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"$type": "Document",
|
|
||||||
"DocumentIndex": 1,
|
|
||||||
"Title": "Logger.cs",
|
|
||||||
"DocumentMoniker": "C:\\Users\\tweee\\source\\repos\\Projekt-dev-env\\src\\Project-CBackend\\Ticket_System\\Logger.cs",
|
|
||||||
"RelativeDocumentMoniker": "Logger.cs",
|
|
||||||
"ToolTip": "C:\\Users\\tweee\\source\\repos\\Projekt-dev-env\\src\\Project-CBackend\\Ticket_System\\Logger.cs",
|
|
||||||
"RelativeToolTip": "Logger.cs",
|
|
||||||
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAQAAAABAAAAAAAAAA==",
|
|
||||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
|
||||||
"WhenOpened": "2026-01-28T11:43:25.803Z",
|
|
||||||
"EditorCaption": ""
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"$type": "Document",
|
|
||||||
"DocumentIndex": 0,
|
|
||||||
"Title": "Ticket_System.csproj",
|
|
||||||
"DocumentMoniker": "C:\\Users\\tweee\\source\\repos\\Projekt-dev-env\\src\\Project-CBackend\\Ticket_System\\Ticket_System.csproj",
|
|
||||||
"RelativeDocumentMoniker": "Ticket_System.csproj",
|
|
||||||
"ToolTip": "C:\\Users\\tweee\\source\\repos\\Projekt-dev-env\\src\\Project-CBackend\\Ticket_System\\Ticket_System.csproj",
|
|
||||||
"RelativeToolTip": "Ticket_System.csproj",
|
|
||||||
"ViewState": "AgIAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAA==",
|
|
||||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000758|",
|
|
||||||
"WhenOpened": "2026-01-28T11:24:17.672Z",
|
|
||||||
"EditorCaption": ""
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,105 +0,0 @@
|
|||||||
{
|
|
||||||
"Version": 1,
|
|
||||||
"WorkspaceRootPath": "C:\\Users\\tweee\\source\\repos\\Projekt-dev-env\\src\\Project-CBackend\\Ticket_System\\",
|
|
||||||
"Documents": [
|
|
||||||
{
|
|
||||||
"AbsoluteMoniker": "D:0:0:{106D2CB4-0886-FC41-C71A-2C92C20303DC}|Ticket_System.csproj|c:\\users\\tweee\\source\\repos\\projekt-dev-env\\src\\project-cbackend\\ticket_system\\ticket_system.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
|
||||||
"RelativeMoniker": "D:0:0:{106D2CB4-0886-FC41-C71A-2C92C20303DC}|Ticket_System.csproj|solutionrelative:ticket_system.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"AbsoluteMoniker": "D:0:0:{106D2CB4-0886-FC41-C71A-2C92C20303DC}|Ticket_System.csproj|c:\\users\\tweee\\source\\repos\\projekt-dev-env\\src\\project-cbackend\\ticket_system\\logger.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
|
||||||
"RelativeMoniker": "D:0:0:{106D2CB4-0886-FC41-C71A-2C92C20303DC}|Ticket_System.csproj|solutionrelative:logger.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"AbsoluteMoniker": "D:0:0:{106D2CB4-0886-FC41-C71A-2C92C20303DC}|Ticket_System.csproj|c:\\users\\tweee\\source\\repos\\projekt-dev-env\\src\\project-cbackend\\ticket_system\\ticket_system.csproj||{FA3CD31E-987B-443A-9B81-186104E8DAC1}|",
|
|
||||||
"RelativeMoniker": "D:0:0:{106D2CB4-0886-FC41-C71A-2C92C20303DC}|Ticket_System.csproj|solutionrelative:ticket_system.csproj||{FA3CD31E-987B-443A-9B81-186104E8DAC1}|"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"AbsoluteMoniker": "D:0:0:{106D2CB4-0886-FC41-C71A-2C92C20303DC}|Ticket_System.csproj|c:\\users\\tweee\\source\\repos\\projekt-dev-env\\src\\project-cbackend\\ticket_system\\authclient.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
|
||||||
"RelativeMoniker": "D:0:0:{106D2CB4-0886-FC41-C71A-2C92C20303DC}|Ticket_System.csproj|solutionrelative:authclient.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"AbsoluteMoniker": "D:0:0:{106D2CB4-0886-FC41-C71A-2C92C20303DC}|Ticket_System.csproj|c:\\users\\tweee\\source\\repos\\projekt-dev-env\\src\\project-cbackend\\ticket_system\\token.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
|
||||||
"RelativeMoniker": "D:0:0:{106D2CB4-0886-FC41-C71A-2C92C20303DC}|Ticket_System.csproj|solutionrelative:token.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"DocumentGroupContainers": [
|
|
||||||
{
|
|
||||||
"Orientation": 0,
|
|
||||||
"VerticalTabListWidth": 256,
|
|
||||||
"DocumentGroups": [
|
|
||||||
{
|
|
||||||
"DockedWidth": 200,
|
|
||||||
"SelectedChildIndex": 2,
|
|
||||||
"Children": [
|
|
||||||
{
|
|
||||||
"$type": "Document",
|
|
||||||
"DocumentIndex": 3,
|
|
||||||
"Title": "AuthClient.cs",
|
|
||||||
"DocumentMoniker": "C:\\Users\\tweee\\source\\repos\\Projekt-dev-env\\src\\Project-CBackend\\Ticket_System\\AuthClient.cs",
|
|
||||||
"RelativeDocumentMoniker": "AuthClient.cs",
|
|
||||||
"ToolTip": "C:\\Users\\tweee\\source\\repos\\Projekt-dev-env\\src\\Project-CBackend\\Ticket_System\\AuthClient.cs",
|
|
||||||
"RelativeToolTip": "AuthClient.cs",
|
|
||||||
"ViewState": "AgIAACMAAAAAAAAAAAAuwCcAAAAwAAAAAAAAAA==",
|
|
||||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
|
||||||
"WhenOpened": "2026-01-28T12:18:08.321Z",
|
|
||||||
"EditorCaption": ""
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"$type": "Document",
|
|
||||||
"DocumentIndex": 4,
|
|
||||||
"Title": "Token.cs",
|
|
||||||
"DocumentMoniker": "C:\\Users\\tweee\\source\\repos\\Projekt-dev-env\\src\\Project-CBackend\\Ticket_System\\Token.cs",
|
|
||||||
"RelativeDocumentMoniker": "Token.cs",
|
|
||||||
"ToolTip": "C:\\Users\\tweee\\source\\repos\\Projekt-dev-env\\src\\Project-CBackend\\Ticket_System\\Token.cs",
|
|
||||||
"RelativeToolTip": "Token.cs",
|
|
||||||
"ViewState": "AgIAAAoAAAAAAAAAAAAQwA4AAAAFAAAAAAAAAA==",
|
|
||||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
|
||||||
"WhenOpened": "2026-01-28T12:16:13.411Z",
|
|
||||||
"EditorCaption": ""
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"$type": "Document",
|
|
||||||
"DocumentIndex": 0,
|
|
||||||
"Title": "Ticket_System.cs",
|
|
||||||
"DocumentMoniker": "C:\\Users\\tweee\\source\\repos\\Projekt-dev-env\\src\\Project-CBackend\\Ticket_System\\Ticket_System.cs",
|
|
||||||
"RelativeDocumentMoniker": "Ticket_System.cs",
|
|
||||||
"ToolTip": "C:\\Users\\tweee\\source\\repos\\Projekt-dev-env\\src\\Project-CBackend\\Ticket_System\\Ticket_System.cs",
|
|
||||||
"RelativeToolTip": "Ticket_System.cs",
|
|
||||||
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAUAAAABAAAAAAAAAA==",
|
|
||||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
|
||||||
"WhenOpened": "2026-01-28T11:24:03.402Z",
|
|
||||||
"EditorCaption": ""
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"$type": "Document",
|
|
||||||
"DocumentIndex": 1,
|
|
||||||
"Title": "Logger.cs",
|
|
||||||
"DocumentMoniker": "C:\\Users\\tweee\\source\\repos\\Projekt-dev-env\\src\\Project-CBackend\\Ticket_System\\Logger.cs",
|
|
||||||
"RelativeDocumentMoniker": "Logger.cs",
|
|
||||||
"ToolTip": "C:\\Users\\tweee\\source\\repos\\Projekt-dev-env\\src\\Project-CBackend\\Ticket_System\\Logger.cs",
|
|
||||||
"RelativeToolTip": "Logger.cs",
|
|
||||||
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAQAAAABAAAAAAAAAA==",
|
|
||||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
|
||||||
"WhenOpened": "2026-01-28T11:43:25.803Z",
|
|
||||||
"EditorCaption": ""
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"$type": "Document",
|
|
||||||
"DocumentIndex": 2,
|
|
||||||
"Title": "Ticket_System.csproj",
|
|
||||||
"DocumentMoniker": "C:\\Users\\tweee\\source\\repos\\Projekt-dev-env\\src\\Project-CBackend\\Ticket_System\\Ticket_System.csproj",
|
|
||||||
"RelativeDocumentMoniker": "Ticket_System.csproj",
|
|
||||||
"ToolTip": "C:\\Users\\tweee\\source\\repos\\Projekt-dev-env\\src\\Project-CBackend\\Ticket_System\\Ticket_System.csproj",
|
|
||||||
"RelativeToolTip": "Ticket_System.csproj",
|
|
||||||
"ViewState": "AgIAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAA==",
|
|
||||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000758|",
|
|
||||||
"WhenOpened": "2026-01-28T11:24:17.672Z",
|
|
||||||
"EditorCaption": ""
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,59 +0,0 @@
|
|||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Net.Http.Headers;
|
|
||||||
using System.Text;
|
|
||||||
using System.Text.Json;
|
|
||||||
|
|
||||||
namespace Ticket_System
|
|
||||||
{
|
|
||||||
|
|
||||||
|
|
||||||
public sealed class AuthApiClient
|
|
||||||
{
|
|
||||||
private readonly HttpClient _http;
|
|
||||||
private readonly JsonSerializerOptions _json = new() { PropertyNameCaseInsensitive = true };
|
|
||||||
|
|
||||||
public AuthApiClient(string baseUrl)
|
|
||||||
{
|
|
||||||
_http = new HttpClient { BaseAddress = new Uri(baseUrl.TrimEnd('/') + "/") };
|
|
||||||
}
|
|
||||||
|
|
||||||
public async Task<ResponseToken?> SignInAsync(string name, string password)
|
|
||||||
{
|
|
||||||
var req = new SignInRequest { name = name, password = password };
|
|
||||||
|
|
||||||
var content = new StringContent(
|
|
||||||
JsonSerializer.Serialize(req),
|
|
||||||
Encoding.UTF8,
|
|
||||||
"application/json"
|
|
||||||
);
|
|
||||||
|
|
||||||
using var resp = await _http.PostAsync("signin", content);
|
|
||||||
var body = await resp.Content.ReadAsStringAsync();
|
|
||||||
|
|
||||||
if (resp.IsSuccessStatusCode)
|
|
||||||
{
|
|
||||||
return JsonSerializer.Deserialize<ResponseToken>(body, _json);
|
|
||||||
}
|
|
||||||
|
|
||||||
// optional: Fehler-Body auswerten
|
|
||||||
// var err = JsonSerializer.Deserialize<SignInErrorResponse>(body, _json);
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
public async Task<bool> ValidateTokenAsync(string token)
|
|
||||||
{
|
|
||||||
using var req = new HttpRequestMessage(HttpMethod.Get, "token/validate");
|
|
||||||
req.Headers.Authorization = new AuthenticationHeaderValue("Bearer", token);
|
|
||||||
|
|
||||||
using var resp = await _http.SendAsync(req);
|
|
||||||
var body = await resp.Content.ReadAsStringAsync();
|
|
||||||
|
|
||||||
if (!resp.IsSuccessStatusCode) return false;
|
|
||||||
|
|
||||||
var result = JsonSerializer.Deserialize<TokenIsValid>(body, _json);
|
|
||||||
return result?.is_valid == true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
using System;
|
|
||||||
using MySqlConnector;
|
|
||||||
|
|
||||||
namespace Ticket_System
|
|
||||||
{
|
|
||||||
public class Logger
|
|
||||||
{
|
|
||||||
public void Log(string message, string userID)
|
|
||||||
{
|
|
||||||
string sql = $"insert into Log (LogID, ErrorMessage, datetime, User) values ((select max LogID from Log) + 1), {message}, {DateTime.Now},{userID})";
|
|
||||||
|
|
||||||
MySqlCommand cmd = new MySqlCommand(sql);
|
|
||||||
cmd.ExecuteNonQuery();
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -1,51 +0,0 @@
|
|||||||
using MySqlConnector;
|
|
||||||
using BCrypt;
|
|
||||||
using System.ComponentModel.DataAnnotations;
|
|
||||||
|
|
||||||
namespace Ticket_System
|
|
||||||
{
|
|
||||||
public class Ticket_System
|
|
||||||
{
|
|
||||||
Logger logger = new Logger();
|
|
||||||
public string userID = "-";
|
|
||||||
|
|
||||||
private string? _token;
|
|
||||||
|
|
||||||
public async Task MainAsync(string[] args)
|
|
||||||
{
|
|
||||||
if (!await LoginAsync())
|
|
||||||
return;
|
|
||||||
|
|
||||||
await LoadTicketsAsync();
|
|
||||||
}
|
|
||||||
|
|
||||||
public async Task<bool> LoginAsync()
|
|
||||||
{
|
|
||||||
var auth = new AuthApiClient("http://localhost:3000");
|
|
||||||
|
|
||||||
string inputuser = "Carl";
|
|
||||||
string inputpw = "Deine Fette Mutter";
|
|
||||||
|
|
||||||
var tokenResp = await auth.SignInAsync(inputuser, inputpw);
|
|
||||||
if (tokenResp == null || string.IsNullOrWhiteSpace(tokenResp.token))
|
|
||||||
{
|
|
||||||
logger.Log("Login fehlgeschlagen (API)", userID);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
_token = tokenResp.token;
|
|
||||||
|
|
||||||
bool ok = await auth.ValidateTokenAsync(_token);
|
|
||||||
logger.Log(ok ? "Token gültig" : "Token ungültig", userID);
|
|
||||||
|
|
||||||
return ok;
|
|
||||||
}
|
|
||||||
|
|
||||||
public async Task LoadTicketsAsync()
|
|
||||||
{
|
|
||||||
// hier würdest du bei weiteren API-Calls einfach den Token mitsenden:
|
|
||||||
// Authorization: Bearer <_token>
|
|
||||||
await Task.CompletedTask;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
<Project Sdk="Microsoft.NET.Sdk">
|
|
||||||
|
|
||||||
<PropertyGroup>
|
|
||||||
<TargetFramework>net10.0</TargetFramework>
|
|
||||||
<ImplicitUsings>enable</ImplicitUsings>
|
|
||||||
<Nullable>enable</Nullable>
|
|
||||||
</PropertyGroup>
|
|
||||||
|
|
||||||
<ItemGroup>
|
|
||||||
<PackageReference Include="BCrypt.Net-Next" Version="4.0.3" />
|
|
||||||
<PackageReference Include="MySqlConnector" Version="2.5.0" />
|
|
||||||
</ItemGroup>
|
|
||||||
|
|
||||||
</Project>
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
<Solution>
|
|
||||||
<Project Path="Ticket_System.csproj" />
|
|
||||||
</Solution>
|
|
||||||
@@ -1,29 +0,0 @@
|
|||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Text;
|
|
||||||
|
|
||||||
namespace Ticket_System
|
|
||||||
{
|
|
||||||
public sealed class ResponseToken
|
|
||||||
{
|
|
||||||
public string token { get; set; } = "";
|
|
||||||
}
|
|
||||||
|
|
||||||
public sealed class TokenIsValid
|
|
||||||
{
|
|
||||||
public bool is_valid { get; set; }
|
|
||||||
}
|
|
||||||
|
|
||||||
public sealed class SignInRequest
|
|
||||||
{
|
|
||||||
public string name { get; set; } = "";
|
|
||||||
public string password { get; set; } = "";
|
|
||||||
}
|
|
||||||
|
|
||||||
public sealed class SignInErrorResponse
|
|
||||||
{
|
|
||||||
public Dictionary<string, string[]>? errors { get; set; }
|
|
||||||
public ResponseToken? message { get; set; }
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user