Implemeted Display trait for Category enum

This commit is contained in:
2026-04-22 18:29:56 +02:00
parent 94aea7ca27
commit a9e31e2fdf
2 changed files with 34 additions and 4 deletions

View File

@@ -1,10 +1,17 @@
mod handlers;
mod models;
mod router;
use axum::{Router, routing};
use dotenv::dotenv;
use models::*;
use router::create_router;
use serde::{Deserialize, Serialize};
use sqlx::{PgPool, postgres::PgPoolOptions};
pub struct AppState {
db: PgPool,
}
#[tokio::main]
async fn main() {
dotenv().ok();

View File

@@ -1,7 +1,9 @@
use std::fmt::Display;
use serde::{Deserialize, Serialize};
#[derive(Clone, Debug, PartialEq, Deserialize, Serialize)]
pub enum category {
pub enum Category {
WhiteboardBeamer,
Internet,
IPadKoffer,
@@ -10,10 +12,23 @@ pub enum category {
Sonstiges,
}
impl Display for Category {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
match self {
Self::WhiteboardBeamer => write!(f, "Whiteboard Beamer"),
Self::Internet => write!(f, "Internet"),
Self::IPadKoffer => write!(f, "IPad Koffer"),
Self::AppleTV => write!(f, "Apple TV"),
Self::DocuCam => write!(f, "Docu Cam"),
Self::Sonstiges => write!(f, "Sonstiges"),
}
}
}
#[derive(Deserialize, Serialize, PartialEq, Debug)]
pub struct ticket {
pub struct Ticket {
pub id: i32,
pub category: category,
pub category: Category,
pub betreff: String,
pub description: String,
pub room: i16,
@@ -22,9 +37,17 @@ pub struct ticket {
}
#[derive(Deserialize, Serialize, PartialEq, Debug)]
pub struct user {
pub struct User {
pub id: i16,
pub first_name: String,
pub last_name: String,
pub is_admin: bool,
}
#[derive(Deserialize, Serialize, Debug)]
pub struct TicketCreateScheme {
pub category: Category,
pub betreff: String,
pub description: String,
pub room: i16,
}