From ab5ac2fcbec930e53fdc54e993b218abbcd78094 Mon Sep 17 00:00:00 2001 From: Felipe Diniello Date: Sat, 22 Jul 2023 00:43:00 +0200 Subject: [PATCH] AntennaNew was not really needed. --- kairo-common/src/lib.rs | 1 - kairo-common/src/models/antenna.rs | 23 +++++++++++------------ kairo-core/src/antennas.rs | 12 ++++++------ 3 files changed, 17 insertions(+), 19 deletions(-) diff --git a/kairo-common/src/lib.rs b/kairo-common/src/lib.rs index 24bdebf..e126a27 100644 --- a/kairo-common/src/lib.rs +++ b/kairo-common/src/lib.rs @@ -34,7 +34,6 @@ mod models { pub type DeviceReport = models::DeviceReport; pub type Antenna = models::antenna::Antenna; -pub type NewAntenna<'a> = models::antenna::NewAntenna<'a>; pub type KnownPosition = models::known_position::KnownPosition; pub type DynamicDeviceStatus = models::dynamic_device_status::DynamicDeviceStatus; diff --git a/kairo-common/src/models/antenna.rs b/kairo-common/src/models/antenna.rs index e226be6..097eb1b 100644 --- a/kairo-common/src/models/antenna.rs +++ b/kairo-common/src/models/antenna.rs @@ -3,7 +3,17 @@ use std::f64::consts::PI; use crate::{unit_conversion::UnitsConversion, Point}; -#[derive(Debug, Clone, Default, Queryable, Selectable, serde::Serialize, serde::Deserialize)] +#[derive( + Debug, + Clone, + Default, + Queryable, + Selectable, + Insertable, + AsChangeset, + serde::Serialize, + serde::Deserialize, +)] #[diesel(check_for_backend(diesel::pg::Pg))] #[diesel(table_name = crate::schema::antennas)] pub struct Antenna { @@ -15,17 +25,6 @@ pub struct Antenna { pub comment: Option, } -#[derive(Debug, Clone, Copy, Insertable, AsChangeset, serde::Deserialize)] -#[diesel(table_name = crate::schema::antennas)] -pub struct NewAntenna<'a> { - pub id: &'a str, - pub tssi: f64, - pub pos_x: f64, - pub pos_y: f64, - pub pos_z: f64, - pub comment: Option<&'a str>, -} - impl Antenna { const C: f64 = 2.99e8; const F: f64 = 2.4e9; diff --git a/kairo-core/src/antennas.rs b/kairo-core/src/antennas.rs index 2ee037d..463d08c 100644 --- a/kairo-core/src/antennas.rs +++ b/kairo-core/src/antennas.rs @@ -1,7 +1,7 @@ use diesel::prelude::*; use rocket::{http::Status, serde::json::Json, State}; -use kairo_common::{postgres, schema::antennas, Antenna, NewAntenna}; +use kairo_common::{postgres, schema::antennas, Antenna}; #[rocket::get("/id/")] pub fn get_by_id(db_pool: &State, id: String) -> Option> { @@ -33,11 +33,11 @@ pub fn get_list(db_pool: &State) -> Json> { } #[rocket::post("/new", format = "json", data = "")] -pub fn new(db_pool: &State, antenna: Json>) -> Status { +pub fn new(db_pool: &State, antenna: Json) -> Status { let mut db = db_pool.get().unwrap(); let res = diesel::insert_into(antennas::table) - .values(*antenna) + .values(antenna.0) .execute(&mut db); match res { @@ -47,12 +47,12 @@ pub fn new(db_pool: &State, antenna: Json>) -> } #[rocket::patch("/update", format = "json", data = "")] -pub fn update(db_pool: &State, antenna: Json>) -> Status { +pub fn update(db_pool: &State, antenna: Json) -> Status { let mut db = db_pool.get().unwrap(); let res = diesel::update(antennas::table) - .filter(antennas::id.eq(antenna.id)) - .set(*antenna) + .filter(antennas::id.eq(antenna.id.clone())) + .set(antenna.0) .execute(&mut db); match res {