pub struct Map {Show 17 fields
pub id: i32,
pub name: String,
pub deletion_date: Option<NaiveDate>,
pub last_visit: Option<NaiveDate>,
pub is_inactive: bool,
pub zoom_factor: i16,
pub honors: i16,
pub visits: i16,
pub harvested: i16,
pub privacy: PrivacyOption,
pub description: Option<String>,
pub location: Option<Point>,
pub created_by: Uuid,
pub geometry: Polygon<Point>,
pub created_at: NaiveDateTime,
pub modified_at: NaiveDateTime,
pub modified_by: Uuid,
}
Expand description
The Map
entity.
Fields§
§id: i32
The id of the map.
name: String
The name of the map.
deletion_date: Option<NaiveDate>
The date the map is supposed to be deleted.
last_visit: Option<NaiveDate>
The date the last time the map view was opened by any user.
is_inactive: bool
A flag indicating if this map is marked for deletion.
zoom_factor: i16
The zoom factor of the map.
honors: i16
The amount of honors the map received.
visits: i16
The amount of visits the map had.
harvested: i16
The amount of plants harvested on the map.
privacy: PrivacyOption
An enum indicating if this map is private or not.
description: Option<String>
The description of the map.
location: Option<Point>
The location of the map as a latitude/longitude point.
created_by: Uuid
The id of the creator of the map.
geometry: Polygon<Point>
The geometry of the map.
created_at: NaiveDateTime
When the map was created.
modified_at: NaiveDateTime
When a map was last modified, e.g., by modifying plantings.
modified_by: Uuid
By whom the map was last modified.
Implementations§
source§impl Map
impl Map
sourcepub async fn find(
search_parameters: MapSearchParameters,
page_parameters: PageParameters,
conn: &mut AsyncPgConnection,
) -> QueryResult<Page<MapDto>>
pub async fn find( search_parameters: MapSearchParameters, page_parameters: PageParameters, conn: &mut AsyncPgConnection, ) -> QueryResult<Page<MapDto>>
Get the top maps matching the search query.
Can be filtered by is_inactive
and created_by
if provided in search_parameters
.
This will be done with equals and is additional functionality for maps (when compared to plant search).
Uses pg_trgm
to find matches in name
.
Ranks using the pg_trgm
function similarity()
.
§Errors
- Unknown, diesel doesn’t say why it might error.
sourcepub async fn find_by_id(
id: i32,
conn: &mut AsyncPgConnection,
) -> QueryResult<MapDto>
pub async fn find_by_id( id: i32, conn: &mut AsyncPgConnection, ) -> QueryResult<MapDto>
sourcepub async fn is_name_taken(
map_name: &str,
conn: &mut AsyncPgConnection,
) -> QueryResult<bool>
pub async fn is_name_taken( map_name: &str, conn: &mut AsyncPgConnection, ) -> QueryResult<bool>
Checks if a map with this name already exists in the database.
§Errors
- Unknown, diesel doesn’t say why it might error.
sourcepub async fn create(
new_map: NewMapDto,
user_id: Uuid,
conn: &mut AsyncPgConnection,
) -> QueryResult<MapDto>
pub async fn create( new_map: NewMapDto, user_id: Uuid, conn: &mut AsyncPgConnection, ) -> QueryResult<MapDto>
sourcepub async fn update(
map_update: UpdateMapDto,
id: i32,
conn: &mut AsyncPgConnection,
) -> QueryResult<MapDto>
pub async fn update( map_update: UpdateMapDto, id: i32, conn: &mut AsyncPgConnection, ) -> QueryResult<MapDto>
sourcepub async fn mark_for_deletion(
id: i32,
conn: &mut AsyncPgConnection,
) -> QueryResult<MapDto>
pub async fn mark_for_deletion( id: i32, conn: &mut AsyncPgConnection, ) -> QueryResult<MapDto>
Marks a map for deletion using the systems current date and time.
§Errors
- Unknown, diesel doesn’t say why it might error.
sourcepub async fn update_geometry(
map_update_bounds: UpdateMapGeometryDto,
id: i32,
conn: &mut AsyncPgConnection,
) -> QueryResult<MapDto>
pub async fn update_geometry( map_update_bounds: UpdateMapGeometryDto, id: i32, conn: &mut AsyncPgConnection, ) -> QueryResult<MapDto>
sourcepub async fn update_modified_metadata(
id: i32,
user_id: Uuid,
time: NaiveDateTime,
conn: &mut AsyncPgConnection,
) -> QueryResult<()>
pub async fn update_modified_metadata( id: i32, user_id: Uuid, time: NaiveDateTime, conn: &mut AsyncPgConnection, ) -> QueryResult<()>
Update modified metadata (modified_at
, modified_by
) of the map.
§Errors
- Unknown, diesel doesn’t say why it might error.
Trait Implementations§
source§impl<'ident> Identifiable for &'ident Map
impl<'ident> Identifiable for &'ident Map
source§impl<__DB: Backend, __ST0, __ST1, __ST2, __ST3, __ST4, __ST5, __ST6, __ST7, __ST8, __ST9, __ST10, __ST11, __ST12, __ST13, __ST14, __ST15, __ST16> Queryable<(__ST0, __ST1, __ST2, __ST3, __ST4, __ST5, __ST6, __ST7, __ST8, __ST9, __ST10, __ST11, __ST12, __ST13, __ST14, __ST15, __ST16), __DB> for Mapwhere
(i32, String, Option<NaiveDate>, Option<NaiveDate>, bool, i16, i16, i16, i16, PrivacyOption, Option<String>, Option<Point>, Uuid, Polygon<Point>, NaiveDateTime, NaiveDateTime, Uuid): FromStaticSqlRow<(__ST0, __ST1, __ST2, __ST3, __ST4, __ST5, __ST6, __ST7, __ST8, __ST9, __ST10, __ST11, __ST12, __ST13, __ST14, __ST15, __ST16), __DB>,
impl<__DB: Backend, __ST0, __ST1, __ST2, __ST3, __ST4, __ST5, __ST6, __ST7, __ST8, __ST9, __ST10, __ST11, __ST12, __ST13, __ST14, __ST15, __ST16> Queryable<(__ST0, __ST1, __ST2, __ST3, __ST4, __ST5, __ST6, __ST7, __ST8, __ST9, __ST10, __ST11, __ST12, __ST13, __ST14, __ST15, __ST16), __DB> for Mapwhere
(i32, String, Option<NaiveDate>, Option<NaiveDate>, bool, i16, i16, i16, i16, PrivacyOption, Option<String>, Option<Point>, Uuid, Polygon<Point>, NaiveDateTime, NaiveDateTime, Uuid): FromStaticSqlRow<(__ST0, __ST1, __ST2, __ST3, __ST4, __ST5, __ST6, __ST7, __ST8, __ST9, __ST10, __ST11, __ST12, __ST13, __ST14, __ST15, __ST16), __DB>,
Auto Trait Implementations§
impl Freeze for Map
impl RefUnwindSafe for Map
impl Send for Map
impl Sync for Map
impl Unpin for Map
impl UnwindSafe for Map
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§impl<T> IntoSql for T
impl<T> IntoSql for T
source§fn into_sql<T>(self) -> Self::Expression
fn into_sql<T>(self) -> Self::Expression
self
to an expression for Diesel’s query builder. Read moresource§fn as_sql<'a, T>(&'a self) -> <&'a Self as AsExpression<T>>::Expression
fn as_sql<'a, T>(&'a self) -> <&'a Self as AsExpression<T>>::Expression
&self
to an expression for Diesel’s query builder. Read moresource§impl<T, Conn> RunQueryDsl<Conn> for T
impl<T, Conn> RunQueryDsl<Conn> for T
source§fn execute<'conn, 'query>(
self,
conn: &'conn mut Conn,
) -> <Conn as AsyncConnection>::ExecuteFuture<'conn, 'query>
fn execute<'conn, 'query>( self, conn: &'conn mut Conn, ) -> <Conn as AsyncConnection>::ExecuteFuture<'conn, 'query>
source§fn load<'query, 'conn, U>(
self,
conn: &'conn mut Conn,
) -> AndThen<Self::LoadFuture<'conn>, TryCollect<Self::Stream<'conn>, Vec<U>>, fn(_: Self::Stream<'conn>) -> TryCollect<Self::Stream<'conn>, Vec<U>>>
fn load<'query, 'conn, U>( self, conn: &'conn mut Conn, ) -> AndThen<Self::LoadFuture<'conn>, TryCollect<Self::Stream<'conn>, Vec<U>>, fn(_: Self::Stream<'conn>) -> TryCollect<Self::Stream<'conn>, Vec<U>>>
source§fn load_stream<'conn, 'query, U>(
self,
conn: &'conn mut Conn,
) -> Self::LoadFuture<'conn>where
Conn: AsyncConnection,
U: 'conn,
Self: LoadQuery<'query, Conn, U> + 'query,
fn load_stream<'conn, 'query, U>(
self,
conn: &'conn mut Conn,
) -> Self::LoadFuture<'conn>where
Conn: AsyncConnection,
U: 'conn,
Self: LoadQuery<'query, Conn, U> + 'query,
source§fn get_result<'query, 'conn, U>(
self,
conn: &'conn mut Conn,
) -> AndThen<Self::LoadFuture<'conn>, Map<StreamFuture<Pin<Box<Self::Stream<'conn>>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<Self::Stream<'conn>>>)) -> Result<U, Error>>, fn(_: Self::Stream<'conn>) -> Map<StreamFuture<Pin<Box<Self::Stream<'conn>>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<Self::Stream<'conn>>>)) -> Result<U, Error>>>
fn get_result<'query, 'conn, U>( self, conn: &'conn mut Conn, ) -> AndThen<Self::LoadFuture<'conn>, Map<StreamFuture<Pin<Box<Self::Stream<'conn>>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<Self::Stream<'conn>>>)) -> Result<U, Error>>, fn(_: Self::Stream<'conn>) -> Map<StreamFuture<Pin<Box<Self::Stream<'conn>>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<Self::Stream<'conn>>>)) -> Result<U, Error>>>
source§fn get_results<'query, 'conn, U>(
self,
conn: &'conn mut Conn,
) -> AndThen<Self::LoadFuture<'conn>, TryCollect<Self::Stream<'conn>, Vec<U>>, fn(_: Self::Stream<'conn>) -> TryCollect<Self::Stream<'conn>, Vec<U>>>
fn get_results<'query, 'conn, U>( self, conn: &'conn mut Conn, ) -> AndThen<Self::LoadFuture<'conn>, TryCollect<Self::Stream<'conn>, Vec<U>>, fn(_: Self::Stream<'conn>) -> TryCollect<Self::Stream<'conn>, Vec<U>>>
Vec
with the affected rows. Read more