forked from Ruderverein-Donau-Linz/rowt
34 lines
819 B
Rust
34 lines
819 B
Rust
|
use serde::{Deserialize, Serialize};
|
||
|
use sqlx::{FromRow, SqlitePool};
|
||
|
|
||
|
#[derive(FromRow, Debug, Serialize, Deserialize)]
|
||
|
pub struct TripDetails {
|
||
|
pub id: i64,
|
||
|
planned_starting_time: String,
|
||
|
max_people: i32,
|
||
|
day: String,
|
||
|
notes: Option<String>,
|
||
|
}
|
||
|
|
||
|
impl TripDetails {
|
||
|
pub async fn new(
|
||
|
db: &SqlitePool,
|
||
|
planned_starting_time: String,
|
||
|
max_people: i32,
|
||
|
day: String,
|
||
|
notes: Option<String>,
|
||
|
) -> i64 {
|
||
|
let query = sqlx::query!(
|
||
|
"INSERT INTO trip_details(planned_starting_time, max_people, day, notes) VALUES(?, ?, ?, ?)" ,
|
||
|
planned_starting_time,
|
||
|
max_people,
|
||
|
day,
|
||
|
notes
|
||
|
)
|
||
|
.execute(db)
|
||
|
.await
|
||
|
.unwrap(); //TODO: fixme
|
||
|
query.last_insert_rowid()
|
||
|
}
|
||
|
}
|