From 6002cfb8666a4c9ed17bd7a0b295006f2e9bd7cf Mon Sep 17 00:00:00 2001 From: LinlyBoi Date: Mon, 26 Dec 2022 09:23:07 +0200 Subject: [PATCH] Yes --- src/main.rs | 1 + src/shadowrealmapi.rs | 26 +++++++++++++++++++++++++- 2 files changed, 26 insertions(+), 1 deletion(-) diff --git a/src/main.rs b/src/main.rs index 4dbabf5..5d17d93 100644 --- a/src/main.rs +++ b/src/main.rs @@ -18,6 +18,7 @@ async fn main() -> std::io::Result<()> { .service(api_json_driver) .service(api_test) .service(api_json_driver_tickets) + .service(api_json_ticket_new) }) .bind(("0.0.0.0", 48590))? .run() diff --git a/src/shadowrealmapi.rs b/src/shadowrealmapi.rs index 1fbda1c..fbd8167 100644 --- a/src/shadowrealmapi.rs +++ b/src/shadowrealmapi.rs @@ -1,12 +1,16 @@ use actix_web::{ get, + http::header::ContentType, + post, web::{self, Json}, + HttpResponse, Responder, }; use backend::{ admin_data::get_admin, driver_data::get_driver, establish_connection, - ticket_data::{get_ticket, get_tickets}, + models::NewTicket, + ticket_data::{create_ticket, get_ticket, get_tickets}, }; use common::{CommonAdmin, CommonDriver, CommonTicket}; @@ -17,6 +21,26 @@ async fn api_json_ticket(id: web::Path) -> Json { let fetched_ticket_data = get_ticket(&mut establish_connection(), *id); Json(fetched_ticket_data) } +#[post("api/json/ticket/new")] +async fn api_json_ticket_new(ticket: web::Json) -> impl Responder { + let input = ticket.into_inner(); + let input_result = NewTicket { + description: &input.description, + category: &input.category, + }; + let result = create_ticket(&mut establish_connection(), input_result); + HttpResponse::Ok() + .content_type(ContentType::plaintext()) + .insert_header(("Access-Control-Allow-Origin", "*")) + .insert_header(("Access-Control-Allow-Methods", "GET")) + .insert_header(( + "Access-Control-Allow-Headers", + "Content-Type, Content-Length, User-Agent, X-Requested-With, Range, DNT ", + )) + .insert_header(("content-type", "text/plain")) + .insert_header(("content-encoded", "gzip")) + .body("Alles gut") +} // Getting admin data or smth idk #[get("api/json/admin/{id}")]