86 lines
3.3 KiB
Rust
86 lines
3.3 KiB
Rust
use actix_web::{
|
|
get,
|
|
http::header::ContentType,
|
|
web::{self, Json},
|
|
HttpResponse, Responder,
|
|
};
|
|
use backend::{
|
|
admin_data::get_admin, driver_data::get_driver, establish_connection, ticket_data::get_ticket,
|
|
};
|
|
// use common::{CommonAdmin, CommonDriver, CommonTicket};
|
|
//Json goodies? NAHH
|
|
//Ticket Table Services
|
|
#[get("api/ticket/{id}")]
|
|
async fn api_ticket(id: web::Path<i32>) -> impl Responder {
|
|
let fetched_ticket_data = get_ticket(&mut establish_connection(), *id);
|
|
//return struct values as string
|
|
HttpResponse::Ok()
|
|
.content_type(ContentType::plaintext())
|
|
.insert_header(("Access-Control-Allow-Origin", "*"))
|
|
.insert_header(("content-type", "text/plain"))
|
|
.insert_header(("content-encoded", "gzip"))
|
|
.insert_header((
|
|
"Access-Control-Allow-Headers",
|
|
"Content-Type, Content-Length, User-Agent, X-Requested-With, Range, DNT ",
|
|
))
|
|
.body(format!(
|
|
"Ticket ID: {}, Ticket Price: {}, Ticket Status: {}",
|
|
fetched_ticket_data.id, fetched_ticket_data.category, fetched_ticket_data.description
|
|
))
|
|
}
|
|
|
|
// Getting admin data or smth idk
|
|
#[get("api/admin/{id}")]
|
|
async fn api_admin(id: web::Path<i32>) -> impl Responder {
|
|
let fetched_admin_data = get_admin(&mut establish_connection(), *id);
|
|
//return struct values as string
|
|
HttpResponse::Ok()
|
|
.content_type(ContentType::plaintext())
|
|
.insert_header(("Access-Control-Allow-Origin", "*"))
|
|
.insert_header(("content-type", "text/plain"))
|
|
.insert_header(("content-encoded", "gzip"))
|
|
.insert_header((
|
|
"Access-Control-Allow-Headers",
|
|
"Content-Type, Content-Length, User-Agent, X-Requested-With, Range, DNT ",
|
|
))
|
|
.body(format!(
|
|
"Admin ID: {}, Admin Name: {}, Admin Email: {}",
|
|
fetched_admin_data.id, fetched_admin_data.name, fetched_admin_data.address
|
|
))
|
|
}
|
|
|
|
#[get("api/driver/{id}")]
|
|
async fn api_driver(id: web::Path<i32>) -> impl Responder {
|
|
let fetched_driver_data = get_driver(&mut establish_connection(), *id);
|
|
HttpResponse::Ok()
|
|
.content_type(ContentType::plaintext())
|
|
//headers for plain text
|
|
.insert_header(("Access-Control-Allow-Origin", "*"))
|
|
.insert_header(("content-type", "text/plain"))
|
|
.insert_header(("content-encoded", "gzip"))
|
|
.insert_header((
|
|
"Access-Control-Allow-Headers",
|
|
"Content-Type, Content-Length, User-Agent, X-Requested-With, Range, DNT ",
|
|
))
|
|
.body(format!(
|
|
// "Driver ID: {}, Driver Name: {}, Driver Email: {}",
|
|
// fetched_driver_data.id, fetched_driver_data.name, fetched_driver_data.address
|
|
"Driver ID: {}",
|
|
fetched_driver_data.id
|
|
))
|
|
}
|
|
#[get("api/test")]
|
|
async fn api_test() -> impl Responder {
|
|
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("My balls are on fire :(")
|
|
}
|