AntennaNew was not really needed.

This commit is contained in:
2023-07-22 00:43:00 +02:00
parent cb7b62a092
commit 9426c5513e
3 changed files with 16 additions and 19 deletions

View File

@@ -34,7 +34,6 @@ mod models {
pub type DeviceReport = models::DeviceReport; pub type DeviceReport = models::DeviceReport;
pub type Antenna = models::antenna::Antenna; pub type Antenna = models::antenna::Antenna;
pub type NewAntenna<'a> = models::antenna::NewAntenna<'a>;
pub type KnownPosition = models::known_position::KnownPosition; pub type KnownPosition = models::known_position::KnownPosition;
pub type DynamicDeviceStatus = models::dynamic_device_status::DynamicDeviceStatus; pub type DynamicDeviceStatus = models::dynamic_device_status::DynamicDeviceStatus;

View File

@@ -3,7 +3,16 @@ use std::f64::consts::PI;
use crate::{unit_conversion::UnitsConversion, Point}; use crate::{unit_conversion::UnitsConversion, Point};
#[derive(Debug, Clone, Default, Queryable, Selectable, serde::Serialize, serde::Deserialize)] #[derive(
Debug,
Clone,
Queryable,
Selectable,
Insertable,
AsChangeset,
serde::Serialize,
serde::Deserialize,
)]
#[diesel(check_for_backend(diesel::pg::Pg))] #[diesel(check_for_backend(diesel::pg::Pg))]
#[diesel(table_name = crate::schema::antennas)] #[diesel(table_name = crate::schema::antennas)]
pub struct Antenna { pub struct Antenna {
@@ -15,17 +24,6 @@ pub struct Antenna {
pub comment: Option<String>, pub comment: Option<String>,
} }
#[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 { impl Antenna {
const C: f64 = 2.99e8; const C: f64 = 2.99e8;
const F: f64 = 2.4e9; const F: f64 = 2.4e9;

View File

@@ -1,7 +1,7 @@
use diesel::prelude::*; use diesel::prelude::*;
use rocket::{http::Status, serde::json::Json, State}; 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/<id>")] #[rocket::get("/id/<id>")]
pub fn get_by_id(db_pool: &State<postgres::DbPool>, id: String) -> Option<Json<Antenna>> { pub fn get_by_id(db_pool: &State<postgres::DbPool>, id: String) -> Option<Json<Antenna>> {
@@ -33,11 +33,11 @@ pub fn get_list(db_pool: &State<postgres::DbPool>) -> Json<Vec<Antenna>> {
} }
#[rocket::post("/new", format = "json", data = "<antenna>")] #[rocket::post("/new", format = "json", data = "<antenna>")]
pub fn new(db_pool: &State<postgres::DbPool>, antenna: Json<NewAntenna<'_>>) -> Status { pub fn new(db_pool: &State<postgres::DbPool>, antenna: Json<Antenna>) -> Status {
let mut db = db_pool.get().unwrap(); let mut db = db_pool.get().unwrap();
let res = diesel::insert_into(antennas::table) let res = diesel::insert_into(antennas::table)
.values(*antenna) .values(antenna.0)
.execute(&mut db); .execute(&mut db);
match res { match res {
@@ -47,12 +47,12 @@ pub fn new(db_pool: &State<postgres::DbPool>, antenna: Json<NewAntenna<'_>>) ->
} }
#[rocket::patch("/update", format = "json", data = "<antenna>")] #[rocket::patch("/update", format = "json", data = "<antenna>")]
pub fn update(db_pool: &State<postgres::DbPool>, antenna: Json<NewAntenna<'_>>) -> Status { pub fn update(db_pool: &State<postgres::DbPool>, antenna: Json<Antenna>) -> Status {
let mut db = db_pool.get().unwrap(); let mut db = db_pool.get().unwrap();
let res = diesel::update(antennas::table) let res = diesel::update(antennas::table)
.filter(antennas::id.eq(antenna.id)) .filter(antennas::id.eq(antenna.id.clone()))
.set(*antenna) .set(antenna.0)
.execute(&mut db); .execute(&mut db);
match res { match res {