diff --git a/backend/src/ticket_data.rs b/backend/src/ticket_data.rs index 6f30221..4d3a934 100644 --- a/backend/src/ticket_data.rs +++ b/backend/src/ticket_data.rs @@ -1,4 +1,11 @@ -use crate::models::{AutoIssuedTicket, IssuedTicket, NewTicket, Ticket}; +use crate::{ + models::{AutoIssuedTicket, IssuedTicket, NewTicket, Ticket}, + schema::{ + drivers, + issued_tickets::{self, driver}, + tickets, + }, +}; use common::CommonTicket; use diesel::prelude::*; @@ -10,20 +17,30 @@ pub fn create_ticket(connection: &mut PgConnection, ticket: NewTicket) { .expect("Didn't save ticket AAAAAA"); } -pub fn get_tickets(connection: &mut PgConnection, amount: i64) -> Vec { - use crate::schema::tickets::dsl::*; - let results = tickets - .limit(amount) - .load::(connection) - .expect("KANKER TIKET"); - return results +pub fn get_tickets(connection: &mut PgConnection, driver_id: i32) -> Vec { + //Chonky join function for the sake of my life :)) + let join = tickets::table + .left_join( + issued_tickets::table.on(tickets::id + .eq(issued_tickets::ticket) + .and(issued_tickets::driver.eq(driver_id))), + ) + .select(( + tickets::id, + tickets::category, + tickets::description, + tickets::issue_date, //only selecting the ticket tho :D + )); + let tickets_by_driver = join.load::(connection).expect("oh no!"); + let common_ticket_output = tickets_by_driver .iter() .map(|ticket| CommonTicket { id: ticket.id, category: String::from(&ticket.category), description: String::from(&ticket.description), }) - .collect(); //Shoves everything to a vector + .collect(); + return common_ticket_output; } pub fn get_ticket(connection: &mut PgConnection, tickid: i32) -> CommonTicket { diff --git a/frontend/dist/db-frontend-906e3d2c2bbb6313.js b/frontend/dist/db-frontend-26b4e8491c3f6360.js similarity index 98% rename from frontend/dist/db-frontend-906e3d2c2bbb6313.js rename to frontend/dist/db-frontend-26b4e8491c3f6360.js index bacefbe..1f21df3 100644 --- a/frontend/dist/db-frontend-906e3d2c2bbb6313.js +++ b/frontend/dist/db-frontend-26b4e8491c3f6360.js @@ -204,9 +204,6 @@ function makeMutClosure(arg0, arg1, dtor, f) { return real; } -function __wbg_adapter_18(arg0, arg1, arg2) { - wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h414630ac9216cad4(arg0, arg1, addHeapObject(arg2)); -} let stack_pointer = 32; @@ -215,7 +212,7 @@ function addBorrowedObject(obj) { heap[--stack_pointer] = obj; return stack_pointer; } -function __wbg_adapter_21(arg0, arg1, arg2) { +function __wbg_adapter_18(arg0, arg1, arg2) { try { wasm._dyn_core__ops__function__FnMut___A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h9380123c3ed0eddb(arg0, arg1, addBorrowedObject(arg2)); } finally { @@ -223,6 +220,10 @@ function __wbg_adapter_21(arg0, arg1, arg2) { } } +function __wbg_adapter_21(arg0, arg1, arg2) { + wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h414630ac9216cad4(arg0, arg1, addHeapObject(arg2)); +} + let cachedUint32Memory0 = new Uint32Array(); function getUint32Memory0() { @@ -615,12 +616,12 @@ function getImports() { imports.wbg.__wbindgen_throw = function(arg0, arg1) { throw new Error(getStringFromWasm0(arg0, arg1)); }; - imports.wbg.__wbindgen_closure_wrapper4026 = function(arg0, arg1, arg2) { - const ret = makeMutClosure(arg0, arg1, 272, __wbg_adapter_18); + imports.wbg.__wbindgen_closure_wrapper3831 = function(arg0, arg1, arg2) { + const ret = makeMutClosure(arg0, arg1, 267, __wbg_adapter_18); return addHeapObject(ret); }; - imports.wbg.__wbindgen_closure_wrapper4088 = function(arg0, arg1, arg2) { - const ret = makeMutClosure(arg0, arg1, 288, __wbg_adapter_21); + imports.wbg.__wbindgen_closure_wrapper6495 = function(arg0, arg1, arg2) { + const ret = makeMutClosure(arg0, arg1, 294, __wbg_adapter_21); return addHeapObject(ret); }; @@ -658,7 +659,7 @@ function initSync(module) { async function init(input) { if (typeof input === 'undefined') { - input = new URL('db-frontend-906e3d2c2bbb6313_bg.wasm', import.meta.url); + input = new URL('db-frontend-26b4e8491c3f6360_bg.wasm', import.meta.url); } const imports = getImports(); diff --git a/frontend/dist/db-frontend-906e3d2c2bbb6313_bg.wasm b/frontend/dist/db-frontend-26b4e8491c3f6360_bg.wasm similarity index 92% rename from frontend/dist/db-frontend-906e3d2c2bbb6313_bg.wasm rename to frontend/dist/db-frontend-26b4e8491c3f6360_bg.wasm index c0af028..059a09f 100644 Binary files a/frontend/dist/db-frontend-906e3d2c2bbb6313_bg.wasm and b/frontend/dist/db-frontend-26b4e8491c3f6360_bg.wasm differ diff --git a/frontend/dist/index.html b/frontend/dist/index.html index ab6c616..76a508e 100644 --- a/frontend/dist/index.html +++ b/frontend/dist/index.html @@ -2,10 +2,10 @@ Ze greatest - - + + -